shenleiandClaude Opus 5.5 e33e41c12b 背包扩展到 5 页:服务端补丁 + DB 迁移 + 客户端 mt_inventory
- GameType.h: c_Inventory_Page_Count 2 -> 5; SQuickSlot.Position BYTE -> WORD
- quickslot 包/接口 pos 改为 WORD(CG/GC 5 字节),wire_classic 同步
- mt_inventory PORT 模块:inventorywindow.py 装备格 90 -> EQUIPMENT_SLOT_START 重映射、5 个小页签、
  自动药水高亮与 SelectItemWindow 扫描全部 5 页;40250 脚本保持不变
- tools/server/inventory-5-pages: server.patch(格子布局 +135、quickslot WORD)、migrate_db.py、README

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-29 22:37:44 +09:00

Metin2 原生客户端

40250 客户端的 macOS / Android 移植。SDL3 负责窗口与输入,Vulkan 负责 3D 和 UI 渲染;macOS 上通过 MoltenVK 使用 Metal。40250 的 C++ 逻辑、Python 2.7 脚本和 EPK 资源由 src/port 与 src/platform 提供。运行时不依赖 Godot。

macOS

需要 CMake、SDL3、Vulkan loader、MoltenVK、glslc(第三方库均已随仓库提供源码,无需子模块):

cmake -S . -B build/release -DCMAKE_BUILD_TYPE=Release \
  -DMT_BUILD_NATIVE_RENDER=ON -DCMAKE_PREFIX_PATH=/opt/homebrew
cmake --build build/release --target mt_native_render -j8
./build/release/src/host/mt_native_render \
  --live-client "/path/to/40250/Client" --login-screen --width 1024 --height 768

详见 src/host/README.md。

Android

./android/build.sh Release --install
./android/push-client.sh /path/to/40250/Client
adb shell am start -n org.metin2port.client/.MainActivity

APK 由 SDLActivity、libSDL3.so 和 Vulkan 原生 libmain.so 组成。40250 Client 资源单独复制到应用数据目录;--live-server HOST:AUTH_PORT:GAME_PORT --login-screen 可连接服务器。构建与启动细节见 src/host/README.md。

测试

./script/port_gate.sh macos

port_gate.sh 构建并运行 40250 移植层的 C++ 测试。原生渲染验收入口是 scripts/native_mac_acceptance.mjs。历史迁移记录保留在 docs/PORT-PLAN.md;其中旧 Godot 路径已经退役。

S
Description
No description provided
Readme
2.6 GiB
Languages
C++ 80.1%
POV-Ray SDL 10.2%
Python 3.4%
C 3%
HTML 1.2%
Other 2.1%