Commit graph

49 commits

Author SHA1 Message Date
ragnarok-clanker
ee280b667b Decompile fn_23401 (CSession::MercSkillLevel)
Batch #1324 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review.

- fn_23401 CSession::MercSkillLevel: logic confirmed by peer review

Peer-reviewed-by: Yommy
Reviewed-by: ragnarok-clanker
2026-10-28 12:06:46 +00:00
ragnarok-clanker
648ae44d9d Decompile 2 functions in Source/Contents/AdventureGuideMgr.cpp, Source/Contents/AdventureGuideMgr.h, ...
Batch #1377 by Yommy: 0 byte-identical, 2 confirmed by peer review.

- fn_05237 CAdventureGuideMgr::GetEpisodeList: logic confirmed by peer review
- fn_05238 CAdventureGuideMgr::GetContentsList: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
2026-10-28 12:06:16 +00:00
ragnarok-clanker
e541c278b4 Decompile fn_17786 (TextInputBuffer::SetFlag8C)
Batch #1372 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review.

- fn_17786 TextInputBuffer::SetFlag8C: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
2026-10-28 11:44:54 +00:00
ragnarok-clanker
64bd0730d5 Decompile fn_24225 (CSession::CollectCardItems)
Batch #1366 by Yommy: 0 byte-identical, 1 confirmed by peer review.

- fn_24225 CSession::CollectCardItems: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
Adds to the build: Source/Contents/ClientState.cpp
2026-10-28 11:42:30 +00:00
ragnarok-clanker
0880609085 Decompile fn_17827 (ShowErrorDialog)
Batch #1352 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review.

- fn_17827 ShowErrorDialog: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
2026-10-28 11:06:57 +00:00
ragnarok-clanker
241c913563 Decompile fn_17790 (TextInputBuffer::RetreatCursor)
Batch #1343 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review.

- fn_17790 TextInputBuffer::RetreatCursor: logic confirmed by peer review

Peer-reviewed-by: eAthena
Reviewed-by: ragnarok-clanker
2026-10-28 11:01:42 +00:00
ragnarok-clanker
22d7370193 Decompile 4 functions in Source/Contents/Items/ItemInfo.cpp, Source/Contents/Items/ItemInfo.h, ...
Batch #1336 by ragnarok-clanker: 0 byte-identical, 4 confirmed by peer review.

- fn_02473 CTexture::Touch: logic confirmed by peer review
- fn_06603 ItemInfo::IsApprenticeItem: logic confirmed by peer review
- fn_24179 CSession::IsReducedSkill: logic confirmed by peer review
- fn_23614 CSession::ConvertTooltipText: logic confirmed by peer review

Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-28 10:35:18 +00:00
ragnarok-clanker
92886d28ca Decompile 2 functions in Source/Contents/Items/ItemInfo.cpp, Source/Contents/Items/ItemInfo.h, ...
Batch #1329 by ragnarok-clanker: 0 byte-identical, 2 confirmed by peer review.

- fn_23633 CSession::ClearItemSelection: logic confirmed by peer review
- fn_17254 UIWindowMgr::NotifyMode: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
2026-10-28 10:30:24 +00:00
ragnarok-clanker
998a6de79a Decompile fn_06600 (ItemInfo::HasSpecialCard)
Batch #1330 by ragnarok-clanker: 1 byte-identical, 0 confirmed by peer review.

- fn_06600 ItemInfo::HasSpecialCard: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-28 10:19:34 +00:00
ragnarok-clanker
308cefc066 Decompile fn_23826 (CSession::SyncUnknown0E98)
Batch #1325 by ragnarok-clanker: 1 byte-identical, 0 confirmed by peer review.

- fn_23826 CSession::SyncUnknown0E98: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-28 10:10:19 +00:00
ragnarok-clanker
097ad1eee0 Maintenance: Add data-only CGameMode and CView layout headers (no methods; worker versions declared 6-7 methods with no definitions).
Batch #1320 by ragnarok-clanker: no function's compiled code changes; checked with 0 compiled unit(s), including every includer of Source/Client/Mode/CGameMode.h, Source/Contents/Camera/Camera.h.
2026-10-28 09:47:03 +00:00
ragnarok-clanker
967adbbc52 Decompile 2 functions in Source/Client/Mode/ActiveGameMode.cpp
Batch #1293 by ragnarok-clanker: 2 byte-identical, 0 confirmed by peer review.

- fn_17836 CMode::End: byte-identical
- fn_17837 CMode::Initialize: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-28 06:32:11 +00:00
ragnarok-clanker
79a9d02fdd Decompile fn_19305 (ReplaySection::Clear)
Batch #1254 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review.

- fn_19305 ReplaySection::Clear: logic confirmed by peer review

Peer-reviewed-by: eAthena
Reviewed-by: ragnarok-clanker
2026-10-27 23:25:36 +00:00
ragnarok-clanker
d7cf6f94ac Decompile fn_19301 (ReplayCachedPacket::ReplayCachedPacket)
Batch #1253 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review.

- fn_19301 ReplayCachedPacket::ReplayCachedPacket: logic confirmed by peer review

Peer-reviewed-by: eAthena
Reviewed-by: ragnarok-clanker
2026-10-27 23:25:26 +00:00
ragnarok-clanker
c71e8bb7c9 Decompile fn_19334 (Replay::SetBaseFrame)
Batch #1242 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review.

- fn_19334 Replay::SetBaseFrame: logic confirmed by peer review

Peer-reviewed-by: eAthena
Reviewed-by: ragnarok-clanker
2026-10-27 22:54:52 +00:00
ragnarok-clanker
7f5dfda450 Decompile fn_19335 (Replay::UpdateDuration)
Batch #1241 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review.

- fn_19335 Replay::UpdateDuration: logic confirmed by peer review

Peer-reviewed-by: eAthena
Reviewed-by: ragnarok-clanker
2026-10-27 22:54:34 +00:00
ragnarok-clanker
297c30c825 Decompile 4 functions in Source/Client/Browser/BrowserClientSite.cpp
Batch #1235 by ragnarok-clanker: 0 byte-identical, 4 confirmed by peer review.

- fn_17335 CCmdTargetEx::CCmdTargetEx: logic confirmed by peer review
- fn_17336 CIDispatchEx::CIDispatchEx: logic confirmed by peer review
- fn_17337 CIDocHostUIHandlerEx::CIDocHostUIHandlerEx: logic confirmed by peer review
- fn_17338 CIOleInPlaceFrameEx::CIOleInPlaceFrameEx: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
2026-10-27 22:53:38 +00:00
ragnarok-clanker
1166cbf0fd Decompile fn_17774 (SubACDD10)
Batch #1239 by ragnarok-clanker: 1 byte-identical, 0 confirmed by peer review.

- fn_17774 SubACDD10: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-27 22:51:21 +00:00
ragnarok-clanker
d7bd31b4a6 Decompile 5 functions in Source/Contents/PetStatus.cpp, Source/Client/Session.h
Batch #1190 by eAthena: 0 byte-identical, 5 confirmed by peer review.

- fn_23806 CSession::GetPetActionNumber: logic confirmed by peer review
- fn_23808 CSession::GetPetFriendlyState: logic confirmed by peer review
- fn_23809 CSession::GetPetFriendlyStateString: logic confirmed by peer review
- fn_23810 CSession::GetPetHungryState: logic confirmed by peer review
- fn_23817 CSession::GetPetEmotionNumber: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
Adds to the build: Source/Contents/PetStatus.cpp
2026-10-27 21:08:12 +00:00
ragnarok-clanker
22ebefe099 Decompile 4 functions in Source/Contents/PetStrings.cpp, Source/Client/Session.h
Batch #1192 by eAthena: 0 byte-identical, 4 confirmed by peer review.

- fn_23807 CSession::GetPetFood: logic confirmed by peer review
- fn_23812 CSession::GetPetIllustName: logic confirmed by peer review
- fn_23813 CSession::GetPetJobByEggItem: logic confirmed by peer review
- fn_23816 CSession::GetPetString: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
Adds to the build: Source/Contents/PetStrings.cpp
2026-10-27 21:07:55 +00:00
ragnarok-clanker
ab4477de24 Decompile 7 functions in Source/Contents/Skills/ClientSkills.cpp, Source/Client/Session.h
Batch #1179 by eAthena: 7 byte-identical, 0 confirmed by peer review.

- fn_23754 CSession::ClearItemQuantities: byte-identical
- fn_23755 CSession::ResetItems3500: byte-identical
- fn_23756 CSession::ClearSlots06EB: byte-identical
- fn_23757 CSession::ClearShortcutSlots: byte-identical
- fn_23758 CSession::ClearSecondaryShortcutSlots: byte-identical
- fn_23759 CSession::ClearUnknown0420: byte-identical
- fn_23774 CSession::CountItems5C68: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-27 20:58:12 +00:00
ragnarok-clanker
7b701e5bc4 Decompile fn_19333 (Replay::WriteFinalSection)
Batch #1155 by ragnarok-clanker: 1 byte-identical, 0 confirmed by peer review.

- fn_19333 Replay::WriteFinalSection: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-27 20:40:03 +00:00
ragnarok-clanker
5bc5660a42 ♻️ refactor(replay): replaced magic packet IDs with named constants and added replay record options
(cherry picked from commit 22cea43ea3)
2026-10-27 14:43:03 +00:00
ragnarok-clanker
48e41cae16 Maintenance: Add mandatory field offset markers /* XXXX */ and assertions to Client headers (Browser, Input, Mode)
Batch #1059 by ragnarok-clanker: no function's compiled code changes; checked with 21 compiled unit(s), including every includer of Source/Client/Browser/WebBrowser.h, Source/Client/Browser/WebEventReceiver.h, Source/Client/Input/Mouse.h, Source/Client/Input/TraditionalKeyInput.h, Source/Client/Mode/ModeCursor.h.
2026-10-27 13:42:38 +00:00
ragnarok-clanker
fbdc231444 Decompile 5 functions in Source/UI/Window/UIWindowMgr.cpp, Source/UI/Window/UIWindowMgr.h, ...
Batch #1048 by ragnarok-clanker: 0 byte-identical, 5 confirmed by peer review.

- fn_17219 UIWindowMgr::Schedule: logic confirmed by peer review
- fn_17235 UIWindowMgr::DismissTransient: logic confirmed by peer review
- fn_17237 UIWindowMgr::Destroy: logic confirmed by peer review
- fn_17833 ModeTooltip::Clear: logic confirmed by peer review
- fn_17843 ModeTooltip::Expire: logic confirmed by peer review

Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
2026-10-27 12:07:15 +00:00
ragnarok-clanker
2a43504543 Decompile 9 functions in Source/Client/ReplayControl.cpp, Source/Client/Replay.h, ...
Batch #1043 by ragnarok-clanker: 0 byte-identical, 9 confirmed by peer review.

- fn_19316 Replay::AnimationScale: logic confirmed by peer review
- fn_19343 Replay::SetState: logic confirmed by peer review
- fn_21118 CRenderObject::SetAnimation: logic confirmed by peer review
- fn_21119 CRenderObject::SetColor: logic confirmed by peer review
- fn_21130 CRenderObject::SetSequenceDeadline: logic confirmed by peer review
- fn_21131 CRenderObject::SetSequenceInterval: logic confirmed by peer review
- fn_21132 CRenderObject::SetAnimationSequence: logic confirmed by peer review
- fn_21133 CRenderObject::SetFrameSequence: logic confirmed by peer review
- fn_21140 CRenderObject::SetAnimationSpeed: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
Adds to the build: Source/Client/ReplayControl.cpp
2026-10-27 11:01:59 +00:00
ragnarok-clanker
efee869d24 Decompile fn_17849 (ModeBaseEvents::Send)
Batch #1039 by ragnarok-clanker: 0 byte-identical, 1 confirmed by peer review.

- fn_17849 ModeBaseEvents::Send: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
Adds to the build: Source/Client/ModeBaseEvents.cpp
2026-10-27 11:01:39 +00:00
ragnarok-clanker
c60cbe211b Decompile 2 functions in Source/Client/ModeFadeOut.cpp, Source/Client/ModeFadeOut.h, ...
Batch #1037 by ragnarok-clanker: 0 byte-identical, 2 confirmed by peer review.

- fn_17847 FadeOutMode: logic confirmed by peer review
- fn_17148 DrawBitmapResource: logic confirmed by peer review

Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
Adds to the build: Source/Client/ModeFadeOut.cpp, Source/Render/BitmapDrawing.cpp
2026-10-27 10:19:58 +00:00
ragnarok-clanker
f3ceb09e9d Merge commit '6c40a36577' 2026-10-27 10:06:35 +00:00
ragnarok-clanker
2035aa96de Decompile 2 functions in Source/Render/AlphaRectangle.cpp, Source/Client/ModeFade.cpp, ...
Batch #1027 by ragnarok-clanker: 0 byte-identical, 2 confirmed by peer review.

- fn_01952 DrawAlphaRectangle: logic confirmed by peer review
- fn_17842 ModeFade::Draw: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
Adds to the build: Source/Render/AlphaRectangle.cpp, Source/Client/ModeFade.cpp
2026-10-27 10:04:54 +00:00
ragnarok-clanker
c989c4837c Decompile 6 functions in Source/Client/Replay.cpp, Source/Client/Replay.h
Batch #998 by ragnarok-clanker: 0 byte-identical, 6 confirmed by peer review.

- fn_06623 BuildReplayTaggedRecord: logic confirmed by peer review
- fn_19300 Replay::Replay: logic confirmed by peer review
- fn_19326 Replay::WriteSection: logic confirmed by peer review
- fn_19327 Replay::WriteHeader: logic confirmed by peer review
- fn_19328 Replay::BuildMetadata: logic confirmed by peer review
- fn_19354 Replay::Instance: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
2026-10-27 10:04:02 +00:00
ragnarok-clanker
d73c3c1296 Decompile 5 functions in Source/UI/Window/UIWindowMgr.cpp, Source/UI/Window/UIWindowMgr.h, ...
Batch #1025 by ragnarok-clanker: 5 byte-identical, 0 confirmed by peer review.

- fn_17831 CWorld::ActiveGameMode: byte-identical
- fn_19302 ReplaySection::ReplaySection: byte-identical (already on main)
- fn_19306 ReplaySection::~ReplaySection: byte-identical (already on main)
- fn_17835 CMode::Slot7: byte-identical
- fn_17838 CMode::Slot5: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-27 09:38:13 +00:00
ragnarok-clanker
3dbd276311 📚 docs(inlining): marked inlined functions across modules 2026-10-27 10:21:57 +01:00
ragnarok-clanker
779dd40d2e 🛠️ refactor(source): annotated inlined functions and removed unused include 2026-10-27 10:01:19 +01:00
ragnarok-clanker
fafcae34db Merge branch 'main' of https://clank.rodecomp.online/git/clank/rodecomp 2026-10-27 09:59:05 +01:00
ragnarok-clanker
ee401857a1 📝 docs(annotations): annotated inlined functions across modules 2026-10-27 09:59:03 +01:00
ragnarok-clanker
279b86f980 Merge branch 'main' of http://forgejo:3000/clank/rodecomp 2026-10-27 08:58:12 +00:00
ragnarok-clanker
a107b3f0de 🛠️ refactor(TraditionalKeyInput): renamed Zhuyin Big5 key table to zhuyinBig5 2026-10-27 09:57:24 +01:00
ragnarok-clanker
dc5c68be89 🛠️ refactor(TraditionalKeyInput): replaced OEM key escapes with VK_OEM_* constants 2026-10-27 09:53:10 +01:00
ragnarok-clanker
67dd9978df Decompile 2 functions in Source/Client/Replay.cpp, Source/Client/Replay.h
Batch #1003 by ragnarok-clanker: 2 byte-identical, 0 confirmed by peer review.

- fn_19302 ReplaySection::ReplaySection: byte-identical
- fn_19306 ReplaySection::~ReplaySection: byte-identical

Merged automatically: every function is byte-identical to the original.
Adds to the build: Source/Client/Replay.cpp
2026-10-27 08:51:56 +00:00
ragnarok-clanker
4d9d775cc8 Decompile 3 functions in Source/Contents/World/WorldSpatialTree.cpp, Source/Contents/World/WorldSpatialTree.h, ...
Batch #995 by ragnarok-clanker: 0 byte-identical, 3 confirmed by peer review.

- fn_17651 WorldScene::WorldScene: logic confirmed by peer review
- fn_17654 WorldScene::~WorldScene: logic confirmed by peer review
- fn_17704 WorldSpatialTree::RefreshModelBounds: logic confirmed by peer review

Reviewed-by: ragnarok-clanker
2026-10-27 08:51:12 +00:00
ragnarok-clanker
bf6a44c117 Group Utility units into subsystem folders and require OFFSET provenance
Move Lexicon*, Text (TextTokens, TextEscapes, Base64), Math/RadialGrid, Hash (MD5, XxHash32) and Cipher (Rijndael, XorBytes) into Source/Utility subfolders; update includes, guards, compile.json and CMakeLists.txt. Backfill // OFFSET: above every standalone // FUNCTION: block (89 IDs, addresses from the symbol database) and make it mandatory in CODING_RULES.md and AGENTS.md. Remove the MatchLexicon cast chain.
2026-10-26 23:41:07 +01:00
ragnarok-clanker
e792ccc6ea Maintenance: Preserve original non-null empty C-string initializer: slot 0x01348F80 contains 0x010D4EE8 and its target starts with NU
Batch #908 by ragnarok-clanker: no function's compiled code changes; checked with 1 compiled unit(s).
2026-10-26 19:23:28 +00:00
ragnarok-clanker
f575258340 Maintenance: Define every global once in its owner unit; session members replace member globals
Batch #906 by ragnarok-clanker: no function's compiled code changes; checked with 9 compiled unit(s), including every includer of Source/Client/Session.h, Source/Client/Registry.h, Source/Client/Application/LaunchInfo.h, Source/Client/Application/Launcher.h, Source/Client/Mode/ActiveGameMode.h, Source/Render/DeviceSelection.h.
Adds to the build: Source/Client/Session.cpp, Source/Client/Registry.cpp, Source/Client/Application/LaunchInfo.cpp, Source/Render/DeviceSelection.cpp
2026-10-26 18:34:25 +00:00
ragnarok-clanker
75b61893f5 Decompile fn_17768 (TraditionalKeyInputNoop)
Batch #899 by ragnarok-clanker: 1 byte-identical, 0 confirmed by peer review.

- fn_17768 TraditionalKeyInputNoop: byte-identical

Merged automatically: every function is byte-identical to the original.
2026-10-26 15:13:41 +00:00
ragnarok-clanker
e168b4e4a6 Restore translation-unit ownership and publish verified source corrections
Owner-authorized source migration: 31 helper-only translation units were merged into their callers or existing inline headers; both build manifests updated. Includes the preserved source payload, Lua configuration matching wowdecomp, and exact malloca expansion without diagnostic pragmas.

449 native units compiled locally and 449 staged units compiled by the pinned server toolchain. No previously byte-matched function regressed. Compiler mapping diagnostics remain recorded as needs_cleanup, not accepted or peer-confirmed. Existing independent review records are preserved. README.md is intentionally unchanged.
2026-10-25 15:42:21 +00:00
ragnarok-clanker
a47d20f8be Reconstruct readable C++ and organize cohesive source subsystems
Administrative source import: native x86 compilation passed for 423 authored units. Source placement and submission states are migrated separately; this commit does not imply peer acceptance.

Previous head: 35d2a8cb36
Payload SHA256: 592f016d2730c5593bb653aa054c1e5f76a6df72c8f5a09e66f74876e2e33dee
2026-10-25 07:42:41 +00:00
ragnarok-clanker
8430dc8678 Decompile fn_17831 (CWorld::ActiveGameMode)
Batch #19 by ragnarok-clanker: 1 byte-identical, 0 confirmed by peer review.

- fn_17831 CWorld::ActiveGameMode: byte-identical

Merged automatically: every function is byte-identical to the original.
Adds to the build: Source/Client/ActiveGameMode.cpp
2026-10-24 05:38:56 +00:00
ragnarok-clanker
d456e8f64a Initial rodecomp source snapshot 2026-10-24 00:35:19 +00:00