自動機MP
尼爾:機械紀元多人模式
警告
該項目正在進行中。雖然遊戲的一些重要方面得到了很好的支持,但有些方面卻沒有得到很好的支持。不要指望與參與此專案的人一起玩完整的故事(目前為止)。
目前,這個項目應該只用於與朋友一起進行基本的世界遍歷和探索,或在調試室中玩。任務同步尚未實現。遊戲的某些部分將直接被破壞。
特徵
主伺服器
獨立伺服器
- 使用 Go 編碼的伺服器,可以在 Linux 或 Windows 上運行
- MasterClient系統允許「主機」控制遊戲世界(敵人和其他世界狀態)
- 支援2個以上玩家,不只是玩家+好友
Linux 軟體套件
Arch Linux (AUR)
玩家同步
- 位置
- 旋轉
- 動畫
- 吊艙發射
- Pod 程式
- 吊艙手電筒
- 武器/裝備選擇(但不是實際武器類型本身)
敵人同步
- 當 MasterClient 生成敵人時複製它們
- 刪除普通客戶端上不應該連網的敵人
- 位置
- 旋轉
- 健康/存活狀態
- 一些動畫
計劃/想要的功能
- 模型變換器
- 玩家對戰
- 房間/大堂系統
- 未連接到房間/大廳時的幽靈系統
歷史
Mod 是在 2017 年開發的,在我轉向其他事情之前開發了很短的時間。由於原始版本背後的庫不是開源友好的,因此它不是開源的並且發布得較早。
因為這是相當舊的程式碼,原本並不打算公開發布,所以編碼標準不符合我目前的設定。請原諒這一點。隨著時間的推移,它可能會被修復。
2017年8月下旬
- 開發開始
- 大量逆向工程
- 腳本系統(mruby?)
- 實體系統
- 好友系統
- 動畫、按鈕
- 新增了enet和enetpp,將這些系統連接到多人遊戲
- 伺服器直接託管在 mod 本身內部,而不是獨立程序
- 客戶端/伺服器與 C++ 中定義的原始結構資料進行通信
- 系統使用 VEH 掛鉤來掛鉤函數中間並檢索 CPU 上下文
2017年9月初
2017-09-01_06-35-26.webm
2022 年 7 月下旬至今
- 項目已恢復
- NieR 成為頭條新聞、模組工具的發布以及我的聯繫都增強了我的動力
- 刪除所有不開源友善的程式碼,並用開源等效程式碼取代所有內容
- 伺服器程式碼被放置在一個獨立的 Go 專案中,可以在 Linux 或 Windows 上運行
- 客戶端/伺服器程式碼重構為使用平面緩衝區作為資料包結構
- 新系統使用 safetyhook 中的 MidHook 來執行中間函數掛鉤並檢索上下文
- 客戶端程式碼重構開始符合當前標準並更好地反映實際的遊戲結構
- 蜥蜴: