summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/ghost.cc
Commit message (Collapse)AuthorAgeFilesLines
* Rename a now-incorrectly-named constant.Neil Moore2014-07-311-3/+3
| | | | And improve a comment.
* Refactor _random_special_pan_lord_brand()Nicholas Feinberg2014-07-301-21/+18
| | | | | Also remove the small chance of getting SPWPN_NORMAL, which I suspect was unintentional.
* Make Crawl a little uglier (upgrade ugly things)Nicholas Feinberg2014-07-301-1/+1
| | | | | | | | | | | Ugly things now have the stats of old very ugly things; very ugly things are now... miniature elemental dire elephants, more or less. (A little weaker.) They've been adjusted to not spawn in bands below a certain depth (d:13 for ugly things), ala the famous d:1 gnoll. Ideally, they'll be potentially threatening in Vaults/Depths now. (Their primary spawning spot.)
* Remove unnoticeably small ugly thing AC/EV variationreaverb2014-07-301-4/+3
|
* Make ugly things actually use mon-data statsNicholas Feinberg2014-07-301-29/+18
|
* Remove stuffNicholas Feinberg2014-07-291-0/+1
| | | | | | | .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!
* Pull possible pan lord attack brands into a helper functionreaverb2014-07-291-22/+30
|
* Clarify a commentreaverb2014-07-291-1/+1
|
* Rearrange some pan lord generation codereaverb2014-07-291-19/+19
| | | | | Move the chance for the a pan lord to cast spells closer to the things it effects, etc.
* Refactor some pan lord spell selection codereaverb2014-07-291-16/+14
| | | | | There are some very minor changes to the distribution of some pan lord spells.
* Make pan lord speed more readablereaverb2014-07-291-4/+7
|
* Refactor weapon_skill()Nicholas Feinberg2014-07-131-1/+1
| | | | | | | | | | | | | | This function was misleadingly named (it only provided the skill used for melee weapons, not ranged weapons), and incomplete; code along the lines of "is_ranged_weapon(*it) ? range_skill(*it) : weapon_skill(*it)" was scattered in about half a dozen different functions. I've corrected both of those problems (renaming weapon_ skill() to melee_skill() and adding item_weapon_skill()), and also possibly fixed two bugs in the process - an l_you.cc function that claimed to provide the skill used for the starting weapon (but actually only gave the melee skill), and unrand creation code that checked if a potential unrand swap used the same (melee) skill as the weapon type being generated.
* Remove the dragon slaying brandreaverb2014-06-181-1/+1
| | | | | | | | Generally it doesn't create interesting decisions because dragons are such a small group and are mostly a subset of monsters slowed by the freezing brand. In addition, it has rather arbitrary effects against players, hitting some for an degenerate amount of damage while ignoring others.
* Rename AF_NAPALM to AF_STICKY_FLAMEreaverb2014-06-111-2/+2
|
* Combine the frost/flame and freezing/flaming brands.Shmuale Mark2014-06-101-2/+2
| | | | | | | Elec and venom launchers already use the same brands, and with ranged code more similar to melee code this change actually simplifies most code. There should be no gameplay change though some weird brand picking code for launchers was refactored, which might have some effect.
* Make Doxygen @returns "@return" for consistancy.reaverb2014-06-051-1/+1
|
* Don't make dancing weapon stats dependent on mass.Shmuale Mark2014-05-261-18/+13
| | | | | | | | | The reasoning in comments seemed to be that it rewarded investing in strength to lug around heavy weapons, but if item weight does not exist there doesn't seem to be much reason to keep that around. This also nerfs dancing weapon defenses, on the whole, but that seems fair.
* Remove AF_DISEASE.Shmuale Mark2014-05-141-12/+2
| | | | | | Sickness does not work very well on melee attacks, and is hard to make interesting at all. Purple ugly things get bonus melee damage over their relatives to keep them distinguished.
* Use you.innate_mutation rather than you.innate_mutationsreaverb2014-05-141-1/+1
| | | | Ditto for you.temp_mutation.
* Fix "if(" and friends.Neil Moore2014-05-121-1/+1
|
* Remove the Summon Elemental spellChris Campbell2014-05-061-1/+0
| | | | | | | | It was fairly fiddly and unclear in its mechanics, and elemental summoning is now covered by the elemental evokers (and possibly the storm god at some point in the future too)ยท Moved Summon Forest from the book of the Warp to replace it in the book of Summonings, and added Dispersal to replace it in the book of Wizardry.
* Let ghosts (but not panlords) cast Tornado.Steve Melenchuk2014-04-121-1/+3
| | | | | | Some discussion with the other devs suggests the previous concerns with this (scummability, etc.) are edge cases at best; it's early enough in trunk that I think we can get away with seeing what happens here.
* Remove a seemingly unintentional problem with the ghost spell code (Patashu).Shmuale Mark2014-04-111-54/+30
| | | | | | | | | | If spells[3] or spells[4] couldn't be found in the misc list, instead it looked at the conjuration list. The problem was that it started over instead of skipping the ones in the list that spells[0] and spells[1] had taken. This probably led to less spell variety on ghosts. This also cleans up the code a lot and documents it.
* Tweak servitor spell listsDracoOmega2014-03-211-4/+10
| | | | | | Also only use the fallback list if there's neither primary nor secondary spells otherwise (or we could end up mixing fireball and magic dart into one servitor).
* Formatting fixes.Neil Moore2014-03-071-1/+1
|
* Reduce the speed bonus from boots of running for player ghostsChris Campbell2014-03-071-1/+1
|
* Make non-spellcasting random pan lords rarerChris Campbell2014-03-071-1/+1
| | | | 1/4 instead of 1/3 of pan lords.
* Make Pan lords always see invisibleChris Campbell2014-03-071-1/+1
| | | | Previously they did 90% of the time.
* Colour spellforged servitors properly (78291).Steve Melenchuk2014-03-061-0/+1
|
* Allow ghost casting of dazzling spray (Grunt).gammafunk2014-03-061-0/+1
| | | | | | | | | Player ghosts can now have dazzling spray, which sets confusion based on an XL check that's the same as used when blinding monsters. This commit is mostly based on Grunt's commit 0d12a004 in the glaciate-testing branch and cleaned up some for trunk, with some aspects reorganized.
* Revamp / simplify monster melee poison applicationDracoOmega2014-03-061-3/+3
| | | | | | | | | | | | | | | | | | | | | | This removes AF_POISON_MEDIUM, leaving only AF_POISON and AF_POISON_STRONG as the normal poison attack flavours, but basing poison damage inflicted by attacker HD instead (AF_POISON_STRONG inflicts more per HD, but importantly partially ignores rPois as it presently does). Also it simplifies some of the random checks for whether poison is inflicted at all. In effect, this means that high HD monsters should inflict amounts of poison that are more tactically relevant than present (which seem generally desirable to me) while simplifying how they do so, and keeping the poison damage from early creatures lower (as they also have low HD). Many creatures seem to fit a natural progression with this new system, but there are several cases where monsters of the same HD were explicitly differentiated by poison severity (such as scorpions, with the same HD as adders but worse poison, or wolf spiders, with more HD than any other spider but explicitly weaker poison). Some of these will likely need individual changes.
* Rename Summon Menagerie to Monstrous Menagerie.Steve Melenchuk2014-03-061-1/+1
| | | | Less boring, at least.
* Let Spellforged Servitors also cast Bolt of DrainingDracoOmega2014-03-061-0/+1
|
* New spell: Spellforged ServitorDracoOmega2014-03-061-0/+128
| | | | | | | | | | | | | | | | | | | | | | | | | | With the idea of introducing more summoning spells that a bit unique in some way, this is a level 7 Summoning/Conjurations spell which summons a single golem-like being that possesses a subset of the caster's own conjurations. The spell list is assembled deterministically, somewhat similar to player ghosts (though different in a number of regards). The first 3 spell slots draw from a 'primary' list containing direct conjurations like bolt of cold or poison arrow, while the next 2 are from a 'secondary' list which tends to contain AoE effects and cloud spells, as well as things like airstrike. Spells are selected roughly in order of level and power, with the player's higher spell skills having a small effect. In practice, I think the servitor will fairly transparently possess a selection of the player's better spells, without anyone needing to think much on how it arrived at this list. Many of the highest level spells (like fire storm and shatter) are excluded not only for power reasons, but also because a servitor using these could be downright dangerous to its caster. The main exception I made here was CBL, which is allowed (being both lower-level and often similarly dangerous when the player uses it, though I open to changing this).
* Replace Summon Ugly Thing with Summon Menagerie (pending a better name)DracoOmega2014-03-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Summon Ugly Thing was never a particularly impressive spell and the summon cap changes have left it even more underwhelming these days. Still, there is a need for a solid midrange summon available to good god worshipers, and this is a shot at assembling one that might be more interesting than the ubiquitous ugly things. The spell can summon either a manticore, lindwurm, harpy (multiples at higher power), or a sphinx (much rarer except at high power), which I feel are solid midrange creatures with a shared mythological theme and some relatively unobtrusive gimmicks (and more of an emphasis on ranged combat than its immediate 'upgrade' in Summon Hydra). Somewhat similarly to Shadow Creatures, multiple harpies count as a single creature for the purposes of the spell's cap, and the creatures also receive a modest HD boost based on high spellpower (I'm still somewhat divided on this, unlike with Ice Beast, but it does help the spell scale more strongly with spellpower that it otherwise would; perhaps there is some higher-tier creature accessible with high power that could help bridge this gap on its own?) As a natural consequence of Summon Ugly Thing being replaced, Kirke also acquires this spell. This is effectively a buff for her, but as one of the least dangerous midgame uniques, I am sure she can handle it, and a selection of Greek mythological beasts are surely at least as suitable things for her to summon as... whatever ugly things are.
* Remove Demonic HordeDracoOmega2014-03-061-3/+0
| | | | | | | | This was neither a popular nor powerful nor especially interesting spell, which was basically 'Call Imp, except a lot more of them'. Making the demons more individually powerful only further steps on the toes of the many other demon summoning spells that already exist, so I think it is fine to simply trim it.
* Convert Dragon's Call to Summon Dragon for player ghostsDracoOmega2014-03-061-1/+3
| | | | (Also raise the cap slightly, now that it's monster-only)
* De-ACTION_ENERGY ugly things; set their speed properly in ghost.cc.Steve Melenchuk2014-03-051-2/+2
| | | | This reverts commit e1cf388e90bd9bfeff688d24233e356a16cfecc5.
* Remove AF_POISON_NASTYChris Campbell2014-02-261-4/+4
| | | | | | | Nasty poison was a strange extra type of poison (inflicting 2 levels of poison on every hit) used only on a few monsters. Replaced with whichever of medium (weaker) or strong (weaker on average but still poisons through resistance) seemed vaguely more appropriate in each case.
* Glaciate.Steve Melenchuk2014-02-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Level 9 Conjuration/Ice; generates a cone-shaped great blast of ice around a specified target. The minimum range of the cone is 3, and the maximum is LOS at maximum spellpower; damage within a minimum-range cone is equivalent to Ice Storm, and falls off with the square of the distance for larger cones. Leaves freezing clouds over the affected area, like Ice Storm; they dissipate really quickly over large areas, though. Targets hit with Glaciate are flash-frozen; they are subject to slow movement for three turns. Targets killed with Glaciate have a 3/5 chance of becoming a block of ice (similar to a pillar of salt). Also contains a monster-castable version of the spell. Replaces Ice Storm; most of Ice Storm's code disappears (ZAP_ICE_STORM is TAG_MAJOR_VERSION == 34'd out). Go fight Lom Lobon to see the monster version. Large chunks of this either originate from a patch from Keanan Smith (Siegurt), seen at https://crawl.develz.org/mantis/view.php?id=7760, or from the following discussion on Tavern: https://crawl.develz.org/tavern/viewtopic.php?f=8&t=9854
* Merge branch 'summon_spells'Chris Campbell2014-02-181-1/+0
|\
| * Remove Summon ScorpionsChris Campbell2014-02-101-1/+0
| | | | | | | | | | | | | | It's already been replaced in the Summoner starting book, and is one of the summon spells that mostly just relies on spamming large numbers of monsters. Alistair's Intoxication is shuffled around in a couple of books to replace it in Envenomations.
* | Remove the Dig spellChris Campbell2014-02-141-4/+1
|/ | | | | | | Allowing cheap, infinite digging out of combat is problematic, and with Felids now able to use wands it's possible for them to dig in places where they really need to for whatever reason, without needing the spell to still exist.
* Give pan lords rare quicksilver bolt, orb of electenofswords2014-02-021-1/+3
| | | | | | | | | | | | Hand newly-spellified orb of electricity to pan lord in the same slot they get extra rare chances for storms and hellfire. It's still highly damaging and direct even with the collateral damage, so it should be fine compared to the blocked Conjure Ball Lightning and Ozocubu's Refrigeration; ice storm is still in the list, etc. Also, since extra IMB is really silly on a Pan Lord, give them one of the few nasty "spare" monster spells left, quicksilver bolt, for extra rather rare terror, instead.
* Let monsters cast Static Discharge; support for arbitrary start points.Steve Melenchuk2014-01-281-0/+1
| | | | | | Right now it's just ghosts that will cast it, but I have at least two seemingly viable ideas for this functionality - one involving a new enemy and one involving an unrand.
* Drop MUT_SLOW and MUT_FAST as random mutations.Adam Borowski2013-12-301-4/+4
| | | | Too bad/good to give randomly. Also, a blocker for time-based scoring.
* Rename "sabre" to "cutlass".Adam Borowski2013-12-081-1/+1
| | | | | | | Sabres are a massive category that, while including even short stuff (like cutlasses!), is nowhere near the low end of "long blades" on the average. So we had a "short blade" item whose name included the longest 1-handed long blade...
* More formatting fixes for return (...);Neil Moore2013-11-151-1/+1
|
* Drop unnecessary parentheses from return statements.Adam Borowski2013-11-151-1/+1
|
* Axe a buttload of useless #includes.Adam Borowski2013-11-031-1/+0
| | | | | Can't test Android, MSVC or Mac, but a very brief glance at the diff suggests it's unlikely they're affected.