summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/status.cc
Commit message (Collapse)AuthorAgeFilesLines
* Remove stuffNicholas Feinberg2014-07-291-1/+2
| | | | | | | .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!
* Combine two conditionals with identical conditionsreaverb2014-07-281-3/+0
|
* Move held_status() from stuff.cc to traps.ccNicholas Feinberg2014-07-271-1/+1
| | | | | Also add some comments to stuff.h, categorizing functions for later removal.
* Fix -Potion messaging for potionless characters (#8676)Chris Campbell2014-06-121-1/+2
|
* Colour -Potions grey for mummies (petete)Neil Moore2014-06-111-0/+5
| | | | | There were objections to hiding it altogether. This matches the indicator for cTele on -cTele levels.
* Rework Confusing TouchNicholas Feinberg2014-05-291-11/+2
| | | | | | | | | | | | | | In its previous state, it was fiddly, misleading, and kind of overpowered. So: Raise it to level 2 (& remove it from Cantrips, replacing it with Corona). Remove the stacking-duration effect & increase the initial duration. Set damage of all hits to 0, and make the first successful (confusing) hit end the effect. This should still be useful, but in a level 2 kind of way. We'll see how that pans out.
* Tweak Elixir card.Shayne Halvorson2014-05-281-2/+2
| | | | | | Add it to the deck of emergency and remove the deck of enchantments from the deck of war. Also change the status colours to green and blue to match the bars.
* Move wizmode duration names to duration_data (reaverb)Neil Moore2014-05-271-0/+7
| | | | | And reformat and refactor. Several of the names should probably be cleaned up or improved.
* Remove player burden and carrying capacitygammafunk2014-05-261-26/+0
| | | | | | | | | | | Item inventory weights (based on item mass) generally don't lead to meaningful decisions that justify the inventory juggling and interface problems that come from having burden states. The 52-slot limit is a better system for limiting inventory and providing inventory-related decisions because it's not so fine-grained and doesn't require the player to examine weights for each slot. Work is ongoing to improve the slot system by consolidating food types and handling strategic consumables in a different way.
* Move duration data to its own filereaverb2014-05-261-159/+1
|
* Make status lights iterate over statusesreaverb2014-05-261-1/+1
| | | | | | This removes another place where durations were hardcoded. A light_text of "" now indicates no status light should be shown, a standard which was already informally used in the codebase.
* Change Mark's status light colour to LIGHTRED.Steve Melenchuk2014-05-231-1/+1
| | | | | | | | LIGHTMAGENTA is a colour we use for positive status effects such as DMsl or cTele, so you can completely miss that you're Marked if you have some of those up. Also adjust its long description to be more clear.
* Replace corrosion with a temporary effect.Shayne Halvorson2014-05-141-0/+8
| | | | | | | | | | | | | | | | | | | | If your equipment would have been corroded under the old system, you now get a temporary (but stacking) -5 AC and -3 weapon damage. Corrosion against armour-wearing monsters instead halves their AC. Committer's notes: Fixed whitespace and fit to Trunk Added Corrosion entry to hiscores.cc The original patch showed the slaying malus on the weapon, which may be preferable to a status light. gammafunk noted that ouch.cc iterates over equipment when deciding when to corrode, this might make less sense under the new system. -reaverb
* Remove plague shamblers.Shmuale Mark2014-05-141-2/+0
| | | | | | | | | The idea behind the miasma death explosion is interesting, but in general miasma can be extremely annoying and the cloud rather easy to avoid. This is especially true in the layout of Crypt, which is the only place they show up outside of vaults. The retching attack gave a rare special case that very rarely mattered and didn't help to distinguish them all that much.
* Don't always show "bribing" on @/% screens (#8544).Steve Melenchuk2014-05-111-8/+9
|
* Only display the Bribe status light while in a branch that is being bribedChris Campbell2014-05-111-9/+10
| | | | Lists of any other bribed branches are still visible on @ and %.
* Remove the Sage effectChris Campbell2014-05-091-22/+0
| | | | Since the card was removed and it only remained as a Zotdef effect.
* Revert "Revert "Remove player clinging"."reaver2014-05-071-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 65ff1ef470978c29490100d1732bf2b9ce2fb7cd. Conflicts: crawl-ref/source/main.cc crawl-ref/source/output.cc crawl-ref/source/player.cc crawl-ref/source/shout.cc crawl-ref/source/status.cc crawl-ref/source/status.h crawl-ref/source/terrain.cc crawl-ref/source/transform.cc Minor, prerequesite reverts: b0d520741c8e9a26e7a786a34285f7a9412d8d10 Trival removal of clinging from the Boots of the Spider 3e0928f93c3f8a78ac6327c26986b406f7d7f603 (conflict in crawl-ref/source/item_use.cc) Thanks to gammafunk for removing the last bits of clinging code! To do: Decide what to do about the boots of the spider.
* Replace Gozag's gold lust with gold distraction (dpeg).Steve Melenchuk2014-05-071-20/+0
| | | | | For every fresh pile of gold in LOS of a monster when they're acting, they have a 5% chance of doing nothing that turn.
* Add a missing period.elliptic2014-05-071-1/+2
|
* Remove Qazlal's DMsl; bump RMsl to 4*.Steve Melenchuk2014-05-071-4/+5
|
* Fix contam light for TAG_MAJOR_VERSION > 34.Steve Melenchuk2014-05-071-4/+2
|
* Fix Qazlal's RMsl showing the wrong colour (simm).Steve Melenchuk2014-05-071-1/+1
|
* Fix a Gozag message spacing error (MarvinPA).Steve Melenchuk2014-05-071-2/+2
|
* Qazlal: Elemental Adaptation.Steve Melenchuk2014-05-071-0/+8
| | | | | | | | | Taking damage from an elemental attack sometimes causes you to gain a temporary point of resistance in that element (overriding the other temporary resistances). This includes "earth attacks", i.e. physical damage, which give you a 3 AC boost. Thanks again to mikee for initially suggesting this idea.
* Qazlal: Storm Shield.Steve Melenchuk2014-05-071-2/+9
| | | | | | | | | | Starting at * piety, you gain bonuses to SH that increase with piety; fire/freezing/storm clouds will place near you with radius and frequency increasing with piety. At *** and ***** you gain RMsl and DMsl respectively. Clouds try to place only in relatively open areas so as not to block autoexplore; this behaviour might need some fine-tuning.
* Gozag: prelimiary implementation of Bribe Branch.Steve Melenchuk2014-05-071-0/+34
| | | | | | | | | | Spend 3000 gold for a chance of temporarily turning some of the inhabitants of a branch good neutral, or possibly even friendly. Bribes are only effective against newly generated monsters (i.e. on level creation or monsters that spawn afterwards); the fund times out over time and more quickly with the number of enemies affected, upon which neutral enemies turn hostile again; friendly followers will continue to follow the player subject to occasional follow-up payments.
* Gozag: gold lust.Steve Melenchuk2014-05-071-0/+21
| | | | | Fighting near the gold piles of recently-defeated enemies boosts your skills.
* Rename 'Stlth' status and mutation info to 'Stealth'Chris Oelmueller2014-04-301-1/+1
| | | | Those are not sufficiently pressed for space to explain the obfuscation.
* Standardize some MR boosts.Chris Oelmueller2014-04-251-1/+1
| | | | | | | | | Trog's Hand gets 10 more MR (to 80), and the status line is updated to account for correct amount of pluses added. Lich form MR loses 10 MR (to 40). [squashed commits and combined messages --wheals.]
* Change Ozocubu's Refrigeration.Sage2014-04-231-0/+2
| | | | | | Instead of shattering potions, player-cast refrigeration prevents potion use for 7-15 turns, with duration of repeated casts capped to 15 turns. Monster refrigeration is unaffected.
* Adjust some status lightsChris Campbell2014-04-161-11/+12
| | | | | | | | Change flight colours (blue for normal flight, white for permaflight) and describe tengu bonuses in the descriptions, make silence magenta to stand out more from normal "good" buffs (with hostile silence lightred), use lightred while petrifying, yellow for Dragon Call's cooldown, other minor tweaks.
* Display status lights for might/brilliance/agilityChris Campbell2014-04-161-3/+3
| | | | Since their str/int/dex increase isn't their only (or main) effect.
* Adjust Jiyva's jelly prayer abilityChris Campbell2014-04-161-2/+0
| | | | | Remove the "Pray" status light, slightly randomise the duration per-jelly, and improve the messages and description.
* Remove the unused jelly formChris Campbell2014-04-101-0/+2
|
* Let @ (and lua) display negative values for poison_survival().elliptic2014-04-071-1/+1
| | | | | So that players have a way of guessing whether heal wounds might be enough to survive.
* Fix poison status incorrectly showing as lethal sometimes.elliptic2014-03-291-2/+2
| | | | The HP bar was correct; this just affects the status light and the @ status.
* Give players the exact poison survival prediction value, through @ or lua.elliptic2014-03-291-1/+1
| | | | | | | | | | | | | This addresses issues with different sizes of HP bars giving this value to different amounts of accuracy (mainly a console vs webtiles thing, I believe). The extra accuracy is barely useful at all (especially as it is sometimes off by 1 anyway), but giving it to the player doesn't seem like a problem - we just don't want to waste space in the main display. Displays as "You are seriously poisoned (50 -> 19)." in the @ status display. Also replaced you.poisoning() with you.poison_survival() in the player lua, since that is the value we are displaying everywhere else.
* Take regeneration rate into account when displaying poison level.elliptic2014-03-131-1/+1
| | | | | | | | | | | | | | Previously "lethally poisoned" often didn't actually mean the poison would be lethal if you rested it off, since it didn't take into account natural regeneration. This made a lot of the poison display useless in many situations. This commit adds functions poison_is_lethal() and poison_survival(), the latter of which returns the expected lowest that your HP will go based on your current poison level and regeneration rate. This function is occasionally off by one, hopefully always in the direction of surviving with one more HP than expected... so occasionally "lethal" poison will just leave you at 1 HP.
* Make the Battlelust card a bit better.Shmuale Mark2014-03-101-2/+0
| | | | | | Previously, the card's effects were more desirable the lower the power. This removes the card-specific DUR_SLAYING and moves the might effect to the higher powers, with agility as well at power 2.
* Show lethal poisoning in dark red properly.Steve Melenchuk2014-03-061-4/+4
|
* A first pass at deterministic player poisonDracoOmega2014-03-061-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of players having 'levels' of poison, which deal differing damage and decay stochastically, the player's poison level is now stored as an actual specific quantity of damage that will be dealt over time. The damage formula is very much provisional, but currently deals 10% of your total accumulated poison damage per 10 aut (scaling with time taken), to a maximum of 15 and a minimum of 1/4. DUR_POISONING stores the total amount of hp worth of poison, multiplied by 4 (to account for the 1/4 hp damage possible at the low end of the scale). Possibly it should be changed to an attribute, since it's not really a duration, but this was equally true of how DUR_POISONING was used up to now. This formula deals damage for high values of poison more quickly, but tends to last less time (sometimes much less). One of the ideas behind this is to 'compress' heavy poison, so that it can be relevant within the timeframe of a single combat (as abundant !curing makes even extreme quantities of lategame poison mean little outside of it), while also allowing easier resting off of poison when the quantity is trivial (as the deterministic nature makes it easy to tell the player is in no danger, and therefore not interrupt them). Ideally, it allows the poison status to have some lategame tactical relevance, when currently it generally does not. This formula is also a lot more smooth than the old one, which would deal very low damage per turn for a while, then suddenly spike from 3 max damage to 14 when you passed the threshold at 10 levels of poison. (Also, the variance is substantially less). Due to the complexities of estimating what the 'average' damage of a level of poison currently is, conversion of many sources of poison that I intend to remain similar will be very approximate. While I feel that lategame poisoning could use a power boost (and plan to give it one), earlygame sources such as adders were already strong and I do not mean to affect their balance considerably. Probably this work will need several passes. (Note that I am not planning to significantly affect the balance of the poison status for monsters at the same time. There are ways it could arguably be improved, but the relevant balance issues at play are fairly disjoint from those concerning player poisoning, and so I feel this is more than enough to upheave at once. For now, monsters will just roughly downscale the true damage values of a poison effect into something fairly comparable to the old poison degree values - I expect this is close enough to current values in most places)
* Replace Mass Abjuration with Aura of AbjurationDracoOmega2014-03-061-0/+2
| | | | | | | | | | | | | | | | | Mass Abjuration was never an especially popular spell at level 6, but the recent changes which cause summons to be automatically abjured upon their caster's death renders its usefulness considerably lower. This experimental change is aimed at making the spell more appealing given how readily available this faux-mass-abjuration already is to everyone. Aura of Abjuration causes the caster to continuously perform a lower power version of Mass Abjuration each turn for a reasonably long duration, sending new summons away shortly after they arrive (given sufficient power). This version could even be a useful pre-cast option for battles with summon-focused enemies and provides tactical options which old Mass Abjuration did not, and might give the spell some play in the current environment.
* Overhaul Summon Dragon for playersDracoOmega2014-03-061-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Summon Dragon was hit extremely hard by the summon cap, as the effective strength of a summoned monster is superlinear with their quantity, and 2 dragons simply does not provide even remote offensive or defensive parity with equal level spells in other schools, such as tornado or shatter (since killing groups of monsters quickly is a pretty good form of defense). It is true that it could be used in consort with other summon spells to increase its impact, but the same is equally true of pairing tornado with other conjurations. A level 9 spell is a huge investment and its impact should be equally huge, which does not seem at all the case at present. When testing it against other equal-level spells in a range of realistic combat scenarios, Summon Dragon takes more time to defeat even modest encounters than its peers (often much more), while generally exposing the player to more danger in the process (both due to its delay in killing ranged threats and also that you can no longer form an effective screen of dragons with only 2 of them lasting more than a couple turns). In many cases, the difference is extreme. And the fact that the dragons last forever is of limited practical advantage (except in resisting monster abjuration). Raising its summon cap might address this somewhat, but rather than simply making it more spammable in the old sense, I have decided to give it behavior which further distinguishes it from common summon spells while making it suitably impactful for its spell level and the investment that represents. Summon Dragon is replaced by Dragon's Call, which gives the player a temporary status that will continuously summon in dragons adjacent to and attacking random hostiles within the player's LoS. These dragons have an individually short duration and will appear only while hostiles are present (so you cannot build up an army while outside of battle, nor carry your previous army from battle to battle unless they occur with only short delay between them). The delay between summoning each new dragon is proportional to how many you already have, meaning that they will arrive more quickly when you have none, and much more slowly while several are already active. Each new dragon summoned costs the caster a small amount of mp, and the effect will end if you run out. Also, it generates a continuous amount of noise while the status lasts. Finally, there is a somewhat lengthly cooldown between times the effect can be activated. The effect is definitely strong, as befits a level 9 spell, but interestingly it also excells at slightly different situations than other level 9 spells do. It is distinctly less powerful against massed groups of foes, but potentially stronger against a series of moderate to small encounters back-to-back due to its duration. And it definitely (to me, anyway) feels splashy in a way that a level 9 spell ought to. Of course, numbers are still provisional, as always. (For now I have retained the original Summon Dragon as a monster spell, as much of the additional complexity of Dragon's Call does not add much to a monster version over just summoning a couple more dragons in the usual manner)
* Remove insignificant speed-up of corpse rotting with Powered by Death.Shmuale Mark2014-03-021-1/+1
|
* Remove djinn.wheals2014-02-241-1/+5
| | | | | | | Djinn games can't be started (hopefully including using the rcfile), and djinn code should be removed on save-compat bump. Also, schedule a few SE things to be removed.
* Merge branch 'summon_spells'Chris Campbell2014-02-181-0/+2
|\
| * Merge branch 'master' into summon_spellsDracoOmega2014-02-131-10/+2
| |\ | | | | | | | | | | | | | | | | | | Conflicts: crawl-ref/source/enum.h crawl-ref/source/spl-data.h crawl-ref/source/spl-summoning.cc
| * | New spell: Summon Forest (L5 Summ/Tloc)Shayne Halvorson2014-02-101-0/+2
| | | | | | | | | | | | It temporarily changes nearby terrain to trees and water and summons a dryad.
* | | Remove the Bargain cardChris Campbell2014-02-171-2/+0
| |/ |/| | | | | | | | | Its effect would probably work better as an attribute (lasting until you buy something) than a duration, but even then it just acts like a bit of extra gold, really.