Cataclysm - Dark Days Ahead. The main branch has been moved to http://github.com/CleverRaven/Cataclysm-DDA. This is now just my personal branch.
C++ C Objective-C Other
Switch branches/tags
Pull request Compare This branch is 45479 commits behind CleverRaven:master.
Latest commit 14d63ab Aug 4, 2013 @kevingranade kevingranade Merge translation instructions, initial serbian translation, cleanup …
…wood shield remnants, and fix item damage label display.
Permalink
Failed to load latest commit information.
code_doc Fix spelling error in 'code_doc/GAME_BALANCE' Jul 7, 2013
data Removed remnants of wood shield. Aug 4, 2013
doxygen_doc Added doxygen configuration and doxygen comments to map.h Jul 17, 2013
lang Merge translation instructions, initial serbian translation, cleanup … Aug 4, 2013
msvc100 Merge PR#1833 - translation.h file addition Jul 13, 2013
tests Remove unused map.itypes; use g->itypes where needed. Jul 5, 2013
.gitignore Windows icon fix + related code cleanup Jul 20, 2013
.travis.yml Added notification for freenode channel May 5, 2013
CODE_STYLE Add padding argument to coding style specification. May 16, 2013
COMPILING.md Updated cross-compile instructions to fix missing libintl.h Aug 2, 2013
COMPILING_osx.md edit Jul 10, 2013
CONTRIBUTING.md Added a doxygen section to CONTRIBUTING.md Jul 17, 2013
CataclysmWin.cbp Temp. crashfix for windows MinGW builds Jul 29, 2013
DEVELOPER_FAQ.txt Updated code documentation for bionics Jun 24, 2013
LICENSE Added license. May 14, 2013
MODDING.txt Initial skeleton of a guide for editing features of the game that do NOT Jun 25, 2013
Makefile gcc -> g++ Jul 29, 2013
Makefile.Windows Temp. crashfix for windows MinGW builds Jul 29, 2013
README Corrected readme email Apr 4, 2013
README.md change link of CONTRIBUTING.md to CleverRaven's repo Jul 11, 2013
SDLMain.h add files for os x/sdl build Jun 28, 2013
SDLMain.m use -lSDL, -lSDL_ttf or frameworks for osx Jul 9, 2013
SIGNOFF Adding my name to SIGNOFF. Jul 29, 2013
TESTING Added short note describing test suite build instructions. Apr 27, 2013
TRANSLATING.md Add detailed instructions for translators. Aug 4, 2013
action.cpp Add translation support for action.cpp Jul 23, 2013
action.h Split game::autosave() into two - quicksave() handles the vehicle, mo… Jul 15, 2013
addiction.cpp Code clean up. Replace sprintf with string_format. Aug 2, 2013
addiction.h Drugs remove craving when used Jun 24, 2013
artifact.cpp Replace substr magic number with function. Aug 3, 2013
artifact.h Add super clairvoyance artifact power for debugging. May 4, 2013
artifactdata.h Materials refactoring Jun 1, 2013
auto_pickup.cpp Autopickup manager menu position fix. Aug 3, 2013
auto_pickup.h Add/Remove pickup rules with the inventory item menu. Jul 23, 2013
basecamp.cpp allowed npcs to wait at basecamp Feb 27, 2013
basecamp.h allowed npcs to wait at basecamp Feb 27, 2013
bionics.cpp changed bionics Jul 26, 2013
bionics.h Prevent random bionic generation from creating null or faulty bionics Apr 28, 2013
bodypart.cpp Add translation support for bodypart.cpp Jul 23, 2013
bodypart.h Moved bodytemp code to player.cpp and uncommented update_bodytemp Mar 14, 2013
building_generation.cpp Completely converted over all item spawns to item_groups.json Jul 3, 2013
building_generation.h Rename mapgen_helper to building_generation May 26, 2013
calendar.cpp Code clean up. Replace sprintf with string_format. Aug 2, 2013
calendar.h Sun/Moon position instead of precise time for people without a watch. Jul 16, 2013
catacharset.cpp Warning cleanup. Jul 30, 2013
catacharset.h Base64-encode save file name just in case non-ascii characters in pla… Jul 29, 2013
cataclysm-launcher Make the 'launcher' do things without spawning _two_ subshells. Jun 5, 2013
catacurse.h F2 to load input.txt as input string (character naming screen, vehicl… Jul 30, 2013
catajson.cpp Fixed calling JSON from static functions Jul 19, 2013
catajson.h Fixed calling JSON from static functions Jul 19, 2013
color.cpp Add more colors: c_(whatever)_(white|green|yellow|magenta|cyan) as Jul 23, 2013
color.h Add more colors: c_(whatever)_(white|green|yellow|magenta|cyan) as Jul 23, 2013
computer.cpp Add translation support for computer.cpp Jul 23, 2013
computer.h AStyle computer.cpp, computer.h Jul 22, 2013
construction.cpp Fixed realign fence construction Aug 2, 2013
construction.h Merge fix to fence rotation operation, autopickup rule toggle in adva… Aug 3, 2013
crafting.cpp Merge fix to fence rotation operation, autopickup rule toggle in adva… Aug 3, 2013
crafting.h Fix recipe parsing - in MSVC, catajson.as_string().c_str() becomes in… May 31, 2013
cursesdef.h Tweak the curses header. Jul 3, 2013
cursesport.cpp Minor fix to waddch to avoid extra erease_utf8_by_cw call. Jul 8, 2013
debug.cpp Untest Feb 7, 2013
debug.h Change in how Vehicle Examination window is displayed so it works in … Jul 18, 2013
defense.cpp More fix to defense.cpp. Jul 28, 2013
dialogue.h Move from header to cpp, more. Jul 21, 2013
disease.cpp Merge fix to fence rotation operation, autopickup rule toggle in adva… Aug 3, 2013
disease.h Converted disease identifiers from enum to string. Jul 6, 2013
enums.h Materials refactoring Jun 1, 2013
event.cpp event.cpp i18n Aug 2, 2013
event.h Rewrote map saving; entire map is stored in memory Sep 24, 2012
faction.cpp Replace substr magic number with function. Aug 3, 2013
faction.h Move variables from facdata.h to faction.cpp. Add _( ) to bionics.cpp. Jul 21, 2013
field.cpp Buff wood output Jul 30, 2013
field.h Restore private attribute of field class internals. Jul 28, 2013
game.cpp Merge PR #2299 - Throw stacks Aug 4, 2013
game.h Merge professions, alternate status display, SDL performance and inpu… Aug 1, 2013
gamemode.cpp * Fixed options text lengths, added defaults Apr 29, 2013
gamemode.h Revert "Changed RNG to use STD's <random>, with std::default_random_e… Apr 13, 2013
graffiti.cpp That was levels of wrong beyond the ability of ethics to account for. Mar 3, 2013
graffiti.h Add newline at end of file. Reported by aapo. Mar 10, 2013
help.cpp added _() in help.cpp Jul 19, 2013
helper.cpp fix bug, inverted the numbering Apr 9, 2013
helper.h fix bug, inverted the numbering Apr 9, 2013
iexamine.cpp Wrap the last wrappable query_yn() calls with gettext goodness. Aug 2, 2013
iexamine.h Adds strawberry bushes. Jun 10, 2013
input.cpp Remove frame skipping for SDL because it skips "wait creating" popup. Jul 30, 2013
input.h F2 to load input.txt as input string (character naming screen, vehicl… Jul 30, 2013
inventory.cpp Added alarm-clock flag to wrist watch and cell phone. Jul 25, 2013
inventory.h Added alarm-clock flag to wrist watch and cell phone. Jul 25, 2013
inventory_ui.cpp Take care of most of the rest translation strings. Jul 27, 2013
item.cpp Fixed display of damage adjective Aug 4, 2013
item.h Change item sPre and sPost to a sFmt format string. Jul 27, 2013
item_factory.cpp Check that items exist when adding them to spawn lists. Aug 3, 2013
item_factory.h Check that items exist when adding them to spawn lists. Aug 3, 2013
item_group.cpp Completely converted over all item spawns to item_groups.json Jul 3, 2013
item_group.h Completely converted over all item spawns to item_groups.json Jul 3, 2013
itype.h Add a string_format function to avoid too many temporary char buffers… Jul 25, 2013
itypedef.cpp Merge future weapons. Jul 29, 2013
iuse.cpp Merge autotargeting adjustments, crude welder fix, play now character… Aug 3, 2013
iuse.h Merge reordering crafting recipes, jarred kompot, umbrella, female-sp… Jul 27, 2013
keypress.cpp * Split vehicle disembarking out of game::examine(). Jun 5, 2013
keypress.h Rain effect based on Tase's code. Mar 21, 2013
lightmap.cpp Merge PR #2193 - Headlight aiming Jul 30, 2013
lightmap.h Fix some warnings that turned up when attempting to compile with MSVC Apr 23, 2013
line.cpp monster group fix: Jul 23, 2013
line.h monster group fix: Jul 23, 2013
main.cpp Move variables from facdata.h to faction.cpp. Add _( ) to bionics.cpp. Jul 21, 2013
main_menu.cpp [Play Now!] option in [New Game] to skip any confirm windows. Allow h… Aug 3, 2013
map.cpp Merge fixes to closest_points_first refactor. Aug 3, 2013
map.h Set default radius for add_item_or_charges to a sensible number. Aug 1, 2013
mapbuffer.cpp mapbuffer.cpp i18n Aug 1, 2013
mapbuffer.h Doxygen commented mapbuffer.h Jul 17, 2013
mapdata.cpp New debug logger with ability to set log level and filter sources. Oct 3, 2012
mapdata.h Merge autopickup, bionic cleanup, sludge crawler, new professions, fi… Jul 6, 2013
mapgen.cpp Merge PR#2046 - Classic monster fix Jul 15, 2013
mapgenformat.cpp Separate furniture and territory Jun 27, 2013
mapgenformat.h Separate furniture and territory Jun 27, 2013
mapitems.h Completely converted over all item spawns to item_groups.json Jul 3, 2013
material.cpp Material names are now actually translated. Jul 29, 2013
material.h Added density field, for use in vortex attacks Jun 3, 2013
melee.cpp Replace substr magic number with function. Aug 3, 2013
mission.cpp Add translation support for mission.cpp Jul 24, 2013
mission.h Small spelling error fixes Jul 3, 2013
mission_end.cpp mission_end.cpp i18n Aug 1, 2013
mission_fail.cpp Integrate overmapbuffer as the cache of overmaps. May 13, 2013
mission_place.cpp Integrate overmapbuffer as the cache of overmaps. May 13, 2013
mission_start.cpp Code clean up. Replace sprintf with string_format. Aug 2, 2013
missiondef.cpp missiondef.cpp i18n Aug 1, 2013
monattack.cpp Slurp can_uncanny_dodge() into uncanny_dodge() to streamline calling it. Jul 30, 2013
monattack.h Added 'parrot' attack that will allow Mi Go to 'call out' May 26, 2013
mondeath.cpp changed mondeath Jul 26, 2013
mondeath.h Expanded spawn items function and intial test of zombie clothing drops May 12, 2013
mongroup.h init function throw exceptions with error message Jul 19, 2013
mongroupdef.cpp init function throw exceptions with error message Jul 19, 2013
monitemsdef.cpp Reduce volume of items dropped by turrets, and ratio of junk parts to… Jul 14, 2013
monmove.cpp add some gettext i missed in monmove.cpp Aug 2, 2013
monster.cpp Code clean up. Replace sprintf with string_format. Aug 2, 2013
monster.h Cap overkill damage at base damage of attack, preventing gibbing from… Jun 25, 2013
morale.h Added cross-dresser negative trait. Jul 26, 2013
moraledata.h Take care of most of the rest translation strings. Jul 27, 2013
mtype.h Move mtype functions to mtypedef.cpp, translate default name "human". Jul 28, 2013
mtypedef.cpp Move mtype functions to mtypedef.cpp, translate default name "human". Jul 28, 2013
mutation.cpp mutation.cpp i18n Aug 1, 2013
mutation.h Destroy trailing whitespace. Feb 22, 2013
mutation_data.cpp Reworked mutation_data to make trait vailidity more obvious Jul 21, 2013
name.cpp Replace substr magic number with function. Aug 3, 2013
name.h Add city names to names module. Apr 25, 2013
newcharacter.cpp Also randomize gender. Aug 3, 2013
npc.cpp npc.cpp i18n Aug 2, 2013
npc.h two small changes for clang warnings Jul 29, 2013
npcmove.cpp Use count_by_charges() to discriminate between stacking ammo and item… Aug 3, 2013
npctalk.cpp Replace substr magic number with function. Aug 3, 2013
omdata.h Merge translation notes, sutopickup fix and field segfault fix. Jul 28, 2013
options.cpp Add an option for a narrower sidebar. Jul 29, 2013
options.h Add an option for a narrower sidebar. Jul 29, 2013
output.cpp Replace substr magic number with function. Aug 3, 2013
output.h Replace substr magic number with function. Aug 3, 2013
overmap.cpp Base64-encode save file name just in case non-ascii characters in pla… Jul 29, 2013
overmap.h Reworked road placement Jul 2, 2013
overmapbuffer.cpp Add a clear method to overmapbuffer and call it when resetting the wo… May 13, 2013
overmapbuffer.h Add a clear method to overmapbuffer and call it when resetting the wo… May 13, 2013
picojson.h Merge remote-tracking branch 'dda/pr/904' into dda-master May 9, 2013
player.cpp Merge PR #2301 - No negative encumberances Aug 4, 2013
player.h Merge professions, alternate status display, SDL performance and inpu… Aug 1, 2013
pldata.h [Play Now!] option in [New Game] to skip any confirm windows. Allow h… Aug 3, 2013
posix_time.cpp Complete computer rewrite. Several other changes. Jul 22, 2011
posix_time.h vehicles moving faster are now animated faster. Feb 4, 2013
profession.cpp Remove mandatory gender checks on professions. Jul 30, 2013
profession.h Remove mandatory gender checks on professions. Jul 30, 2013
ranged.cpp Code clean up. Replace sprintf with string_format. Aug 2, 2013
resource.rc Windows icon fix + related code cleanup Jul 20, 2013
rng.cpp Allow rng to accept parameters in swapped order Jun 26, 2013
rng.h Allow rng to accept parameters in swapped order Jun 26, 2013
sdlcurse.cpp Revert "Titlebar fix" Aug 4, 2013
settlement.cpp Revert "Merge branch 'WarningResolutions' of git://github.com/AkrionX… Mar 3, 2013
settlement.h Revert "Merge branch 'WarningResolutions' of git://github.com/AkrionX… Mar 3, 2013
setvector.cpp Add a string_format function to avoid too many temporary char buffers… Jul 25, 2013
setvector.h Fixing things so code compiles on MS Visual Studio 2010, which showed… May 8, 2013
skill.cpp Translate skills in loadSkills. Readjust @ menu stats format. Jul 28, 2013
skill.h Merge Int-dependent skill rust, Windows icon fix, autopickup optimiza… Jul 23, 2013
text_snippets.cpp Hunt down remaining translation problems, more. Jul 28, 2013
text_snippets.h init function throw exceptions with error message Jul 19, 2013
tileray.cpp Fix some warnings that turned up when attempting to compile with MSVC Apr 23, 2013
tileray.h Fixed linux compatibility Mar 23, 2013
translations.h Move clocale behind libintl.h to resolve std::setlocale conflict. Jul 21, 2013
trap.h Added a placeable funnel item to collect water when it is raining. Apr 24, 2013
trapdef.cpp Move omdata.h variables to overmap.cpp. Add translation support to a … Jul 26, 2013
trapfunc.cpp Move omdata.h variables to overmap.cpp. Add translation support to a … Jul 26, 2013
tutorial.cpp Remove unused map.itypes; use g->itypes where needed. Jul 5, 2013
tutorial.h s/accuracy/dispersion/g because accuracy is not what it is. Jun 21, 2013
ui.cpp Crashfix: Prevent escape from material selection Jul 30, 2013
ui.h uimenu: scroll through entries if they exceed screen height. Title op… Jun 26, 2013
uistate.h Now using 'uimenu' class to query for sorting, or destination when mo… Jun 8, 2013
veh_interact.cpp Merge PR #2291 - Vehicle interact crash fix Aug 4, 2013
veh_interact.h two small changes for clang warnings Jul 29, 2013
veh_type.h Change ammo type identifiers to lower case. Jul 11, 2013
veh_typedef.cpp Take care of most of the rest translation strings. Jul 27, 2013
vehicle.cpp Replace substr magic number with function. Aug 3, 2013
vehicle.h Take care of most of the rest translation strings. Jul 27, 2013
version.cpp Release 0.7.1 Jul 19, 2013
wcwidth.c Utf8 support. Jun 27, 2013
wdirent.h Allow compilation using MSVC 2010 Express, both 32-bit and 64-bit Apr 23, 2013
weather.cpp Replace substr magic number with function. Aug 3, 2013
weather.h Hunting down misc translation problems. Jul 28, 2013
weather_data.cpp Hunting down misc translation problems. Jul 28, 2013
wincurse.cpp Revert "Titlebar fix" Aug 4, 2013
wish.cpp Take care of most of the rest translation strings. Jul 27, 2013

README.md

Cataclysm: Dark Days Ahead

Cataclysm: Dark Days Ahead is a roguelike set in a post-apocalyptic world. While some have described it as a "zombie game", there's far more to Cataclysm than that. Struggle to survive in a harsh, persistant, procedurally generated world. Scavenge the remnants of a dead civilization for for food, equipment, or, if you're lucky, a vehicle with a full tank of gas to get you the hell out of Dodge. Fight to defeat or escape from a wide variety of powerful monstrosities, from zombies to giant insects to killer robots and things far stranger and deadlier, and against the others like yourself, that want what you have...

Download

The following binary releases are available:

The source can either be downloaded as an archive, or you can clone it from our GitHub repository.

Compile

The latest instructions on how to compile can be found on our wiki.

Contribute

Please see CONTRIBUTING.md for details.

Frequently Asked Questions

Is there a tutorial?

Yes, you can find the tutorial in the Special menu at the main menu. You can also access documentation in-game via the ? key.

How can I change the key bindings?

Press the ? key, followed by the 1 key to see the full list of key commands. Press the + key to add a key binding, select which action with the corresponding letter key a-w, and then the key you wish to assign to that action.

How can I start a new world?

Reset on the main menu will generate a fresh world for you.

I've found a bug / I would like to make a suggestion. What should I do?

Please submit an issue on our GitHub page. If you're not able to, send an email to TheDarklingWolf@gmail.com.