diff --git a/README.md b/README.md index 978c825..3fe7f50 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ โปรเจกต์อยู่ระหว่างพัฒนา โดยกำลังตรวจการใช้งานกับ Client **4.6.53 OS** ตารางคำสั่งและ handler ที่แก้ล่าสุดอ้างอิง PearlSR commit `005d2c12db4781071f4b5b68e8f364587886a710` รายละเอียดอยู่ใน [บันทึกอัปเดต protocol](docs/protocol-update.md) การตรงกันของ schema ไม่ได้ยืนยันว่าเกมทุกระบบทำงานครบ -[เอกสารประกอบ](docs/) • [วิธีเริ่มใช้งาน](#เริ่มใช้งานบน-windows) • [การตั้งค่า](#config-และกฎห้าม-hardcode) • [Credits & Acknowledgments](#-credits--acknowledgments) +[เอกสารประกอบ](docs/) • [วิธีเริ่มใช้งาน](#เริ่มใช้งานบน-windows) • [การตั้งค่า](#config-และกฎห้าม-hardcode) • [แหล่งที่มาและเครดิต](#-แหล่งที่มาและเครดิต-credits--acknowledgments) ## CW — กำลังพัฒนา @@ -494,71 +494,63 @@ CW ล่าสุด: ผู้ใช้ยืนยัน Battle ห้อง --- -## 💖 Credits & Acknowledgments +## 💖 แหล่งที่มาและเครดิต (Credits & Acknowledgments) -GaC-hkrpg-go is built upon the collective research, tools, and pioneering reverse-engineering efforts of the open-source and Star Rail research communities. We extend our deepest gratitude and recognition to all original authors, upstream projects, and researchers: +โปรเจกต์ `GaC-hkrpg-go` พัฒนาขึ้นโดยต่อยอดและนำองค์ประกอบ/ข้อมูลอ้างอิงจากโครงการและชุมชนวิจัยเกมต่าง ๆ ขอขอบคุณเจ้าของผลงานและทีมพัฒนาต้นทางทุกท่านดังนี้:
-🏛️ Base Lineage & Core Server Architecture +🏛️ สถาปัตยกรรมเซิร์ฟเวอร์หลักและโค้ดต้นทาง (Core Architecture & Server Lineage) -- **GaC-hkrpg-ps / GaC-hkrpg-rust ([CAtlas0784](https://github.com/CAtlas0784)):** Original predecessor server architectures, XLua injection runtime, live battle analytics, and companion tooling (`GaC-srtool`) foundational to this Go port. -- **PearlSR ([HonkaiSlopRail/pearl-sr](https://git.xeondev.com/HonkaiSlopRail/pearl-sr)):** Reference Go server emulator providing protocol command ID mappings, handler structures, and base dispatch patterns. -- **FreeSR Team:** Pioneer private server emulator for Honkai: Star Rail — established the foundational player JSON schemas (`freesr-data.json`), roster format, and initial game loop conventions. -- **Grasscutter Community ([Grasscutters/Grasscutter](https://github.com/Grasscutters/Grasscutter)):** Groundbreaking anime-game server emulation project that established modern dispatch gateway patterns and packet handler conventions worldwide. -- **amizing & RobinSR Team:** Pioneer in-game network hooking DLL (`version.dll`), proxy-less redirection, and KCP dispatch foundations on NeonTeam Git. +- **GaC-hkrpg-ps / GaC-hkrpg-rust (โดย CAtlas0784)**: + - เซิร์ฟเวอร์ต้นทางเดิมภาษา Rust ที่นำมาพอร์ตเป็นภาษา Go สำหรับโปรเจกต์นี้ + - ระบบเครือข่าย KCP (`pkg/kcp`) พอร์ตมาจาก crate `mhy-kcp` + - สคริปต์ควบคุมและเสริมประสิทธิภาพในเกม: + - `scripts/freecam.lua` — ระบบ FreeCam และ FaceCam ล็อคเป้าติดตามหัวตัวละคร + - `scripts/ping_rainbow.lua` — ระบบแสดงแถบสีค่า Latency/Ping แบบ Real-time บน UI เกม + - ระบบเก็บ Log และวิเคราะห์การต่อสู้สด (`battle_diagnostics`) + - จุดเชื่อมต่อ REST API สำหรับเครื่องมือควบคุม [GaC-Srtool](https://github.com/CAtlas0784) (`/api/freesr/data`, `/api/client/unstuck`, `/api/aha-help`, ฯลฯ) + +- **PearlSR ([HonkaiSlopRail/pearl-sr](https://git.xeondev.com/HonkaiSlopRail/pearl-sr))**: + - โครงสร้าง Dispatch / Game Gateway ภาษา Go และรูปแบบการจัดการ Connection + - ตารางนิยามชื่อคำสั่งและหมายเลข Command ID อ้างอิง (`protocol/proto/upstream_cmdids.go`) + - โครงสร้างพื้นฐานของ Packet Handlers ใน `internal/gameserver/` + +- **FreeSR Team**: + - โครงสร้าง Schema ของฐานข้อมูลตัวละครและไอเทมผู้เล่นแบบ JSON (`freesr-data.json`) ที่ใช้ในการโหลดและบันทึก Roster / Inventory ผู้เล่น
-
-🎮 Protocol Oracles, Endgame & Simulation Engines +
+🎮 โหมดการเล่น ระบบจำลอง และเนื้อหา Endgame (Game Modes & Simulation) -- **xaodev ([Currency-War-SR](https://gaytea.cod-algieba.ts.net/xaodev/Currency-War-SR)):** Complete 4.6.53 Grid Fight autochess simulation engine, traits/bonds matrix, and extraction toolchains inspiring our Currency Wars implementation. -- **minatoSR:** Reference server implementation for Challenge Peak "AA" [40 nodes, seasons 10–11 arenas/NPCs], recommended lineups, and battle college. -- **LunarCore ([Melledy/LunarCore](https://github.com/Melledy/LunarCore)):** Pioneering Java-based Star Rail server emulator by Melledy and contributors — the industry-standard reference for battle mechanics, packet definitions, and gacha probability curves. -- **March7thHoney ([Mar7thLover/March7thHoney-OpenSource](https://github.com/Mar7thLover/March7thHoney-OpenSource)):** High-performance C#/.NET server oracle for gacha pull flows, pity math, SQLite models, shop mechanics, and Muip admin interfaces. -- **DanhengServer & FireflyServer Communities:** Open-source server protocol research, packet definition verifications, and collaborative community testing. +- **Currency-War-SR ([xaodev/Currency-War-SR](https://gaytea.cod-algieba.ts.net/xaodev/Currency-War-SR))**: + - อ้างอิงและนำเข้าบางส่วนภายใต้สัญญาอนุญาต AGPL-3.0 (เก็บอยู่ที่ `third_party/currency-war-sr`) + - โค้ดต้นแบบระบบจำลอง Currency Wars (Grid Fight / Autochess) 4.6.53 + - ตารางจับคู่ความสัมพันธ์ Role/Traits, การสร้าง Encounter หลังเลือก Supply, การคำนวณความยากและ EXP ต่อรอบ (`internal/common/currency_wars_xaodev.go`, `internal/gameserver/currency_wars_xaodev.go`, `resources/CurrencyWarsXaodev.json`) + +- **minatoSR**: + - ข้อมูลตำแหน่ง NPC และ Overrides ด่าน Challenge Peak / Anomaly Arbitration (AA) 40 โหนด ใน `resources/ChallengePeakSceneOverrides.json`
-
-📦 Game Data, Localization & Resource Repositories +
+📦 ฐานข้อมูลทรัพยากรเกมและข้อมูลสถิติ (Game Resources & Meta Data) -- **Dimbreath ([DimbreathBot/TurnBasedGameData](https://github.com/DimbreathBot/TurnBasedGameData)):** Canonical master Excel game tables, TextMap localization dictionaries, and hash references. -- **StarRailRes ([Mar-7th/StarRailRes](https://github.com/Mar-7th/StarRailRes)):** Community icon assets, avatar indices, relic/item metadata, and stat translation tables. -- **Prydwen Institute ([Prydwen.gg](https://www.prydwen.gg/star-rail/)):** Authoritative community endgame builds, character tier rankings, and recommended battle team compositions. +- **Dimbreath ([DimbreathBot/TurnBasedGameData](https://github.com/DimbreathBot/TurnBasedGameData))**: + - ตารางข้อมูลเกมหลัก (Excel Output / `ExcelBinOutput`), ค่า Hash อ้างอิง และดัชนี ID ตัวละคร, ไอเทม, รีลิกส์ และสกิลที่นำมาใช้ในโฟลเดอร์ `resources/` + +- **Prydwen Institute ([Prydwen.gg](https://www.prydwen.gg/star-rail/))**: + - ข้อมูลคำแนะนำการปั้นตัวละคร, Main Stat / Sub-Stat ที่เหมาะสมของ Relic, และเทียร์ลิสต์ตัวละครสำหรับคำแนะนำการจัดทีมใน `resources/PrydwenRecommendations.json`
-
-🧬 Reverse Engineering, Metadata & Protocol Toolchains +
+⚙️ ไลบรารีระบบและเครื่องมือภายนอก (System Dependencies & Tooling) -- **Perfare ([Perfare/Il2CppDumper](https://github.com/Perfare/Il2CppDumper)):** The legendary original IL2CPP metadata extraction tool that established the foundation for modern Unity reversing. -- **yarik0chka ([yarik0chka/hg-metadata-dumper](https://github.com/yarik0chka/hg-metadata-dumper)):** High-performance global-metadata.dat dumper for Unity and miHoYo titles. -- **gatokeeper ([gatokeeper/FireflyProtoc](https://github.com/gatokeeper/FireflyProtoc)):** Custom Protocol Buffer compiler with extended syntax support, enum bounds expansion, and recursive scope type resolution. -- **AzenKain ([AzenKain/honkai-dumper](https://github.com/AzenKain/honkai-dumper) • [AzenKain/Firefly-Static-Parser](https://github.com/AzenKain/Firefly-Static-Parser)):** Method offset dumper, static IL2CPP metadata parsing, XOR decryption, and Protobuf schema reconstruction. -- **Hiro420 ([Hiro420/StaticCmdIdDumper](https://github.com/Hiro420/StaticCmdIdDumper) • [Hiro420/Dumpcs2Protobuf](https://github.com/Hiro420/Dumpcs2Protobuf)):** Static CmdId extractor and obfuscated protobuf generator from dump.cs. -- **ex-RushiaLover:** Groundbreaking research and tooling for automated IL2CPP Protobuf schema recovery and reflection dumping. -- **Kabeidon-Lee:** In-game live IL2CPP reflection memory dumper (`hsr-dumping-skull`) and runtime object inspection. - -
- -
-🛠️ Telemetry, Analytics & Client Enhancement Tools - -- **GaC-Srtool ([CAtlas0784/GaC-Srtool](https://github.com/CAtlas0784)):** GM command console, live unstuck controller, telemetry inspector, and battle monitoring web application. -- **Frida Core Team ([Frida](https://frida.re)):** Dynamic binary instrumentation toolkit used for bounded, read-only runtime validation. -- **Scighost ([Scighost/Starward](https://github.com/Scighost/Starward)):** Game client manager and launcher design reference. -- **lgou2w ([lgou2w/HoYo.Gacha](https://github.com/lgou2w/HoYo.Gacha)):** Chromium disk-cache gacha record extraction, SQLite parsing, and statistical probability analysis. - -
- -
-⚙️ Go Ecosystem, Networking & Cryptographic Libraries - -- **xtaci ([xtaci/kcp-go](https://github.com/xtaci/kcp-go)):** Production-grade, low-latency Reliable UDP (KCP) networking library for Go. -- **Google Protocol Buffers ([protocolbuffers/protobuf-go](https://github.com/protocolbuffers/protobuf-go)):** Official Go language bindings and runtime for Protocol Buffers v3. -- **Gin Web Framework ([gin-gonic/gin](https://github.com/gin-gonic/gin)):** High-performance HTTP web framework powering the REST API and SDK dispatch endpoints. -- **Gorilla WebSocket ([gorilla/websocket](https://github.com/gorilla/websocket)):** WebSocket implementation for real-time live battle diagnostics and console streaming. -- **Mersenne Twister (MT19937):** Pseudorandom number generator algorithm powering the game's initial handshake stream cipher. +- **Google Protocol Buffers ([google.golang.org/protobuf](https://google.golang.org/protobuf))**: + - ไลบรารีทางการของ Google ในการ Encode/Decode แพ็กเก็ต Protobuf v3 (`protocol/proto/StarRail.pb.go`) + +- **Gay Proxy**: + - เครื่องมือ Proxy ดักจับทราฟฟิกเครือข่ายที่รองรับการเปิดใช้งานร่วมกับ `run.bat` / `run.ps1` เพื่อทำ Local Redirect สู่ SDK และ Game Server
diff --git a/resources/CurrencyWarsBonfire.json b/resources/CurrencyWarsBonfire.json index 3e4f222..a6c4059 100644 --- a/resources/CurrencyWarsBonfire.json +++ b/resources/CurrencyWarsBonfire.json @@ -4,7 +4,7 @@ "target_assembly_sha256": "c5e02e6e984f7e5577c78b995a8efeee2d06ee22e67d484ad5e859c8bf21e144", "source_binary_sha256": "235f5c3567f281cc99613ed84694ef23f492c15298dc868a8e78e6529f0cda86", "source_kind": "reference-implementation", - "source": "FFGO embedded GridFight Excel rows plus FFGO declarative TeaBreakOption recipes; not original Client scripts or a native Client capture.", + "source": "Reference implementation embedded GridFight Excel rows plus declarative TeaBreakOption recipes; not original Client scripts or a native Client capture.", "compatibility_scope": "Event IDs must also be present on the active Client node; no reference route or saved run is imported. Only explicitly supported effects execute.", "source_excel_sha256": "ee011f39af3040124873d461ff49af1623fd9655d9ba0d98c0a877247318030f", "source_custom_sha256": "5a5fb5bf4335b7bc84dbecfbf0e0b12ae6f25a1603bc68b534e3c75490d8bbf3",