Колдует это функция по адресу BBC2, а собственно вариант со сложением -1 (или 0) с 99 по адресу BBC8. Можно попатчить это хотя бы так:
...
CP 09
JR NZ,BBD4
LD A,(B037)
CPL
ADD A,64
JR BBE9
; BBD4
LD B,09
LD C,A
...
Тогда 100 должно быть вместо 98.
Можно было бы вообще, еще приуменьшить результат со всеми взятыми предметами и гибелью, чтобы стоимость побега была не в 1%, но тогда, видимо, понадобились бы где-то байта 4 в стороне.
Там есть еще неясный момент чуть ниже, взятое случайное число, ограниченное его до 7, зачем-то проверяется на 7 - если 7, то из него вычитается 2. Выглядит лишним. Может, 7 было несчастливым у авторов.
Но эти манипуляции можно сохранить как занятную фичу. :)
[свернуть]