Will this help me to get better at coding for server sources?

02/11/2012 23:11 Korvacs#16
Quote:
Originally Posted by xBlackPlagu3x View Post
I'd really appreciate it that if you have an opinion, that you at least give reason to why you have it. It would really help a lot so that I can take the fastest path I possibly can.
The fact of the matter is, your going to attempt to learn how to create a decent source by copy/pasting code from someone elses source. So you wont understand how that code works, so you wont actually learn anything by doing this.

How to do it correctly would be to write your own from scratch and use other available source code as a reference for the over all "this is sort of how it could be done", while doing something completely of your own creation. Therefore you understand how your code works, and understand the various processes and reasons for it working.

So your "fastest path I possibly can" approach, is your problem.
02/12/2012 06:13 xBlackPlagu3x#17
Quote:
Originally Posted by Korvacs View Post
The fact of the matter is, your going to attempt to learn how to create a decent source by copy/pasting code from someone elses source. So you wont understand how that code works, so you wont actually learn anything by doing this.

How to do it correctly would be to write your own from scratch and use other available source code as a reference for the over all "this is sort of how it could be done", while doing something completely of your own creation. Therefore you understand how your code works, and understand the various processes and reasons for it working.

So your "fastest path I possibly can" approach, is your problem.
Korvacs.... I like even specified that i wasn't going to *copy/paste*, I was going to copy/read off of the other sources. o.o

What I meant by copying/reading off other sources, was basically using them as references.
02/12/2012 11:14 Korvacs#18
Quote:
Originally Posted by xBlackPlagu3x View Post
Re-code/copy (not copy/paste, just copy)
Really?

Even by manually copying, you wont learn how it works lol.

If you truely intend to write a source from scratch (which definitely isnt what you've said in this thread), then best of luck, but from the sounds of it you arnt so i doubt this willl be worth your time.
02/12/2012 18:32 xBlackPlagu3x#19
Quote:
Originally Posted by Korvacs View Post
Really?

Even by manually copying, you wont learn how it works lol.

If you truely intend to write a source from scratch (which definitely isnt what you've said in this thread), then best of luck, but from the sounds of it you arnt so i doubt this willl be worth your time.
I'm just kinda at a loss at what to do. =/ I understand that I'm still fairly young so I have a lot of time left, I just wish that I could learn as fast as some people here have. So honestly anything is worth my time at the moment. If you have opinions, feel free to let me know!

Quote:
Originally Posted by Y u k i View Post
I could help you out abit, but im mostly short on time, still at hospital and ive started learning C :)
Yukemeister! =D I'd love some of your help, for some reason I actually get things when you explain it to me... well, your explaining being "I don't know, it just does it... why can't you learn how I learned? D:" Lol that Skype convo was the greatest.... but yeah, if our time online can match up, then I'd love to do some learnin'.
02/12/2012 19:05 I don't have a username#20
Quote:
Originally Posted by xBlackPlagu3x View Post
I just wish that I could learn as fast as some people here have. my time at the moment. If you have opinions, feel free to let me know!
Lol fast? We're talking about years.
02/12/2012 20:11 Lateralus#21
Does anyone else feel like this topic is completely redundant?
02/12/2012 23:27 xBlackPlagu3x#22
Quote:
Originally Posted by Lateralus View Post
Does anyone else feel like this topic is completely redundant?
I'm sorry that I wish to learn. Excuse my ignorance.
02/12/2012 23:41 I don't have a username#23
Quote:
Originally Posted by xBlackPlagu3x View Post
I'm sorry that I wish to learn. Excuse my ignorance.
But you wish to learn fast.

You should not learn fast, but take the time it needs. Everyone learns in their own speed.
02/13/2012 00:07 Spirited#24
Take it easy and learn at your own pace. It took me a year to learn C# and I went through a lot of failing projects before I got to my current one. Start wherever you feel comfortable. What we have to say doesn't matter in the slightest. You know where you should start better than anyone else does.
02/13/2012 00:44 m7mdxlife#25
Quote:
Originally Posted by I don't have a username View Post
Lol fast? We're talking about years.
years... with an S is not really how long it takes :P

took a good friend of mine who had ZERO knowledge in C# and never used any kind of programing languages and had a messed up English language 10 months to create a decent if not almost a perfect server that he started building from scratch, downloaded visual studios and started a new project, 10 months later he had his own custom almost bugless source.

its all about how much YOU want to do it, set it as a goal and work your ass off to get it down, for me i think he's using the right approach by copying ( which means using as a reference and for some reason it was hard for korvacs to understand ) from another well coded and organized source and learn from that then starting the whole thing all over again using the experience he got from doing so to create his own custom source
02/13/2012 03:30 Spirited#26
Mk. So... I read this thread again, and I think you're going way to fast. You don't start on things like this (socket systems and such), when you don't know the basics. Help or no help, programming isn't something you can learn in a day.

Here's what I did:
  1. Started with NPCs. I taught myself the structure of an if-else-then, if-then, switch, while, for, and do-while statement. I over-used them till I felt comfortable to move on.
  2. Then I did commands. I taught myself about simple input strings, how to split them up, what an array of strings was and how to call parts of the array into the command. I made a ton of commands... then I got bored because I got used to them.
  3. I moved on to advanced NPCs. I started creating and calling functions to make effects (which I didn't understand at that time but the packet structure was made available to me with the help of Jack).
  4. Calling functions helped me understand class hierarchy. After I taught myself the hierarchy of classes and how functions and global variables were called, I started looking at functions in NewestCoServer. I noticed that marriage was bugged and so I made Output statements to test what the default name of the spouse was. Then I fixed it.
  5. After doing things like that, I started introducing myself to packets. Packets were easier than I thought they'd be. They were like string arrays but they used bytes. By that time, I had already taught myself the basic data types (byte, ushort, uint, ulong, and their unsigned pairs).
  6. I then started working on packet handling and I taught myself how data could be extracted from incoming packets. I taught myself how to guess packet structures using commands and output statements.
  7. Finally, I started looking into the socket system of Impulse's source. It was a lot easier to understand than some of the other ones I had seen.
  8. After looking over all of Impulse's source, I felt like I had a good understanding of it all.... so I copied it by hand - word for word - to make sure that I had completely understood how he created it (the order of which things must of been coded). During the copying, I noticed pointers in his packet writer. It was a good thing that I tried copying it because I didn't really look at them. I taught myself the basics of pointers and moved on. I tested my source along the way.
  9. After copying it, I wanted more practice with ciphers (since I wasn't comfortable with them), so I changed my project to 5017. By the end of that, I felt like I had enough knowledge to start Project Kibou.

So don't start off like some crazy kid trying to learn everything in one day. Expose yourself to new logic over time. That's the only way you can learn programming.

That's how I started things.
02/13/2012 12:21 Lateralus#27
Quote:
Originally Posted by xBlackPlagu3x View Post
I'm sorry that I wish to learn. Excuse my ignorance.
It's not that you wish to learn or whatever; it's more because you're going to do what you want, and it doesn't matter if you code a 1.0 source and move your way up vs. starting at the desired patch. Of course this thread is way off-topic now, but I feel like you shouldn't have created a topic, because it absolutely doesn't matter.
02/13/2012 17:18 xBlackPlagu3x#28
Quote:
Originally Posted by Lateralus View Post
It's not that you wish to learn or whatever; it's more because you're going to do what you want, and it doesn't matter if you code a 1.0 source and move your way up vs. starting at the desired patch. Of course this thread is way off-topic now, but I feel like you shouldn't have created a topic, because it absolutely doesn't matter.
Actually it does matter, to the fullest. I could've ended up choosing Conquer-SX to learn from. Therefore, at the very least, that was prevented by the making of this thread. Also, I'm not going to do what I want, I'm not a five year old who can only see whatever it is that I want. No, I'm 17 and I can see what's best for me, and plan on taking that route. Lastly, I really believe it does matter which one I do, just based off of a little thing like the following:

Starts at patch 5527 > Eventually learns everything in there. <- Two steps, very long.

Starts at patch 4257 (or whatever it was) > Learns the small amount of stuff in there (as it's only 1.0) > Slowly upgrades it to the high patches > Learns how upgrading works in the process and also learns about the history of TQ in the meanwhile. <- Many steps, very full.

I understand that you may have learned differently than I am learning, but it doesn't mean that you should say I should have never posted a thread about helping me learn. That's kinda fucked up considering I'm sure everyone here has posted something about needing opinions, and upon asked, they were given. I bet $50 if Hybrid for some reason, asked the same thread I did, right this very second, the whole forum would be jumping up to help.

Again, sorry I wish to learn. :facepalm:
02/13/2012 17:44 I don't have a username#29
Why do you ask, if you don't want our opinions?

Pointless thread is pointless.
02/13/2012 21:06 Spirited#30
This thread is not pointless. I get asked this question a lot. In no way is this thread off-topic. It directly relates to Conquer Online Private Servers and how one should approach coding the servers available here.

As far as a patch goes, people who know what they're talking about will tell you to start at a low patch so you can set your priorities on the functionality of the server (rather than the features). The amount of ciphers and work going into logging into a current server has doubled since the low patch days.