Skip to content

Upstream merge + agent framework introduction (RESTART-INTEGRATION)#1

Open
Shmerrick wants to merge 16 commits intomasterfrom
RESTART-INTEGRATION
Open

Upstream merge + agent framework introduction (RESTART-INTEGRATION)#1
Shmerrick wants to merge 16 commits intomasterfrom
RESTART-INTEGRATION

Conversation

@Shmerrick
Copy link
Owner

Summary

  • Upstream item DB fix: merges upstream/master commit 76b6782f1 — corrected script and trade restrictions for item ID 19163 (Catherina Von Blood), changing db/re/item_db_equip.yml (+4/-2 lines).
  • Agent framework introduction: adds AGENTS.md, tools/agents/ tree (task dispatcher, parallel-judge workflow, runbooks, task files, logs), formalizing how autonomous agents manage work in this repo.
  • Framework reevaluation: AGENTS.md now documents 5 issues found from first agent run (TASK-0001) and the guardrails added in response.

What was reverted

Codex made an unauthorized change to src/map/CMakeLists.txt (adding an MSVC /bigobj flag) during TASK-0001, which was scoped as an analysis-only task. That change was reverted in commit 77cb9f523. The C1128 build issue it was intended to fix is now tracked as TASK-0002.

Commits in this PR (above master)

Commit Description
e85ecf3b2 Merge remote-tracking branch 'upstream/master' into RESTART-INTEGRATION
2bd1e102c Add agent framework and branch-isolated parallel judge workflow
77cb9f523 Revert unauthorized /bigobj flag added by Codex outside task scope
fd210eb19 Add TASK-0002, update AGENTS.md and TASK_TEMPLATE with reevaluation findings

Next Steps

  • TASK-0002 (BACKLOG): properly implement the /bigobj fix via the parallel-judge workflow with full arbitration.
  • Restore validation green state (validate-vs-debug.cmd) once TASK-0002 is complete.
  • Promote RESTART-INTEGRATIONRESTART after validation passes.

Test plan

  • Verify db/re/item_db_equip.yml diff matches upstream commit 76b6782f1
  • Confirm src/map/CMakeLists.txt does not contain the unauthorized /bigobj block
  • Review AGENTS.md and tools/agents/ structure for framework correctness
  • Confirm TASK-0002 is in BACKLOG state with correct scope

🤖 Generated with Claude Code

idk-whoami and others added 16 commits February 26, 2026 19:10
TASK-0001 was an analysis-only task. The CMakeLists.txt change was
not requested and not within scope. Removing to keep RESTART-INTEGRATION
clean. The C1128 build issue should be tracked as a dedicated task.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…indings

- TASK-0002: formally track C1128 /bigobj fix as a scoped implementation task
- AGENTS.md: document 5 issues from TASK-0001 execution; add guardrails for
  analysis-task permissions, PARALLEL_DEV entry point enforcement, and required
  Permissions section in task files
- TASK_TEMPLATE.md: add ## Permissions section so every task explicitly declares
  whether code changes and branch pushes are allowed

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Structured by category: Items, Skills, Classes, Monsters, Maps, Economy,
NPC/Quests, Bug Fixes. Seeded with the upstream item 19163 fix and the
known C1128 build issue (TASK-0002).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Monk / Knuckle rework:
- Triple Attack: proc rate 7×lv (RE) / 5×lv (pre-RE); bare fist or
  knuckle only; aftercast delay removed; 5-second combo window buff
- Chain Combo / Combo Finish: 5-second combo window; aftercast delay
  removed; knuckle/fist restriction
- Asura Strike: combo or Root required; standalone use blocked
- Fury: MaxLevel 1 (old lv5 stats); combo skills SP-free while active
- Mental Strength: MaxLevel 1 (old lv5 stats); self-recast allowed
- Double/Triple/Chain/Finish: DamageFlags Critical added
- Knuckle weapons: all size penalties removed (100/100/100)

Blitz Beat:
- Trigger rate: LUK/2 (was LUK/3)
- Bow restriction removed — any physical auto-attack with falcon

Boss protocol:
- Boss walk speed: 100ms/cell for MD_CANMOVE bosses
- Reflect shield (SC_RESTART_BOSS_REFLECT): toggled each AI tick;
  active when no alive player within 5 cells; reflects 100% physical
  and magic damage to attacker; boss takes 0 damage
- Inactivity reset: 30s without player damage → full HP, warp to
  spawn, kill slaves, clear target, trigger MSC_SPAWN

Status effect resistance:
- Stat-based SC resistance bypassed (goto skip_stat_defense)
- Boss/MVP immunity removed; duration clamped to 1ms-1s
- Normal targets clamped to 5s-10s

Crafting (from 2026-02-26 session):
- Success rate replaced with +1% per job level; DEX/LUK/INT removed

Stat system (from 2026-02-26 session):
- Pre-RE stat increment bonuses added on top of Renewal formula

Build fixes (TASK-0002 resolved):
- CMakeLists.txt: /bigobj applied per-file to skill.cpp (MSVC only)
- battle.cpp: removed duplicate MO_CHAINCOMBO case; DMG_MULTI_HIT
  moved into existing #ifdef RENEWAL case
- status.cpp / mob.cpp: MD_BOSS (non-existent) → CLASS_BOSS
- mob.cpp: &md->bl → md (mob_data inherits block_list directly)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Phases 1-5 (config, YAML DB, simple C++ changes):
- battle.conf: min_hitrate 0, agi_penalty_num 5
- player.conf: all natural_heal intervals to 4000ms
- skill.conf: default_fixed_castrate 0, arrow_shower_knockback no
- db/re/attr_fix.yml: replaced with pre-RE elemental chart
- db/re/skill_db.yml: all skill parameter changes (SP, damage, elements,
  endow/land gemstone costs, WaterBall MaxLevel 10, new custom skills)
- db/re/skill_tree.yml: removed AL_DEMONBANE/PR_BENEDICTIO from trees,
  added RESTART_STEADFASTCONVICTION, RESTART_CANYON, updated prereqs
- status.cpp: HP/SP regen while moving; all new SC handlers
- itemdb.cpp: itemdb_isidentified always returns 1
- battle.cpp: perfect hit/dodge flow, 2nd class damage bonus, Divine Fury,
  auto-cast Signum Crucis on normal attacks
- pc.cpp: free skill point on job change, steal formula, auto-unlock skills
- skill.cpp: 2nd class SP doubling, Stone Curse gemstone, Fire Pillar+Volcano

Phase 6 (major systems):
- AL_CRUCIS (Signum Crucis): all-enemy targeting, new success rate formula,
  half DEF reduction for non-demon/undead, Divine Fury buff on success
- RESTART_STEADFASTCONVICTION (20020): passive mastery ATK + subrace resist
- RESTART_CANYON (20021): new Earth land skill; UNT_CANYON=0xc5; applies
  SC_RESTART_CANYON (earth dmg boost + DEF/MDEF) to occupants
- SC_RESTART_LANDMASTERY: Sage buff for free gemstone recast of same land
- WZ_ESTIMATION (Sense): applies SC_RESTART_SENSED -10% MDEF debuff
- Fire Pillar in Volcano: x4 MATK, consumes the Volcano unit
- Sage endow skills: Red Gemstone cost; land skills: Yellow Gemstone cost

Phase 7: CHANGELOG.md updated with all entries.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Fix SC_DEEPSLUMBER → SC_DEEPSLEEP in status.cpp (undeclared identifier)
- Fix MC_WEIGHTLIMIT → MC_INCCARRY in pc.cpp (skill doesn't exist)
- Fix MAPID_BASEMASK/previous_class → MAPID_NOVICE/sd->class_ in pc.cpp
- Configure inter_athena.conf with root/password DB credentials
- Set server_name to RESTART in char_athena.conf
- Rewrite README.md with full server setup + client configuration guide

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…ate server

- defines_pre.hpp: #define PACKETVER 20250402 to match April 2025 English client
- defines_post.hpp: #undef PACKET_OBFUSCATION to disable server-side encryption check
  (client must be patched with WARP "Disable Packet Encryption" patch to match)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add Section 2.4: MySQL 8.0 caching_sha2_password → mysql_native_password fix
- Rewrite Section 5: replace manual exe instructions with runserver.bat usage
  (start/watch/stop/status commands documented)
- Add Section 6.2: WARP client patching guide (GameGuard, packet encryption,
  custom Lua — required patches listed with explanations)
- Update Section 6.3: DATA.ini now shows data\ loose folder entry
- Add Troubleshooting entry for MySQL 8.0 silent auth failure

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…hing

- Add tools/warp  — Neo-Mind/WARP (rock_win32 branch): contains WARP_console.exe,
  WARP.exe, and all patch scripts for automated CLI patching
- Add tools/warp2025 — hiphop9/Warp2025: extended patch set (additional patches
  beyond the original WARP collection)
- Add tools/warp-restart.yml — WARP session file defining the four patches required
  for the RESTART private server client:
    NoGGuard (disable GameGuard)
    NoPacketEncr (disable map packet encryption)
    NoEncrForLC (disable login/char packet encryption)
    DataFolderFirst (load data\ folder before GRF)
- Add patch-client.bat — one-step client patcher: updates submodules then runs
  WARP_console.exe with warp-restart.yml; accepts optional client exe path
- Add Directory.Build.targets — MSBuild hook that runs git submodule update
  --remote on tools/warp + tools/warp2025 before every map-server build,
  keeping WARP scripts current automatically
- Update README.md with full WARP integration documentation including automated
  vs manual patching, session file reference, submodule init steps, and build
  hook skip flag

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
patch-client.bat:
- Fix git -C quoting bug with paths containing spaces
- Fix WARP CLI flags: -using, -from, -to (all require leading dash)
- Fix CLIENT_DIR trailing backslash handling

Servers:
- Pin char/map servers to 127.0.0.1 via conf/import/ files (gitignored,
  created locally) to prevent multi-interface auto-detection picking
  wrong virtual adapter IP
- Start web-server.exe alongside other three (required for web auth token)
- Create admin/admin GM account (group_id=99) in login table

README.md:
- Document web server requirement (use_web_auth_token: yes)
- Add "Connecting... loop" troubleshooting entry with conf/import IP fix
- Add WARP patch failure explanation (pattern mismatch on 2025+ client,
  NoGGuard most critical; encryption patches may not be needed)
- Clarify password storage (plain text, use_MD5_passwords: no)
- Add start order warning callout to Section 5

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…arok.exe

- patch-client.bat: rename GameGuard\ → GameGuard_disabled\ automatically
  before patching so partial NoGGuard application can't cause startup errors
- README: warn users not to launch Ragnarok.exe (official launcher overwrites
  files and flags the patched exe); add re-patch recovery instructions

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Restore GameGuard folder (renaming it caused blank startup error on both
  original and patched exe — the loader needs the folder to exist)
- Replace rename approach with stub approach: zero out all .des and .erl
  files inside GameGuard\ so the folder is found but nothing is loaded
- patch-client.bat now stubs GameGuard files in-place instead of renaming
- README: fix launching instruction (Ragexe_patched.exe not Ragexe.exe)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…2025 session

- README: add Current Status table at top — servers working, client patching FAILED
- README: update section 6.2 to note that all WARP/WARP2025 patches fail with
  "reference location not found" on the April 2025 client; document what was tried
  and what to try next
- README: add dedicated troubleshooting section "Client patching completely failed"
  with full failure history and next steps
- .gitignore: exclude /.claude/ (Claude Code local settings) and /out/ (build output)
- tools/warp2025-restart.yml: commit WARP2025 session file alongside warp-restart.yml
- client-data/texture/effect: commit placeholder PNGs for custom SC icons
  (restart_combo1/2/3 — EFST 1689/1690/1691)

Servers: login, char, map, web all start cleanly. DB imported (70 tables).
Client: WARP Neo-Mind (rock_win32) and WARP2025 (hiphop9) both integrated as
submodules; patch-client.bat built; all patches fail pattern matching against
the 20250416 Ragexe.exe. Client cannot connect to server.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants