NetHack Patch Database v0.27

309 patches

Use the occupation code for engravings

NameUse the occupation code for engravings 0.1
RatingNot rated
ForNetHack 3.4.3
DescriptionAllows engravings to be interruptible, and fixes many engraving-related bugs
 This code changes engravings to be implemented as an occupation (like removing armour with A), rather than as helplessness (like removing armour with T). This fixes numerous bugs related to engravings:

* Writing more than 9 characters (or more than 0 via a slow method) no longer causes existing engravings on the square to be inactive until the new engraving is finished.
* The character will now stop engraving if interrupted by a monster, or other event that normally interrupts occupations.
* If the character leaves the square on which they were engraving (say due to a quantum mechanic attack), they will stop engraving. (3.4.3 behaviour is for them to continue the engraving, despite no longer being on the square).
* If an engraving is aborted halfway through (e.g. due to dying and being lifesaved), the engraving on the ground will be partially complete. (3.4.3 behaviour is for the engraving to appear fully complete, but for the entire engraving to be inactive until the moment in time at which it would have finished.)

Note that occupations and helplessness have different timing rules. In particular, the length of time it takes to make an engraving is now reduced via speed intrinisics/extrinsics, the same way movement is.

Note also that many of the bugs in the engraving code before this fix worked against the player (e.g. writing two Elbereths could be done in one turn on the old code, but due to a bug, they wouldn't work until the next turn). If incorporating this patch into a variant, you might want to change other parts of the engraving code to compensate for this buff to Elbereth, depending on the goals of your variant. I haven't attempted to address the balance concerns in this patch.
DownloadGet it from us (17.2 Kb)
AddedSeptember 24, 2014 11:50
Submit an update to this patch

Add a comment

Name ()required
Rating (0 is worst, 5 is best) 
You can use up to 1024 characters.
Only supported tag is [url]clickable_link[/url].

You will need to answer the following question correctly: What symbol represents a floating eye?