[Teaching Units] ProxyParadise! A step by step proxy tutorial!

07/19/2011 22:44 Real~Death#106
Quote:
Originally Posted by StarBucks View Post
Who's decision was it? I feel like thats a shitty ass excuse to "protect" CoAI. How dare you say its because you feel that TQ will change the crypto again? It only took them how many years this time?
I was wondering who's decision it was also?I talked to Luke he said if we have any more problems like this let him know.So I'm not sure who decided to block releases or ban ppl.Korv Said he did not ban or threaten Fang.So it was the higher up?
07/19/2011 22:50 pro4never#107
Quote:
Originally Posted by [GM] View Post
Edit : nvm fixed, but still even when the hunting == true the char dones't make anything

p4n if u get online again just, let me know :)

iam tired of this proxy i implemented everything, but not working at all

i can send u the source and test it yourself

iam having troubles mostly with packets
You still have to write the entire bot logic as well as structuring every single packet needed to make a bot....

Simply saying hunting = true; doesn't automatically make you a hunting bot ;)


Quote:
Originally Posted by StarBucks View Post
Who's decision was it? I feel like thats a shitty ass excuse to "protect" CoAI. How dare you say its because you feel that TQ will change the crypto again? It only took them how many years this time?
I mentioned in another thread.. the decision seems to have been reversed (no official word on it so who knows. Threads are back though) so I'd say just leave it. It's been discussed both with moderators and admins and they seem to have changed their minds so I feel there's no need to start un-needed drama.

Korv also stated when accused of protecting CoAI/COF that he gains nothing for moderating for them and in fact when discussing the issue with me described CoG/CoF as irresponsible and part of a real issue facing conquer... so I'd cut the guy some break when it comes to the whole modding for them thing ;)
07/20/2011 05:15 [GM]#108
Quote:
Originally Posted by pro4never View Post
You still have to write the entire bot logic as well as structuring every single packet needed to make a bot....

Simply saying hunting = true; doesn't automatically make you a hunting bot ;)
if u look at the source i gave ya, u will see it has all the packets in there but they are not working, dunno why :confused:

thats why i asked you to look at it because i can't identify the problem myself

ok, lets take look on this packet (server attack)

Code:
Packet Nr 99. Server -> Client, Length : 48, PacketType: 1022
28 00 FE 03 00 00 00 00 21 A9 19 00 5A 4A 06 00      ;( þ    !© ZJ 
ED 01 D7 01 0E 00 00 00 07 00 00 00 00 00 00 00      ;í×          
00 00 00 00 00 00 00 00 54 51 53 65 72 76 65 72      ;        TQServer
Size 28 00 -> 00 28 -> 40
Type FE 03 -> 03 FE -> 1022
Timer 00 00 00 00 -> 00 00 00 00 -> 0
UID 21 A9 19 00 -> 00 19 A9 21 -> 1681697
ID 5A 4A 06 00 -> 00 06 4A 5A -> 412241
X 00 ED -> ED 00 -> 60672
Y 01 D7 -> D7 01 ->55041

am i doing it wrong?

so if i put it in the source it look like this

Code:
        public static void AtkServer(GameUser Csocket, uint ID, byte AttackType)
        {
            uint Time = GetStamp(Csocket);
            byte[] Packet = new byte[48];
            COPacket Test = new COPacket(Packet);
            Test.WriteInt16(40);
            Test.WriteInt16(1022);
            Test.WriteInt32(Time);
            Test.WriteInt32(Csocket.UID);
            Test.WriteInt32(ID);
            Test.WriteInt16(Csocket.X);
            Test.WriteInt16(Csocket.Y);
            Test.WriteByte(AttackType);
            Test.Offset(40);
            Test.WriteString("TQClient");
        }
and its not working
07/20/2011 06:26 pro4never#109
You have the packet structured wrong is the issue.


Your main issue being you are not looking at values correctly..

X/Y is in this case

01 ED >> 1ED >> 439
01 D7 >> 1D7 >> 471


Not an issue cause it's correct in the actual code.

Attack type is correct in that it IS at offset 20 but notice there is another value 4 bytes in... so in this case I'd treat it more as a uint.... but this isn't a full packet anyways.


Try structuring using a Client>Server packet. The structure is the same but you're trying to base this on a RESPONSE packet versus a request packet. The values will look a tad difference (in this case the 07 00 00 00 is damage value returned from the attack).

The structure doesn't look too far off from an initial glance but make sure you're breakpointing all the right sections and ensuring that everything is being executed properly (the atkserver method is actually being called.


Further note... you are not sending the packet at all in that method.

Didn't realize it till I finished writing all this so I'll leave the useless ramblings in here... it's a void so not returning anything yet you never DO anything with the buffer you assign... You should be sending it to the server/client!
07/20/2011 07:00 [GM]#110
Quote:
Originally Posted by pro4never View Post
You have the packet structured wrong is the issue.


Your main issue being you are not looking at values correctly..

X/Y is in this case

01 ED >> 1ED >> 439
01 D7 >> 1D7 >> 471


Not an issue cause it's correct in the actual code.

Attack type is correct in that it IS at offset 20 but notice there is another value 4 bytes in... so in this case I'd treat it more as a uint.... but this isn't a full packet anyways.


Try structuring using a Client>Server packet. The structure is the same but you're trying to base this on a RESPONSE packet versus a request packet. The values will look a tad difference (in this case the 07 00 00 00 is damage value returned from the attack).

The structure doesn't look too far off from an initial glance but make sure you're breakpointing all the right sections and ensuring that everything is being executed properly (the atkserver method is actually being called.


Further note... you are not sending the packet at all in that method.

Didn't realize it till I finished writing all this so I'll leave the useless ramblings in here... it's a void so not returning anything yet you never DO anything with the buffer you assign... You should be sending it to the server/client!
so does those two lines which i have added sends the packet to the server ? and iam sure that the the atkserver method is actually being called in the hunting code
Code:
        public static bool AtkServer(GameUser Csocket, Mob Monster, byte AttackType)
        {
            uint Time = GetStamp(Csocket);
            byte[] Packet = new byte[48];
            ReadWrite Test = new ReadWrite(Packet);
            Test.WriteInt16(40);
            Test.WriteInt16(1022);
            Test.WriteInt32(Time);
            Test.WriteInt32(Csocket.UID);
            Test.WriteInt32(Monster.UID);
            Test.WriteInt16(Csocket.X);
            Test.WriteInt16(Csocket.Y);
            Test.WriteByte(AttackType);
            Test.Offset(20);
            Test.WriteString("TQClient");
            SendToServer(Packet, Csocket);
            Csocket.ServerQueue.Enqueue(Test.Get);
            return true;
        }
and maybe i have to add this in the source somewhere ?
Code:
                        case 1022://attack
                            {
                                PR.ReadUInt32();
                                uint MeID = PR.ReadUInt32();

                                switch (data[20])
                                {
                                    case 2:
                                        if (GameUser.UID == MeID)
                                        {
                                            GameUser.LastServerX = ReadUInt16(data, 16);
                                            GameUser.LastServerY = ReadUInt16(data, 18);
                                        }
                                        break;
                                    case 14:
                                        {
                                            if (MeID == Client.UID)
                                            {
                                                Client.Kills++;
                                                Client.attackingnow = null;
                                            }
                                            uint uid = PR.ReadUInt32();
                                            if (Client.LocalMobs.ContainsKey(uid))
                                                Client.LocalMobs.Remove(uid); Client.attackingnow = null;

                                            break;
                                        }
                                    default:
                                        break;
                                }

                                break;
                            }
                    }
                }
iam looking forward your minebot guide, just to see how will u send the packets to the client
07/20/2011 15:04 pro4never#111
Yah that is all related to the old framework so you really shouldn't be posting in this thread as it's a completely different proxy framework.

The new proxy does not contain packet queues.
07/20/2011 22:06 [GM]#112
Quote:
Originally Posted by pro4never View Post
Yah that is all related to the old framework so you really shouldn't be posting in this thread as it's a completely different proxy framework.

The new proxy does not contain packet queues.
oh i see, so this thing isn't needed at all

btw, when will u release the new Unit ? ;)
07/20/2011 23:26 pro4never#113
Whenever I get bored and have the time to write it up... may be tonight depending on if my guild decides to do some Zandalari heroics
07/21/2011 08:43 denominator#114
Are people getting botjailed with this and if not then how have they got around it? I remember with alchemy my noob got botjailed.
07/21/2011 08:51 [GM]#115
Quote:
Originally Posted by denominator View Post
Are people getting botjailed with this and if not then how have they got around it? I remember with alchemy my noob got botjailed.
well, this source is way better than the old one , and very easy to work with unlike alchemy, i have added a lot of stuff but iam missing the packets so i can't tell if its safe or not :), but believe me its worth spending time on
07/21/2011 10:20 pro4never#116
Quote:
Originally Posted by denominator View Post
Are people getting botjailed with this and if not then how have they got around it? I remember with alchemy my noob got botjailed.
Never got bj'd on either. This is a valid base for writing a bot as it has NO packets structured and does not modify anything in the client OR the packets being sent between the client and server.

The only thing that could get you botjailed here is either

A: suspicious behavior (IE: you write a bad bot or get reported)

B: Conquerloader being detected by the clientside protection. I've not heard of this happening but I'd easily see it happening in the future.
07/22/2011 00:50 .Kinshi#117
Quote:
Originally Posted by pro4never View Post
Never got bj'd on either. This is a valid base for writing a bot as it has NO packets structured and does not modify anything in the client OR the packets being sent between the client and server.

The only thing that could get you botjailed here is either

A: suspicious behavior (IE: you write a bad bot or get reported)

B: Conquerloader being detected by the clientside protection. I've not heard of this happening but I'd easily see it happening in the future.
I'll give you a BJ ;)
07/22/2011 01:09 Captivate#118
Quote:
Originally Posted by .Kinshi View Post
I'll give you a BJ ;)
If there's one person to deserve one, it's p4n.
07/22/2011 02:04 pro4never#119
Quote:
Originally Posted by .Kinshi View Post
I'll give you a BJ ;)
Ooh you ;) /playful slap
07/22/2011 08:08 BaussHacker#120
So, when is the sticky coming?