ronjunevaldoz / Rhisis

Rhisis is an experimental FlyFF emulator built with C# and .NET Core 3.0

Home Page:https://rhisis-project.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Rhisis

forthebadge forthebadge

Build Status Codacy Badge discord

Rhisis is a FlyForFun V15 emulator built with C# 7 and the .NET Core Framework 3.0.

This project has been created for learning purposes about the network and game logic problematics on the server-side. We choose to use the Sylver.Network to manage our server connecitions because it provides a clients management system and also a robust packet management system entirely customisable.

⚠️ This project is not affiliated with Gala Lab.

Technical environment and details

Features

Common

  • Logger
  • Rijndael cryptography algorithm
  • Custom exceptions
  • Packet handler

Database

  • MySQL database support

Login

  • Inter-Server authentication process (CoreServer)
  • Client authentication process
  • Send server list to connected client

Cluster

  • Inter-Server authentication (CoreClient)
  • Character list
  • Create character
  • Delete character
  • 2nd password verification
  • Pre join

World

  • Inter-Server authentication (CoreClient)
  • Entity Component System architecture
  • Connect to the world
  • Load resources
    • Defines & texts
    • Monsters
    • Maps
    • Items
    • NPC Data/Shops/Dialogs
    • Job Data
    • Exp table
    • Behaviors (AI)
  • Spawn monsters and NPC
  • Visibility System
  • Mobility System
  • Respawn System
  • Chat System
    • Chat commands:
      • Create item : /ci or /createitem
      • Get gold : /getgold
      • Teleport : /teleport
  • Inventory System
    • Move items
    • Equip/Unequip items
    • Save inventory
    • Drop items on the ground
    • Item usage (food, potion, refreshers)
  • Shop System
    • Buy items
    • Sell items
  • Trade System
  • NPC Dialog System
  • Drop System
    • Pickup Gold / Items
  • Battle System
    • Melee Attack
      • Player VS Monster
    • Monster death
    • Monster item/gold drop
  • Character customization system
  • Attribute System
  • Quest System

How to setup Rhisis (from develop branch) (Windows platform)

  1. Download or Clone the develop branch.
  2. Install the latest .NET Core 3.X SDK
  3. Install MySQL Server
  4. Go to your Rhisis folder, open a cmd or PowerShell and compile the solution with the command : dotnet build
  5. Go to the bin/ folder, open a cmd or PowerShell and type the following commands:
$ ./rhisis-cli.bat database initialize
$ ./rhisis-cli.bat configure login
$ ./rhisis-cli.bat configure cluster
$ ./rhisis-cli.bat configure world

ℹ️ The rhisis-cli database initialize command will guide you through the rhisis database configuration and will setup the database for you.

  1. Create an account using the ./rhisis-cli user create command
  2. Start the emulator
  • Start 1.login.bat
  • Start 2.cluster.bat
  • Start 3.world.bat

Contributors

Supporters

  • Ukiyo
  • Kinami
  • Sauce

About

Rhisis is an experimental FlyFF emulator built with C# and .NET Core 3.0

https://rhisis-project.com

License:GNU General Public License v3.0


Languages

Language:C# 99.9%Language:PowerShell 0.1%Language:Batchfile 0.0%Language:C 0.0%Language:Shell 0.0%