Skip to content
This repository

A post-apocalyptic roguelike.

branch: master

Added license.

latest commit 76e3a8d36b
Whales authored
Octocat-spinner-32 code_doc A couple more files
Octocat-spinner-32 data Fixed Makefile, MOTD
Octocat-spinner-32 LICENSE Added license.
Octocat-spinner-32 Makefile Fixed problem with blood etc covering up items
Octocat-spinner-32 Makefile.Windows Some UI improvements, configurable options
Octocat-spinner-32 README Many minor changes.
Octocat-spinner-32 action.cpp Some bugfixes, edit keybindings via help menu
Octocat-spinner-32 action.h Some bugfixes, edit keybindings via help menu
Octocat-spinner-32 addiction.h Defense mode. Keybindings.
Octocat-spinner-32 artifact.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 artifact.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 artifactdata.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 bionics.cpp Some UI improvements.
Octocat-spinner-32 bionics.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 bodypart.cpp Shelters. NPC dialog and missions.
Octocat-spinner-32 bodypart.h Reading books is more user-friendly. Gun info is more explicit about …
Octocat-spinner-32 calendar.cpp Some UI improvements, configurable options
Octocat-spinner-32 calendar.h Some UI improvements.
Octocat-spinner-32 catacurse.cpp Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 catacurse.h New monster AI, many tweaks
Octocat-spinner-32 color.cpp Software. New missions. Hospitals. Bugfixes.
Octocat-spinner-32 color.h More missions, fleshed out mission system
Octocat-spinner-32 computer.cpp Some UI improvements.
Octocat-spinner-32 computer.h Software. New missions. Hospitals. Bugfixes.
Octocat-spinner-32 construction.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 construction.h Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 crafting.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 crafting.h Crafting + construction rewrite; some bugfixes; bayonets
Octocat-spinner-32 defense.cpp Bug fixes left and right
Octocat-spinner-32 dialogue.h Many bugfixes. Some UI improvements.
Octocat-spinner-32 disease.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 enums.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 event.cpp Some UI improvements.
Octocat-spinner-32 event.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 facdata.h Unified some code for how stats alter gameplay (e.g. how Dexterity al…
Octocat-spinner-32 faction.cpp Added break-in alarms for banks and police stations and a detailed po…
Octocat-spinner-32 faction.h Shelters. NPC dialog and missions.
Octocat-spinner-32 field.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 game.cpp Last commit before I wipe my hard drive
Octocat-spinner-32 game.h Last commit before I wipe my hard drive
Octocat-spinner-32 gamemode.cpp Defense mode. Keybindings.
Octocat-spinner-32 gamemode.h Bug fixes left and right
Octocat-spinner-32 help.cpp Some UI improvements, configurable options
Octocat-spinner-32 inventory.cpp Some UI improvements.
Octocat-spinner-32 inventory.h Many bugfixes. Some UI improvements.
Octocat-spinner-32 inventory_ui.cpp Many bugfixes. Some UI improvements.
Octocat-spinner-32 item.cpp Last commit before I wipe my hard drive
Octocat-spinner-32 item.h Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 itype.h Some UI improvements.
Octocat-spinner-32 itypedef.cpp Last commit before I wipe my hard drive
Octocat-spinner-32 iuse.cpp Last commit before I wipe my hard drive
Octocat-spinner-32 iuse.h Last commit before I wipe my hard drive
Octocat-spinner-32 keypress.cpp Some UI improvements.
Octocat-spinner-32 keypress.h Bug fixes left and right
Octocat-spinner-32 line.cpp Some UI improvements.
Octocat-spinner-32 line.h Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 main.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 map.cpp Last commit before I wipe my hard drive
Octocat-spinner-32 map.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mapbuffer.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mapbuffer.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mapdata.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mapgen.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mapitems.h Defense mode. Keybindings.
Octocat-spinner-32 mapitemsdef.cpp Some UI improvements, configurable options
Octocat-spinner-32 melee.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mission.cpp Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 mission.h Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 mission_end.cpp Shelters. NPC dialog and missions.
Octocat-spinner-32 mission_fail.cpp Added some missing files! Oops.
Octocat-spinner-32 mission_place.cpp More missions, fleshed out mission system
Octocat-spinner-32 mission_start.cpp Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 missiondef.cpp Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 monattack.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 monattack.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mondeath.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mondeath.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mongroup.h Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 mongroupdef.cpp Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 monitemsdef.cpp Several game-breaking bug fixes. Good night.
Octocat-spinner-32 monmove.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 monster.cpp Removed some debug messages.
Octocat-spinner-32 monster.h Some UI improvements.
Octocat-spinner-32 morale.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 moraledata.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mtype.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mtypedef.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mutation.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 mutation.h New monster AI, many tweaks
Octocat-spinner-32 mutation_data.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 newcharacter.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 npc.cpp Many bugfixes. Some UI improvements.
Octocat-spinner-32 npc.h Many bugfixes. Some UI improvements.
Octocat-spinner-32 npcmove.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 npctalk.cpp Some UI improvements.
Octocat-spinner-32 omdata.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 options.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 options.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 output.cpp Some UI improvements, configurable options
Octocat-spinner-32 output.h Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 overmap.cpp Some UI improvements, configurable options
Octocat-spinner-32 overmap.h Some UI improvements, configurable options
Octocat-spinner-32 player.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 player.h Last commit before I wipe my hard drive
Octocat-spinner-32 pldata.h Last commit before I wipe my hard drive
Octocat-spinner-32 posix_time.cpp Complete computer rewrite. Several other changes.
Octocat-spinner-32 posix_time.h Complete computer rewrite. Several other changes.
Octocat-spinner-32 ranged.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 rng.cpp Added swamp monsters and stabbing weapons; also the weapon_flag enum …
Octocat-spinner-32 rng.h first commit
Octocat-spinner-32 settlement.cpp Big ol update, many changes.
Octocat-spinner-32 settlement.h Big ol update, many changes.
Octocat-spinner-32 setvector.cpp Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 setvector.h Melee update. Saved NPCs, wild NPCs, interruptable actions, much more.
Octocat-spinner-32 skill.cpp Some UI improvements.
Octocat-spinner-32 skill.h Some UI improvements.
Octocat-spinner-32 texthash.cpp Huge construction and inventory update. Clean build and save removal …
Octocat-spinner-32 texthash.h Complete computer rewrite. Several other changes.
Octocat-spinner-32 tileray.cpp Adding missing files, lol
Octocat-spinner-32 tileray.h Adding missing files, lol
Octocat-spinner-32 trap.h Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 trapdef.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 trapfunc.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 tutorial.cpp Bug fixes left and right
Octocat-spinner-32 tutorial.h Defense mode. Keybindings.
Octocat-spinner-32 veh_interact.cpp Rewrote map saving; entire map is stored in memory
Octocat-spinner-32 veh_interact.h Adding missing files, lol
Octocat-spinner-32 veh_type.h Some UI improvements, configurable options
Octocat-spinner-32 veh_typedef.cpp Adding missing files, lol
Octocat-spinner-32 vehicle.cpp Some UI improvements, configurable options
Octocat-spinner-32 vehicle.h Adding missing files, lol
Octocat-spinner-32 weather.cpp Mutation update!
Octocat-spinner-32 weather.h Megastores. Long-range mapping. Bugfixes and tweaks.
Octocat-spinner-32 weather_data.h Megastores. Long-range mapping. Bugfixes and tweaks.
Octocat-spinner-32 wish.cpp Some UI improvements, configurable options
README
Cataclysm is a post-apocalyptic roguelike, set in the countryside of New England
after a devastating plague of monsters and zombies.

At present time, Cataclysm is still in early alpha, and is being developed very
rapidly.  As such, there are no formal version numbers, as a new version is
released every day, often several a day.

Source is available at the github repository, http://github.com/Whales/Cataclysm
There is also a tarball available at http://squidnet.ath.cx/cataclysm.tar.gz
Squidnet maintains a public SSH server.  If you cannot play Cataclysm locally,
or if you prefer to play it in a world shared with others, connect to
cataclysm@squidnet.ath.cx (there is no password).

Compiling Cataclysm under linux is straightforward, and only requires the
ncurses development libraries.  Under Ubuntu, these libraries can be found in
the libncurses5-dev package ("sudo apt-get install libncurses5-dev" will install
this package).

Cataclysm is very different from most roguelikes in many ways.  Rather than
being set in a vertical, linear dungeon, it is set in an unbounded, 3D world.
This means that exploration plays a much bigger role than in most roguelikes,
and the game is much less linear.
Because the map is so huge, it is actually completely persistant between games.
If you die, and start a new character, your new game will be set in the same
game world as your last.  Like in many roguelikes, you will be able to loot the
dead bodies of previous characters; unlike most roguelikes, you will also be
able to retrace their steps completely, and any dramatic changes made to the
world will persist into your next game.
While this makes for interesting depth of play, and the ability to "save" game
progress even after death, some prefer to start each game with a freshly
generated world.  This can be achieved by erasing the contents of the save
directory, found in the same folder as the executable.  "rm save/*" will erase
these files for you.

Cataclysm's gameplay also includes many unique quirks, and the learning curve is
somewhat steep, even for those experienced with roguelikes.  Included with the
game is a tutorial which runs the player through most of the key features.  The
game also has extensive documentation via the ? command.  Pressing ?1 will list
all the key commands, which is a good place to start.

To submit a bug, complaint, feature request, or praise, please send them via
email to fivedozenwhales@gmail.com.  You can also submit problem reports and
patches at the github repository at http://github.com/Whales/Cataclysm .

I strive to include as many feature requests as possible, and if you submit one
there is a good chance that it will appear in the game within a few days.  Of
course, it is inevitable that I will reject some feature requests, either
because they do not fit my conception of the game, or because they require more
code than I think they're worth.  Feature requests supplied in the form of a
patch stand a better chance of inclusion, of course ;)  For instructions on
making changes to item types, monster types, etc., please see the EDITING file.
Most changes of this variety require no training in C++, or programming in
general.

If you want to take Cataclysm in a new direction, please feel free to create a
branch project--just let me know about it!
Something went wrong with that request. Please try again.