GameScene: Difference between revisions

imported>Leoetlino
(→‎Stage generation: finish overview of the stage generation process)
imported>Leoetlino
Line 349: Line 349:
**aoc2: IsLastPlayHardMode is updated.
**aoc2: IsLastPlayHardMode is updated.
**GameScene::sNeedsOptionLoad is set to true.
**GameScene::sNeedsOptionLoad is set to true.
=== Stage generation step 11 ===
* Step 0: init before stage gen (ステージ生成前の初期化処理)
**Various flags are set (GameScene, BaseProcMgr, Awareness, EventMgr), in particular field 0x1d12a is set to true if <code>!isNewSave</code>.
**Set initial position based on the stage binder. This may be overridden with a saved position or an event position later on.
**GameSceneSubsys2, ActorSystem: set some flags
**GameSceneSubsys14: Update current location name (game data flag: SaveLocationName). The flag is written to if the player is in a shrine or a Divine Beast. Otherwise, it's read.
**PhysicsMemSys: set indoor flag if the stage binder type is Indoor (1)
**aoc2: Set flag 0x1 (IsLastPlayHardMode) if the corresponding game data flag is set. This is what the rest of the game uses to determine if Master Mode is enabled.
**Effect, Reaction, PhysicsMemSys, EventMgr
**PlacementMgr, LODMgr, EventMgr, WorldMgr, Awareness, Effect, XLink, VFR
**aocManager: set latest version played and HasAocVer{1,2,3} flags.
**Terrain
**Initialize the sound system and the UI manager
**If the stage binder type is OpenWorld (0) or the map name is ActorViewer or the current stage is a debug map:
***Create the HorseMgr instance, initialize it and create the horse actor.
***Create the WolfLinkMgr instance and initialize it.
***Create the MotorcycleMgr instance and initialize it.
**GameSceneSubsys5, GameSceneSubsys4: ? {{check}}
**If a flag is set (GameScene @ 0x6e5), SaveSystem::startLoad is called.
**TipsMgr: Initialize the TipsSystemActor.
=== Stage generation step 12 ===
=== Stage generation final step ===


== References ==
== References ==
Anonymous user