Inspired by the swift, light, and deadly Kozak weapon, L2Shablya embodies precision and speed in every line of code.
Disclaimer: The name "Shablya" reflects the project's focus on performance and elegance, paying homage to the iconic Kozak weapon. It is used here metaphorically and holds no association with real-world conflict or violence.
Current state: Under development
About: This implementation is based on L2J, e.g. I reimplement everything in rust from java + I optimize things, like DB denormalization for performance boost, removing unnecessary operations and so on.
Always remember "Having tests opens doors to refactoring! More tests - more doors are open."
- Login server
- Login process + auto create accounts
- Game server registration
- Kicking player
- CMD login
- EBPF filtering of banned IPs
- Game server
- register o login server
- player packet encryption support (shifting key)
- player can select game server
- player can create char
- player can delete char
- player can restore char
- player can select char
- player can enter the game world
- player can move
- player can select target
- player can send chat messages
- ..... a lot more
Here is google drive link where you can download client. In order to play, you have to change ip in L2.ini file.
- create .env file
DATABASE_URL=sqlite://local.sqlite?mode=rwc
- install cargo and rust
- install sea-orm-cli
cargo install sea-orm-cli
- run migrations
sea-orm-cli migrate up
- run login server
cargo run -p login
- run game server
cargo run -p game