Register for your free account! | Forgot your password?

Go Back   elitepvpers > MMORPGs > Conquer Online 2 > CO2 Bots & Macros
You last visited: Today at 07:42

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Stripped ProjectAlchemy Source Code

Discussion on Stripped ProjectAlchemy Source Code within the CO2 Bots & Macros forum part of the Conquer Online 2 category.

Reply
 
Old 02/08/2011, 17:48   #916
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
Quote:
Originally Posted by caio bola View Post
Everytime i try to run /speed jumps lower than 800 I get and 10010 error packet ( invalid jump )

anyone can helpme?



Its fully working but I need some help to clear the code and to solve the invalid jump ( 10010) when I try to run at faster speeds.
Also I cant make the hunt to stop , what code I need to insert in order to make it stop if hunt=false?
You cannot jump faster than 750-800 ms without being flagged by tq as speedhacking and dcing. The only way around that is coding a full speedhack system or running the bot using cyclone/superman (tq does not check for speedhack when in cyc/superman)

If you're in fatal strike though there's no need to jump and infact you SHOULDN'T be jumping in fatal strike except when no monsters are in range (fatal strike moves you, simply update position and keep killing).
pro4never is offline  
Old 02/08/2011, 21:53   #917
 
demon17's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 676
Received Thanks: 109
Quote:
Originally Posted by pro4never View Post
You cannot jump faster than 750-800 ms without being flagged by tq as speedhacking and dcing. The only way around that is coding a full speedhack system or running the bot using cyclone/superman (tq does not check for speedhack when in cyc/superman)

If you're in fatal strike though there's no need to jump and infact you SHOULDN'T be jumping in fatal strike except when no monsters are in range (fatal strike moves you, simply update position and keep killing).
Yeah ..

In my used source I not have Random Jump. I have the Code and I was tried it twice but the problem was no stable hunt when no FS , or sometimes was dcing due inv jump . So maybe I let the source RandomJumpLess xD and I jump once or twice when No MOB in area .

I farmed up more than 30 Ninjas .. Thank you P4N and Oela .:P

Also :
P4n you know how Oelas proxy works , so I wana talk only about the part of FS, When FS is on the Range ( area / distance) is higher , I think is 18 , It is possible to add the same thing to superman ?
Or maybe I add the Rand Jump when i wana farm Wariors .>?
demon17 is offline  
Old 02/08/2011, 22:55   #918
 
elite*gold: 0
Join Date: Dec 2010
Posts: 33
Received Thanks: 0
Quote:
Originally Posted by pro4never View Post
You cannot jump faster than 750-800 ms without being flagged by tq as speedhacking and dcing. The only way around that is coding a full speedhack system or running the bot using cyclone/superman (tq does not check for speedhack when in cyc/superman)

If you're in fatal strike though there's no need to jump and infact you SHOULDN'T be jumping in fatal strike except when no monsters are in range (fatal strike moves you, simply update position and keep killing).

I got invalid jump because of the randomjump code:
private static void RandomJump(Client C)
{
Random random = new Random();
Coord XY = new Coord();
XY.X = (ushort)(C.X + random.Next(-18, 18));
XY.Y = (ushort)(C.Y + random.Next(-18, 18));
if (Calculations.ValidDmap(C.StaticMap, XY.X, XY.Y))
{
Packets.CliJump(XY.X, XY.Y, 156, C);
Packets.Jump(C, XY.X, XY.Y, 137);
Packets.CliJump(XY.X, XY.Y, 156, C);
C.X = XY.X;
C.Y = XY.Y;
C.UpdatedX = XY.X;
C.UpdatedY = XY.Y;
System.Threading.Thread.Sleep(C.JumpSpeed);
C.LastJump = DateTime.Now;
}
}
}
}

How can I improve it

And second question can you tell me how to make my hunt code STOPS , because even when hunt = false , he keeps attacking

You already said a method to stop the code wich was if(!C.Hunting) return true , but it only works if in a bool. My code uses a void , how to do?
caio bola is offline  
Old 02/08/2011, 23:07   #919
 
elite*gold: 0
Join Date: Apr 2007
Posts: 906
Received Thanks: 1,431
Quote:
Originally Posted by caio bola View Post
I got invalid jump because of the randomjump code:
private static void RandomJump(Client C)
{
Random random = new Random();
Coord XY = new Coord();
XY.X = (ushort)(C.X + random.Next(-18, 18));
XY.Y = (ushort)(C.Y + random.Next(-18, 18));
if (Calculations.ValidDmap(C.StaticMap, XY.X, XY.Y))
{
Packets.CliJump(XY.X, XY.Y, 156, C);
Packets.Jump(C, XY.X, XY.Y, 137);
Packets.CliJump(XY.X, XY.Y, 156, C);
C.X = XY.X;
C.Y = XY.Y;
C.UpdatedX = XY.X;
C.UpdatedY = XY.Y;
System.Threading.Thread.Sleep(C.JumpSpeed);
C.LastJump = DateTime.Now;
}
}
}
}

How can I improve it

And second question can you tell me how to make my hunt code STOPS , because even when hunt = false , he keeps attacking

You already said a method to stop the code wich was if(!C.Hunting) return true , but it only works if in a bool. My code uses a void , how to do?
check for the presence of a bool and simply return if false . . . . .
Warlax is offline  
Old 02/08/2011, 23:10   #920
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
Well simply make some sort of bool value (or use existing ones such as Botting, Hunting, Looting) to control which sections of code are run inside your bot method. If botting is not enabled, do nothing. If hunting isn't enabled then don't kill anything, if looting isn't enabled then don't loot anything.

Everything should be coded as single stage codes. You should perform ONE action per loop and no more. If you loot an item then you should be ending the method and waiting for it to run next (Aka why it should run often and then use datetimes to control how often certain actions may take place)
pro4never is offline  
Old 02/09/2011, 01:15   #921
 
elite*gold: 0
Join Date: Dec 2010
Posts: 33
Received Thanks: 0
Is there any improvement that I can make in the randomjump code , pro4 and warlax?
to make it more stable

im very noob but I did notice the jump packet comes to make the server authenticate your position. So he is between the clientjumps otherwise I would only run around client side.

But thats exactly packet jump that makes my dc ratio high. I tought the validade.dmap would make the invalid jumps not an issue , but it isnt.
caio bola is offline  
Old 02/09/2011, 02:15   #922
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
well someone was telling me that the dmaps produced for this are not rotated properly and are therefor wrong. I wasn't aware of that nor have I tested it fully but that could definitely be an issue. The other possibility is that tq changes the maps for certain seasons (places objects on the ground, etc). Regenerating new maps often is generally not a bad idea.


Note: Why are you sending the client jump twice?

I also STRONGLY recommend staying away from using sleep statements. Those completely freeze the thread until they expire meaning no other actions can take place. You're better off using a datetime say the included "LastJump" and then checking it before doing other actions (attacking/jumping/looting) to see if enough time has passed)
pro4never is offline  
Old 02/09/2011, 02:24   #923
 
elite*gold: 0
Join Date: Aug 2006
Posts: 45
Received Thanks: 6
P4N,

What makes this certain type of jump invalid? Coordination? Or Timestamp? I tried up to subtype 159. I still scratching my head... I have to hit the right combination
argon69 is offline  
Old 02/09/2011, 02:42   #924
 
elite*gold: 0
Join Date: Dec 2010
Posts: 33
Received Thanks: 0
p4n what about hitstokill speed attack and speed update

wich values you got more stability of?

cracking my head to figure out
caio bola is offline  
Old 02/09/2011, 02:50   #925
 
warning3's Avatar
 
elite*gold: 0
Join Date: Feb 2010
Posts: 136
Received Thanks: 9
Quote:
Originally Posted by caio bola View Post
p4n what about hitstokill speed attack and speed update

wich values you got more stability of?

cracking my head to figure out
Doesn't the proxy already have that added in?

EDIT: Nevermind I get what you mean.
warning3 is offline  
Old 02/09/2011, 02:54   #926
 
elite*gold: 0
Join Date: Dec 2010
Posts: 33
Received Thanks: 0
you can change it
caio bola is offline  
Old 02/09/2011, 03:00   #927
 
warning3's Avatar
 
elite*gold: 0
Join Date: Feb 2010
Posts: 136
Received Thanks: 9
Quote:
Originally Posted by caio bola View Post
you can change it
Yeah, I know...
warning3 is offline  
Old 02/09/2011, 03:44   #928
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
Quote:
Originally Posted by argon69 View Post
P4N,

What makes this certain type of jump invalid? Coordination? Or Timestamp? I tried up to subtype 159. I still scratching my head... I have to hit the right combination
the ONLY jump type is 137. No other general data subtypes should be being sent to the server. Unless of course you're trying to create a bot that does some other interesting things but not related to normal botting gameplay.

Quote:
Originally Posted by caio bola View Post
p4n what about hitstokill speed attack and speed update

wich values you got more stability of?

cracking my head to figure out
That all depends on how you code the bot lol! Depending on how you control your delays and how you link up delays (are you putting a delay after jumping before you attack again? or just a certain time after last attack? etc) then you can modify the speeds greatly. It also changes based on server latency.

Seeing as the bot I released contains NO botting functionality how on earth would I be able to tell you what settings you should be using for bot code you should be writing yourself? ^^
pro4never is offline  
Old 02/09/2011, 03:55   #929
 
elite*gold: 0
Join Date: Dec 2010
Posts: 33
Received Thanks: 0
This is the code:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AlchemyProxy
{
public partial class Handler
{
public static void COut(string Out)
{
Console.WriteLine(Program.ProxyTitle + " " + Out);
}
public static bool IsOre(uint ID)
{
if (ID >= 1072010 && ID <= 1072052)
return true;
else return false;
}
public static Mob GetClosestMonster(Client C)
{
Mob ToReturn = null;
int Dist = 18;
if (C.InFatalStrike)
{
Dist = 18;
}
else
{
Dist = 7;
}
foreach (Mob M in C.LocalMobs.Values)
{
if (Calculations.Distance(C.X, C.Y, M.X, M.Y) < Dist)
{
ToReturn = M;
Dist = Calculations.Distance(C.X, C.Y, M.X, M.Y);
if (Dist < 2)
break;
}
}
return ToReturn;
}
public static void NewBot(Client C)
{
if (C.RunBot)
{
Mob Attack = GetClosestMonster(C);
if (Attack != null)
{


if (C.LastJump.AddMilliseconds(C.JumpSpeed) < DateTime.Now)
{
Packets.CliJump(Attack.X, Attack.Y, 156, C);
Handler.Chat(C, " ", 2008);
C.X = Attack.X;
C.Y = Attack.Y;
C.UpdatedX = C.X;
C.UpdatedY = C.Y;
Calculations.UpdateLocal(C);
C.LastJump = DateTime.Now;
}
else if (C.LastAttack.AddMilliseconds(C.AttackSpeed) < DateTime.Now)
{
Calculations.ShiftTarget(Attack);
Packets.AtkServer(C, Attack, 2);
C.X = Attack.X;
C.Y = Attack.Y;
C.UpdatedX = C.X;
C.UpdatedY = C.Y;
Calculations.UpdateLocal(C);
Handler.Chat(C, " " + Attack.Name, 2008);
C.LastAttack = DateTime.Now;
}
}
Mob M = GetClosestMonster(C);
if (M == null)
{
RandomJump(C);
}
int Dist = Calculations.Distance(C.X, C.Y, M.X, M.Y);
if (Dist < 2)
{
if (DateTime.Now > C.LastAttack.AddMilliseconds(C.AttackSpeed))
{
Packets.AtkServer(C, M, 2);
}
else
{
if (DateTime.Now > C.LastJump.AddMilliseconds(C.JumpSpeed))
;
if (C.InFatalStrike && DateTime.Now > C.FatalStrikeActivated.AddSeconds(58))
{
C.InFatalStrike = false;
if (!C.Hunting)
return;
}
}
}
}
}
private static void RandomJump(Client C)
{
Random random = new Random();
Coord XY = new Coord();
XY.X = (ushort)(C.X + random.Next(-18, 18));
XY.Y = (ushort)(C.Y + random.Next(-18, 18));
if (Calculations.ValidDmap(C.StaticMap, XY.X, XY.Y))
{
Packets.CliJump(XY.X, XY.Y, 156, C);
Packets.Jump(C, XY.X, XY.Y, 137);
Packets.CliJump(XY.X, XY.Y, 156, C);
C.X = XY.X;
C.Y = XY.Y;
C.UpdatedX = XY.X;
C.UpdatedY = XY.Y;
System.Threading.Thread.Sleep(C.JumpSpeed);
C.LastJump = DateTime.Now;
}
}
}
}

what values u suggest
caio bola is offline  
Old 02/09/2011, 07:01   #930
 
elite*gold: 21
Join Date: Jul 2005
Posts: 9,193
Received Thanks: 5,380
Wouldn't know nor would I care.

It's not like you can simply glance at code and say "ooh well obviously you should be using these speed settings!"

I simply know a few guidelines for how easily tq dc's players for sending certain packets too quickly which I've posted many many times.

700-800 ms per jump (non cyclone/superman/speedhack)

~50 ms per attack packet/shift packet (they are the same packet so w/e)


Performing any action within say 50-100 ms of a different action (say... attacking then jumping right after or jumping then looting right after).

Simply code your delays in such a way as they should make some sense.


Ie: "Jump to item X" should not then have the "pick up item X" packet being sent like 5 ms later... obviously tq will notice the absurd speed there and most likely dc you. Just use some common sense and visualize how the bot SHOULD run, then test it extensively, figure out how it ACTUALLY runs and then revise your code until the two match up.

IE: trial and error, the main pillar of any real programming ahahah.
pro4never is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
[RELEASE(SOURCE CODE)]-- KabBOT2 v1 Full Source(vb6)
10/07/2011 - Dekaron Exploits, Hacks, Bots, Tools & Macros - 106 Replies
I've been meaning to post this for awhile but I pretty much forgot about it. I've been getting quite a few requests for it so I decided to finally get around to posting it. #1. So here you go, Just have or Download Visual Basic 6, you need to update it to VbRuntime 6 Service Pack 6. #2. Run the file name KabBOT.vbp. #3. Enjoy. 100% Virus Free VirusTotal.com report. VirusTotal - Free Online Virus, Malware and URL Scanner
[RELEASE] [OPEN SOURCE] CE 5.5 Pointer to AutoIt Source-Code
02/13/2011 - AutoIt - 6 Replies
Habe heute erst gemerkt, dass es hier eine AutoIt Sektion gibt xD also poste ich mal mein Programm mit rein. Funktionsweise: 1. in CE Rechtsklick auf den Pointer und auf "Copy" klicken 2. in meinem Programm auf "Code generieren" klicken 3. In euer Scite gehen und einfügen Hier ist der Source Code vom Programm:



All times are GMT +1. The time now is 07:42.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.