Dreaming Moscow Dragon woke me up by screaming
news:ek3t7l$ump$1@news.mtu.ru:
>> > What was the bug? I remember one stopper bug with Serpent Stuff and
>> > Xenka, don't remember the details though - the Exult team is
>> > well-aware of it and I think they can know the workaround. If my
>> > memory is correct, the bug was that Xenka never talks about
>> > "sacrifice".
>>
>> I never had that happen except for one time while I was developing my
>> walkthrough, and I managed to get past that by talking to Gwenno, so
>> I'm not sure it was the same bug.
>
> This is the usecode bug, not the Exult's one. For Xenka to talk on
> "sacrifice", one must a) talk to Chaos Hierophant ghost about the
> ritual b) step on some usecode eggs surrounding the location of
> Serpent Stuff in Furnace.
Actually this is partly an Exult bug, I think. Because Exult allows too
high resolutions you can sometimes grab stuff from too far away (without
hackmover). Grabbing the serpent staff from too far away doesn't trigger
the usecode egg "have serpent staff" (or similar, you get the idea),
hence Xenka won't talk about sacrifice. This bug could also be in the
original if you tried to grab it just at the corner of the screen, but I
won't load up Dosbox to test this
Maybe J.P. will find a useful exploit for this
There are a couple of usecode bugs in Serpent Isle, one other is the
disappearing pikeman master of the training pits (whatever to call
him...).
We have a list of those in Exult CVS, if no one minds I can copy paste
here the SI parts:
BEWARE SPOILERS
..
..
..
..
...
..
..
..
..
..
..
..
..
..
...
..
..
..
..
..
..
..
...
..
..
(SI) Pillars in Silver Seed fort teleport to Gargoyle test
==========================================================
A slight mistake of the add-on designers. The cool looking pillars in the
dining
hall of the Silver Seed fort start the gargoyle city test and teleport
the Avatar
to it.
This could be fixed by
- change the usecode to only trigger in the right area
- change the pillars (i.e., change their frame)
- give the 'real' pillar a quality and check for that
(SI) Resurrecting possessed party:
===================================
Author: Clock Nova
Date: 04-21-03 08:36
On the other hand, I would not have thought of using the Hourglass after
releasing the Banes had I not read about it elsewhere. If you use it in
the
room where you fought Selena, your companions get "resurrected" so they
can
fight themselves later on. Oops!
(SI) disappearing pikeman:
===========================
The first part of the banquet usecode in Monitor accidently deletes the
List Field's pikeman egg when you're too close to that egg.
Some bugs have been fixed in Exult (I'm not sure if Exult does fix them
or just that we provide usecode fixes for those who care):
(SI) Gwenno and the Diamond Necklace:
======================================
No matter who has the diamond necklace, Iolo is going to say he's lost it
during the adventures to find Gwenno. This is due to an error in the
usecode
function that checks whether you have the diamond or not. It is looking
for
the wrong item (the wrong shape actually).
Usecode function: 0495
Code to replace:
01A5: 1F 05 00 pushi 0005H ; 5
01A8: 1F 99 FE pushi FE99H ; -359
01AB: 1F BB 03 pushi 03BBH ; 955
01AE: 1F 01 00 pushi 0001H ; 1
01B1: 1F 9B FE pushi FE9BH ; -357
01B4: 24 05 00 call [0005] ; 097DH
Replace it with:
01A5: 1F 05 00 pushi 0005H ; 5
01A8: 1F 99 FE pushi FE99H ; -359
01AB: 1F BB 03 pushi 03BBH ; 955
01AE: 1F 08 00 pushi 0008H ; 8
01B1: 1F 9B FE pushi FE9BH ; -357
01B4: 24 05 00 call [0005] ; 097DH
Code to replace:
01C3: 1F 05 00 pushi 0005H ; 5
01C6: 1F 99 FE pushi FE99H ; -359
01C9: 1F BB 03 pushi 03BBH ; 955
01CC: 1F 01 00 pushi 0001H ; 1
01CF: 1F 6B FF pushi FF6BH ; -149
01D2: 1F FD FF pushi FFFDH ; -3
01D5: 24 06 00 call [0006] ; 0996H
Replace it with:
01C3: 1F 05 00 pushi 0005H ; 5
01C6: 1F 99 FE pushi FE99H ; -359
01C9: 1F BB 03 pushi 03BBH ; 955
01CC: 1F 01 00 pushi 0008H ; 8
01CF: 1F 6B FF pushi FF6BH ; -149
01D2: 1F FD FF pushi FFFDH ; -3
01D5: 24 06 00 call [0006] ; 0996H
===============================
(SI) Shamino's exchanged-items list
====================================
In the beginning Shamino talks about preparing a list of exchanged
objects but at a first look at that list his own objects are missing.
This
gets normally corrected in the game at the latest when Dupre or Iolo
join.
You might also change usecode function 0402 like this:
Usecode Function 0402:
Code to replace:
025D: 24 0A 00 call [000A] ; 092BH
0260: 13 push true
0261: 43 A2 02 popf flag:[02A2]
0264: 1F 00 00 pushi 0000H ; 0
0267: 1D 84 03 pushs L0384 ; @Such
strangeness!@
026A: 1F FE FF pushi FFFEH ; -2
026D: 24 09 00 call [0009] ; 097FH
0270: 24 0B 00 call [000B] ; 09AAH
0273: 1F FE FF pushi FFFEH ; -2
0276: 39 26 00 01 calli _add_to_party@1 (0026)
Replace with:
025D: 13 push true
025E: 43 A2 02 popf flag:[02A2]
0261: 1F 00 00 pushi 0000H ; 0
0264: 1D 84 03 pushs L0384 ; @Such
strangeness!@
0267: 1F FE FF pushi FFFEH ; -2
026A: 24 09 00 call [0009] ; 097FH
026D: 24 0B 00 call [000B] ; 09AAH
0270: 1F FE FF pushi FFFEH ; -2
0273: 39 26 00 01 calli _add_to_party@1 (0026)
0277: 24 0A 00 call [000A]
This checks for the exchanged items in the party _after_ Shamino joins.
===============================
(SI) Silk stockings missing from exchanged item list.
=======================================================
Usecode function 092B checks for silk stockings in inventory but sets
wrong flag (not harmful, sets flag 27A which has already been set by the
same
code call for another object (pinecone)).
Usecode Function 092B
Code to replace:
00DC: 43 7A 02 popf flag:[027A]
Replace with:
00DC: 43 7B 02 popf flag:[027B]
===============================
(SI) Filari in exchanged item list.
On the exchanged items list there should also be the filari in your
inventory. This is either due to a wrong handling of count_objects by
exult or a wrong parameter in the usecode. This is the only instance of
using count_objects like this so I think its probably a bug in usecode.
count_objects gets called with shapenum 3B4 (filari), quality 14h and
framenum 0. Normally quality and framenum FE99 (any) is used if
money is counted, only not in this case. The result is that the
parameters do not match the characteristics of the filari in your
inventory (quality=87dec, framenum=7) and are ignored.
Usecode Function 092C:
replace:
0057: 1F 14 00 pushi 0014H ; 20
with:
0057: 1F 99 FE pushi FE99H ; -359
and
0087: 1F 00 00 pushi 0000H ; 0
with
0087: 1F 99 FE pushi FE99H ; -359
(SI) Resurrecting Gwenno:
==========================
Gwennos activity flag gets set to 3 (talk) by the resurrect function (She
is even handled especially). This
triggers an automatic conversation when the Avatar stands near her (event
== 0 or 9 I assume) and skips the function that checks for her
status: (!UI_get_item_flag(0xFF6B, 0x001E). When you stand far enough
apart this should not happen anyway.
Usecode function 08FE:
replace
0109: 1F 03 00 pushi 0003H ; 3
with
0109: 1F 0C 00 pushi 000CH ; 12
(0C = wander) and this should not happen.
--
Dominus Dragon -=UDIC=- aka Dominik Reichardt (Remove NOSPAM to mail)
My homepage with funny content

http://Beam.To/Dominik/
Part of the Exult team (Docs/FAQ) http://exult.sourceforge.net/
d++ e+ N+ T+ Om+ U1234!5!67'!S'!8!9!A!WML!K u+ uC+ uF uG uLB----
uA+ nC+ nR nH nP+ nI nPT- nS nT o---- oE-- y a(born 1976)