[Release] Extremely basic (but working/bugless) C# Source

01/23/2010 17:09 Vultix#211
Thanks Arco! :D
03/04/2010 22:38 CIRASH#212
Quote:
Originally Posted by Hepatitis X View Post
Hybrid, I would be very thankful if you could upload the .dll you use for your sockets, I have tried decompiling them (as you said we were allowed to), but it would end up in one big chaos lol.
just use the red gate reflector
03/04/2010 23:53 killersub#213
I would love to know how to set this up lol...like what files to download in order and put them in the correct places in order to make it work(haven't tried 5017 sources for a while)...-call me a dumbass all u like IDC...
03/05/2010 00:13 ImFlamedCOD#214
Download rev 3 , get the database and set it up. Ive used this source updated it and much more and still use it as base till this day. Ive learned all my coding from this source and from many friend if ya need help just post and ill help you out.
03/05/2010 00:16 Arcо#215
Quote:
Originally Posted by ImFlamedCOD View Post
Download rev 3 , get the database and set it up. Ive used this source updated it and much more and still use it as base till this day. Ive learned all my coding from this source and from many friend if ya need help just post and ill help you out.
Same, I was able to make a stable(ish) 5065 source from this.
03/05/2010 00:46 CIRASH#216
I'm trying to upgrade this to 5165 myself but im having some trouble <.<.
03/05/2010 03:39 killersub#217
Quote:
Originally Posted by ImFlamedCOD View Post
Download rev 3 , get the database and set it up. Ive used this source updated it and much more and still use it as base till this day. Ive learned all my coding from this source and from many friend if ya need help just post and ill help you out.
So after I set it up...how Do I configure it lol? to like my IP...sorry haven't done many 5017 servers :/...I mean like is there a config.ini like most of the 5017 sources o_0? and how do I make an account...again I'm a newbie IDC :D...
03/05/2010 06:49 ImFlamedCOD#218
What you are looking for is int he Program.cs file and is located under Auth Receive if you scroll down in that block you will see something like "Client.Send(AuthPacket("127.0.0.1" 5816)); change the ip and if you have 5017 client your good
03/21/2010 22:55 Paralyzer[GM]#219
This is a very nice source something that you can customize 100%
03/21/2010 23:01 Arcо#220
Quote:
Originally Posted by Paralyzer[GM] View Post
This is a very nice source something that you can customize 100%
Lol any source is customizable.
It's meant to be pretty basic so people can learn c#.
It's a good way to learn.
03/22/2010 02:12 PeTe Ninja#221
Finally people are back onto this :), good job.
03/22/2010 03:45 ImFlamedCOD#222
I made my new source from learning from this base. It is nice to see people taking a interest in it again. Guess ill release some stuff for it tomorrow or Tuesday.
04/08/2010 02:26 hunterman01#223
Alright well ive decided to look into this (not sure if this is answered or not but....) I decompiled the Socketnetwork.dll and im getting ALOT of errors

Anyway i may be doing it wrong but meh

Anyhelp is appreciated
04/08/2010 06:57 pro4never#224
Quote:
Originally Posted by hunterman01 View Post
Alright well ive decided to look into this (not sure if this is answered or not but....) I decompiled the Socketnetwork.dll and im getting ALOT of errors

Anyway i may be doing it wrong but meh

Anyhelp is appreciated
There are a number of things you would have to change with the .dll if you tried to code it directly into the source. If I remember correctly me and pood had it down to only a few errors all linked to the same things but then I got bored and moved on to something else lol.

I could be wrong but doesn't the .dll just handle encryption? Why not just grab the sections out of it you need or use coemu encryption and stick with hybrids socket system for everything else?
04/08/2010 07:39 ImFlamedCOD#225
First use this one!

AuthEncrpt
Code:
namespace Conquer.Auth.Encryptions
{

    public class ConquerStanderedCipher : IPacketCipher
    {
        private ushort InCounter;
        private byte[] Key3;
        private byte[] Key4;
        private ushort OutCounter;
        private bool UsingAlternate;

        public void Decrypt(byte[] In, byte[] Out, int Length)
        {
            lock (this)
            {
                for (int i = 0; i < Length; i++)
                {
                    Out[i] = (byte)(In[i] ^ 0xab);
                    Out[i] = (byte)((Out[i] << 4) | (Out[i] >> 4));
                    if (this.UsingAlternate)
                    {
                        Out[i] = (byte)(this.Key4[this.InCounter >> 8] ^ Out[i]);
                        Out[i] = (byte)(this.Key3[this.InCounter & 0xff] ^ Out[i]);
                    }
                    else
                    {
                        Out[i] = (byte)(ConquerKeys.Key2[this.InCounter >> 8] ^ Out[i]);
                        Out[i] = (byte)(ConquerKeys.Key1[this.InCounter & 0xff] ^ Out[i]);
                    }
                    this.InCounter = (ushort)(this.InCounter + 1);
                }
            }
        }

        public unsafe void Encrypt(byte* In, byte[] Out, int Length)
        {
            lock (this)
            {
                for (int i = 0; i < Length; i++)
                {
                    Out[i] = (byte)(In[i] ^ 0xab);
                    Out[i] = (byte)((Out[i] << 4) | (Out[i] >> 4));
                    Out[i] = (byte)(ConquerKeys.Key2[this.OutCounter >> 8] ^ Out[i]);
                    Out[i] = (byte)(ConquerKeys.Key1[this.OutCounter & 0xff] ^ Out[i]);
                    this.OutCounter = (ushort)(this.OutCounter + 1);
                }
            }
        }

        public void Encrypt(byte[] In, byte[] Out, int Length)
        {
            lock (this)
            {
                for (int i = 0; i < Length; i++)
                {
                    Out[i] = (byte)(In[i] ^ 0xab);
                    Out[i] = (byte)((Out[i] << 4) | (Out[i] >> 4));
                    Out[i] = (byte)(ConquerKeys.Key2[this.OutCounter >> 8] ^ Out[i]);
                    Out[i] = (byte)(ConquerKeys.Key1[this.OutCounter & 0xff] ^ Out[i]);
                    this.OutCounter = (ushort)(this.OutCounter + 1);
                }
            }
        }
    }
}
the rest is up to you , this code works the same as the one that was there before.