| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
They were only used in one place, and the relevant code was moved to
that one place in the previous commit.
|
|
|
|
|
|
| |
This does remove the "doesn't seem to be taking followers" message
when misspelling a god name, but keeps it when trying to choose Fedhas.
More importantly, it makes wizmode &_<esc> not abandon one's god.
|
| |
|
|
|
|
|
|
|
| |
.cc, moving its contents into the new stepdown.cc and strings.cc.
(The latter also got many donations from libutil.h.)
Down with stuff! Up the new flesh!
|
| |
|
| |
|
|
|
|
|
|
| |
Now find the god with the earliest match to the input string, rather
than the first god that has a match. Now &_a will give you Ashenzari,
not Kikubaaqudgha.
|
|
|
|
|
| |
Mostly by joining short lines in places where that would let us remove
braces.
|
| |
|
|
|
|
|
|
|
|
|
| |
A good deal of functions move to the two new files, mon-poly and
mon-message. Of the others, some go to where they are used, some to
mon-util, and a few are made member methods of monster.
This probably breaks Xcode compilation, and I'm not able to test
the changes I made to MSVC that will (hopefully) keep it working.
|
|
|
|
|
|
|
|
|
| |
Outside of vaults, they existed only from spriggan rider death,
and as a fairly rare spawn in Swamp. Their stats were overall very
similar to 'spider,' and their special ability was not too noticeable.
Spriggan riders now ride vampire mosquitoes instead, as a more swampy
substitute.
|
|
|
|
|
|
| |
The complaints against the branch are well documented, mostly stating
Dancing Weapons are awful enemies and the Hall of Blades is filled with
them.
|
| |
|
|
|
|
| |
This fixes all the instances caught by unbrace.
|
|
|
|
| |
Since the card was removed and it only remained as a Zotdef effect.
|
|
|
|
|
|
|
| |
Decks of dungeons were no longer gifted and only generated very rarely.
Most of the cards in it (as well as some cards just removed from wonders)
were either uninteresting or problematic for various reasons. The removed
cards are Experience, Sage, Water, Glass, Trowel, Minefield.
|
|
|
|
|
|
| |
They were almost identical to polar bears, which at least had the
distinguishing (from black bears) to swim and be at home in an ice
cave.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The golem archetype - slow, omni-resistant, melee-only, and with titanic
defenses and health - hardly needs to be around as much, as exaggerated
as it is, or with as many different types as it currently has.
This forms the last push of vault revisions on vaults containing stone,
clay, or (some) iron golems. The last of these is preserved for the flavour
and function for Dis, where it can have enough ambient support to work;
the other two have been phased out by appropiate other earth-themed monsters.
Earth elementals are still based off of the golem archetype, but already
serve purposes beyond vault placement, and have much less extreme health;
for the most part, they've replaced many of the earth and clay golem uses,
alongside the revamped and equally flimsy gargoyles.
(Also, adjust crystal golem speech and banish iron elementals back to Sprint.)
|
|
|
|
| |
In particular, ctrl-O should no longer mention the branch.
|
|
|
|
|
| |
Replaced with various combinations of adders, worker ants and giant mites
in the places that used them.
|
|
|
|
|
|
| |
They were barely distinct from plain rats and green rats, and only really
used in sewers. Replaced them with various arbitrary weightings of rat and
green rat.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implementer's notes (Grunt):
The spell Crystal Bolt is player-castable for possible future use with the
"rod of bolts" (reworked rod of destruction), and crystal golems have been
replaced 1:1 in vaults that used them.
---
Designer's notes (tenofswords):
Not every golem can be cut without scarring many a vault, and golems are
very strongly themed to the point of reluctance with complete cuts.
Still, they're golems, slow melee-only monsters with extreme defenses and
excellent melee that thus encourage annoying tactics due to being unable
to kill patient players but also being very difficult to kill. We certainly
don't need nearly versions of this sort of monster as we currently do
(goliath beetle, slugs and snails, golems, iron trolls, iron imp/devil,
earth elemental); the only time this really works is in Dis, where
there are hell effects and very nasty company to make sure that there's
no time to use the slow strategies of avoiding being hurt much by golems.
This serves as another change to a slow, melee-only monster for preserving
some themes and flavours without outright cutting into the monsters available.
These new crystal guardians once more have good defense and even better
resists in exchange for bad health and zero EV, appear in numbers in most
vaults, are boosted (to normal) speed, and get a ranged option; in this
case, a bolt of fire or cold that happens to bounce off all walls, rather
than just crystal, easily resisted by the caster in ricchoets. This is
modelled off the decent-enough edits on minmay_guarded_unrand_dyrovepreva,
and the name originates from there, too.
Between crystal guardians and war gargoyles as less terrible material,
I've got plans to edit out stone golems, clay golems, and iron golems
out from basically everywhere but Dis:7 vaults, which should pave the
way for essentially removing these three and dealing a decent blow to
the multitudes of slow, melee-only, very difficult to destroy encounters
in sheer differences of monsters, though mostly by changing vault-specific
mediocre monsters rather than significantly impacting overall monster sets.
For now, the patch has a near 1:1 replacement use with crystal golems, aside
from most importantly adjusting (and upping) their use as rare D:12-16 OODs.
Needs a new tile.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
This reverts commit b0c9531a8997436f0bddfa218105d2e67c16f2ce.
This reverts commit 054e7ae2f5fb42c12dc169898259e58f2dc5a77b, reversing
changes made to 1ddc8957bd848179aac795187f07496f02932644.
|
| |
|
|
|
|
|
|
|
|
|
| |
Also simplify quite a few cases.
It turns out in >90% cases of non-literals the argument had .c_str(),
which meant it was pointlessly malloc()ed and converted from and to
std::string. I believe a sprintf is faster, so even the argument of
miniscule speed-up doesn't apply.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
DRAGON now genus-only.
Brief discussion history in 4d5c11a304968c3635d8b60075a0ab9b39d71d43.
Summary of current brainstorm session:
"Dragon" means "fire-breathing dragon" in European mythology because
the other kinds never existed. In the world of Crawl however, there
are many kinds of dragons - so it seems that people would have given
the fire-breathing one a more distinctive name.
Producing "fire dragon armour" from "fire dragon hide" also means less
player confusion if a "fire dragon" dropped that hide.
Red draconians and fire drakes also both get a fire-y qualifier.
|
|
|
|
|
| |
Seriously, even preparing this commit gave me a pain in the triangle between
the thumb and index finger's bases and the wrist.
|
|
|
|
| |
Also, simplify an expression such removal of parentheses revealed.
|
|
|
|
|
|
|
|
|
| |
Restarting from such a save would reset the random seed, while the first run
had a random generator hold a different state.
This doesn't handle real level transition (ie, the initial banishment and
being thrown deeper into the Abyss). That's doable if we would inhibit the
commit somehow, but for now, I don't care much about those 5000 turns.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Wolves were sort of in an awkward position of being very similar to
other canine monsters in a similar depth range, yet being less notable
than either war dogs or wargs, and also rarely appearing. Yet, in
discussion in ##crawl-dev, it was generally agreed that wolves were
far more thematic in ice caves (one of the only places they occur
commonly) than war dogs would be, and also that war dogs primarily
occuring wild (ie: in Lair), despite their description indicating
otherwise was itself a little odd.
Following that discussion, in merging the monsters together I have
elected to keep wolves, but promoted them to the more notable war
dog stats. Hopefully this won't cause player confusion for too long.
Wolves replace war dogs in all places the latter could previously
spawn. Vaults that previously placed wolves now sometimes place
fewer of them than before, or at a lower weight. Call Canine Familiar
now summons wargs in place of old wolves (which it sometimes already
did).
|
|
|
|
|
|
|
| |
Genus-only, recolouring, etc. Not for "dummies" which are valid monsters
otherwise.
This is mostly redundant with M_NO_POLY_TO which it implies, for now.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The behaviour should be preserved exactly or almost exactly, only the code
changes from totally, utterly unreadable to merely hard to read.
Actual differences:
* strong OODs in shallow branches would degenerate into picking a monster
randomly from the whole branch, now they pick from the bottom level (or
so-called OOD cap of Elf:7, Tomb:5, D:31 and Vaults:15).
* Zot no longer replaces requests for Zot:5 by Zot:4, and proper hells,
$(HELL):4-7 by $(HELL):3.
* this means hell monster sets need fixing!
* zombie size doesn't affect their spawning
* zombie selection obeys the depth passed
* which makes zombie sets pretty limited -- needs review/redesign?
The new format is:
{ 9, 19, 826, SEMI, MONS_YAK },
which means: yaks can spawn on D:9-19, with _linear_ rarity 826 in the
middle of the range. A "SEMI" distribution means that at the edges,
D:9 and D:19, the effective rarity is half that, 413.
Distributions:
FLAT 100% 100% 100%
SEMI 50% 100% 50%
PEAK 0% 100% 0%
UP 0% 50% 100%
DOWN 100% 50% 0%
That "0%" doesn't mean the monster won't spawn on the top/bottom level
(D:9 and D:19 for yaks), the range is fudged so D:8 receives 0% chance,
D:9 16.6%, linearly up to 100% on D:14.
Yes, this sounds and is complex, but at least the complexity is not strewn
around obscure code anymore, and a number of limitations have been lifted.
ZotDef still uses the old code via an emulation layer.
|
| |
| |
| |
| |
| |
| |
| | |
It leads to no end of problems, and its only purpose was showing 'z'/'Z'
glyphs.
Note: custom monster glyphs on the main screen are broken since af76f80.
|
| |\
| | |
| | |
| | | |
Sorry for merge commits, but rerere is pretty limited.
|
| |\ \
| | | |
| | | |
| | | |
| | | | |
Merge commits instead of rerere suck, but not being able to comfortably use
the test rig sucks even more.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
There's still a lot of use of monster_level inside monster selection, but
at least the external interface should be free of it.
ZotDef is handled by a hack, might be wrong -- beware.
|
| | | |
| | | |
| | | |
| | | | |
Rationale: http://www.giantitp.com/comics/oots0012.html
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | | |
We'd want them to, but that code is getting overhauled anyway, so let's not
cloud things.
|
| | | | |
|
| |_|/
|/| | |
|
| | |
| | |
| | |
| | |
| | | |
This is the first step in removing a large number of overly similar
and not very interesting monsters.
|
| |/
|/|
| |
| |
| |
| |
| |
| |
| |
| | |
They were insufficiently distinguished from their brethren, particularly
the single deep trolls which replace them.
This also replaces randomly generated rock trolls with single deep trolls.
Deep troll bands are now generated by specifying one of the
professionals, which come with bands; thus a deep troll band is going to
have at least one professional.
|