Sanctuary is an open source server emulator for Free Realms built from scratch written in C#.
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
This repository only contains the server emulator for Free Realms. To play the game, you must also have a Free Realms client. You can download the client using the OSFR Launcher available here: OSFR Launcher.
Before you can use this software, ensure you have the following installed:
- Visual Studio 2022
Make sure to include the .NET Framework development workload during installation.
- Clone the repo
git clone https://github.com/Open-Source-Free-Realms/Sanctuary.git
- Build the solution for
Sanctuary.Core
forRelease
- Create a file named
database.json
in theRelease
folder located within the newbin
folder - Paste the following
{ "Database": { "Provider": "Sqlite", "ConnectionString": "Data Source=D:\\Games\\Free Realms\\sanctuary.db;" }
- Launch
Sanctuary.Login
,Sanctuary.Gateway
- Connect to the client
IMPORTANT: Update the Data Source file path (D:\Games\Free Realms\sanctuary.db) to match the location where your database files are stored.
NOTE: The following user should already exist, but if not then implement one with the following credentials:
1 admin admin EXmdPd5dbAcs58vZ0iCcPRtJkGdMePL2 10 0 1 1 2024-06-22 13:51:13.2736902+01:00 2024-07-14 01:57:45.8765645+00:00
-
Clone the repo
git clone https://github.com/Open-Source-Free-Realms/Sanctuary.git
-
Build the solution for
Sanctuary.Core
forDebug
-
Right-Click 'Manage User Secrets' for the following projects:
Sanctuary.Gateway
Sanctuary.Login
Sanctuary.Database
-
Copy and paste the following configuration for SQLite into the secrets editor:
{ "Database": { "Provider": "Sqlite", "ConnectionString": "Data Source=D:\\Games\\Free Realms\\sanctuary.db;" } }
-
Launch
Sanctuary.Login
,Sanctuary.Gateway
-
Connect to the client
IMPORTANT: Update the Data Source file path (D:\Games\Free Realms\sanctuary.db) to match the location where your database files are stored.
- Clone the repo
git clone https://github.com/Open-Source-Free-Realms/Sanctuary.git
- Launch
Docker Compose
- Connect to the client
To spawn an npc /npc spawn <NameId> <ModelId> [TextureAlias]
TextureAlias is optional
For more examples, please refer to the Documentation
- Feature 1
- Feature 2
- Feature 3
- Nested Feature
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request