[RELEASE] Basic Ditto bot for kalonline

10/24/2018 03:02 HighGamer.#1
I attached it to forum get the 2025 version the old ones from 2018 won't work.

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

New screenshot
[Only registered and activated users can see links. Click Here To Register...]

This works for both international kalonline and private servers too!, completely undetected and 100% ban proof cannot get banned with this tool

To run it you basically just put the DLL it into your kalonline folder.

It comes with a advertiser (chat spammer)

and a ditto bot on top

commands are

wait 500
this waits 500 milliseconds.

wait 5s
this waits 5000 milliseconds or 5 seconds.

wait 5m
this waits 300000 milliseconds or 5 minutes.

keypress tab
presses the tab key inside game only.

keypress commands are
a-z,0-9,spacebar,tab,left,right,up,down.

keypresswait commands are
a-z,0-9,spacebar,tab,left,right,up,down.
but with wait time at end, example:
keypresswait left, 2000
this would hold left key for 2 seconds before letting it go.

keypresswait left, 2s
this would hold left key for 2 seconds before letting it go.

keypresswait left, 2m
this would hold left key for 2 minutes before letting it go.

leftclick x,y
leftclick 300,300
clicks at coordinate x:300 y:300 in game.

rightclick x,y

leftdblclick x,y
leftdoubleclick x,y

clicks 2 times instantly with left click on coordinates

rightdblclick x,y
rightdoubleclick x,y

clicks 2 times instantly with right click on cooordinates

mousemove x,y

all these keys work flawlessly

if you remove the wait times and run this script

Code:
keypress tab
keypress spacebar
keypress 1
keypress 2
keypresswait left, 2000
you got yourself a basic water dragon killer :D

Here is the source code it add this to the d3d9 undetected hook i released.
Code:
static HWND KalHandle = NULL;

static void SendMapKey(int key)
{
	PostMessageW(KalHandle, WM_KEYDOWN, (unsigned int)key, MapVirtualKeyW((unsigned int)key, 0u) << 16);
	Sleep(5);
	PostMessageW(KalHandle, WM_KEYUP, (unsigned int)key, MapVirtualKeyW((unsigned int)key, 0u) << 16);
}

static void SendMapKeyWait(int key, int wait)
{
	PostMessageW(KalHandle, WM_KEYDOWN, (unsigned int)key, MapVirtualKeyW((unsigned int)key, 0u) << 16);
	Sleep(wait);
	PostMessageW(KalHandle, WM_KEYUP, (unsigned int)key, MapVirtualKeyW((unsigned int)key, 0u) << 16);
}

static void SendLetter(int key)
{
	PostMessageW(KalHandle, WM_CHAR, (unsigned int)key, 0);
}


static void SendMapKeyNoFlags(int key)
{
	PostMessageW(KalHandle, WM_KEYDOWN, (unsigned int)key, 0);
	PostMessageW(KalHandle, WM_KEYUP, (unsigned int)key, 0);
}

static void SendReturn()
{
	PostMessageW(KalHandle, WM_KEYDOWN, (unsigned int)VK_RETURN, 0x001C0001);
	PostMessageW(KalHandle, WM_CHAR, (unsigned int)VK_RETURN, 0);
	PostMessageW(KalHandle, WM_KEYUP, (unsigned int)VK_RETURN, 0xC01C0001);
}

static void MouseMove(unsigned short x, unsigned short y)
{
	SendMessageW(KalHandle, WM_MOUSEMOVE, 0, (((WORD)y) << 0x10) | ((WORD)x));
	Sleep(5);
}

static void SendLeftClick(int x, int y)
{
	int num = (int)((WORD)y) << 16 | (int)((WORD)x);
	PostMessageW(KalHandle, WM_LBUTTONDOWN, 1u, num);
	Sleep(5);
	PostMessageW(KalHandle, WM_LBUTTONUP, 0u, num);
}

static void SendRightClick(int x, int y)
{
	int num = (int)((WORD)y) << 16 | (int)((WORD)x);
	PostMessageW(KalHandle, WM_RBUTTONDOWN, 1u, num);
	Sleep(5);
	PostMessageW(KalHandle, WM_RBUTTONUP, 0u, num);
}

static void SendLeftDoubleClick(int x, int y)
{
	int num = (int)((WORD)y) << 16 | (int)((WORD)x);
	// Send double-click message
	PostMessageW(KalHandle, WM_LBUTTONDOWN, MK_LBUTTON, num);
	PostMessageW(KalHandle, WM_LBUTTONUP, 0, num);
	PostMessageW(KalHandle, WM_LBUTTONDBLCLK, MK_LBUTTON, num);
	PostMessageW(KalHandle, WM_LBUTTONUP, 0, num);
}

static void SendRightDoubleClick(int x, int y)
{
	int num = (int)((WORD)y) << 16 | (int)((WORD)x);
	// Send double-click message
	PostMessageW(KalHandle, WM_RBUTTONDOWN, MK_LBUTTON, num);
	PostMessageW(KalHandle, WM_RBUTTONUP, 0, num);
	PostMessageW(KalHandle, WM_RBUTTONDBLCLK, MK_LBUTTON, num);
	PostMessageW(KalHandle, WM_RBUTTONUP, 0, num);
}

int KeyConverter(char *key) {

	char c;
	int i = 0;
	while (key[i])
	{
		key[i] = tolower(key[i]);
		i++;
	}

	if (strcmp(key, "left") == 0)
		return VK_LEFT;
	if (strcmp(key, "right") == 0)
		return VK_RIGHT;
	if (strcmp(key, "up") == 0)
		return VK_UP;
	if (strcmp(key, "down") == 0)
		return VK_DOWN;

	if (strcmp(key, "spacebar") == 0)
		return VK_SPACE;
	if (strcmp(key, "tab") == 0)
		return VK_TAB;
	if (strcmp(key, "0") == 0)
		return VK_0;
	if (strcmp(key, "1") == 0)
		return VK_1;
	if (strcmp(key, "2") == 0)
		return VK_2;
	if (strcmp(key, "3") == 0)
		return VK_3;
	if (strcmp(key, "4") == 0)
		return VK_4;
	if (strcmp(key, "5") == 0)
		return VK_5;
	if (strcmp(key, "6") == 0)
		return VK_6;
	if (strcmp(key, "7") == 0)
		return VK_7;
	if (strcmp(key, "8") == 0)
		return VK_8;
	if (strcmp(key, "9") == 0)
		return VK_9;
	if (strcmp(key, "a") == 0)
		return VK_A;
	if (strcmp(key, "b") == 0)
		return VK_B;
	if (strcmp(key, "c") == 0)
		return VK_C;
	if (strcmp(key, "d") == 0)
		return VK_D;
	if (strcmp(key, "e") == 0)
		return VK_E;
	if (strcmp(key, "f") == 0)
		return VK_F;
	if (strcmp(key, "g") == 0)
		return VK_G;
	if (strcmp(key, "h") == 0)
		return VK_H;
	if (strcmp(key, "i") == 0)
		return VK_I;
	if (strcmp(key, "j") == 0)
		return VK_J;
	if (strcmp(key, "k") == 0)
		return VK_K;
	if (strcmp(key, "l") == 0)
		return VK_L;
	if (strcmp(key, "m") == 0)
		return VK_M;
	if (strcmp(key, "n") == 0)
		return VK_N;
	if (strcmp(key, "o") == 0)
		return VK_O;
	if (strcmp(key, "p") == 0)
		return VK_P;
	if (strcmp(key, "q") == 0)
		return VK_Q;
	if (strcmp(key, "r") == 0)
		return VK_R;
	if (strcmp(key, "s") == 0)
		return VK_S;
	if (strcmp(key, "t") == 0)
		return VK_T;
	if (strcmp(key, "u") == 0)
		return VK_U;
	if (strcmp(key, "v") == 0)
		return VK_V;
	if (strcmp(key, "w") == 0)
		return VK_W;
	if (strcmp(key, "x") == 0)
		return VK_X;
	if (strcmp(key, "y") == 0)
		return VK_Y;
	if (strcmp(key, "z") == 0)
		return VK_Z;

}
HWND FindProcessWindow()
{
	char szBuffer[200];
	TCHAR szBuffer2[200];
	DWORD dwTemp;

	for (HWND hWnd = GetTopWindow(NULL); hWnd != NULL; hWnd = GetNextWindow(hWnd, GW_HWNDNEXT))
	{
		GetWindowThreadProcessId(hWnd, &dwTemp);

		if (dwTemp != GetCurrentProcessId()) continue;
		if (!GetClassName(hWnd, szBuffer, sizeof(szBuffer) / sizeof(char))) continue;
		if (strstr(szBuffer, "KalOnline") || strstr(szBuffer, "D3D Window"))
			return hWnd;
		if (!GetClassName(hWnd, szBuffer2, _countof(szBuffer2))) continue;
		if (strstr(szBuffer2, "KalOnline") || strstr(szBuffer2, "D3D Window"))
			return hWnd;

	}
	return NULL;
}
10/24/2018 19:47 HighGamer.#2
what did you kill? your video is already removed from youtube it must be some shit talking thats all, idk if you are stupid or what but you didn't do shit.


Update guys!!!

Fixed ditto now commands like left,right,up,down work flawlessly!
10/24/2018 23:03 R!ley#3
Not working on 2017 clients keeps crashing engine.exe
10/25/2018 01:16 HoNoRKal#4
If you guys are pro , go and find antrix kal config password lol.
10/25/2018 18:39 PreFixLT#5
what is the point for this? [Only registered and activated users can see links. Click Here To Register...] open source here :)
without any ads and possible char steals
10/26/2018 00:31 ATBM#6
Quote:
Originally Posted by HoNoRKal View Post
If you guys are pro , go and find antrix kal config password lol.
Go learn and make your own work instead steal other people work. the time you waste searching someone get Antrix's password, you can spend it on creating your own work, it much better than you beg someone get you Antrix's password
10/26/2018 07:34 HighGamer.#7
Quote:
Originally Posted by MasterOfBation View Post
your cute ;)

cool story bro but educate yourself before you speak kid ;)

I killed your shit:

[Only registered and activated users can see links. Click Here To Register...]
ya i got owned but you know what its alright ill recover ty
10/28/2018 00:02 HighGamer.#8
Updated this ditto bot added mouse clicking left and right clicks and added keypress with wait on releasing the key so it holds a key longer.

keypresswait commands are
a-z,0-9,spacebar,tab,left,right,up,down.
but with wait time at end, example:
keypresswait left, 2000
this would hold left key for 2 seconds before letting it go.

leftclick x,y
leftclick 300,300
clicks at coordinate x:300 y:300 in game.

rightclick x,y

mousemove x,y
10/29/2018 13:48 ArreQ#9
You know why your ditto isn't as usefull as the original one?
It's possible to run only one per kal client, so I can't do multiple tasks with it.
With original I can run 1, 2, 3 or more dittos for each kal client and do much more than with yours atm.
Eg.:
ditto1 - healing
ditto2 - buffing
ditto3 - clicking on pt char to follow it and many more ;)

And from each ditto I can start and stop the other one so...
I start the buff ditto, after it finish buffing it start healing ditto and waiting 10 or 15 mins, then it stops healing ditto, rebuff and so on ;)

Now it's impossible.

or... if you add the loop option for your version then runinng multiple dittos per each client won't be nessesary.
Like...
buff -> repeat healing for x seconds/minutes or x times

Hope you know what do I mean ;)
10/29/2018 22:37 HighGamer.#10
Quote:
Originally Posted by ArreQ View Post
You know why your ditto isn't as usefull as the original one?
It's possible to run only one per kal client, so I can't do multiple tasks with it.
With original I can run 1, 2, 3 or more dittos for each kal client and do much more than with yours atm.
Eg.:
ditto1 - healing
ditto2 - buffing
ditto3 - clicking on pt char to follow it and many more ;)

And from each ditto I can start and stop the other one so...
I start the buff ditto, after it finish buffing it start healing ditto and waiting 10 or 15 mins, then it stops healing ditto, rebuff and so on ;)

Now it's impossible.

or... if you add the loop option for your version then runinng multiple dittos per each client won't be nessesary.
Like...
buff -> repeat healing for x seconds/minutes or x times

Hope you know what do I mean ;)
I'll release one with 4 dittos builtin one hack.
Done made it, download link below, i also attached it to forum on top
[Only registered and activated users can see links. Click Here To Register...]
11/30/2018 15:40 hero780#11
dont work anymore..
12/01/2018 03:43 HighGamer.#12
Quote:
Originally Posted by hero780 View Post
dont work anymore..
tested "kal 4 dittos in 1.zip" still works .. you are lying
12/03/2018 16:40 hero780#13
You tested on int or pserver?
12/04/2018 20:47 HighGamer.#14
only tested on kalonline int
01/10/2019 21:58 zeranda#15
thx a lot bro .. i try use it ... but i hope if make video for use it and edite info .. and idk if can make some bot like CMD .. thx for everything and i w8 ur answer