This is a shorter version of the engine, it was designed to be a mmo that is not practically a rpg.
So there is no combat, shops, spells, features and the bank.

Requirements:
.NET Framework 4.7.2
MySQL

(Microsoft Visual C ++ Redistributable ???)

Download:
Release Download:
https://mega.nz/#!4dxhCCZJ!_cdBiooaxlUqkfWt860c29Mqli2e_sOUdGCIaxzurHc

Source: https://github.com/DragonicK/Crystalshire-C-Server

Client Source: https://mega.nz/#!oFpxRYIZ!Ebuh1Fzdmn78SmjMOhmhCwcWUWGkVNNoOjT8x7uLmNQ

Testing Accounts:
Login: akaruz
Password:123456

Login: dragonicK
Password:123456

Servers:
I used my engine servers as a base to get the process moving forward.
The login server performs user authentication and transfers the information to the game server.

alt text

Game Server is the game’s processing server.

alt text

To enter the game the two servers must be open and connected to the database.

Server Settings:
Login Server:

// 設定が分からないなら、変更をしないでください。
// Este arquivo deve estar no modo UNICODE.
//------------------------------------------------------//
//     SERVER INFO     //
//------------------------------------------------------//
Port             = 7002
MaximumConnections   = 5000
Sleep = 1
UseEmailAsLogin = 0
GeoIp = 0 
CheckSum = 0

IpBlock = 1 
IpBlockLifeTime = 600000

FilterCheckAccessTime = 3000
FilterIpLifeTime = 120000
IpMaxAttempt = 1000
IpMaxAccessCount = 1000

MaximumConnections: The maximum number of connections has not been set.
UseEmailAsLogin: Uses email as user login.
GeoIp: Checks, refuses, or accepts addresses geographically. The addresses and countries that can be blocked are in the GeoIp.lua file.
CheckSum: Not implemented.
IpBlock: Indicates that the locking system is active.
IpBlockTime: Time an ip remains locked in the system.
The addresses that can be blocked are in the BlockList.lua file.

FilterCheckAccessTime: Time between each access of an ip address on the server.
If an address reaches the values of IpMaxAttempt or IpMaxAccessCount it is blocked by the time of FilterIpLifeTime.

GameServerPort: Address for connection to the game server.

Game Server:

// 設定が分からないなら、変更をしないでください。
// Este arquivo DEVE estar no modo UNICODE.
//------------------------------------------------------//
//     SERVER INFO     //
//------------------------------------------------------//
Port             = 7001
MaximumConnections   = 5000
Sleep = 1
UseEmailAsLogin = 0

IpBlock = 1 
IpBlockLifeTime = 600000

FilterCheckAccessTime = 3500
FilterIpLifeTime = 120000
IpMaxAttempt = 15
IpMaxAccessCount = 10

//------------------------------------------------------//
//     LOGIN SERVER        //
//------------------------------------------------------//
LoginPort = 7003

//------------------------------------------------------//
//     MSSQL SERVER        //
//------------------------------------------------------//
DataSource = 127.0.0.1
Database = crystalshire
UserID = root
Password = 
MinPoolSize = 5
MaxPoolSize = 100

LoginPort: Port where the connection to the login server is made.

Game Settings:
Administrator access is set for the account, not just the character. You can change the value in the user table in AccessLevel.

[link text](AccessLevel {
Restrict = 0
Normal = 1
Monitor = 2
GameMaster = 3
Administrato = 4
})

The deletion and creation settings are in the Character.lua file in the Data folder.
Deletion of the character occurs only at a scheduled time.

alt text

Each class has its own file, just follow the example in the Classes folder.

Animations, Conversations, Classes, Items and Npcs are in the same pattern: When the user enters the game, the data is sent.

The map is NOT sent to the client.
When an edit is made on the map and is saved. A copy goes to the server that saves this data, for server-only use.
The map that is read by the client is only saved on the client.

After the game is ready, you must use an auto updater to update the maps for other people.

Client:
The creator of the game Crystalshire (Robin Perris) made it clear that he does not want anyone to use his graphics.
Therefore, some client features have been removed and others have been modified but not all.

alt text

Dragonick Credits for the modifications and creation of the server in C # and Robbin perris by the base of the engine.