「登入器」聽起來像同一件事,實際上依照你的目標,需要看的教學完全不一樣:只是想連上朋友的私服、想自己動手修一下客戶端、還是想從零讀懂登入器的原始碼——這三種需求,難度和該看的教學差非常多。

這篇是 GMS v83 登入器主題的導覽地圖,先幫你判斷自己屬於哪一種讀者,再指向對應的教學。系列文章會陸續發布,這篇之後也會持續補上連結。

開始之前,你需要先有一台能連線的 GMS v83 私服,如果還沒架設,請先看 GMS v83 褓姆級架設教學

你是哪一種讀者?

路線適合對象需要的程度
A.連上私服只想玩,私服可能沒提供登入器,或提供的登入器用不習慣不需要寫程式,會用滑鼠和記事本即可
B.給玩家用的登入器想架站給別人玩,需要自己做一個登入器給玩家下載basic 程式邏輯,不需要精通
C.登入器原始碼開發想搞懂登入器內部原理,或想自己寫 Hook 功能看得懂 C++ 基本語法

路線 A:連上私服(一般玩家)

不管私服有沒有提供登入器,這條路線教你各種連線方式,從最簡單到最進階:

教學內容
現成登入器懶人包比較 Hendi's + Ezorsia V2、Kaentake、HeavenClient 等現成登入器,直接下載就能連線
手動修改客戶端連線 IP用 HxD 十六進位編輯器直接改 MapleStory.exe 裡的 IP,或用 STRedit 圖形化工具修改
Redirector 重導向器教學不改 exe 本體,改用 netsh / TCP Proxy / DLL Hook 三種方式把連線導到私服
Windows 相容性與視窗模式修復解決 Win8/10/11 上常見的 -2147 Parameter Error、背包崩潰,以及開啟視窗模式
HD 客戶端與解析度調整把 800×600 的畫面改成 1024×768 / 1280×720,或直接用開源 HD 客戶端
Winlator 手機連線教學透過 Winlator 虛擬環境,在 Android 手機上執行 v83 客戶端

路線 A 全部發布完成。

若你要改的是遊戲畫面裡的圖片、文字、怪物座標,那是 WZ 資源修改,不算登入器範疇,可以直接看 HaRepacker 教學


路線 B:給玩家用的登入器(站長)

如果你在架私服,需要提供一個登入器讓玩家下載使用:

教學內容
自製登入器開發指南自己寫一個給玩家用的登入器,包含檔案驗證(hash)、WZ 驗證封包、自動補丁機制
開源登入器框架比較KMS391 Netsocket、Swordie、JourneyClient 三種現成開源框架的差異與適用情境
客戶端 DLL 修改實戰用 DLL 注入修改 EXP 表、突破傷害上限、讓客戶端直接讀取 data 資料夾的 IMG(開發期免打包 WZ)

路線 B 全部發布完成。

若你要編譯的是 v113 版本現成的登入器原始碼,可以直接看 ijl15.dll 編譯教學


路線 C:登入器原始碼開發(進階)

這條路線以開源專案 MapleEzorsia-v2(GMS v83 私服登入器,透過 DLL 劫持連線)的原始碼為教材,帶你從零讀懂一個登入器是怎麼做出來的:

教學內容
DLL 劫持原理與環境建置什麼是 DLL 劫持、v83 客戶端架構概覽、建立 Visual Studio x86 開發環境
登入器 DLL 專案結構解析讀懂 .sln/.vcxproj 專案、dllmain.cpp 入口點,編譯出第一個 DLL
記憶體操作與 Hook 技術入門記憶體位址與指標基礎、Hooking 原理、Detours 函式庫實作
Client.cpp 深度解析解析度修改原理、UI 元素位置修正、登入畫面與選角畫面修正的程式碼邏輯
進階功能與設定系統函式替換技術、自訂記憶體分配、config.ini 設定系統、WZ 資源整合原理
測試除錯與打包發布如何測試/除錯 DLL、打包成可發布的登入器

路線 C 全部發布完成。完整讀完這條路線大約需要 10 小時以上,建議先確定自己看得懂基本 C++ 語法再開始。


需要哪一篇教學卻還沒看到連結嗎?歡迎在下方留言,會依需求調整發布順序。