Skip to content

tech-bear/Rhisis

 
 

Repository files navigation

Rhisis - Fly For Fun V15 Emulator

Made With C#

Built with C# 9 and the .NET 5.

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. ⚠️


GitHub last commit

Technical informationFeaturesHow To'sContributingContributorsSupportersLicense

Build Status

Project Status
Login Server Build Status
Cluster Server Build Status
World Server Build Status

Technical information

Getting started

Please take a look at our contributing guidelines, if you're interested in helping!

Before getting started, you will need to install the following softwares:

  • Visual Studio 2019
  • Docker, Docker-Compose, Docker Desktop (if running on Windows)
  • Any MySQL database explorer (MySQL Workbench for example)

The solution is configured to run with Linux containers.

Once you have checked out the repository source code, go to the root directory of the repository and type the following command in a PowerShell command prompt and follow the instruction to setup your development environment:

$> ./setup/setup-environment.ps1

Note: By the MySQL container listen to port 3306 internally, but exposes the port 3307 if you ever need to connect to the MySQL server using a tool like MySQL workbench. Note2: The database files are located in the bin/_database folder.

Configure the database access

In the same command prompt you used to setup your development environment, navigate to the bin/ directory of your repository and type the following commands:

$> ./rhisis-cli database configure

This command will configure the different servers to access the database. Since the servers will be running inside docker containers, please configure your environnement as followed:

Database server host address: rhisis.database

The rhisis.database is the name of the Docker container where the MySQL Server is running. In order for other containers to access this container, you need to specify the container name as the host.

Database server listening port: 3306

Even if the docker container has an acces with the 3307 port, you should use the port 3306 internally so other containers can access the MySQL Server

Database username:
Database user password:
Database name:

Type the same information you entered during the setup.

For the rest of the options, you can choose to use encryption or not. It's up to you now.

Configure the servers

You can either use the provided configuration and modify it has you want or use the CLI to configure it in your own.

Login Server

$> ./rhisis-cli configure login

Cluster Server

$> ./rhisis-cli configure cluster
----- Core Server -----
Core server host address: rhisis.login

Note: You will need to specify the rhisis.login container name has the core server host in order for the cluster server to communicate with the CoreServer. Also: The port and passwords should match on both sides.

World Server

$> ./rhisis-cli configure world
...
----- World cluster Server -----
World cluster server host address: rhisis.cluster

Note: You will need to specify the rhisis.cluster container name, so the world server can be considered as a "channel" of the given cluster. Also: The port and passwords should match on both sides.

Contributors

Supporters

  • Ukiyo
  • Kinami
  • Sauce

About

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

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C# 100.0%