<feed xmlns='http://www.w3.org/2005/Atom'>
<title>botw/src/Game/Actor/Query, branch master</title>
<subtitle>Decompilation of The Legend of Zelda: Breath of the Wild (Switch v1.5.0)</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/'/>
<entry>
<title>uking/scene: move the map getters to uking::StageInfo</title>
<updated>2026-10-15T21:56:22+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-10-15T21:56:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=65ea3f7cddc8f87213bea3d3d8c9497d89aee5c5'/>
<id>65ea3f7cddc8f87213bea3d3d8c9497d89aee5c5</id>
<content type='text'>
They're linked before gameStageInfo.cpp's sinit with no other sinit
in between, so they belong to gameStageInfo, not gameScene, and become
StageInfo statics declared in gameStageInfo.h. Their GameScene owner
was a guess.

(AI assisted using Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
They're linked before gameStageInfo.cpp's sinit with no other sinit
in between, so they belong to gameStageInfo, not gameScene, and become
StageInfo statics declared in gameStageInfo.h. Their GameScene owner
was a guess.

(AI assisted using Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
<entry>
<title>Action, AI, Query: sort the source lists by file name</title>
<updated>2026-10-13T01:33:27+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-10-13T00:25:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=d8535deac94084b0b3b651788b00aebeadc5ccc7'/>
<id>d8535deac94084b0b3b651788b00aebeadc5ccc7</id>
<content type='text'>
These objects are linked in case-insensitive file name order, but the
lists kept renamed files at their old positions, so the decomp linked
them out of order.

(AI assisted using Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
These objects are linked in case-insensitive file name order, but the
lists kept renamed files at their old positions, so the decomp linked
them out of order.

(AI assisted using Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
<entry>
<title>ksys: move AS setting, RootAi and three others to match link order</title>
<updated>2026-10-13T01:33:27+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-09-28T01:39:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=ea13bac74ad136aeb3dde81f07ccd62622be94ad'/>
<id>ea13bac74ad136aeb3dde81f07ccd62622be94ad</id>
<content type='text'>
Each file moves to where its code is linked, and namespaces follow the
new paths. ASSettingMgr is an unofficial name.

| Old | New |
|---|---|
| act::ASSetting (ActorSystem/actASSetting) | res::ASSettingMgr (Resource/Actor/resResourceASSettingMgr) |
| Resource/resResourceASSetting, Resource/Actor/resResourceASResourceExtension | Resource/Actor/resResourceASSetting |
| ksys::DebugFinder (System/DebugFinder) | ksys::act::DebugFinder (ActorSystem/actDebugFinder) |
| ActorSystem/LOD/actLodState | ActorSystem/actLodState |
| ActorSystem/actAiRoot | ActorSystem/aiRootAi |
| Map/mapStagePreActorCache | System/StagePreActorCache (ksys) |

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Each file moves to where its code is linked, and namespaces follow the
new paths. ASSettingMgr is an unofficial name.

| Old | New |
|---|---|
| act::ASSetting (ActorSystem/actASSetting) | res::ASSettingMgr (Resource/Actor/resResourceASSettingMgr) |
| Resource/resResourceASSetting, Resource/Actor/resResourceASResourceExtension | Resource/Actor/resResourceASSetting |
| ksys::DebugFinder (System/DebugFinder) | ksys::act::DebugFinder (ActorSystem/actDebugFinder) |
| ActorSystem/LOD/actLodState | ActorSystem/actLodState |
| ActorSystem/actAiRoot | ActorSystem/aiRootAi |
| Map/mapStagePreActorCache | System/StagePreActorCache (ksys) |

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
<entry>
<title>The task and thread families are plain ksys::</title>
<updated>2026-10-06T01:19:39+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-09-28T01:39:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=98f0c80f1d0b9d3ca19f0b38efcb597ee65d9dc0'/>
<id>98f0c80f1d0b9d3ca19f0b38efcb597ee65d9dc0</id>
<content type='text'>
They link in the same block as the plain-ksys:: Message family.
getItemValue and applyScreenFade sit in engine UI TUs, hence ksys::ui.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
They link in the same block as the plain-ksys:: Message family.
getItemValue and applyScreenFade sit in engine UI TUs, hence ksys::ui.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
<entry>
<title>ActorSystem: Fork AIs, DemoRootAI and queries are ksys</title>
<updated>2026-10-06T01:19:39+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-09-28T01:39:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=8002f122c8cbd92e8e934c26741d8097d01297f6'/>
<id>8002f122c8cbd92e8e934c26741d8097d01297f6</id>
<content type='text'>
They form one run in the ActorSystem block (DemoRootAI at 0x7100d61e68,
right after VillagerMgr).

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
They form one run in the ActorSystem block (DemoRootAI at 0x7100d61e68,
right after VillagerMgr).

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
<entry>
<title>aoc: Manager is ksys, the DLC managers stay game-side</title>
<updated>2026-10-06T01:19:39+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-09-28T01:39:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=c4c7c00e85df3137d57cc899302a160ff94fa71b'/>
<id>c4c7c00e85df3137d57cc899302a160ff94fa71b</id>
<content type='text'>
aoc::Manager is created during engine start-up and called by gdt, map
and StarterPackMgr; only game code uses HardModeManager and
ChampionBalladManager.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
aoc::Manager is created during engine start-up and called by gdt, map
and StarterPackMgr; only game code uses HardModeManager and
ChampionBalladManager.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
<entry>
<title>Actor: PlayerInfo/PlayerBase are game, GameConfig ksys</title>
<updated>2026-10-06T01:19:38+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-09-28T01:39:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=d8da4fc5f2f159f2ea3386d7018e61629759bc09'/>
<id>d8da4fc5f2f159f2ea3386d7018e61629759bc09</id>
<content type='text'>
Every decomp user of PlayerInfo is game code, and PlayerBase sits right
above Player. GameConfig.h models the engine base that
links at GameConfig's slot in KingSystem/System.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Every decomp user of PlayerInfo is game code, and PlayerBase sits right
above Player. GameConfig.h models the engine base that
links at GameConfig's slot in KingSystem/System.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
<entry>
<title>Move aiCameraEvent, AirOctaDataMgr, scenes, CameraMgr</title>
<updated>2026-10-04T04:50:35+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-09-28T01:39:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=a0245d469640cbe64199a2167cbd7b73c9873904'/>
<id>a0245d469640cbe64199a2167cbd7b73c9873904</id>
<content type='text'>
Put each where link order does: aiCameraEvent in the camera AI run,
AirOctaDataMgr right before aiAirOctaFlyUp, CameraMgr between the
ActorSystem and Chemical runs.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Put each where link order does: aiCameraEvent in the camera AI run,
AirOctaDataMgr right before aiAirOctaFlyUp, CameraMgr between the
ActorSystem and Chemical runs.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
<entry>
<title>Actor: move all AI code under Game/Actor</title>
<updated>2026-09-13T22:02:22+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2026-09-13T22:02:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/botw/commit/?id=f4cd38c43b436fe91def1a1b0b3dfe0134369870'/>
<id>f4cd38c43b436fe91def1a1b0b3dfe0134369870</id>
<content type='text'>
Link order shows one sorted actor tree, not a separate AI project: the
Action/AI/Query folders and per-feature folders (Camera, Player, Horse,
...) come out of the same archive rounds as the actor classes.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Link order shows one sorted actor tree, not a separate AI project: the
Action/AI/Query folders and per-feature folders (Camera, Player, Horse,
...) come out of the same archive rounds as the actor classes.

(AI assisted using Claude Fable 5.1 and Claude Opus 5.5)
</pre>
</div>
</content>
</entry>
</feed>
