Asterix Gaming Guild Logo GeneralXXLXXL 2XXL 3XXXLOlympic GamesXXL EditorToolsOff-TopicXXL RomasteredXXL 2 RemasteredOther GamesModsCaesar's ChallengeUnfair XXLPatchesFan ArtPersonal ArtSpeedrunningMediaRandomizerBETA RomeHSKALPresence AdrienPresence SPQRPresence Mr. RubinshteinSupport Bot Helpdesk

#editor

pegperegogaucho
At this point I believe that even ELB's K editor was only able to edit one sector at once
pegperegogaucho
So many ambiguities when it comes to the references
adrientd
Yeah, pretty sure the devs must have faced such issues themselves.
adrientd
Also is there even a sector number stored in the boss hook? :FrogThinking:
adrientd
I think that bosses are enabled and disabled manually through events, instead of sectors.
pegperegogaucho
I think every reference in the boss hook points to an object in the level
pegperegogaucho
Yes, the boss is invisible and hidden until you send Event 4C18 to it
adrientd
Because I tried but there were some references to CParticlesNodeFx nodes that were in the STR.
pegperegogaucho
Oh yeah right 🤔
pegperegogaucho
Honestly no idea
pegperegogaucho
Assuming they are in the last sector should be fine for now tho
pegperegogaucho
If at some point the editor can create new bosses that aren't in the last sector, then they can be put into the level :LUL:
adrientd
Yes good idea :LUL:
adrientd
The moment someone creates a new sector, we can simply transfer these nodes to the LVL
pegperegogaucho
Speaking of the boss, after the member "ckhbUnk9" there is actually an array of 5 structs describing the individual boss "phases" ```cpp struct BossPhase { float ShakeAmount; float MachineShakeAmount; float Unk0; float MachineSoundSpeed; float RollerSpinSpeed; float RollerExtendTime; float RollerDisplacementAmount; float Unk1; float SmokeDelay; float MachineSpeed; float BombAltitude; float FireRate; float Unk2; float Unk3; float BurstRate; float Unk4; std::array Unk5; float Unk6; float Unk7; uint8_t NumBombs; void reflectMembers(MemberListener& r); }; ``` phase 5 is when the boss is exploding (no rollers left)
adrientd
Ah ok good! 👍
adrientd
I think that some other classes also have fixed arrays of structs, but I haven't defined a struct yet since it didn't really matter for now.
pegperegogaucho
Yup, That's unfortunately a disadvantage of tracing all the read calls
pegperegogaucho
And I guess in the assembly there is probably no loop for reading a fixed array as well as it's unrolled by the compiler
adrientd
I wouldn't say it's a disadvantage, it is still possible to determine a loop by simply checking for the caller address of a reading call, and check if the same caller address is logged twice or more... Of course if the compiler unrolled the loop, then each read call for every element of the array would be a different caller address and even with my tool it would be harder to guess arrays.