Programming For Idiots (Tutorial) - In C#

07/07/2008 20:18 InfamousNoone#1
This tutorial has been superseded by: [Only registered and activated users can see links. Click Here To Register...]

Well for the next week (or so) due to being bored, I've started a video-tutorial called C# Programming for Idiots and yeah, by the end of it I'll demonstrate how to make a conquer server (patch 5016 and before) without the need of mysql, or anything like that; all you need is the Visual C# compiler, and WinRAR (To extract the videos).

Visual C# Compiler: [Only registered and activated users can see links. Click Here To Register...]
WinRAR: [Only registered and activated users can see links. Click Here To Register...]

I'll be uploading onto megaupload, if you cannot download from there; Have someone else download and upload it for you. Warning! If you download from a mirror I didn't upload from (anything other than megaupload) you may get more than you bargained for, I don't check whats being uploaded on the mirrors I'm linked to.

Note: If I have a description up but no video link I'm uploading it.


Intro: [Only registered and activated users can see links. Click Here To Register...]
Description: Basically here I talk about what I'll be doing during the lessons such as drinking tea, coffee, smoking pot, talking to people, listening to music, so on, not vital to watch.

Basic
Quote:
Lesson One - Console IO (Input/Output): [Only registered and activated users can see links. Click Here To Register...]
Other Mirrors:
[Only registered and activated users can see links. Click Here To Register...] - keving
Description: I explain the basic input and output of a console and get into a little bit of string variables here, the concept of using the console will always be the most vital thing for figuring out where errors are and keeping your application running and generating error reports.
Quote:
Lesson Two - Variables: [Only registered and activated users can see links. Click Here To Register...]
Other Mirrors:
[Only registered and activated users can see links. Click Here To Register...] - Akinci1234
Description: I explain the use of variables, how to use them, what they're used for, what kind of integer-variable to use and when and so on. I also get into variable conversions such as int to string, and string to int.
Quote:
Lesson Three - Exceptions and Errors: [Only registered and activated users can see links. Click Here To Register...]
Other Mirrors:
[Only registered and activated users can see links. Click Here To Register...] - Akinci1234
Description: Here I cover how to handle exceptions, why they occur, how to get information from them and prevent them from happening, when to use try/catch blocks.
Quote:
Lesson Four - Loops and Arrays: [Only registered and activated users can see links. Click Here To Register...]
Other Mirrors:
[Only registered and activated users can see links. Click Here To Register...] - Akinci1234
Description: I discuss what arrays are used for near the end, and demonstrate the two ways of creating in C# (initializing by defining the values, or by size), and I also demonstrate how the while and for loop are used. If anyone wants me to go more in depth on either arrays or loops post your question here.
Quote:
Lesson Five - Collections: [Only registered and activated users can see links. Click Here To Register...]
Other Mirrors:
[Only registered and activated users can see links. Click Here To Register...] - Akinci1234
Description: I talk about the use of collections that are like arrays, but where you do not have to specify the size, I also talk about the dangers of trying to use ArrayList's to hold a ton of data instead of copying it to a normal C# array.
I forgot to mention in this video you can preform a foreach loop on arraylists, for example:
Code:
ArrayList list = new ArrayList();
// add stuff the list
foreach (object obj in list) 
{
    // you have to use object as you loop variable, but inside the loop
    // you can typecast it to whatever you want
    // i.e.
    // int i = (int)obj;
}
Intermediate
Quote:
Lesson Six - Classes: [Only registered and activated users can see links. Click Here To Register...]
Other Mirrors:
[Only registered and activated users can see links. Click Here To Register...] - Akinci1234
Description: Here I cover what classes should be used for, and DLL Imports in C#. In this one, I display how to make an INI reader and writer class, and make it possible so that you can write or read in different variable types using parsing methods.
Quote:
Lesson Seven - Pointers: [Only registered and activated users can see links. Click Here To Register...]
Description: I discuss the ups and downs of pointers, I also demonstrate why hadeset is a down with pointers and how pointers can be potentially so dangerous to crash your application; On other hand I demonstrate how they could speed your application up if used properly.
Quote:
Lesson Eight - Ciphers and Encryptions: [Only registered and activated users can see links. Click Here To Register...]
Description: I start off by explaining whats needed to invent your own cipher, then I use an algorithm I invented at 13 to create a "advanced" or at least "intermediate" cipher. At the end I show an example of a really easy cipher to create.
Quote:
Lesson Nine - Socket Programming
This lesson will be broken down into sub-lessons which will covert several aspects of socket programming (i.e. client, server, packets, etc.)

Quote:
Introduction: [Only registered and activated users can see links. Click Here To Register...]
Description: Here I just introduce socket programming and show what namespaces will be needed and I introduce the class we'll be working with and wrapping.
Quote:
Server and Client: [Only registered and activated users can see links. Click Here To Register...]
Description: Here I introduce socket programming using my "WinsockClient" and "WinsockServer" from my System.NativeInterop DLL I include.
07/07/2008 20:54 adz06676#2
Quote:
Originally Posted by InfamousNoone View Post
Well for the next week (or so) due to being bored, I've started a video-tutorial called C# Programming for Idiots and yeah, by the end of it I'll demonstrate how to make a conquer server (patch 5016 and before) without the need of mysql, or anything like that; all you need is the Visual C# compiler, and WinRAR (To extract the videos).

Visual C# Compiler: [Only registered and activated users can see links. Click Here To Register...]
WinRAR: [Only registered and activated users can see links. Click Here To Register...]

I'll be uploading onto megaupload, if you cannot download from there; Have someone else download and upload it for you.

Note: If I have a description up but no video link I'm uploading it.


Intro: [Only registered and activated users can see links. Click Here To Register...]
Description: Basically here I talk about what I'll be doing during the lessons such as drinking tea, coffee, smoking pot, talking to people, listening to music, so on, not vital to watch.

Lesson One - Console IO (Input/Output): [Only registered and activated users can see links. Click Here To Register...]
Description: I explain the basic input and output of a console and get into a little bit of string variables here, the concept of using the console will always be the most vital thing for figuring out where errors are and keeping your application running and generating error reports.

Lesson Two - Variables: [Only registered and activated users can see links. Click Here To Register...]
Description: I explain the use of variables, how to use them, what they're used for, what kind of integer-variable to use and when and so on. I also get into variable conversions such as int to string, and string to int.

Lesson Three - Exceptions and Errors: [Only registered and activated users can see links. Click Here To Register...]
Description: Here I cover how to handle exceptions, why they occur, how to get information from them and prevent them from happening, when to use try/catch blocks.
Sweet thanks this will help alot, i can code but only to a certain extent the lessons will hopefully teach me more.
07/08/2008 00:18 InfamousNoone#3
If anyone has any questions at programming feel free to ask; if your going to be stupid and ask something like "how do I make guilds?" I'm not going to bother responding. Please ask something SPECIFIC.

For instance; "How would I implement an IP Ban feature?", "How does ______ work?", etc.

Keep in mind, you question could both be about conquer programming, or general programming, anything thats not currently public won't be released from me (i.e. how do I decrypt password hex dumps? Won't be answered because the knowledge isn't public).
07/08/2008 07:10 Danutzhaha#4
:))))))) btw nice tut
07/08/2008 17:00 keving#5
ty alot bro u help C# noobs rly
07/08/2008 17:37 keving#6
Here i hope it helps :)

Other Mirrors:

Rapidshare:
[Only registered and activated users can see links. Click Here To Register...]

Info: Other Tutorials coming soon...
07/08/2008 18:03 tao4229#7
As for questions... How does the guild pole work? As it is an NPC, (or is it a mob o.0?) how does it have HP? I don't want like... a total explanation just, how does it work..
Btw, "No one watching this is my age", hey i'm younger than you >_>
07/08/2008 18:13 zane203#8
Quote:
Originally Posted by tao4229 View Post
As for questions... How does the guild pole work? As it is an NPC, (or is it a mob o.0?) how does it have HP? I don't want like... a total explanation just, how does it work..
Btw, "No one watching this is my age", hey i'm younger than you >_>
Dude age dosnt matter... im only 15, at the age of 12 i created a small game, and at age of 13 I programed a small browser -_-. Do what you do and dont let age limit you =p, take it as a challenge ;)
=======================
@Infamous: PRAISE JESUS that you posted this xD, trial and error only gets you so far in one department. Do you mind if reupload this on a different host? All credit will still go to you of course xD

again thank you... who would of ever though that EPVP would ever get people like Samehvan, Gfun, adz, and Infamous O_o i must say this is a nooby programmers idles right here xD.
07/08/2008 18:30 lostsolder05#9
Nice Inf, If i would have had this when i started learning C#(4 yrs ago) it would have taken me a hell of a lot shorter time to get where i am now.:P
07/08/2008 18:45 tao4229#10
Quote:
Originally Posted by zane203 View Post
Dude age dosnt matter... im only 15, at the age of 12 i created a small game, and at age of 13 I programed a small browser -_-. Do what you do and dont let age limit you =p, take it as a challenge ;)
=======================
@Infamous: PRAISE JESUS that you posted this xD, trial and error only gets you so far in one department. Do you mind if reupload this on a different host? All credit will still go to you of course xD

again thank you... who would of ever though that EPVP would ever get people like Samehvan, Gfun, adz, and Infamous O_o i must say this is a nooby programmers idles right here xD.
Lol, i was joking about my age. I don't really care, Infamous is(probably)14, and he's pro. This is a good guide, but i'm waiting for more lessons, I already know the first few :x. This is DEFINATELY a good way to learn, it's not like some of the guides that are like... Yay console application. Next lesson expects you to know everything.. o.0

Edit: I'm 13 and i'm posting from my "small browser" =D
07/08/2008 18:47 Lateralus#11
Cheers.
07/08/2008 19:15 InfamousNoone#12
Quote:
Originally Posted by tao4229 View Post
As for questions... How does the guild pole work? As it is an NPC, (or is it a mob o.0?) how does it have HP? I don't want like... a total explanation just, how does it work..
Btw, "No one watching this is my age", hey i'm younger than you >_>
Alright, here's how it works. It does have HP and is a monster, but it's also a NPC at the same time. The spawn packet isn't a normal spawn packet that you'd use to spawn monsters or players, it's a different one. The UniqueID (UID) of the guild monster will be it's NpcID no matter what; which means when you attack, in the attack packet's UID field, you'll get the NpcID of that monster, and when you click it to use it as a NPC, it's NpcID will be passed as the NpcID as expected.

When the monsters dead, it's spawned using a NPC Packet, when it's alive it's spawned using that 'special' spawn packet.

I'll get more into collections and socket programming later on in the videos.
07/08/2008 20:10 zane203#13
Ah, this really is going to help me out a lot man. Thanks to this my team of noob programmers will be getting better at C# lol. Best to say start off with a pair of noob friends then expert assholes =3

again thanks man.
07/08/2008 21:12 InfamousNoone#14
Added another lesson on Hashtables and ArrayLists, in general collections. These are commonly used throughout a server and can cause several problems when used wrong, Future recently witnessed several problems using the ArrayList, as have I in the past, in this video I point out what not to do with them.
07/08/2008 22:56 cybergod47#15
+Thanks for you, i will be adding this tutorial to the front a long list of stuff i need to do.