Author: Knight Captain
Date: 04-08-17 18:02
Since this has become the Conquests Usecode Research Thread, I wanted to add notes.
The game start in SI is more elaborate than in BG, and split into several functions.
1. The Avatar is hidden by egg object#(0x6CB) which changes him into shape 239, and sets the DONT_MOVE flag on him.
2. The rabbit shape#(0x32B) nearby on PATROL has PROXIMITY code, which:
a. Teleports the Avatar to the strip with the boat.
b. Creates a few items on him, including the spellbook.
c. Wipes the TOURNAMENT and other flags from all NPCs, and sets a few.
d. If the Avatar has the Usecode Container (I think) it will start playing Stones on delay. Presumably this was to let Origin play testers know if the Usecode Container with the path egg was missing.
e. It also calls the code in shapeIolo.
3. The storm teleport egg object#(0x7AD) is cached in, and that starts multiple other functions.
4. The convoluted shape code for Iolo shape#(0x1D1) has multiple checks, but gets down to causing lightning flashes, creating the teleport sprites, party barks, and calls the Iolo NPC code.
5. The main Iolo code in object#(0x403) has the opening STARTED_TALKING text about the passage through the Serpent Pillars.
There's also checks in the Serpent Gate code for the activity of marked_for_death NPCs if Flag 4 is set.