Skip to content

Latest commit

 

History

History
186 lines (151 loc) · 6.59 KB

README.md

File metadata and controls

186 lines (151 loc) · 6.59 KB

Logo

Khyron Realm - Networking Server

Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Project Structure
  6. Necessary Libraries
  7. License
  8. References

About The Project

The repository contains the Networking Server for the Khyron Realm Game made with DarkRift 2 Networking.

Built Using

Getting Started

Installation

  1. Clone the repo
    git clone https://github.com/khyron-realm/khyron-realm-networking-server.git
  2. Go into folder
    cd Unlimited-NetworkingtServer-MiningGame
  3. Build the DLL using Visual Studio / Jetbrains Rider / command line using dotnet
    Unlimited-MiningGame-Plugin.dll
  4. Copy the DLL into the Darkrift Server Console
  5. Run the Darkrift Server

Usage

More details can be found on Wiki

Roadmap

See the open issues for a list of proposed features (and known issues).

Project structure

< PROJECT ROOT >
    |
    |-- Auction
    |    | -- AuctionRoom.cs            # Auction room structure
    |    | -- AuctionPlugin.cs          # Auction Plugin for handling auctions
    |    | -- Bid.cs                    # Bid structure
    |    | -- Player.cs                 # Player structure
    |-- Chat
    |    | -- ChatGroup.cs              # Chat group structure
    |    | -- ChatPlugin.cs             # Chat Plugin for handling the chat
    |-- Database
    |    | -- DatabaseProxy.cs          # DB connection for reading/writing
    |    | -- IDataLayer.cs             # Interface for the database layer
    |    | -- IFriendList.cs            # Interface for the friend list
    |    | -- IUser.cs                  # Interface for the user
    |-- Friends
    |    | -- FriendsList.cs            # Friend list structure
    |    | -- FriendsListDto.cs         # Friend list DTO
    |    | -- FriendsPlugin.cs          # Friends Plugin for handling friends
    |-- Game
    |    | -- Constants.cs              # Constants for the game
    |    | -- GameData.cs               # Game data structure
    |    | -- GamePlugin.cs             # Game Plugin for handling the game
    |    | -- NameGenerator.cs          # Name generator for auction/mine names
    |-- Headquarters
    |    | -- BuildTask.cs              # Build task structure
    |    | -- HeadquartersPlugin.cs     # Headquarters Plugin for handling hq
    |    | -- PlayerData.cs             # Player data structure
    |    | -- Resource.cs               # Resource structure
    |    | -- Robot.cs                  # Robot structure
    |    | -- TaskType.cs               # Task type
    |-- Login
    |    | -- Encryption.cs             # Decryption method
    |    | -- LoginPlugin.cs            # Login Plugin for handling the login
    |    | -- User.cs                   # User structure
    |-- Mines
    |    | -- Mine.cs                   # Mine structure
    |    | -- MineGenerator.cs          # Mine generator
    |    | -- MinePlugin.cs             # Mine Plugin for handling the mines
    |    | -- MineScan.cs               # Mine scan structure
    |    | -- ResourcesData.cs          # Resources data structure
    |-- MongoDBConnector
    |    | -- DataLayer.cs              # Data layer for MongoDB database
    |    | -- MongoDBPlugin.cs          # MongoDB Plugin for handling MongoDB
    |-- Tags
    |    | -- AuctionTags.cs            # Tags for auction rooms
    |    | -- ChatTags.cs               # Tags for game messages
    |    | -- FriendsTags.cs            # Tags for login messages
    |    | -- HeadquartersTags.cs       # Tags for headquarters messages
    |    | -- LoginTags.cs              # Tags for login messages
    |    | -- MineTags.cs               # Tags for mines
    |    | -- Tags.cs                   # Tags structure
    |
    |-- packages.config                 # Configuration for needed packages
    |
    |-- Bin / Debug /
    |    | -- Unlimited-NetworkingServer-MiningGame.dll
    |
    |-- README.MD                       # Readme file
    |
    |-- ************************************************************************

Necessary Libraries

  1. Darkrift Networking 2

License

CC BY-NC-SA 4.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

CC BY-NC-SA 4.0

References

  1. Darkrift example Darkrift2_Boilerplate
  2. Readme Template adapted from Othneil Drew / Best-README-Template.