Rhisis is an experimental FlyFF emulator built with C# and .NET Core 2
Clone or download
Pull request Compare This branch is 2 commits behind Eastrall:develop.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
docs/packets
script
src
test
.gitattributes
.gitignore
.travis.yml
CHANGELOG.md
CONTRIBUTING.md
LICENSE
README.md
Rhisis.Tools.sln
Rhisis.sln

README.md

Rhisis

forthebadge forthebadge

Build Status Codacy Badge discord

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

This project has been created for learning purposes about the network and game logic problematics on the server-side. Also, this is a rework of the Hellion emulator.

We choose to use the Ether.Network because it provides a clients management system and also a robust packet management system entirely customisable.

Details

  • Language: C# 7
  • Framework: .NET Core 2.0
  • Application type: Console
  • Database type: MsSQL Express or MySQL
  • Configuration files type: JSON
  • External libraries used:
  • Environment: Visual Studio 2017

Features

Common

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

Database

  • Multi-DB support (MySQL and MsSQL)

Login

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

Cluster

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

World

  • Inter-Server authentication (ISC)
  • Entity Component System architecture
  • Connect to the world
  • Load resources
    • Defines & texts
    • Movers
    • Maps
    • NPC Data/Shops/Dialogs
  • Spawn monsters and NPC
  • Visibility System
  • Mobility System
  • Chat System
    • Chat commands:
      • Create item : /ci or /createitem
      • Get gold : /getgold
      • Teleport : /teleport
  • Inventory System
    • Move items
    • Equip/Unequip items
    • Save inventory
  • Shop System
    • Buy items
    • Sell items
  • Trade System
  • NPC Dialog System

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

  1. Download or Clone the develop branch
  2. Install the .NET Core SDK 2.0 : https://www.microsoft.com/net/download/windows
  3. Install MsSQL Express or MySQL Server
  4. Edit the files in bin/config/ (database.json, login.json, cluster.json, world.json)
  5. Compile Rhsis and Rhisis.Tools solutions
  6. Run bin/rhisis-installer.bat and configure the database to start the database migration
  7. Create an account in your database (tool available soon)
  8. Start the emulator
  • Start login.bat
  • Start cluster.bat
  • Start world.bat

Contributors

  • Eastrall
  • Steve-Nzr
  • Freezeraid
  • Skeatwin
  • Yothri

Supporters

  • Ukiyo
  • Kinami
  • Sauce