Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Conquer Online 2 > CO2 Private Server > CO2 PServer Guides & Releases
You last visited: Today at 13:27

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

Advertisement



[Release] Experimental 6090 project : Throne

Discussion on [Release] Experimental 6090 project : Throne within the CO2 PServer Guides & Releases forum part of the CO2 Private Server category.

Reply
 
Old   #1
 
.Ocularis's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 309
Received Thanks: 208
[Release] Experimental 6090 project : Throne

I've been working on Throne since October 10th, that's 10 months I've been DAILY working and reworking.. Learning and unlearning..

I've decided to release my current work and take development totally private.
I'm starting to develop new ideas that I want to be proprietary to my server for a while, some are already included in this copy I'm releasing today.

This project is written in C# and currently supports patch 6090.

Things I'm aware of that suck hard atm:
  • Fluent NHibernate (needs to be properly implemented)
  • Improper implementation of async/await in actor threading
  • No thread pooling (besides tasks)
  • lots of things were implemented lazily and with a lack of knowledge.
Things I'm somewhat proud of:
  • a few working implementations of Conquer logic

Thanks to...
If I left you out let me know.
  • Encore (github project)
    • Source of fluent nhibernate implementation
    • Source of the actor threading model
    • Source of the WCF IPC implementations
  • Aura
    • Source of most implementations of the C# scripting system
    • Lots of inspirations
  • CSV3 (InfamousNoone)
    • Lots of Conquer documentation came from this project, was a great reference.
  • Fusion Origins (Korvacs)
    • You'll find a DMap viewer in Throne that originally came from Korvacs, developed further.
  • Project Phoenix (Fang)
    • Some cipher classes were ripped from here
  • CptSky (CO2_CORE)
    • Ciphers and documentation
  • ntl3fty
    • Documentation and criticism
  • Impulse
    • Documentation and lots of help over the years
  • Anthrax
    • Packet structure assistance


[DISCLAIMER]
Don't use this, develop this, or anything else unless you're prepared to run into serious problems.
As it is, this project is not for use as a public server. It's for testing and research.
Don't expect me to help.


Type createdb on both server consoles. (no sql backup needed)
Log in using InfamousNoone's loader on a 6090 client.
.Ocularis is offline  
Thanks
40 Users
Old 12/14/2014, 07:25   #2
 
Super Aids's Avatar
 
elite*gold: 0
Join Date: Dec 2012
Posts: 1,761
Received Thanks: 946
Good to see something new around these corners.
Super Aids is offline  
Old 12/14/2014, 21:34   #3
 
InfamousNoone's Avatar
 
elite*gold: 20
Join Date: Jan 2008
Posts: 2,012
Received Thanks: 2,882
o...
InfamousNoone is offline  
Thanks
1 User
Old 12/15/2014, 10:47   #4
 
InsomniacPro's Avatar
 
elite*gold: 0
Join Date: Feb 2014
Posts: 397
Received Thanks: 205
I almost forgot there were people here who actually knew what the **** they were doing.
InsomniacPro is offline  
Old 12/15/2014, 17:08   #5


 
KraHen's Avatar
 
elite*gold: 0
Join Date: Jul 2006
Posts: 2,216
Received Thanks: 793
Great job, reminded me why I still even visit the forums.
KraHen is offline  
Thanks
1 User
Old 12/16/2014, 05:25   #6
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,376
So... pretty...
pro4never is offline  
Thanks
1 User
Old 12/16/2014, 21:44   #7
 
.Ocularis's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 309
Received Thanks: 208
Thanks everyone.
There has been a cool change in the player character class with a player's vision..
Please don't check the file history, it is an embarrassment

I'm doing my best to avoid locks completely since the project is designed to run 1 thread per logical processor (though, I don't know how that will affect for high persistence volumes).. Using the projects actor model, you post messages to change values of another object should be done only on that object's actor. In theory, unless there's some deep dark C# secret about threading, locks are no longer necessary for a player's vision and were replaced with messages posted to the target object. Check out the latest commit for code.



Edit:
Deleted the file history for Character.Vision to save my pride
.Ocularis is offline  
Thanks
4 Users
Old 12/16/2014, 22:34   #8
 
elite*gold: 0
Join Date: May 2012
Posts: 35
Received Thanks: 12
i wish u can make a video how to make it work
Namikos is offline  
Thanks
1 User
Old 12/19/2014, 17:20   #9
 
tkblackbelt's Avatar
 
elite*gold: 0
Join Date: Sep 2010
Posts: 266
Received Thanks: 85
Very sexy code
tkblackbelt is offline  
Thanks
1 User
Old 12/21/2014, 19:01   #10
 
.Ocularis's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 309
Received Thanks: 208
Thanks everyone.
Not sure there will be a video any time soon unless someone else makes one.

I'm still active on the project though there's been no commits lately. I'm researching C# 5's async/await and non-blocking awaitable tasks (and could use it for non-blocking locks too). It's essential that no thread's execution context is blocked while running an expensive action on the actors. But that's a "gotcha" with C#'s async/await. I've been unable to find out how to execute a Task solely on unmanaged threading. Now, I can make a Task post it's message to the actor that called the Task, but the Task still runs on the System.Threading.ThreadPool to do so.. Which in a high load server environment will most likely load tons and tons of threads, because the ThreadPool is nucking futs.

Still investigating.
Anyone have any experience with this?

Edit:
Seems there is no way around managed threading with async/await.
.Ocularis is offline  
Thanks
2 Users
Old 12/23/2014, 02:12   #11
 
elite*gold: 0
Join Date: Dec 2014
Posts: 2
Received Thanks: 0
in the name of ***
i can make this work? walah can keep you in help...
pandomankoko is offline  
Old 12/23/2014, 02:45   #12
 
.Ocularis's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 309
Received Thanks: 208
Quote:
Originally Posted by pandomankoko View Post
in the name of ***
i can make this work? walah can keep you in help...
I'm not sure. Wait for someone to rename this project and release it on the Egyptian forums with 50 screenshots and a guide made just for you.


Update
  • Added the base for NPC scripting support. Dialog with NPC using regular options (no inputs) is currently supported. NPCs interact with the user asynchronously using C#5's async/await. The implementation is smart enough for me and I'm happy with it so far. An example NPC script is included with the latest commit.
  • Created a separate library for services, since not all future projects of Throne will require the entire framework. More splits to come in the future I'm sure.. there are lots of things in the world server that need to be split into a portable library.
  • December 24th: Updated example NPC to use text input and multilevel dialog, made some minor field changes.

Edit(Dec. 28th):
Big thanks to those who submitted pull requests over the holidays.
I'll begin working on Throne again some time after the 31st. The biggest thing on my todo list is to revisit the entire project, mending corners I've cut in early development. After that, plans are to have a dedicated public development server. It can be expected in the next month.
.Ocularis is offline  
Thanks
6 Users
Old 01/07/2015, 23:45   #13
 
elite*gold: 0
Join Date: Jan 2015
Posts: 1
Received Thanks: 1
muy buen proyecto eres el maestro del codigo
nurarihyon25 is offline  
Thanks
1 User
Old 01/12/2015, 04:19   #14
 
.Ocularis's Avatar
 
elite*gold: 0
Join Date: Mar 2008
Posts: 309
Received Thanks: 208
test server online, see original post.
.Ocularis is offline  
Thanks
1 User
Old 01/13/2015, 01:19   #15
 
elite*gold: 0
Join Date: Mar 2012
Posts: 4
Received Thanks: 0


Wanted to show everyone its open for beta

Nice job Scotty!
Gamer Online is offline  
Reply


Similar Threads Similar Threads
[Selling] Sell 30/6090/180 day World of Wacraft gamecard
03/14/2015 - World of Warcraft Trading - 1 Replies
30 day gamecard: 11 EUR 60 day gamecard: 20 EUR 90 day gamecard: 28 EUR 180 day gamecard: 55 EUR Pay via Skrill (Moneybookers) only! Process: - Contact me in skype: MmoShop4You http://download.skype.com/share/skypebuttons/butto ns/add_green_transparent_118x23.png
[Buying] 6090 Elitegold gegen 125€ Amazon o. Paysafe
06/23/2014 - elite*gold Trading - 5 Replies
Hallo Freunde, ich suche Amazon Gutscheine oder Paysafecards für 6090 Elitegold. Entweder 6090 e*gold direkt gegen 125€ Paysafecard oder Amazon. Oder im Kurs: 1€ = 48,7e*gold
[RELEASE] Internal IP Fix for game 34083 - EXPERIMENTAL
04/13/2014 - Metin2 PServer Guides & Strategies - 17 Replies
Hi there, guys and girls! Today I release something that could be useful for the ones that want to use the 34083 filegame on Hamachi/NO-IP/DynDNS servers or that want to use an hardware firewall without their machine IP being spoiled by Metin2 attitude to send machine public IP in entergame packets. I did test it in local, and it seems like it should work, but I'm not sure if i forgot to edit something, so it's up to you to test and tell me if anything doesn't work as expected. By the...
Throne Network - Throne Gunz! 2013
06/28/2013 - GunZ - 1 Replies
http://i39.tinypic.com/6ypoph.png Throne gunz Features: Website: Throne Gunz Forum site: Throne Community Room options:



All times are GMT +2. The time now is 13:27.


Powered by vBulletin®
Copyright ©2000 - 2024, 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 ©2024 elitepvpers All Rights Reserved.