Skip to content

Latest commit

 

History

History
66 lines (46 loc) · 1.57 KB

README.MD

File metadata and controls

66 lines (46 loc) · 1.57 KB

L2Shablya ⚔️ 🇺🇦

Shablya

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.

Ready features:

  • 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 can select game server
    • player can create char
    • player can delete char
    • player can enter the game world

The client

Here is google drive link where you can download client. In order to play, you have to change ip in L2.ini file.

Local deployment

  • 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