summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/util
Commit message (Collapse)AuthorAgeFilesLines
* Apply trunk r6533 to 0.4.dolorous2008-07-131-1/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/branches/stone_soup-0.4@6534 c06c8d41-db1a-0410-9941-cceddc491573
* Apply my latest commits to 0.4.j-p-e-g2008-07-131-2/+2
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/branches/stone_soup-0.4@6531 c06c8d41-db1a-0410-9941-cceddc491573
* Apply trunk r6421 to 0.4.dolorous2008-07-121-4/+4
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/branches/stone_soup-0.4@6522 c06c8d41-db1a-0410-9941-cceddc491573
* Apply my previous commit to 0.4.j-p-e-g2008-07-111-2/+2
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/branches/stone_soup-0.4@6503 c06c8d41-db1a-0410-9941-cceddc491573
* Apply some more commits to bring 0.4 up to date.j-p-e-g2008-07-101-16/+16
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/branches/stone_soup-0.4@6484 c06c8d41-db1a-0410-9941-cceddc491573
* Update documentation for 0.4.j-p-e-g2008-07-082-47/+160
| | | | | | | Apply recent commits. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/branches/stone_soup-0.4@6458 c06c8d41-db1a-0410-9941-cceddc491573
* Fix potions of decay created by mummy curse sometimes being inscribed.j-p-e-g2008-07-071-1/+1
| | | | | | | | | Change inscription prompt to work as intended by David, after all. :) Make manuals use a reading counter (plus2) that is initialized with 3 + random2(15). Once it reaches 0, the manual crumbles to dust. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6443 c06c8d41-db1a-0410-9941-cceddc491573
* Remove some of my infamous debugging statements (I keep forgettingj-p-e-g2008-07-061-1/+1
| | | | | | | | | them!) and move the new pdf files around, renaming contact.pdf to README.pdf since it's the shorter version of readme.txt, also capitalized now. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6435 c06c8d41-db1a-0410-9941-cceddc491573
* Added the screen files necessary for quickstart.tex, and moved thedploog2008-07-066-0/+151
| | | | | | | whole bunch into source/utils/docs/ git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6417 c06c8d41-db1a-0410-9941-cceddc491573
* Added three printable files (contact, key changes, quickstart) and put themdploog2008-07-063-0/+493
| | | | | | | | into the new pdf/ directory. The corresponding tex files are in source/utils/ (feel free to rename the files, or move them to better locations). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@6416 c06c8d41-db1a-0410-9941-cceddc491573
* A little bit of savegame code cleanup; and a small format change to makepauldubois2008-04-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | life easier (or rather, possible) for dump_savegame. Should not break saves (let me know if they do). - Fixed dump_savegame bug reading TAG_LEVEL. Handle lua map_markers (by skipping over them) -- requires format change and minor version bump. - Consolidated YOU_MINOR_VERSION, LEVEL_MINOR_VERSION, GHOST_MINOR_VERSION into a single TAG_MINOR_VERSION, because otherwise versions can't be passed into data structures being deserialized (because they may be contained in both you and ghost, for example). - Clean out old code that pretends to restore other major versions, and some duplicate code that pretends level loading and general tagged file loading are different. (Left ghosts alone because they really do do something different, slightly) git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4420 c06c8d41-db1a-0410-9941-cceddc491573
* A utility I've been working on to parse and examine savegames.pauldubois2008-04-191-0/+66
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4363 c06c8d41-db1a-0410-9941-cceddc491573
* Apply Horst von Brand's (first) patch 1887488: gcc-4.3 compile failures.j-p-e-g2008-04-142-52/+55
| | | | | | | I'm not sure what to do about the rest of that tracker item. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@4233 c06c8d41-db1a-0410-9941-cceddc491573
* Adding Win32 icon.ennewalker2008-01-122-0/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3261 c06c8d41-db1a-0410-9941-cceddc491573
* Updated credits.dshaligram2008-01-121-1/+2
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3260 c06c8d41-db1a-0410-9941-cceddc491573
* Updated CREDITS, fixed bounds check for Lee's.dshaligram2008-01-121-0/+96
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3251 c06c8d41-db1a-0410-9941-cceddc491573
* Added new vaults (incl. Crypt, altars, entries). Contributed by Lemuel, ↵dshaligram2007-12-301-8/+9
| | | | | | | | | bobbens, zaba. Fixed level lexer to handle DOS-style line endings in .des files on Unix. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@3159 c06c8d41-db1a-0410-9941-cceddc491573
* Moved all of the bazaar specific logic/code to dat/bazaar (or turned thezelgadis2007-10-042-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | code into Lua utility functions which can be reused by things other than bazaars). Related changes: * Portal vault entrances now work if they have destinations ("dst" property) besides "bazaar" (though it still causes an assert if no matchng maps for the destination can be found). * The floor and rock colour for a level are generated once and then stored in the save file, rather than being constantly regenerated (which means that bazaar floor colours are now truly random, rather than being tied to the depth of the bazaar entrance). * The floor and rock colour for a portal vault (or for any level containing any vault) can be set with ROCKCOL and FLOORCOL (which currently only accepts a single colour, unlike COLOUR); there are also Lua functions for querying and setting the colours. * Each portal vault level_type_name can have an associated Lua callback which is called when level generation is complete; it can be used for things like stair fixup. I also moved the Halls of Zot rock/floor colour special casing to the dat/zot.des file, since it was easy once ROCKCOL and FLOORCOL had been implemented. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2314 c06c8d41-db1a-0410-9941-cceddc491573
* Bumped piety cost for brothers-in-arms and greater healing.dshaligram2007-09-272-3/+21
| | | | | | | Added COLOUR: directive to maps to allow custom colouring of features by glyph, and tweaked the strawberry fields variants to use it. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2227 c06c8d41-db1a-0410-9941-cceddc491573
* This change moves the logic for when a level or branch prohibitszelgadis2007-09-192-2/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | teleport control from the C++ code into the vault .des files. This is done with the additions of two things: * Changeable, persistent per-level and per-branch flags which affect game play. * Dungeon events for the killing of monsters, picking up of objects and changing of features. The current level and branch flags are for teleport control prevention, making a level unmappable (like the Abyss or a Labyrinth), and preventing magic mapping from working (like the Abyss or a Labyrinth). Some related changes: * The new .des header KMASK allows for dungeon grid masks like no_monster_gen to be applied to specific symbols rather than the entire vault. * If the wizard mapping command (&{) is used in a place which is unmappable, it will ask if you wish to force the area to be mappable (so you can see what an entire Labyrinth or Abyss level looks like without having to hack the source). * A new wizard-mode level-map command, 'T', will teleport the player to wherever the cursor is pointing. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2146 c06c8d41-db1a-0410-9941-cceddc491573
* [1773753] Split and sort the description db input file (zelgadis).dshaligram2007-08-151-0/+60
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@2003 c06c8d41-db1a-0410-9941-cceddc491573
* [1767432] Fixed labyrinth with sealed exit.dshaligram2007-08-041-0/+1
| | | | | | | | | | | Increased minimum distance of labyrinth entrance from center. Fixed gly_point() not working correctly because map transforms were not applied. Fixed lexer ignoring (and echoing) newlines on marker continuation lines. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1963 c06c8d41-db1a-0410-9941-cceddc491573
* Reworked Bazaars as a special case of portal vaults. The level-type is nowdshaligram2007-07-272-1/+12
| | | | | | | | | | | | | called portal vault. The dungeon builder bases its behaviour on the level_type_name, which must be set as the "dst" property on the portal leading to the bazaar/portal vault. Added WELCOME: directive to .des files to allow maps to specify a welcome message when the player enters the level (only relevant to encompass maps). Readjusted kenku flight speed. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1941 c06c8d41-db1a-0410-9941-cceddc491573
* Replaced timed markers with Lua markers. Breaks save compatibility.dshaligram2007-07-262-10/+43
| | | | | | KFEAT: feature names are now as in the dungeon_feature_type enum. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1930 c06c8d41-db1a-0410-9941-cceddc491573
* Fixed level-compiler not warning of maps with the same name consistently.dshaligram2007-07-081-18/+5
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1799 c06c8d41-db1a-0410-9941-cceddc491573
* Allow non-rectangular minivaults and branch entry vaults (use space padding).dshaligram2007-07-061-3/+3
| | | | | | | | | | They're still rectangular for collision detection with other vaults; that'll need more effort to fix. Space padding can also be used for regular vaults, but it'll be ignored at the moment (but soon...! :-)). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1778 c06c8d41-db1a-0410-9941-cceddc491573
* Added NSUBST.dshaligram2007-07-012-1/+19
| | | | | | | Should not highlight unvisited stairs in the Vestibule, since travel cache doesn't track visited-ness of Vestibule stairs. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1706 c06c8d41-db1a-0410-9941-cceddc491573
* Level updates collated by David.dshaligram2007-07-012-1/+8
| | | | | | | | Fixed DEPTH: not being read correctly, added more map validation. Increased attack speed of ice statues. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1704 c06c8d41-db1a-0410-9941-cceddc491573
* [1742338] Fixed Hell portals not being revealed correctly when the horn isdshaligram2007-06-302-3/+21
| | | | | | sounded. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1701 c06c8d41-db1a-0410-9941-cceddc491573
* Updated level-design.txt with a basic overview of the Lua possibilities.dshaligram2007-06-281-5/+5
| | | | | | | Fixed some inconsistencies in the handling of Lua errors. Tweaked the lexer to allow spaces before Lua chunk prefixes. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1676 c06c8d41-db1a-0410-9941-cceddc491573
* Added glyphs_connected and friends for maps to test connectedness of pointsdshaligram2007-06-272-28/+11
| | | | | | | | after map transforms are applied. Fixed conflicts in bison grammar. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1669 c06c8d41-db1a-0410-9941-cceddc491573
* Added support for a validation hook for maps to check if they're A-Ok.dshaligram2007-06-262-2/+30
| | | | | | | | | Tweaked savefile format (breaks saves) to allow the game to perform emergency saves if level-generation fails (followers are lost, needs to be fixed). [1743698] Re-refixed SP_ELF stub (Eino). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1659 c06c8d41-db1a-0410-9941-cceddc491573
* .des files can use a global Lua prelude (before maps are defined) that runsdshaligram2007-06-251-0/+21
| | | | | | | at start of game, before any maps are loaded, and does not run in the context of any specific map. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1654 c06c8d41-db1a-0410-9941-cceddc491573
* Allow multiple MAP sections per map (maps can be conditionalised with Lua).dshaligram2007-06-241-2/+10
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1643 c06c8d41-db1a-0410-9941-cceddc491573
* Hackily rewrite Lua chunk errors to reflect line numbers from the originaldshaligram2007-06-241-2/+5
| | | | | | | .des file so that level-designers can find the lines that are causing the problem. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1641 c06c8d41-db1a-0410-9941-cceddc491573
* Implemented .des file caching (speeds startup a fair bit): .des files aredshaligram2007-06-243-33/+3
| | | | | | | | | | parsed only once (unless they're modified again). Crawl also keeps only map stubs in memory (name, place, orient, tags) and loads the map body only when it is actually selected by the dungeon builder. This probably breaks the Windows build, will be fixed soonish. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1637 c06c8d41-db1a-0410-9941-cceddc491573
* Allow : prefixed Lua lines in .des files.dshaligram2007-06-241-1/+9
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1634 c06c8d41-db1a-0410-9941-cceddc491573
* Step 1 of .des file Lua-isation. The dungeon compiler converts .des files todshaligram2007-06-232-254/+140
| | | | | | | | | | Lua (Lua code can be embedded with {{ <lua code here> }} constructs) that is run to produce the final map. Some maps may be broken, this is untested, lots more work needs to be done. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1629 c06c8d41-db1a-0410-9941-cceddc491573
* Added new orc entries and vaults (Lemuel).dshaligram2007-05-281-1/+1
| | | | | | | | | | Added support to the map designer for specifying the monster-type for zombies, skeletons, simulacra and spectral things. Also allow specifying the number of heads for hydras ("12-headed hydra"). Fixed lexer rule bug (IDENTIFIER). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1490 c06c8d41-db1a-0410-9941-cceddc491573
* Fixed Mac build.dshaligram2007-05-091-0/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1443 c06c8d41-db1a-0410-9941-cceddc491573
* Added Lemuel's mines minivaults.dshaligram2007-05-094-17/+85
| | | | | | | Extended map DEPTH: attribute to support branch specifiers and negated depth specifiers. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1442 c06c8d41-db1a-0410-9941-cceddc491573
* Fixed trunk build for DOS and Windows. DOS and Windows builds use a SQLite db,dshaligram2007-04-223-0/+66815
| | | | | | | | | | with a dbm-like wrapper so database.cc builds unchanged. Added SQLite to the source tree. Only DOS and Windows builds use it at the moment, but it can be added to Unix builds easily (and will be added automatically if a suitable db.h or ndbm.h is not found). git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1342 c06c8d41-db1a-0410-9941-cceddc491573
* First cut at db/flat text file based descriptions.peterb122007-04-172-0/+56
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1331 c06c8d41-db1a-0410-9941-cceddc491573
* Lua makefile was not using ranlib, fixed.dshaligram2007-04-142-1/+0
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1306 c06c8d41-db1a-0410-9941-cceddc491573
* Included Lua 5.1.2 source tree in crawl-ref/source/util. This is so we can usedshaligram2007-04-14104-0/+28052
| | | | | | | | | | | | | | | | | | | | | | Lua in core Crawl code without making Crawl harder to build (than it is already). Crawl's makefiles will call the Lua makefile if necessary (i.e., if liblua.a doesn't already exist). CLUA_BINDINGS is still not enabled by default (and will not be enabled by default in the source tree). Crawl will use two different Lua interpreter instances - one for user scripts (if CLUA_BINDINGS is defined), the other (not #ifdef conditionalised) for core game Lua glue. Lua is statically linked by default. We could change this if necessary, although the added size is only 200k. The Lua sources are almost unmodified; I've only added new targets for Crawl's platform-specific makefiles to call into to build liblua.a; I've not modified any existing targets, and all Lua READMEs and copyright notices are intact. Needs integration with Xcode build. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1305 c06c8d41-db1a-0410-9941-cceddc491573
* Use end() instead of exit() for level compiler errors.dshaligram2007-04-031-1/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1206 c06c8d41-db1a-0410-9941-cceddc491573
* Increased lexer token cache to 100 tokens.dshaligram2007-04-021-1/+1
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1182 c06c8d41-db1a-0410-9941-cceddc491573
* Allow SUBST and SHUFFLE specs to be comma-separated.dshaligram2007-03-272-13/+30
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1109 c06c8d41-db1a-0410-9941-cceddc491573
* Enable more verbose error messages from the map parser.dshaligram2007-03-202-1/+3
| | | | git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1070 c06c8d41-db1a-0410-9941-cceddc491573
* Added KFEAT:, KITEM: and KMONS: map directives to allow placing specificdshaligram2007-03-122-1/+38
| | | | | | | monsters, terrain (named altars, traps, shops) and items all on the same square. git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1028 c06c8d41-db1a-0410-9941-cceddc491573