So it seems that if the script is moved lower to the bcs, it can work, After some import of characters, and others other stuffs, but Before the first arrival of Irenicus...
The question is : Someone could show me an example of how to insert the script in a specific part of the bcs or point to a mod that uses this feature, in this case EXTEND_BOTTOM and EXTEND_TOP are not enough, I guess I could use
WRITE_ASCII
but I can't find any clear example in RoT and CtB for
0x0018 these correspond to a certain location in the file but how do you know which one
0x0024
0x0030
0x003c... or else
and I'm having a hard time understanding the instructions in the weidu documentation.
or COPY_EXISTING
DECOMPILE_BCS_TO_BAF
But I don't know how to patch a file either.
I'll find out sooner or later but any help is welcome (so that it doesn't take several days before I understand...).
EDIT :
While waiting to find a better solution, here is a modification of ar0602.baf which solves the problem...
IF
OnCreation()
Global("NewGame","AR0602",0) // Irenicus's Dungeon 1st Floor
THEN
RESPONSE #100
StartCutSceneMode()
HideGUI()
FadeToColor([1.0],0)
SetGlobal("NewGame","AR0602",1) // Irenicus's Dungeon 1st Floor
Continue()
END
IF
True()
Global("EnteredAR0602","AR0602",0)
THEN
RESPONSE #100
SetGlobal("EnteredAR0602","AR0602",1)
ClearAllActions()
Explore()
CreateCreature("JONWMOD",[3746.1998],10)
CreateCreature("JOWCMOD",[3686.1869],14)
CreateCreature("IRENMMOD",[3967.2030],7)
CreateCreature("JONMOD",[3876.1870],1)
CreateCreature("NPC4MOD",[3797.1964],10)
CreateCreature("IMOENMOD",[3653.1718],14)
Wait(1)
ActionOverride(Player1,LeaveAreaLUA("AR0602","",[3532.1997],0))
Wait(1)
MoveViewPoint([3693.1997],INSTANT)
Wait(2)
DisplayString("JONMOD", @0)
Wait(6)
DisplayString("NPC4MOD", @1)
Wait(5)
DisplayString("JONMOD", @2)
Wait(10)
DisplayString("JONWMOD", @3)
Wait(4)
ActionOverride("JONMOD",MoveToPoint([4125.1267]))
Wait(8)
ActionOverride("JONMOD",DestroySelf())
MoveViewPoint([3604.1846],INSTANT)
Wait(4)
DisplayString("IMOENMOD", @4)
Wait(5)
MoveViewPoint([3908.2001],SLOW)
Wait(1)
DisplayString("NPC4MOD", @5)
Wait(4)
ActionOverride("NPC4MOD",Attack("JONWMOD"))
Wait(4)
ActionOverride("JONWMOD",Attack("NPC4MOD"))
Wait(3)
ActionOverride("JONWMOD",Kill("NPC4MOD"))
Wait(1)
MoveViewPoint([3604.1846],SLOW)
Wait(1)
DisplayString("IMOENMOD", @6)
Wait(4)
ActionOverride(Player1,LeaveAreaLUA("AR0602","",[3739.2801],2))
Wait(2)
MoveViewPoint([3740.2799],INSTANT)
ActionOverride("IMOENMOD",DestroySelf())
ActionOverride("JONWMOD",DestroySelf())
ActionOverride("JOWCMOD",DestroySelf())
ActionOverride("IRENMMOD",DestroySelf())
Continue()
END
IF
Global("S#setAR0602","AR0602",0)
THEN
RESPONSE #100
CreateCreature("JONWMOD",[1075.3193],0)
CreateCreature("JONWMOD",[512.2745],0)
CreateCreature("JONWMOD",[796.2259],0)
CreateCreature("JONWMOD",[1096.2654],0)
CreateCreature("JONWMOD",[982.2579],0)
CreateCreature("JONWMOD",[845.2468],0)
CreateCreature("JONWMOD",[472.2143],0)
CreateCreature("JONWMOD",[948.1805],0)
CreateCreature("JONWMOD",[877.1493],0)
CreateCreature("JONWMOD",[537.1241],0)
CreateCreature("JONWMOD",[434.1001],0)
CreateCreature("JONWMOD",[790.1113],0)
CreateCreature("JONWMOD",[1247.793],0)
CreateCreature("JONWMOD",[1119.732],0)
CreateCreature("JONWMOD",[1037.546],0)
CreateCreature("JONWMOD",[2052.311],0)
CreateCreature("JONWMOD",[2210.721],0)
CreateCreature("JONWMOD",[3485.2179],0)
CreateCreature("JOWCMOD",[3692.1100],0)
CreateCreature("ERRADMOD",[1911.2881],0)
SetGlobal("S#setAR0602","AR0602",1)
Continue()
END
So the section below will be duplicated with the original one...
IF
OnCreation()
Global("NewGame","AR0602",0) // Irenicus's Dungeon 1st Floor
THEN
RESPONSE #100
StartCutSceneMode()
HideGUI()
FadeToColor([1.0],0)
SetGlobal("NewGame","AR0602",1) // Irenicus's Dungeon 1st Floor
Continue()
END
But once the variable SetGlobal("NewGame","AR0602") is set to 1 the duplicated part should be ignored...
Edited by JohnBob, 29 November 2022 - 09:41 AM.