| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
The command-line option is -mapstat, so the non-static functions use
the prefix mapstat_ instead of mapgen_ now for consistency. The static
functions and variables have had their mg_ prefixes removed.
|
|
|
|
|
| |
This is intended to get ziggurat portals to place in nice locations if
the level they're on happens to be an encompass vault.
|
|
|
|
|
| |
Sometimes, they're there to emphasize a break between two sections of code,
which is good. In a majority of cases, though, they're just inconsistent.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of mixing extra vaults in with primary vaults, a primary vault
without the extra tag is placed first, and vaults with ORIENT: tags and
the extra tag are placed last in a manner similar to how abyssal vaults
are handled
Handling of minivaults is unaffected.
This is intended to prevent Depths from placing two huge scary primary
vaults on one level, but it also has handling relevant for upcoming
tweaks to areas of the dungeon currently dependent on tagged vaults.
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the original vault picked to fulfill a chance_ tag fails to place, a
vault tagged fallback_ with the same root (so fallback_hell_entry for
chance_hell_entry) will be tried instead.
This is intended to guarantee that important vaults (hell/pan/abyss
portals) will get placed. Right now this isn't actually a guarantee per
se, but the chances that a 1x1 vault fails to place somewhere seem to be
negligible - if this needs to be expanded upon, perhaps we can add the
suggested "guarantee" tag.
|
|
|
|
| |
This has been gone since 9e6e691 (two and a half years ago!).
|
| |
|
|
|
|
|
|
|
|
|
|
| |
For most header files, this only saves on having to recompile a
small number of source files, but there are also a few headers
where small changes would now take significantly less time.
This is most obvious for the Tiles build for which the dependencies
have been greatly reduced, so that the only additional includes
when compared to console are strictly library or tile related.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I had to rename distance() (in coord.h) to distance2() because it conflicts
with the STL function to compare 2 iterators. Not a bad change given how it
returns the square of the distance anyway.
I also had to rename the message global variable (in message.cc) to buffer.
I tried to fix and improve the coding style has much as I could, but I
probably missed a few given how huge and tedious it is.
I also didn't touch crawl-gdb.py, and the stuff in prebuilt, rltiles/tool
and util/levcomp.*, because I have no clue about those.
|
| |
|
|
|
|
|
|
| |
They used their own, which was never incremented as no one remembers about
it, and didn't follow changes to marshalling structures which might affect
map files.
|
|
|
|
|
|
|
| |
"File:" is shown in your editor's status bar.
"Written by:" was used only for the first person who changed a file. We got
git for that now, and pre-DCSS history is so woefully inaccurate it doesn't
really matter.
|
|
|
|
|
|
|
|
|
|
|
|
| |
We used to call run_map_preludes after loading the game, in case maps wanted to
change their depths, etc. based on character type. With the new Lua function
marshalling, however, we rely on .des file global preludes being loaded before
loading the save file (since any Lua functions referenced in a save file must
be locatable by name when loading the save).
The fix is to split run_map_preludes in two: run_map_global_preludes which runs
.des file global preludes and is called before loading saves, and
run_map_local_preludes which is called after game start.
|
| |
|
|
|
|
| |
(Zaba).
|
|
|
|
|
|
|
| |
Fire hooks at various points during vault generation and allow Lua code in
vaults to add functions to these hooks. Lua hooks are handy when creating
vaults that want to place other vaults (for instance a vault that places
ten copies of another small minivault).
|
|
|
|
|
|
|
|
|
|
|
|
| |
after version bump.
This is rather large, but rune_subst was in the saves, and I decided it was
cleaner to bump the major version than the minor one.
This updates enum.h. I apologize for the inconvenience.
This might have broken something, but the previous changes to .des files should
have taken care of that.
|
|
|
|
| |
Needs work; the menu column size is probably too small for Sprint map names.
|
| |
|
|
|
|
|
| |
CHANCE is now an (almost) absolute chance of a vault being placed on a given
level in its DEPTH range. CHANCE applies only to vaults picked by depth.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
and recompiled by new Crawl processes while older processes are running.
When mapdef.cc detects that a .dsc file is out of sync, it throws an exception
that dungeon.cc catches. dungeon.cc then discards all loaded maps and reloads
then from the map index (.idx) files.
The old behaviour was to create a panic save and exit for out-of-sync .dsc
files, which is not ideal since the panic save code is rarely used and tends to
bitrot.
When regenerating text database files in DGL installs, the game no longer
unlinks the old .db file, and will instead update the old file with the
new db keys.
None of this code should be relevant to single-user installs.
|
|
|
|
| |
considerably reduces heap use in the first Crawl process to run in a fresh install.
|
|
|
|
|
|
| |
Addition of epilogues to map and a change to the way map files are saved
and loaded means that Stuff Was Not Right, as I forgot to increment the
version number.
|
|
|
|
| |
starting up.
|
|
|
|
| |
that both huts are isolated from the rest of the level.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Generates a vector of map_defs that have the relevant tag. Can check
depth (defaults to false) as well as whether or not a vault has
previously been placed (defaults to true).
Convenience function weight_map_vector returns an integer corresponding
to the total weight of all of the maps contained within the vector.
These functions will be used to re-do unique placement as per dpeg's
design (see c-r-d email).
|
|
|
|
|
|
| |
See the comment in l_dgn.cc:dgn_set_border_fill_type. Should be replaced
with something that works on map_lines instead, but this will do for the
meantime.
|
|
|
|
|
|
|
| |
This reverts commit 941444076c26e5e5149c6368a4261d60842fe3ec.
After consultation with Enne, this doesn't really fix the issue, and is
therefore superfluous.
|
|
|
|
|
|
|
|
|
|
| |
The Lua prelude of maps isn't executed early enough now. Using 'BORDER'
sets map->border_fill_type as soon as the map is read, rather than after
it is placed.
This commit increases the value of MAP_CACHE_VERSION.
Can be reverted if it causes issues or is unwanted.
|
|
|
|
|
|
|
|
| |
Vaults can now include other vaults as a part of their definition. These
subvaults are currently included by tag only and replace glyphs in their
parent vault. See documentation for more details.
Vault:8 has been modified to use subvaults.
|
| |
|
|
|
|
|
|
| |
This removes a couple of unnecessary includes from header files.
I may have missed adding some tiles includes.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The previous dungeon layout.des functions all apply directly to the grid
and so are unsuitable for use in vaults. This aims to correct that by
providing lua functions that can manipulate maps (of glyphs).
grd[x][y] in a .des file can now be used to get and set glyphs in the
current map. This should allow for less cumbersome map variations
than what you can do with just SUBST and SHUFFLE.
To support that, map_def no longer batches up transforms--it applies
them all immediately. This resulted in a good bit of refactoring.
FTILE/RTILE map commands now support setting the tile for multiple
features at once.
There are also a small number of new lua functions that apply to maps
(map_octa_room, map_smear, and map_extend). Ideally, these will
eventually replace the existing builder funcs that work on grd.
|
| |
|
|
|
|
|
|
| |
consistency
Signed-off-by: Steven Noonan <steven@uplinklabs.net>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reinstate the distinction between minivaults and regular vaults when placing
maps based on PLACE:, because minivaults cannot be placed before the rest of
the level is built.
Change Shoal huts to be picked by tag instead of PLACE.
Allow DEPTH: to use branch:$.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10591 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
| |
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@10211 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
|
|
| |
vaults are now handled by _build_vaults.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@8169 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
|
|
| |
Fixed bad bounds checks for minivaults placed by dgn_place_map.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7716 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
|
|
|
| |
if there's only one possibility to choose from.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7649 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
| |
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7625 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
|
|
| |
for random gen in main dungeon and Pan; still needs entry portal timing/charging fixes, and ziggurat builder is still incomplete.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7601 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
| |
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7562 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
|
|
| |
tedious code used to mess with this pointless buffer.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7560 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
| |
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7558 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
| |
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7557 c06c8d41-db1a-0410-9941-cceddc491573
|
|
|
|
|
|
| |
used as a generation weight (i.e. WEIGHT is what the old CHANCE used to be).
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7501 c06c8d41-db1a-0410-9941-cceddc491573
|