4 years agoA few more 0.13.1 changelog fixes. 0.13.1
Neil Moore [Thu, 28 Nov 2013 01:36:27 +0000 (20:36 -0500)]
A few more 0.13.1 changelog fixes.

4 years agoChangelog for 0.13.1
Adam Borowski [Thu, 28 Nov 2013 01:20:15 +0000 (02:20 +0100)]
Changelog for 0.13.1

4 years agoHopefully work around recent mingw linking libwinpthread-1.dll dynamically.
Adam Borowski [Mon, 25 Nov 2013 22:39:40 +0000 (23:39 +0100)]
Hopefully work around recent mingw linking libwinpthread-1.dll dynamically.

(cherry picked from commit 836b35dd65790f235e782529e43b8fd3f7bfd798)

4 years agoFix a (marshalled!) infinite leak in the Abyss.
Adam Borowski [Wed, 23 Oct 2013 05:55:43 +0000 (07:55 +0200)]
Fix a (marshalled!) infinite leak in the Abyss.

For added insult, nothing used that list anymore.

(cherry picked from commit 300c4468aa470e114bcbd8712623abd50abc1a59)

4 years agoFix ugly looking lone slabs of limestone in holy_pan tiles.
Adam Borowski [Fri, 15 Nov 2013 19:42:47 +0000 (20:42 +0100)]
Fix ugly looking lone slabs of limestone in holy_pan tiles.

Also, purge the definition 3 = nothing (was "paladin" once), it wasn't
removed earlier because MONS definitions, unlike KMONS, are hard to remove

(cherry picked from commit 82d523b668c2c38e27918e5f5b92d0314cb115e1)

4 years agoUnmark actor::pos() as virtual.
Adam Borowski [Wed, 27 Nov 2013 00:57:16 +0000 (01:57 +0100)]
Unmark actor::pos() as virtual.

This prevented inlining this trivial function, and it gets called ~15M times
per gprof's virtual second:
  %time              self #called
  0.81      6.25     0.12 160842498     0.00     0.00  actor::pos() const

(cherry picked from commit 2bd4e382d14263a146b31a93ee7f5cbe90422c76)

4 years agoDon't let Ozo's armour prevent spriggan rider dismountal.
Neil Moore [Tue, 26 Nov 2013 22:01:03 +0000 (17:01 -0500)]
Don't let Ozo's armour prevent spriggan rider dismountal.

Not that they can actually have Ozo's armour, but still.  To
demonstrate, create a spriggan rider perm_ench:ozocubus_armour and kill
it with fire.

Introduced in 0.13-a0-2683-geefce6b.

(cherry picked from commit 9fb07aff4e6d2d9933483259c8e9b63ab55956fe)

4 years agoGive handle warnings for known-cursed weapons of unknown brand.
Neil Moore [Tue, 26 Nov 2013 20:51:41 +0000 (15:51 -0500)]
Give handle warnings for known-cursed weapons of unknown brand.

Spotted by simmarine.

(cherry picked from commit 40d9199c8a36b7f63190af86ab3cc962c85ab783)

4 years agoFix friendly IOODs again.
Neil Moore [Fri, 22 Nov 2013 20:57:38 +0000 (15:57 -0500)]
Fix friendly IOODs again.

They were broken by 0.13-a0-2954-g31530a2.  bolt::damage is a dice_def,
so assigning 42 to it calls dice_def::dice_def(42), which made the
damage 42d0.  No damage from the tracer meant no attempts to fire.
Change the damage to 42d1 instead.

Thanks for crate for noticing the problem.

(cherry picked from commit 1a95c093fcb570e4ead25b96505074f3b958eb29)

4 years agoApply item override colours to revealed mimics.
Neil Moore [Fri, 22 Nov 2013 16:33:17 +0000 (11:33 -0500)]
Apply item override colours to revealed mimics.

To prevent the mimic changing colours when it is revealed, have the
monster take the colour of the item_glyph override if one is present.
The mimic still won't track changes glyph colours *after* it is
revealed, but players usually don't change those in game.

(cherry picked from commit 027cf9e9592ab82954354c26416256ca4fc7e193)

4 years agoFix an unlinked items bug with corruption and door sealing.
blackcustard [Fri, 22 Nov 2013 03:48:09 +0000 (21:48 -0600)]
Fix an unlinked items bug with corruption and door sealing.

move_items in was mishandling the special case in which the
source square is empty. In this case, it would delink all the items in the
destination square.

There are several parts of the code that call move_items, but only the
corruption code and the vault warden door sealing code call it without
first ensuring there are items to move.

To trigger this bug: 1. Use corruption in such a way that a monster standing
on an empty square gets displaced by a forming wall onto a square with an
item in it. 2. Stand on a door, make sure there are no items under you,
have the warden seal the door, displacing you onto an item.
(cherry picked from commit acdcbbebe09131693d36b46e579da0097487ade1)

4 years agoFix runed door hint. It was never being triggered.
blackcustard [Mon, 18 Nov 2013 23:44:19 +0000 (17:44 -0600)]
Fix runed door hint. It was never being triggered.
(cherry picked from commit 34c03c465247dc2086e4e86e34c1023a7cab794a)

4 years agoDo not stash track sealed staircases.
blackcustard [Mon, 18 Nov 2013 19:04:33 +0000 (13:04 -0600)]
Do not stash track sealed staircases.
(cherry picked from commit 846501a2c22839bb8d447db502d5ae7a7e1361f7)

4 years agoAdd feature descriptions for sealed gates.
blackcustard [Mon, 18 Nov 2013 17:58:56 +0000 (11:58 -0600)]
Add feature descriptions for sealed gates.
(cherry picked from commit b7b8715484d8b8efb3339c99b27cf4bbdb430c79)

4 years agoUpdate 0.13 changelog through 0.13.0-58-ga7b73c1
Neil Moore [Sun, 17 Nov 2013 08:02:11 +0000 (03:02 -0500)]
Update 0.13 changelog through 0.13.0-58-ga7b73c1

4 years agoFix setting {Regen} randart property in wizmode
Chris Oelmueller [Sat, 16 Nov 2013 10:13:00 +0000 (11:13 +0100)]
Fix setting {Regen} randart property in wizmode

This was changed from bool (add 40 to rate or not) to a number in
Not changing the property type (from bool) however meant this number
was either 0 or 1 up until now, which is rather different from 40.

Why does this property never generate "in the wild" by the way?
(cherry picked from commit 6d24305edda4d359c8f7cf6d617d32da19e4bf59)

4 years agoAdd a newline after the summon cap in spell descriptions (#7737)
Chris Campbell [Tue, 12 Nov 2013 17:19:20 +0000 (17:19 +0000)]
Add a newline after the summon cap in spell descriptions (#7737)
(cherry picked from commit 9cfafb29f884141537df2bbf2b2bd7671859f9fe)

4 years agoProhibit monster weapon swapping while berserk (#7699).
Steve Melenchuk [Sun, 10 Nov 2013 03:13:31 +0000 (20:13 -0700)]
Prohibit monster weapon swapping while berserk (#7699).

Since this is now impossible, monsters intentionally berserking will
wield melee weapons just before they berserk.
(cherry picked from commit 4b91623d35cc973ce7ee910b52adc65f95664577)

4 years agoIdentify weapons of holy wrath that repel a curse
Chris Oelmueller [Wed, 6 Nov 2013 17:13:37 +0000 (18:13 +0100)]
Identify weapons of holy wrath that repel a curse

Your runed dagger glows black briefly, but repels the curse.
(cherry picked from commit 6de8feba6cb353651daf524fe71574b5e8cd515b)

4 years agoUpdate the desc of "Burn Spellbooks".
Adam Borowski [Tue, 5 Nov 2013 21:12:09 +0000 (22:12 +0100)]
Update the desc of "Burn Spellbooks".

It doesn't care about the book being non-ided since 0.12-a0-2232-g3327b90.
(cherry picked from commit a3bdc66f9e9117452ea14869c8bb3dd7c932f44b)

4 years agoDon't waste a turn failing to hit a rock worm in a wall with an axe.
elliptic [Mon, 4 Nov 2013 05:53:52 +0000 (00:53 -0500)]
Don't waste a turn failing to hit a rock worm in a wall with an axe.

Cleave is blocked by the wall also, so it really is a null action.
(cherry picked from commit 2d5c4bb273634e40a9f5561a656e408f9619e835)

4 years agoA better fail message for self-Sublimation for bloodless races.
Adam Borowski [Fri, 1 Nov 2013 11:36:44 +0000 (12:36 +0100)]
A better fail message for self-Sublimation for bloodless races.

Also, don't allow using the spell in bloodless forms.
(cherry picked from commit d83426aef5ea6aca778fe86efe7ae2f9ceba612e)

4 years agoFix the Tome of Destruction being usable multiple times for free
Chris Campbell [Fri, 1 Nov 2013 06:52:41 +0000 (06:52 +0000)]
Fix the Tome of Destruction being usable multiple times for free

Reading it from its description screen now correctly redraws the screen
and exits the inventory when finished.

Possibly this can be fixed in a neater way since the Tome is now the only
book that can be (r)ead from the description menu, with manuals being used
automatically and spellbooks being identified on pickup?
(cherry picked from commit 65f13067538f1e5cbe1c77f32f8b0088b00d1918)

4 years agoFix a banished eldritch tentacle crash.
Adam Borowski [Thu, 31 Oct 2013 08:00:35 +0000 (09:00 +0100)]
Fix a banished eldritch tentacle crash.
(cherry picked from commit 2e89b76ebc6d9b649769315208562845c99a82b6)

4 years agoDon't let Xom swap weapons with something in water/lava.
Adam Borowski [Thu, 31 Oct 2013 06:48:02 +0000 (07:48 +0100)]
Don't let Xom swap weapons with something in water/lava.

This often ends in the weapon destroyed unless you lure that merfolk onto
dry land, or without real recourse if that's a salamander.
(cherry picked from commit ec5ad0e6cc2a5a1da0b5e78ba8897d527a718ae4)

4 years agoFix wind drake/Sojobo breath not working away from the player.
Adam Borowski [Thu, 31 Oct 2013 05:24:58 +0000 (06:24 +0100)]
Fix wind drake/Sojobo breath not working away from the player.
(cherry picked from commit ec9c540f2946ec9f21d632cc22cc05e8f285fe0b)

4 years agoFix a crash when a monster dies to own water-elec discharge.
Adam Borowski [Thu, 31 Oct 2013 15:55:26 +0000 (16:55 +0100)]
Fix a crash when a monster dies to own water-elec discharge.
(cherry picked from commit 1c218013da4108461b070b7eb5cccd9a188f6bb8)

4 years agoDon't crash on "?/m spectral" in tiles.
Adam Borowski [Thu, 31 Oct 2013 15:24:12 +0000 (16:24 +0100)]
Don't crash on "?/m spectral" in tiles.
(cherry picked from commit 318bc0b365c57e5f3fd6d7c1674e5a8a7310ac82)

4 years agoIncrease the size of the description box in species/job selection menu.
Raphael Langella [Wed, 30 Oct 2013 16:49:56 +0000 (17:49 +0100)]
Increase the size of the description box in species/job selection menu.

Most languages are not as concise as english, it's quite hard to fit
translations on 2 lines. Besides, there's plenty of room on the screen.
(cherry picked from commit d938c595830be2dcaae8d99621945988006b2f69)

4 years agoUse dbname for mimic_name() instead of basename.
Steve Melenchuk [Tue, 29 Oct 2013 22:49:14 +0000 (16:49 -0600)]
Use dbname for mimic_name() instead of basename.

Previously, you'd get randart mimics such as "ravenous distressingly
furry chain mail mimic".
(cherry picked from commit fcde9f1bc47ee2c49d61dde5bc97a870f0b81e02)

4 years agoFix a --test crash.
Adam Borowski [Sun, 27 Oct 2013 20:28:56 +0000 (21:28 +0100)]
Fix a --test crash.

Somehow, it was broken by 0.8.0-a0-33-g1659bee, yet no one runs --test in
optimized builds, mostly because of makefile inadequacies.
(cherry picked from commit 5ae78977690c8023545d5ae33d59543158e56fb5)

4 years agoFix an use-after-free crash.
Adam Borowski [Sun, 27 Oct 2013 18:02:39 +0000 (19:02 +0100)]
Fix an use-after-free crash.

When doing bad things to a monster from within an enchantment, sometimes the
enchantment goes away -- most often together with the monster's life.  Trying
to decay it at that moment is unwise.
(cherry picked from commit eca39fc5a55871d1368cda386660bb3c51680df3)

4 years agoDon't allow Vampires to be lichformed
Chris Campbell [Sat, 26 Oct 2013 22:41:47 +0000 (23:41 +0100)]
Don't allow Vampires to be lichformed
(cherry picked from commit aecfd6b6c9915d3bcfd60ab47ac9acfb0b27f527)

4 years agoReduce Shadow Creatures summon cap, don't cap band members
Chris Campbell [Tue, 22 Oct 2013 13:56:46 +0000 (14:56 +0100)]
Reduce Shadow Creatures summon cap, don't cap band members

Band members already have a very short duration, capping them along with
the band leaders results in the entire pack getting capped and timing out
(cherry picked from commit 8ff3f956474dc129007ca51fcddf9a74914ecd77)

4 years agoShorten the last &? straggler.
Neil Moore [Sat, 16 Nov 2013 19:50:47 +0000 (14:50 -0500)]
Shorten the last &? straggler.

(cherry picked from commit 166d3c99494ce6866f95d2c4790b84a57ca6d9af)

4 years agoImprove &^[TU] description (ChrisOelmueller)
Neil Moore [Sat, 16 Nov 2013 19:45:45 +0000 (14:45 -0500)]
Improve &^[TU] description (ChrisOelmueller)

(cherry picked from commit fb2ed50aaeaabc7ec4ea41d3660915887a0238c6)

4 years agoRemove colons in wizmode command overview
Chris Oelmueller [Sat, 16 Nov 2013 00:42:49 +0000 (01:42 +0100)]
Remove colons in wizmode command overview

Should now fit on 80x24 again, with the exception of `|`.

(cherry picked from commit 6faf500b7f62d4c9e076597b09283e112c4771e3)

4 years agoDocument & ^C
Adam Borowski [Sat, 2 Nov 2013 22:18:16 +0000 (23:18 +0100)]
Document & ^C

(cherry picked from commit 212af19d9cfd2c8599432d779a016e4ab9c9ee99)

4 years agoMake statue-form vampires poison-immune.
Neil Moore [Sat, 16 Nov 2013 14:38:39 +0000 (09:38 -0500)]
Make statue-form vampires poison-immune.

(cherry picked from commit 02ff6a7dff2afa53467b1810abae89c7cf119531)

4 years agoWizmode command &^U for a clua prompt.
Neil Moore [Fri, 15 Nov 2013 08:30:37 +0000 (03:30 -0500)]
Wizmode command &^U for a clua prompt.

Works just like &^T, but uses clua instead of dlua.

(cherry picked from commit 0b10bd3b8a6972c625a3e7ea1a87c6160918b080)

4 years agoFix gearset saving problem.
Neil Moore [Fri, 15 Nov 2013 07:26:29 +0000 (02:26 -0500)]
Fix gearset saving problem.

It was broken about 3 years ago (0.8.0-a0-739-ga2f257a).

(cherry picked from commit 5f91bcc093016843890b92342dcc3d5b7568d418)

4 years agoDon't "cling into" dangerous clouds (#7725).
Neil Moore [Sat, 9 Nov 2013 21:01:56 +0000 (16:01 -0500)]
Don't "cling into" dangerous clouds (#7725).

We now use "crawl" for spider form, and "walk" for suction cups.

(cherry picked from commit e413633c0389919b28f29a9b81404464dadd143a)

4 years agoDon't shaft stationary nets (#7714)
Neil Moore [Fri, 8 Nov 2013 23:36:50 +0000 (18:36 -0500)]
Don't shaft stationary nets (#7714)

(cherry picked from commit 28bb301f2f7f6a39608b939c2b72bb8b44414dd0)

4 years agoFixed "FTILE: " displayed incorrectly after reload (#7748)
MDvedh [Sat, 16 Nov 2013 17:44:19 +0000 (21:44 +0400)]
Fixed "FTILE: " displayed incorrectly after reload (#7748)

(cherry picked from commit b470dc0899a1352c33035d3853146ce0886a3573)

4 years agoFix unknown shaft traps (#7680)
Neil Moore [Sun, 3 Nov 2013 17:19:30 +0000 (12:19 -0500)]
Fix unknown shaft traps (#7680)

(cherry picked from commit 0ab4eda94ba0c2958cdb6ba0afc3242f95092c51)

4 years agoPrevent copies of spectral weapons
Naruni [Sat, 2 Nov 2013 04:34:05 +0000 (21:34 -0700)]
Prevent copies of spectral weapons

Destroy spectral weapon when leaving a level and it did not follow.

(cherry picked from commit 3dc45ab3c37529a425e28ab71730fb9522992ae4)

4 years agoSet summoner when copying monster objects (#7521, #7536)
Neil Moore [Fri, 1 Nov 2013 06:40:44 +0000 (02:40 -0400)]
Set summoner when copying monster objects (#7521, #7536)

Monsters lost track of their summoners when moving between different
monster lists.  This caused spectral weapons to flee to the northeast
(towards (0,0)), as handle_behaviour did not know to set their new
target to the player's position.  The lack of summoner also caused
battlespheres to dissipate on their next action after taking stairs.

(cherry picked from commit 79a0f274aba3587d6d6e3b245e514211dc57b872)

4 years agoDon't wind blast monsters through walls (Naruni, #7434)
Neil Moore [Tue, 29 Oct 2013 02:00:06 +0000 (22:00 -0400)]
Don't wind blast monsters through walls (Naruni, #7434)

Consider the following situation, with a monster at m and
a wall at %.


The previous code, on seeing that % was blocked, would look for a new
spot adjacent to % and equidistant from @ (compared to %).  The spot
marked ! satisfies the constraints, despite being disconnected from m,
so the monster could be shoved to ! across a wall.

Now we look for spots adjacent to both m and % (and equidistant from @
compared to %).  That way the monster moves step-by-step without
skipping over any potential walls.  In this case, the spot marked ^
is a candidate.

This should also fix some cases of monsters "bouncing" off walls.  Now
if the blast is at a shallow angle (less than 45 degrees, as in the
example above), the monster will slide along the wall; if the angle
is deeeper, the monster will be stuck in place against the wall.

(cherry picked from commit c31db72ae92c5e4b58c9ab5a88218eb1e549a95b)

4 years agoDon't crash when using ETC_WAVES outside of Shoals.
Neil Moore [Sat, 26 Oct 2013 22:24:46 +0000 (18:24 -0400)]
Don't crash when using ETC_WAVES outside of Shoals.

It could happen if there's a redraw in the middle of leaving shoals,
after the heightmap is reset but before tile flavours have been
reinitialised.  This commit doesn't fix that problem, but there are
other cases as well (such as a player giving something the "waves"

(cherry picked from commit d3614495655c93414127c3123959c2e922319bd4)

4 years agoReundeadify vampires on game load (#7668)
Neil Moore [Sat, 26 Oct 2013 22:04:22 +0000 (18:04 -0400)]
Reundeadify vampires on game load (#7668)

(cherry picked from commit a3ed00e249c7acacda1aa2a5c163c359983ac6d2)

4 years agoDon't enliven vampires when leaving lich form (#7668).
Neil Moore [Sat, 26 Oct 2013 21:48:40 +0000 (17:48 -0400)]
Don't enliven vampires when leaving lich form (#7668).

It could happen through chaos brand, metamorphosis card, etc.

(cherry picked from commit 2ef00a3eea9bbeddb263408b5304ee92ba4beed9)

4 years agoDon't deal Awaken Forest damage to sanctuaried players (#7669)
Chris Campbell [Sat, 26 Oct 2013 21:22:02 +0000 (22:22 +0100)]
Don't deal Awaken Forest damage to sanctuaried players (#7669)

(cherry picked from commit 9047ce00aec3903ae8b8f876d7590fd58118e8dd)

4 years agoHandle messages for exploding projectiles at walls / edge of LOS properly.
Steve Melenchuk [Sat, 26 Oct 2013 01:19:47 +0000 (19:19 -0600)]
Handle messages for exploding projectiles at walls / edge of LOS properly.

Previously you could fire explosions to the edge of LOS and have the
game think you'd only heard them, not seen them.

(cherry picked from commit 4756083227e6c662c165e8875c6c2cb359c9751c)

4 years agoDon't give malformed messages for invis abyss spawns (#7664)
Neil Moore [Sat, 26 Oct 2013 00:50:33 +0000 (20:50 -0400)]
Don't give malformed messages for invis abyss spawns (#7664)

In fact, don't give any message at all.

(cherry picked from commit df6160b6ef9a294d255cfce56743fab3ef60c544)

4 years agoDon't let flaying ghosts flay sanctuaried targets (#7657)
Chris Campbell [Wed, 23 Oct 2013 20:18:09 +0000 (21:18 +0100)]
Don't let flaying ghosts flay sanctuaried targets (#7657)

(cherry picked from commit df4068cd401d70e385d4d52e5b1c3c102d0154ef)

4 years agoAllow querying \ screen when reading scrolls of identify
Chris Oelmueller [Mon, 21 Oct 2013 16:55:28 +0000 (18:55 +0200)]
Allow querying \ screen when reading scrolls of identify

Somehow this only worked when the scroll was not identified before.

(cherry picked from commit 7c54ee0de61fddceb0aced7e6d44a1a78948ef33)

4 years agoDon't crash on over-long god abilities in ^
Neil Moore [Sun, 20 Oct 2013 17:28:30 +0000 (13:28 -0400)]
Don't crash on over-long god abilities in ^

We tried to take a negative-length substring.  This happened with
Nemelex's stack five ability on a 79-column screen.  Now we chop
off excess characters from the end of the ability description,
which in this particular case loses the full stop.

(cherry picked from commit f298866b7268d42eb5047781f741cd8431b50312)

4 years agoUpdate Gargoyle manual entry (nicolae)
Chris Campbell [Sun, 20 Oct 2013 04:35:36 +0000 (05:35 +0100)]
Update Gargoyle manual entry (nicolae)

4 years agoDon't mention Lava Orcs or Djinn in the manual
Chris Campbell [Sat, 19 Oct 2013 17:03:00 +0000 (18:03 +0100)]
Don't mention Lava Orcs or Djinn in the manual

4 years agoUpdate manual from wiki
Chris Campbell [Sat, 19 Oct 2013 17:02:41 +0000 (18:02 +0100)]
Update manual from wiki

(cherry picked from commit 0752fc5851015ec43040d63dd2b004b4ab006032)

4 years agoDrop ancient bears from a vault.
Adam Borowski [Fri, 18 Oct 2013 23:00:08 +0000 (01:00 +0200)]
Drop ancient bears from a vault.

4 years agoColour harpy devourment as item destruction (xFleury)
Neil Moore [Fri, 18 Oct 2013 12:51:00 +0000 (08:51 -0400)]
Colour harpy devourment as item destruction (xFleury)

This was originally the case, but the text of the message changed
to include the item name, without a corresponding change to the

(cherry picked from commit aec14dfe817bd0b22e6eb146f860401f4c8c697e)

4 years agoFix scythe of curses
Naruni [Thu, 17 Oct 2013 21:08:31 +0000 (14:08 -0700)]
Fix scythe of curses

Check to see if the monster died before checking to see if it has/had
lifeforce to prevent assert crash.
(cherry picked from commit 0b0477452d84769f256a790c206c36e67915910b)

4 years agoFix Jiyva off-by-one error on Slime:$
Chris Oelmueller [Sat, 12 Oct 2013 05:03:48 +0000 (07:03 +0200)]
Fix Jiyva off-by-one error on Slime:$

Previously used 161 despite d703f4dc02d0d08642f20f5d14f471127b4255df.
piety_rank should be a bit more stable than numeric piety values.
(cherry picked from commit 4f4fca30c5a92f50e3142b36a93dbc5f40002565)

4 years agoFix vampire knights coming with water elementals 3/4 of the time (N78291).
elliptic [Wed, 16 Oct 2013 16:05:48 +0000 (12:05 -0400)]
Fix vampire knights coming with water elementals 3/4 of the time (N78291).
(cherry picked from commit ffff52d87250aa0b89201090bd7e879b97b1778b)

4 years agoDon't crash when shuffling length-0 vectors (xFleury)
Neil Moore [Wed, 16 Oct 2013 15:50:59 +0000 (11:50 -0400)]
Don't crash when shuffling length-0 vectors (xFleury)

If the vector is empty, &vec[0] is undefined behaviour, and MSVC does
bounds-checking by default.

(cherry picked from commit f2b8b55cca63307837bfdcffa1c0545458b444a4)

4 years agoDon't randomly generate unfinished derived undead.
Neil Moore [Tue, 15 Oct 2013 16:10:44 +0000 (12:10 -0400)]
Don't randomly generate unfinished derived undead.

(cherry picked from commit 3275460c99791181263d74ff06306af85d5b46f9)

4 years agoClean up checks for disabled species/jobs when starting a new game.
elliptic [Mon, 14 Oct 2013 14:25:06 +0000 (10:25 -0400)]
Clean up checks for disabled species/jobs when starting a new game.

It was possible to get around these checks in various ways. Hopefully this
stops all of those ways and will make it easier to maintain this code in the
future, since only is_species_valid_choice and is_job_valid_choice need
to be modified now.
(cherry picked from commit c3caa5d9d42e23213a92ac0b8ca4fcb876f485e3)

4 years agoLeak the identity of unfinished monsters spawning in real games.
Adam Borowski [Sun, 13 Oct 2013 14:21:06 +0000 (16:21 +0200)]
Leak the identity of unfinished monsters spawning in real games.

Saying that 'it' is not yet fully coded is quite cryptic.

(cherry picked from commit 796714c9d67bbc5d27e5ad6880bf238c994587a9)

4 years agoFix no longer supported tags appearing in .pl hell effect messages.
Adam Borowski [Sun, 13 Oct 2013 14:07:23 +0000 (16:07 +0200)]
Fix no longer supported tags appearing in .pl hell effect messages.

(cherry picked from commit 36c305885168e7c5cc44ee7ab817b71307a72bb0)

4 years agoFix wellsprings generating in deep D.
Adam Borowski [Fri, 11 Oct 2013 22:50:16 +0000 (00:50 +0200)]
Fix wellsprings generating in deep D.

4 years agoFix a bad Lua string (hasufell)
Neil Moore [Fri, 11 Oct 2013 21:49:52 +0000 (17:49 -0400)]
Fix a bad Lua string (hasufell)

Latest luajit reports: "invalid escape sequence" for "\/".

(cherry picked from commit a7c14a4424ac9954794651216feaf61eeb6f78a3)

4 years agoRemove Dj and LO from the aptitudes table.
Adam Borowski [Fri, 11 Oct 2013 12:42:14 +0000 (14:42 +0200)]
Remove Dj and LO from the aptitudes table.

4 years agoRemove a bunch of not-0.13 items from the changelog. 0.13.0
Adam Borowski [Fri, 11 Oct 2013 00:54:16 +0000 (02:54 +0200)]
Remove a bunch of not-0.13 items from the changelog.

4 years agoDon't process enchantments that have just been deleted.
Adam Borowski [Fri, 11 Oct 2013 00:43:50 +0000 (02:43 +0200)]
Don't process enchantments that have just been deleted.

Processing any ench can add, modify or remove any other, including itself.

This code includes a lame loop through all possible enchantments, but since
we're going through a bit array of size ~100, that's still better than the
old code which, with a better theoretical complexity, did multiple mallocs.

Had we not replaced our NIH implementation with a bitset<>, we'd be able
to make this search lightning-fast using asm BSF or gcc's __builtin_clzl,
but I guess you guys would smack me hard for even thinking about that :p

(cherry picked from commit 0784b6c54ccfef5dca7f0b2f068c14ed5df46506)

4 years agoHeal forcibly converted orcs before registering them as companions.
Adam Borowski [Thu, 10 Oct 2013 23:15:03 +0000 (01:15 +0200)]
Heal forcibly converted orcs before registering them as companions.

Also, add some assertions, just in case.

(cherry picked from commit 6bae9edd6d100a14cc3ed1439a7a434e3d227ec6)

4 years agoFix Zot traps being invoked against the player when visible through scrying
Chris Campbell [Wed, 9 Oct 2013 23:52:08 +0000 (00:52 +0100)]
Fix Zot traps being invoked against the player when visible through scrying

(cherry picked from commit b78d8b4610614157892b431bfc826c49898283bb)

4 years agoRemove other sightings of place:Forest.
Adam Borowski [Thu, 10 Oct 2013 22:58:20 +0000 (00:58 +0200)]
Remove other sightings of place:Forest.

4 years agoRemove unfinished monsters from the spriggan_forest.
Adam Borowski [Thu, 10 Oct 2013 22:55:12 +0000 (00:55 +0200)]
Remove unfinished monsters from the spriggan_forest.

They got in through place:Forest:3.

4 years agoFix a crash when timing out enchantments. Untested!
Adam Borowski [Thu, 10 Oct 2013 01:56:33 +0000 (03:56 +0200)]
Fix a crash when timing out enchantments.  Untested!

My guess is that a monster that is both summoned/slowly_dying/etc and
confused will get removed by the first enchantment, then confusion will try
to blink it even though the monster is already gone.

4 years agoFix a crash if a monster dies because of its own ability.
Adam Borowski [Tue, 8 Oct 2013 21:09:52 +0000 (23:09 +0200)]
Fix a crash if a monster dies because of its own ability.

(cherry picked from commit cf818b197f4a8493b0e844f7d3f40565857e2cf5)

4 years agoFix the name on Bullseye's desc.
Adam Borowski [Wed, 9 Oct 2013 10:32:26 +0000 (12:32 +0200)]
Fix the name on Bullseye's desc.

4 years agoA crappy update to the shield of the gong's description.
Adam Borowski [Wed, 9 Oct 2013 10:29:21 +0000 (12:29 +0200)]
A crappy update to the shield of the gong's description.

4 years agoTentatively revert Bullseye changes for 0.13.
Adam Borowski [Wed, 9 Oct 2013 10:26:18 +0000 (12:26 +0200)]
Tentatively revert Bullseye changes for 0.13.

We still lack updated tiles.

4 years agoTentatively disable layout_gridlike for 0.13.
Adam Borowski [Wed, 9 Oct 2013 10:23:08 +0000 (12:23 +0200)]
Tentatively disable layout_gridlike for 0.13.

It tends to generate closets that trap people.  A proper fix would be nice,
but as we have a crapload of other layouts, it's not critical to have it

4 years agoPaper over a ghostly flame crash.
Adam Borowski [Wed, 9 Oct 2013 10:20:21 +0000 (12:20 +0200)]
Paper over a ghostly flame crash.

I'll debug it properly later, but I want 0.13 releasable for now.

4 years agoRevert multiple branch exits being DEBUG_FATAL-fatal.
Adam Borowski [Wed, 25 Sep 2013 03:35:08 +0000 (05:35 +0200)]
Revert multiple branch exits being DEBUG_FATAL-fatal.

Hasn't been fixed yet, is not something important, and hampers looking for
other bugs automatically.

This reverts commit a40525a78886e345c5dbf9b0cbbc938193d07bf7.

4 years agoFlag a bunch of stuff as "unfinished".
Adam Borowski [Wed, 25 Sep 2013 03:26:04 +0000 (05:26 +0200)]
Flag a bunch of stuff as "unfinished".

Stops them from spawning in some cases.

Not wind drakes, as they're already on drac summoners' list.

4 years agoReorder checks in forget_map.
Adam Borowski [Tue, 8 Oct 2013 10:46:28 +0000 (12:46 +0200)]
Reorder checks in forget_map.

An expensive LOS check was done first, while most of the map can be rejected
on the account of it being not known in the first place, or being too close
to the player.

On a profiler run, this managed to score 10%.

(cherry picked from commit c71e4c71abacc07063af2d2f72da2d5eb5f21093)

4 years agoFix a crash with magic shield if rotting kills you.
Adam Borowski [Tue, 8 Oct 2013 01:42:01 +0000 (03:42 +0200)]
Fix a crash with magic shield if rotting kills you.

Sounds extremely niche?  ZotDef at least.

(cherry picked from commit c8849e1a6cfd91570e461b2ad5bf953b079de61a)

4 years agoFix equipment properties getting truncated.
Adam Borowski [Mon, 7 Oct 2013 14:39:10 +0000 (16:39 +0200)]
Fix equipment properties getting truncated.

Again, another case of "80 characters should be enough for anybody".

It was wrong both in the game (except for tinyterms) and in character

(cherry picked from commit 221f82edb2bbfd667bc9a842dc4ca0cf82c18066)

4 years agoEnlarge a criminally low line length limit in the lua interpreter.
Adam Borowski [Mon, 7 Oct 2013 14:04:31 +0000 (16:04 +0200)]
Enlarge a criminally low line length limit in the lua interpreter.

It turns out 80 characters is not enough for anybody.

(cherry picked from commit cee83027a3f90acb28bb420105ac1970b92f79a3)

4 years agoFix Harold mouthing off if killed while asleep.
Adam Borowski [Mon, 7 Oct 2013 03:53:48 +0000 (05:53 +0200)]
Fix Harold mouthing off if killed while asleep.

Being paralyzed or petrified makes it hard to speak too.

(cherry picked from commit 13606e5598960b84dc83bddacd515b291d178ca5)

4 years agoDon't make statue form self-LRD weaker for gargoyles than others.
Neil Moore [Sun, 6 Oct 2013 23:49:14 +0000 (19:49 -0400)]
Don't make statue form self-LRD weaker for gargoyles than others.

They were doing the same explosion damage in statue form as in their
normal form, while statue form for other races did 50% more than that.

(cherry picked from commit 255212064412a932f2327b8ab3bb3923c56b0ed7)

4 years agoFix a crash when a red devil pokes a porcupine of ball lightning.
Adam Borowski [Thu, 3 Oct 2013 20:59:27 +0000 (22:59 +0200)]
Fix a crash when a red devil pokes a porcupine of ball lightning.

(cherry picked from commit aed4eeaf4d8e9b400401418047eebfa97066bed0)

4 years agoFix st_'s stair vaults producing multiple upstairs.
Adam Borowski [Thu, 3 Oct 2013 12:38:48 +0000 (14:38 +0200)]
Fix st_'s stair vaults producing multiple upstairs.

(cherry picked from commit 37da3a6f046c4b46d2551c8916068c33c740272c)

4 years agoFix two uses of the player during map generation.
Adam Borowski [Thu, 3 Oct 2013 11:27:37 +0000 (13:27 +0200)]
Fix two uses of the player during map generation.

(cherry picked from commit a60315f1faf71ed0a8569d0e9106311786d7ea2c)

4 years agoFix a mapstat hang due to dying to a tornado obelisk.
Adam Borowski [Thu, 3 Oct 2013 01:20:52 +0000 (03:20 +0200)]
Fix a mapstat hang due to dying to a tornado obelisk.

It calls ouch() for 0 during the initial setup; during mapstat the player
is actually placed inside the map at some position that can be close to
the obelisk.  And maxhp is 0, so 0 damage can be fatal...

(cherry picked from commit ca19122d8ef8fd968786eabc4905a8f272677315)

4 years agoFix a convoluted crash when an abyss-pushed item stacks.
Adam Borowski [Wed, 2 Oct 2013 03:12:27 +0000 (05:12 +0200)]
Fix a convoluted crash when an abyss-pushed item stacks.

This does change its index, and since _push_items() used a pointer to its
loop index as an argument to move_item_to_grid(), if that index changes,
we skip pushing some items.

(cherry picked from commit dd5ec2acd397d3ab29c0b2f0964fd086caeab9a3)

4 years agoFix reversed feature names for sealed stairs.
Adam Borowski [Mon, 30 Sep 2013 23:22:14 +0000 (01:22 +0200)]
Fix reversed feature names for sealed stairs.

(cherry picked from commit b2fff599c84419bdde776f3b28e369efdc51bca1)