willianmarquess / open-mt2

Metin2 open source server implementation in Nodejs
GNU General Public License v3.0
16 stars 1 forks source link
docker javascript nodejs tcp-server

Open Metin2 - Server Emulator

GitHub repo size GitHub language count GitHub forks

Metin2 JS is an open source implementation of MMORPG Metin2 server using Nodejs with Javascript language.

This project will be developed for fun and study only.

Metin2 are copyrighted by Webzen.

Features roadmap

Feature Todo Doing Done
Handshake
Server Status
Login
Logout
Return to Select X
Delete Character X
Protocol Encryption X
Create character
Enter Game
Character Movement
Load Character Animation Data
Load Area Data
Load Mob Data
Load NPC Data
Load item Data
Spawn Mob
Spawn Mob From File
Mob Behavior System X
Spawn NPC
NPC Behavior System X
NPC Shop System X
Spawn Item
Equip Item
Attributes Item System X
Internal Chat
Command System X
GM System X
Character Exp System
Character Stat System
Character Health System X
Character Mana System X
Character Attack System(physic, magic, melee, range) X
Character Defense System(physic, magic, melee, range) X
Character Bonus and Reduces System(physic, magic, melee, range) X
Character Inventory
Character Regen System
Character Duel System X
Drop System X
Affect System X
Quest System X
Skills System X
Chat System X
Level System
Graceful shutdown
Grafana Monitoring X
Game Api(for websites etc) X

Getting Started

Documentation

Commands

In this implementation we are using custom commands, described bellow:

(for now, any player can execute any command)

Auth Flow

The image bellow show how the client interacts with auth server.

Game Flow (work in progress)

The image bellow show how the client interacts with game server.

License

This project is licensed under the GNU GENERAL PUBLIC LICENSE - see the LICENSE file for details.

References