Quote:
Originally Posted by medohooks
question : if i became intermediate C# programmer how can i teach myself or understand the conquer source that i use as a basic
|
If you become a intermediate programmer, you'll know what you need.
You need to think how your server will be structured... Ex: Login and Game Server in two separated Executables and a DLL for common structures (w/e).
You need to understand how a socket work, which options can you use for a TCP Server/Client (in case of Conquer).
Ciphers are out there in many sources and you can get them, you'll be good with it, or you can look those sources, check which Ciphers are used and you can study how they work and try to make your own implementation (not reading code maybe, if you dominate the language the algorithm will be enough).
Then, some packet logging on other servers (better if you get a version you want to use) to see the login/game sequence to see how you will need to implement those things (or just some reading at any public source out there will help you, most wont have the best structure but will give you knowledge to make your own).
After you setup the base: Socket and Cipher, the inter-server communication and Client-Server will be the easiest part. Just follow the rules you defined in the project start, paying atention to details, know what you're doing, comment your code so you wont get lost and for god sake, don't copy/paste codes from shitty sources, or your source will become shitty too.
Also, C# is great for starters. If you don't know C#, building a CO Server is good but will take much time. It will teach you a lot of things you should (or not) do. And be careful if you want to use GUI's on the server. I've been using C++ and comparing with c# how a UI works... C# UI is shit. I recommend console application for sure.
Tho, because of language limitations and I'm not a PROgrammer, I can't help much. But I started with Project Exodus, it's 5187, which is a version with few documentation, you can look for sources with 5517 with packet structures you can adapt. It was great for learning because it's very simple. I rewrote the whole code to see how it works, saw how the program flows and understood it (my Exodus version suffered because of MySQL which I implemented something very slow). Get a base source, study it, it will be clean and good to start with. The rest will be like: "Oh, I need to make something. - *google* - oh, shit! I got it, let me implement.".
Best of luck.