Register for your free account! | Forgot your password?


Go Back   elitepvpers > Other Online Games > Browsergames > DarkOrbit
You last visited: Today at 16:24

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement




[Emulator/C++] Emulating Darkorbit Classic [WIP]

Discussion on [Emulator/C++] Emulating Darkorbit Classic [WIP] within the DarkOrbit forum part of the Browsergames category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2019
Posts: 9
Received Thanks: 27
[Emulator/C++] Emulating Darkorbit Classic [WIP]

Hi everyone,

I've been developing an emulator the classic version of DarkOrbit (before the new client) for around a year now.

The Emulator will be precisely emulating the 2008/2009 era.

I won't bore you with the details on why I decided to emulate the classic version; so I will skip straight to the technical details of the emulator.

Note; Thread is still in progress and emulator is not released yet till main core gameplay is coded.

Source code:

---------------------------------------------------------------

Technical Details

The Daemon Emulator is coded in C++17. Using the following libraries:
  • MYSQL C v5.6
  • Boost v6.6
  • OpenSSL v1.1
  • SFMT v1 (Customised)

Networking
- Using Boost ASIO with the capability of asynchronous operations.

Database
- Using MYSQL C - Using own wrapper class which supports synchronous/asynchronous queries.

Logger
- Using own Logger class which supports the standard logging configurations: INFO, WARNING, ERROR, VERBOSE, ASSERT.
- Logs to terminal console or/and file.
- Thread Safe.

Configuration File
- Using own configuration.
- Thread Safe

Thread Pooling
- Using own Thread Pooling class.
- Optimises existing running threads and their tasks; pushes/pops tasks to other threads depending on performance on said thread.
- Thread Pooling launches x amount of threads as default depending on your machine specifications (can be changed through configuration).
- Threads are split into types:
*Inclusive: Runs multiple tasks.
*Exclusive: Only runs one task.
*Critical: Launch new task on new thread ignoring hardware concurrency.

Design Flow
  • Maps:- Maps are separated into zones handled by a zone manager; zones can be multi-threaded for example; running 3 threads will designate 9 maps per zone - You can set this in the configuration option. Also maps are split into grids, each grid is independent and is dynamic (does not update if no there is no activity).
  • Packets:- Packets are split into three different stages: Player Thread, World Thread and Map Thread. This ensures thread safety, and off-loading the balance between the threads; for example a non-handled packet would be processed on player thread (first thread which comes in contact with the packet).
  • TOOD; More.
---------------------------------------------------------------

Progress

Strike = Completed.

Login into world
Movement System
Attacking System
Kill Credit
Surrounding Objects System
Interactive Events (Stations/Portals)
NPCS spawned in world
Cargo
Drones
Galaxy Gates
Team Death Match
SpaceBall

and more which will be added soon.

---------------------------------------------------------------

ScreenShots





Any questions do not hesitate to ask!
Exenu is offline  
Thanks
14 Users
Old 01/31/2021, 03:28   #2
 
elite*gold: 39
Join Date: Mar 2015
Posts: 504
Received Thanks: 583
Seems nice in the first look, maybe we will have a second 2008/09 server soon as competition with Spaceage, keep going with your project.

Regards,
Eatforyou
Eatforyou is offline  
Thanks
5 Users
Old 01/31/2021, 13:24   #3

 
elite*gold: 20
Join Date: Nov 2014
Posts: 91
Received Thanks: 67
Finally someone with knowledge here once again. As @ said above, first impression: Looks all nice; Wishing you good luck and have fun while creating your server.

~ Heizer
#Heizerô is offline  
Thanks
1 User
Old 01/31/2021, 17:35   #4
 
elite*gold: 0
Join Date: Jun 2011
Posts: 248
Received Thanks: 486
Open source is cool but by making this public you will create a cancer of toxic noob-made-privateservers, there's already enough of those here
gueuledange is offline  
Thanks
3 Users
Old 01/31/2021, 18:38   #5
 
elite*gold: 0
Join Date: Feb 2014
Posts: 301
Received Thanks: 116
Nice! I want to play it and feel like 12 years ago...
xRaxo. is offline  
Old 02/04/2021, 21:58   #6
 
elite*gold: 0
Join Date: Dec 2010
Posts: 47
Received Thanks: 42
Nice project !
johnkiki is offline  
Old 02/04/2021, 22:09   #7

 
elite*gold: 43
Join Date: May 2012
Posts: 1,456
Received Thanks: 629
Quote:
Originally Posted by gueuledange View Post
Open source is cool but by making this public you will create a cancer of toxic noob-made-privateservers, there's already enough of those here
yea thats the sad thing here. you cant release free stuff/sources.
someone is trying to make money out of it.
PNTX is offline  
Old 02/05/2021, 01:59   #8
 
elite*gold: 0
Join Date: Oct 2019
Posts: 9
Received Thanks: 27
Quote:
Originally Posted by gueuledange View Post
Open source is cool but by making this public you will create a cancer of toxic noob-made-privateservers, there's already enough of those here
I hope not. My intention is to not create a server for my self, but should someone does use the emulator, hopefully they keep the credits !
Exenu is offline  
Old 02/05/2021, 18:40   #9

 
elite*gold: 6300
The Black Market: 244/0/0
Join Date: Dec 2012
Posts: 13,007
Received Thanks: 8,190
Quote:
Originally Posted by PNTX View Post
yea thats the sad thing here. you cant release free stuff/sources.
someone is trying to make money out of it.
License it properly and sue them if they violate the license.
Requi is offline  
Old 08/15/2021, 22:02   #10
 
elite*gold: 0
Join Date: Oct 2019
Posts: 9
Received Thanks: 27
This is still being worked on.

Currently working on the CMS.

Exenu is offline  
Thanks
2 Users
Old 10/25/2021, 21:09   #11
 
elite*gold: 0
Join Date: Jan 2015
Posts: 2
Received Thanks: 0
Quote:
Originally Posted by Exenu View Post
This is still being worked on.

Currently working on the CMS.

link dead:в замешательстве:
Sumrak595 is offline  
Old 11/14/2021, 23:29   #12
 
elite*gold: 0
Join Date: Apr 2009
Posts: 20
Received Thanks: 10
Why so many namespaces, so many globals, and singletons?
matiasmunk is offline  
Reply


Similar Threads Similar Threads
[Emulator/C++] Emulating Darkorbit Classic [WIP]
10/25/2019 - DarkOrbit - 17 Replies
Hi everyone, I've been developing an emulator the classic version of DarkOrbit (before the new client) for around a month. I won't bore you with the details on why I decided to emulate the classic version; so I will skip straight to the technical details of the emulator. Note; Thread is still in progress and emulator is not released yet till main core gameplay is coded. Source code: https://github.com/Exenu-Dev/SteerStone-Darkorbit
[PROJECT] Emulating / Cracking UnrealSkill's DLLs
11/28/2010 - Soldier Front Philippines - 87 Replies
For E*pvpers, we should make a team that codes and creates hacks.. (atleast crack the uS hacks) Legend: People needed: Note: Even if the position is already occupied.. you can still apply to be a part of the team.
Emulating 1059 (alternative to the bypass)
06/20/2008 - Dekaron Exploits, Hacks, Bots, Tools & Macros - 30 Replies
Some people still had some questions about how to emulate the GG and some having problems with the bypass itself so I thought I would explain EXACTLY how to emulate GG as an alternative to the new bypass. 1. Goto C:\WINDOWS\system32\drivers\etc and edit the file hosts. Clear it out unless there are things in there you know you need and add 127.0.0.1 nprotect.acclaimdownloads.com. Now save it making sure not to change the file extension. 2. Right click the hosts file and make it...



All times are GMT +1. The time now is 16:24.


Powered by vBulletin®
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2021 elitepvpers All Rights Reserved.