Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Silkroad Online > SRO Private Server > SRO PServer Questions & Answers
You last visited: Today at 22:30

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

Advertisement



Advanced emulator project need some answers

Discussion on Advanced emulator project need some answers within the SRO PServer Questions & Answers forum part of the SRO Private Server category.

Reply
 
Old   #1
 
elite*gold: 0
Join Date: Oct 2021
Posts: 5
Received Thanks: 1
Lightbulb Advanced emulator project need some answers

Hello guys so I'm kinda noob in the coding section and that stuff but I always wondered why no one ever released vsro or any other server files source code? I mean I want to start working on an advanced emulator that will work like the official server files but with more versatile and easier to use.... But I found a few problems
after collecting every emulator online and every available source code I (edited their source code from other emulators ) an emulator and i got the besic stuff like login walking attacking and level up buy/sell etc

But ctf arena ftw won't work
Unique won't spawn elite
No party
EU got a lot of bugs
Male/female can wear each other cloths
Wep/shield at the same time
No devil
No avatar
Etc

So I was wondering if someone can tell me about a guide that explain the coding part for the emulators or even tell me is it possible the create something like my idea? And if possible anyone interested in joining in? But like I said my coding skills is basic I know few things about it and I even used online help to make this buged emulator work..

Sorry for my bad English
Sorry for making a long post
Thanks in advance for your help
alexander337 is offline  
Thanks
1 User
Old 09/06/2022, 06:10   #2

 
SubZero**'s Avatar
 
elite*gold: 0
Join Date: Apr 2017
Posts: 988
Received Thanks: 457
You cannot create such an emulator with basic skills.
SubZero** is offline  
Old 09/06/2022, 14:09   #3
 
elite*gold: 0
Join Date: Oct 2021
Posts: 5
Received Thanks: 1
Quote:
Originally Posted by SubZero** View Post
You cannot create such an emulator with basic skills.
I didn't create the emulator from scratch I used other people emulators and edited it with codes from other emulators so technically I just edit an emulator only....
alexander337 is offline  
Old 09/06/2022, 15:13   #4
 
elite*gold: 0
Join Date: Jan 2009
Posts: 314
Received Thanks: 669
Quote:
Sorry for making a long post
Do not excuse for this! A more detailed post is always better than the usual: "I have problem [image] plz need help" type of posts you see here.

The short answer is that all the emulators you where able to collect where buggy, incomplete and abandoned. Even if you mix all of them you'll still end up with a broken and incomplete emulator. The stack overflow copy & paste approach won't work here as you'll really need to understand what the code you're dealing with is doing. All the problems you're stating are simply not incomplete features.

Quote:
Male/female can wear each other cloths
Wep/shield at the same time
This is simply an artifact of the emulator code not checking or respecting the item's reference data that tells it if it's a Shield or Weapon / Male or Female in the inventory logic.

Quote:
So I was wondering if someone can tell me about a guide that explain the coding part for the emulators or even tell me is it possible the create something like my idea?
It's definitely possible but it'll be a lot of work and as I stated before not possible with copy & paste.
There is no simple guide to creating an emulator but I can give you a few hints on what to learn in order to either fix an existing emulator or start from scratch.

1. Learn how to receive and send data through networking via sockets and more specifically in relation to Silkroad Online. That means understanding TCP, , how to read/write and potentially parsing unknown packets from scratch so you don't have to rely on other peoples (potentially poorly) parsed packets.

2. Learn how to design a database and queries/stored procedures that you'll eventually need. Also learn how your emulator can efficiently communicate with your database server as these operations usually takes a bit of time. You don't want threads waiting for IO in your emulator.

3. Learn about multi-threading as you'll be dealing potentially with 1000s of players you need to spread the load across your cores.

4. Almost none of the existing emulators actually have a grasp on how the world in Silkroad Online looks like. They just accept movement requests as they are but you should NEVER TRUST YOUR CLIENT. They could've removed all the walls/objects or send a malicious packet and you have to be able to check that.
You'll at least need a way of collision detection by ray-casting but path finding would be even better. For monsters you can get a way with something like Rapidly-exploring random trees if you don't want to go down the road of computing a path-findable NavMesh from Silkroad geometry.

If you've got these things down and working properly you can start thinking on working on features that are beyond login, character creation, spawning and moving.
DaxterSoul is offline  
Thanks
3 Users
Old 09/06/2022, 17:42   #5

 
SubZero**'s Avatar
 
elite*gold: 0
Join Date: Apr 2017
Posts: 988
Received Thanks: 457
Quote:
Originally Posted by DaxterSoul View Post
Do not excuse for this! A more detailed post is always better than the usual: "I have problem [image] plz need help" type of posts you see here.

The short answer is that all the emulator you where able to collect where buggy, incomplete and abandoned. Even if you mix all of them you'll still end up with a broken and incomplete emulator. The stack overflow approach copy & paste approach won't work here as you'll really need to understand what the code you're dealing with is doing. All the problems you're stating are simply not completed features.


This is simply an artifact of the emulator code not checking or respecting the item's reference data that tells it if it's a Shield or Weapon / Male or Female in the inventory logic.


It's definitely possible but it'll be a lot of work and as I stated before not possible with copy & paste.
There is no simple guide to creating an emulator but I can give you a few hints on what to learn in order to either fix an existing emulator or start from scratch.

1. Learn how to receive and send data through networking via sockets and more specifically in relation to Silkroad Online. That means understanding TCP, , how to read/write and potentially parsing unknown packets from scratch so you don't have to rely on others (potentially poorly) parsed packets.

2. Learn how to design a database and queries/stored procedures that you'll eventually need. Also learn how your emulator can efficiently communicate with your database server as these operations usually takes a bit of time you don't want threads waiting for IO in your emulator.

3. Learn about multi-threading as you'll be dealing potentially with 1000s of players you need to spread the load across your cores.

4. Almost none of the existing emulators actually have a grasp on how the world in Silkroad Online looks like. They just accept movement requests as they are but you should NEVER TRUST YOUR CLIENT. They could've removed all the walls/objects or send a malicious packet and you have to be able to check that.
You'll at least need a way of collision detection by ray-casting but path finding would be even better. For monsters you can get a way with something like Rapidly-exploring random trees if you don't want to go down the road of computing a path-findable NavMesh from Silkroad geometry.

If you've got these things down and working properly you can start thinking on working on features that are beyond login, character creation, spawning and moving.
Awesome replay as usual
SubZero** is offline  
Old 09/08/2022, 23:39   #6
 
elite*gold: 0
Join Date: Oct 2021
Posts: 5
Received Thanks: 1
Quote:
Originally Posted by DaxterSoul View Post
Do not excuse for this! A more detailed post is always better than the usual: "I have problem [image] plz need help" type of posts you see here.

The short answer is that all the emulators you where able to collect where buggy, incomplete and abandoned. Even if you mix all of them you'll still end up with a broken and incomplete emulator. The stack overflow copy & paste approach won't work here as you'll really need to understand what the code you're dealing with is doing. All the problems you're stating are simply not incomplete features.


This is simply an artifact of the emulator code not checking or respecting the item's reference data that tells it if it's a Shield or Weapon / Male or Female in the inventory logic.


It's definitely possible but it'll be a lot of work and as I stated before not possible with copy & paste.
There is no simple guide to creating an emulator but I can give you a few hints on what to learn in order to either fix an existing emulator or start from scratch.

1. Learn how to receive and send data through networking via sockets and more specifically in relation to Silkroad Online. That means understanding TCP, , how to read/write and potentially parsing unknown packets from scratch so you don't have to rely on other peoples (potentially poorly) parsed packets.

2. Learn how to design a database and queries/stored procedures that you'll eventually need. Also learn how your emulator can efficiently communicate with your database server as these operations usually takes a bit of time. You don't want threads waiting for IO in your emulator.

3. Learn about multi-threading as you'll be dealing potentially with 1000s of players you need to spread the load across your cores.

4. Almost none of the existing emulators actually have a grasp on how the world in Silkroad Online looks like. They just accept movement requests as they are but you should NEVER TRUST YOUR CLIENT. They could've removed all the walls/objects or send a malicious packet and you have to be able to check that.
You'll at least need a way of collision detection by ray-casting but path finding would be even better. For monsters you can get a way with something like Rapidly-exploring random trees if you don't want to go down the road of computing a path-findable NavMesh from Silkroad geometry.

If you've got these things down and working properly you can start thinking on working on features that are beyond login, character creation, spawning and moving.
Thank you so much for your answer it will really help me but I got a question if you don't mind I know that isro team got a whole company to work or their server files and so on but i wanted to use something like zealous emulator or srx or even sea shadow's as a base im thinking of creating an emulator that will cover every expect in editing the data/media and server something with an interface like mbot or something that will allow you to control the whole game with a click and i know that it's so hard to do that but its not impossible....
So I want to know can I reach that stage if I learn what you just said about the data and packets? And I want to know what's the best programming language that I should use for that? I was thinking about C/C# or something and lastly if you got time can i show you some codes in a emulator that I think I can use not copy paste but using something like it in my project

Thanks in advance
alexander337 is offline  
Old 09/09/2022, 01:26   #7
 
elite*gold: 0
Join Date: Jan 2009
Posts: 314
Received Thanks: 669
Quote:
Originally Posted by alexander337 View Post
i wanted to use something like zealous emulator or srx or even sea shadow's as a base
SRX based stuff (Fase, Limex) and Sea shadow is badly written code and you'll mostly learn code-smells from it if you adapt their code.
Out of those Zealous/eSRO are probably the cleanest. I'm not sure if it makes for a good base tho.

Quote:
Originally Posted by alexander337 View Post
something with an interface like mbot or something that will allow you to control the whole game with a click and i know that it's so hard to do that but its not impossible....
I'm not 100% sure what you mean by this. You can certainly create an interface for your server to configure and change some server side variables or things that can be updated via packet. SMC does something like that.
While it's possible to add a new item type into the server while it's running you'll still need to create patches and force the clients to update so they know about these new items.

It's a lot of work creating a user interface for every table (or textfile) and you shouldn't underestimate the amount of research you have to put into every column. You have to validate the input to make sure that you're within the bounds of what the client understands in order to not crash it by incorrect handling.
I've tried to prototype something similar and called it "Silkroad Studio" but never finished, as the required UI work was quite extensive and time consuming.
Gallery 1

Quote:
Originally Posted by alexander337 View Post
So I want to know can I reach that stage if I learn what you just said about the data and packets?
Probably, if you put in the time and work needed. I'm not the Kwisatz Haderach – I don't have visions of the future.

Quote:
Originally Posted by alexander337 View Post
And I want to know what's the best programming language that I should use for that? I was thinking about C/C# or something
C++ is always a solid choice for an emulator.
C# is definitely the fan favorite in Silkroad especially since .

Quote:
Originally Posted by alexander337 View Post
can i show you some codes in a emulator that I think I can use not copy paste but using something like it in my project
I can't tell you if the code you're trying to use will work or not and I won't evaluate these things for you. I can assess the code quality and point out mayor performance flaws but they'll be to my expectations towards code, yours might be different and that's okay.
DaxterSoul is offline  
Thanks
1 User
Old 09/09/2022, 03:38   #8
 
elite*gold: 0
Join Date: Oct 2021
Posts: 5
Received Thanks: 1
Quote:
Originally Posted by DaxterSoul View Post
SRX based stuff (Fase, Limex) and Sea shadow is badly written code and you'll mostly learn code-smells from it if you adapt their code.
Out of those Zealous/eSRO are probably the cleanest. I'm not sure if it makes for a good base tho.




I'm not 100% sure what you mean by this. You can certainly create an interface for your server to configure and change some server side variables or things that can be updated via packet. SMC does something like that.
While it's possible to add a new item type into the server while it's running you'll still need to create patches and force the clients to update so they know about these new items.

It's a lot of work creating a user interface for every table (or textfile) and you shouldn't underestimate the amount of research you have to put into every column. You have to validate the input to make sure that you're within the bounds of what the client understands in order to not crash it by incorrect handling.
I've tried to prototype something similar and called it "Silkroad Studio" but never finished, as the required UI work was quite extensive and time consuming.
Gallery 1


Probably, if you put in the time and work needed. I'm not the Kwisatz Haderach – I don't have visions of the future.


C++ is always a solid choice for an emulator.
C# is definitely the fan favorite in Silkroad especially since .

Thanks I guess I will try both to see which will be more perfect to the project

I can't tell you if the code you're trying to use will work or not and I won't evaluate these things for you. I can assess the code quality and point out mayor performance flaws but they'll be to my expectations towards code, yours might be different and that's okay.
Well I thought to use the basic stuff that's works from them like the EU and ch and their skills etc

Too bad zealous/esro were made for Linux only I don't understand Linux that much I couldn't try it lol

Well that's something like what I had in mind but I would use something like preset codes for example I would add and drop down menu where you chose to add scroll item etc... When you do you select the name and the price level like if you were editing the dB but it will collect the necs3info only and will leave the ( - 1 x) stuff for the emulator to add and make it a vailed item then It will provide you with with other scrolls producers to select what this scrool should do and where to edit it and create the necessary tables if needed like the lottary scrolls and so on
And then you select the in game item image from the list and finally it will provide you the option to add it to the update directly or if it should just give you the item line where you add manually


Well what I mean was if I encountered a problem I could show you the code to help me with what's wrong with it or if I want to take a code from them you could tell me what's better in the codes I chose

Thanks again
alexander337 is offline  
Old 09/09/2022, 12:37   #9
 
elite*gold: 0
Join Date: Jan 2009
Posts: 314
Received Thanks: 669
Quote:
Originally Posted by alexander337 View Post
Well what I mean was if I encountered a problem I could show you the code to help me with what's wrong with it or if I want to take a code from them you could tell me what's better in the codes I chose
Sure, just add me on Discord.
DaxterSoul is offline  
Old 09/13/2022, 00:16   #10
 
elite*gold: 0
Join Date: Oct 2021
Posts: 5
Received Thanks: 1
Quote:
Originally Posted by DaxterSoul View Post
Sure, just add me on Discord.
Okay whats your discord
alexander337 is offline  
Old 09/13/2022, 14:27   #11
 
elite*gold: 0
Join Date: Jan 2009
Posts: 314
Received Thanks: 669
Quote:
Originally Posted by alexander337 View Post
Okay whats your discord
DummkopfOfHachtenduden#1591 it's linked on my e*pvp profile.
DaxterSoul is offline  
Reply


Similar Threads Similar Threads
some Q in my mind here and need some answers
10/07/2012 - SRO Private Server - 0 Replies
i am checking fourm from yesterday to see real Guide to make privet server all who are crashed or bugged so i posted here to ask for help from u i wana some one give me guide about making server D11+ euro+chin must be working good i am looking to work in this to make privet server so i ask u guys to help me in this problem of mine so if anyone know good guide for me and working please send me link or say how to make and links of download Greating : MR.Ahmed
[Request] Some queries , and Some Answers ..
03/11/2012 - SRO Private Server - 1 Replies
Hello . , since i am really bad at queries and each time i try make one i fuck the DB xD I Need some quires , i hope i find it :D I Need a query to add all 120 Skillz in DB And other query to add level 120 mobs and drops , idk if it can be done by queries or no :D
need some answers can any one ?
01/05/2010 - CO2 Private Server - 6 Replies
hello every body here i just need some answers about patch 5165 i got a lot of this Sources any one edit them and upload it and all them have the same problem " PK " any character full super +12 damage -7 can take 1 hit from another character have the same stuff or less than and that's wrong can any one tell me if any something to fix this problem or what . and my second question is how can i add a new language to my privet server chat i need to add Arabic language and it's appear like...
Some questions need answers :D
01/15/2009 - CO2 Private Server - 13 Replies
Now i made my server wit hamachi and its all good now i wana make my server on wit out hamachi i heard i can bt using the external ip! I think. so plz any one can explain how to get an external ip and how i can make it work :D
i just need some answers
01/23/2008 - EO PServer Hosting - 1 Replies
First tnx to PFJ to upload great server files. And another tnx to FORCER who had pattient to help me get server online :) Now I wana know where or wich are the files wich contain CHINESE words like NPCS so i can start translating everything. And with what can i open those files etc...i mean everything where is anything in chinese so i can translate in english. Second where i change what is the drop rates, Exp rate, what will monsters drop .. how to make what will monsters drop etc......



All times are GMT +2. The time now is 22:31.


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.