main
Currency Wars (GridFight) — source export
ส่วน Currency Wars ของ PearlSR แยกออกมา เวอร์ชันโปรโตคอล beta 4.6.53
ฐาน: PearlSR 06aa2d2 รวมงานที่ยังไม่ได้ commit ใน working tree (วันที่ 2026-10-30)
โครงสร้าง
gameserver/src/services/grid_fight.zigตัวหลัก: state ของรอบ, ร้าน, กระดาน, การต่อสู้, settlement, archivegrid_fight_traits.zig/grid_fight_bonds.zigtrait และ bondgrid_fight_strategy.zigstrategy/augmentgrid_fight_rewards.zigรางวัลในรอบ (Elite/Summon) และ cycle scoregrid_fight_talent.zigtalent ถาวร/ซีซันresources/grid_fight/ข้อมูลที่ server อ่าน (*.json) กับไฟล์*.raw.json/*-provenance.jsonที่ extractor สร้างtools/gridfight-extract-node/extractor (Node.js) ดึงข้อมูลจากตาราง client:node run_tests.mjsintegration/hooks.txtจุดที่ server เรียก CW (handlers, control, mission, elation) พร้อมเลขบรรทัดintegration/elation.zigไฟล์เต็มของจุดเข้า scene
ต้องมีจาก PearlSR ถึงจะ build ได้
grid_fight*.zig import: protocol (protocol.pb.zig ของ 4.6.53, มี cmd ที่ชื่อถูก obfuscate เช่น CmdIKMOCJBMGOJ = GetOrb, CmdMOIONLDJGJI = UseConsumable),
../Session.zig, ../Packet.zig, ../manager/{scene_mgr,lineup_mgr,config_mgr,battle_mgr}.zig, ../data/game_config.zig, ../control.zig, scene.zig, battle.zig, events.zig
วางไฟล์ใน gameserver/src/services/ แล้วใส่ hook ตาม integration/hooks.txt
หมายเหตุ
- extractor เวอร์ชัน Python เดิมไม่ได้ใส่มา ใช้ตัว Node แทน
- ไม่รวมไฟล์
*.bak* - export นี้ยังไม่ได้ build แยกเดี่ยว ต้องอยู่ใน tree ของ PearlSR
เครดิต
Currency Wars server สำหรับ PearlSR / AhaSR โดย xaodev
License
AGPL-3.0-only (ดู LICENSE) — ใครนำไปแก้หรือรันเป็น server ให้คนอื่นใช้ ต้องเปิด source ของส่วนที่แก้ด้วย
Copyright (C) 2026 xaodev
Languages
Zig
80.3%
JavaScript
17.8%
Assembly
1.9%