Download Tera Online Triggerbot

Hexui Undetected CSGO Cheats Sinkicheat PUBG Cheat

Heisa

Jr.Coder
Full Member
Nobleman
Jul 3, 2013
77
703
3
Hello, I'm trying to make a tera triggerbot, with this method, where the hack should mouseclick when the distance is less than 20.



Now, I have found the pointer of where it says 13m, I know how it should work, but I do not know how to do it in C++.
Somehow to read this value with ReadProcessMemory, then if its less than 20, to make a mouse click, or a hold.

P.S. When I remove the mouse from any target, the value is always 4294967295. Any help greatly appreciated.



EDIT: Ok, this kinda works, prints out the distance, but I can't seem to fix the CurrentDistance check, so I can insert a mouse click. Also, it prints out -1 instead of the value that Cheat Engine shows - 4294967295

C++:
#include <tchar.h>
#include "stdafx.h"
#include <Windows.h>
#include <iostream>
#pragma comment(lib, "user32.lib")

using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	cout << "Welcome to Tera Trigger Bot" << endl;

	HWND hWnd = FindWindow(0, "TERA");
	if (hWnd == 0){
		cout << "Error, could not find Tera Window" << endl;
}
	else {
		cout << "Found Tera Client, Running Trigger Bot" << endl;

	DWORD proc_id;
	GetWindowThreadProcessId(hWnd, &proc_id);

	HANDLE hProc = OpenProcess(PROCESS_ALL_ACCESS, FALSE, proc_id);
		if(!hProc) {
			cout << "Error, could open the process" << endl;
		}
		else {
			cout << "Process opened" << endl;

			DWORD Pointer = 0xF9717A9C;
			DWORD Pointed;
			WORD Offset = 0x0024;
			int CurrentDistance;

		while(1){
			ReadProcessMemory(hProc,(LPCVOID)(Pointer), &Pointed, 4, NULL);
			ReadProcessMemory(hProc,(LPCVOID)(Pointed+Offset), &CurrentDistance, 4, NULL);
			cout <<	CurrentDistance << " \rDistance: ";
			
		if (CurrentDistance > 1){
			
			if (CurrentDistance < 19)
			{
				  INPUT    Input={0};
  // left down 
  Input.type      = INPUT_MOUSE;
  Input.mi.dwFlags  = MOUSEEVENTF_LEFTDOWN;
  ::SendInput(1,&Input,sizeof(INPUT));
			
  // left up
  ::ZeroMemory(&Input,sizeof(INPUT));
  Input.type      = INPUT_MOUSE;
  Input.mi.dwFlags  = MOUSEEVENTF_LEFTUP;
  ::SendInput(1,&Input,sizeof(INPUT));

			}

		}
	 }
	cin.get();
	return 0;
	}

	}
	}
EDIT 2: Ok guys, I got it working, thanks to all of you, I updated the code in this post to the working one, and made a video with it.

https://www.youtube.com/watch?v=XJrf_DJseq4


Once again, Thanks to all of you!
 
Last edited:

squeenie

Hacker
Meme Tier VIP
Dank Tier Donator
Mar 6, 2013
677
5,478
37
First of all you need to put your if statement inside the while loop, that's why it never gets called
 

till0sch

Respected Hacker
Dank Tier VIP
Dank Tier Donator
Oct 14, 2012
1,104
12,593
51
Also, it prints out -1 instead of the value that Cheat Engine shows - 4294967295
If you right click the address and click "Show signed" in cheat engine, it should also show -1...

You should put the rest (also the distance checking) into the while loop. So if you've got the handle of the process, make while(1) define your variables, then call readprocessmemory, and before sleeping, make the <20 check.. The check I guess is never even running because of your endless loop. (as squeenie mentioned)
 
Attention! Before you post:

Read the How to Ask Questions Guide
99% of questions are answered in the Beginner's Guide, do it before asking a question.

No Hack Requests. Post in the correct section.  Search the forum first. Read the rules.

How to make a good post:

  • Fill out the form correctly
  • Tell us the game name & coding language
  • Post everything we need to know to help you
  • Ask specific questions, be descriptive
  • Post errors, line numbers & screenshots
  • Post code snippets using code tags
  • If it's a large project, zip it up and attach it

If you do not comply, your post may be deleted.  We want to help, please make a good post and we will do our best to help you.

Community Mods