How nicomuratona/muemu-0.97k-kayito works
This repository is a MuEmu 0.97k game package: a Windows game client, an info encoder, four server processes, and two editing tools. The player workflow is expected to pass through server selection and account login before gameplay and persistent character/item data; those server-to-server handoffs are shown as unverified because the sampled excerpts do not establish their routing. README update notes document client/server synchronization for several gameplay systems. Tool and editor details are limited to the README and sampled editor forms.
Main entry points: Main.cpp Game client · GameServer.cpp Game server · Controller.cpp Client controls · ItemManager.cpp Client items
Components 20
Game client
- Game client
Source/Client/Main/Main.cpp - Client controls
Source/Client/Main/Controller.cpp - Client items
Source/Client/Main/ItemManager.cpp - Client protocol
Source/Client/Main/PacketManager.cpp - Client maps
Source/Client/Main/MapManager.cpp
Mu server
- Connect server
Source/MuServer/ConnectServer/ConnectServer.cpp - Connect sockets
Source/MuServer/ConnectServer/SocketManager.cpp - Join server
Source/MuServer/JoinServer/AccountManager.cpp - Game server
Source/MuServer/GameServer/GameServer.cpp - Gameplay rules
Source/MuServer/GameServer/SkillManager.cpp - Game items
Source/MuServer/GameServer/ItemManager.cpp - Maps and events
Source/MuServer/GameServer/Map.h
Persistence
- Data server
Source/MuServer/DataServer/DataServer.cpp - Database queries
Source/MuServer/DataServer/QueryManager.cpp - SQL database
Content authoring
- Info encoder
Source/Client/InfoEncoder/InfoEncoder.cpp - BMD/TXT tools
Source/Tools/kayitoTools/kayitoTools/Forms/Main.cs
Account administration
- Account editor
Source/Tools/kayitoEditor/kayitoEditor/Forms/Main.cs - Character editor
Source/Tools/kayitoEditor/kayitoEditor/Forms/Management/CharacterManager.cs
Other components
- Player
Connections 20
- Player → Game client: plays through
- Game client → Client controls: uses controls
- Client controls → Client maps: toggles map
Source/Client/Main/Controller.cpp - Game client → Client protocol: exchanges packets
- Game client → Client items: handles items
- Game client → Connect server: selects server
- Connect server → Join server: routes login
- Join server → Game server: admits player
- Game server → Gameplay rules: dispatches skills
- Game server → Game items: handles items
Source/MuServer/GameServer/ItemManager.cpp - Game server → Maps and events: manages world
- Game server → Data server: persists state
- Data server → Database queries: executes queries
- Database queries → SQL database: reads and writes
- Client items → Game items: synchronizes item data
- Gameplay rules → Client protocol: sends gameplay updates
- Info encoder → Game client: generates main info
- BMD/TXT tools → Info encoder: edits game content
- Account editor → SQL database: edits accounts
- Character editor → SQL database: edits characters
Source/Tools/kayitoEditor/kayitoEditor/Forms/Management/CharacterManager.cs