Tutorials
==In Construction==
Click here for the all tutorials (unsorted)
==Requests==
If you have any tutorial requests, post in the comment section below.
==In Construction==
Click here for the all tutorials (unsorted)
==Requests==
If you have any tutorial requests, post in the comment section below.
Page optimized by WP Minify WordPress Plugin
November 20th, 2010 - 22:44
if you could make a gravity gun for halo custom edition MULTIPLAYER which works 1.09?
November 21st, 2010 - 07:59
Recently I thought about making a very stable Portal Gun for Multiplayer 1.09. Implementing the Gravity Gun is rather tricky.
November 30th, 2010 - 04:46
Hey mate
did you decide to start on the tutorial we were talking about before? Would be an awesome idea and I’m sure a lot more people besides me would find it useful.
November 30th, 2010 - 05:25
Yes I already finished the application where I am going to demonstrate everything on. I am just thinking now how to structurize everything.
November 30th, 2010 - 05:34
Awesome! I’m really looking forward to this
I appreciate you taking the request, I’ve been trying to mess around with Lineage 2 recently but having trouble finding a lot of things so hopefully this will help
thanks again, Komo.
December 15th, 2010 - 18:42
Tutorial has been posted
December 30th, 2010 - 08:32
DirectX Tuts!! : )
December 30th, 2010 - 20:58
A tutorial on asm basics, for injecting code, the best places to write jmp’s, creating variables in asm. If you could please. Your tutorials have always been very helpful.
January 11th, 2011 - 22:20
Tutorial posted. Going to do another one for variables.
December 30th, 2010 - 23:05
ASM Basics can be learned everywhere else…I can make certainly a tutorial on the last three things though
Thanks!
January 17th, 2011 - 07:44
How would you find the rate of fire of a weapon in halo? Also how do you find dynamic address with findpattern, does it only worked with static ones, meaning you would have to find a static base pointer?
January 17th, 2011 - 15:01
FindPattern only works with static ones for example to find the static base pointer.
Rate of Fire is a fixed value stored for every weapon. You can open up the Mapping Tools and look it up and search it in memory. Alternatively you can go into the fire weapon function and NOP some calls which delay the weapon fire which results in rapid fire.
March 13th, 2011 - 00:21
I’m trying to trace the dev command “cinematic_screen_effect_set_video 0 1″ to a function in asm. I can’t find the name in halo ce, only until after I use it. I think im looking for something like (i mot sure if this is close):
push eax
puch ecx
call function
then I just need to figure out how to call it with those parameters, because createremotethread only supports 1 parameter
March 13th, 2011 - 00:56
I found it easily in IDA so it is hardcoded. HCE 1.09 0x00601E98.
Set a HWBP on it and for me it broke
005DC930 |> /0FB606 /MOVZX EAX,BYTE PTR DS:[ESI]
Happy Reversing
March 13th, 2011 - 02:49
IDA? could you make a tutorial showing how you did this?, and thanks for finding it.
March 13th, 2011 - 21:31
You can do this in Olly as well (I did everything in Olly except the string search). Press M on the top of Olly, choose Halo .rdata data section and do a binary search for it.
March 15th, 2011 - 07:25
Could you help make a time freeze like the one from halo Dev trainer by sheep? I want to improve upon it.
March 15th, 2011 - 12:20
I actually never really researched how he did it. You can use “Process Monitor” to see what his app does and research. There is also a dev command called “game_speed #” where # can be a number starting with 0 which freezes everything, 1 runs the game normal, 2+ runs it at a higher speed.
March 16th, 2011 - 06:20
I’ve only gotten game_speed to work on the main menu, it doesn’t work for me in lan or internet games.
March 16th, 2011 - 12:55
Ah yes that’s true. It only works in Singleplayer (Campaign).
March 18th, 2011 - 07:04
I’ve found the static pointer to the dynamic player structure, however the second offset is tricky:
addr of dynamic player structure
addr of ptr offset [edx*4+08]
addr of ptr haloce.exe+3FB3B0 offset 0×34
I did a bit of researching and found that edx is between 0 and 0xFF
but I don’t know where it comes from, do you know where?
March 18th, 2011 - 10:43
Hmm not sure if you got everything right. Usually edx * 4 is a pointer array, where edx is the index of the pointer inside the array.
March 22nd, 2011 - 00:39
I wanna make a forcepull gun or gravity gun like your video. the intial and final speed i got down so it can pull. i know how to push away too but on a different gun. it involves triggers though?A tutorial would be awesome .. btw nice website..
March 22nd, 2011 - 12:17
It’s an external application and has nothing to do with ‘real’ modding
March 23rd, 2011 - 03:42
isee..well kudos to you for making a epic app. Are you ever gonna release it?
March 27th, 2011 - 16:09
Could you create more advanced tutorial about hooking?
Or tutorial how to call functions using blackmagic and C#.
March 27th, 2011 - 18:53
I never used Blackmagic and I dislike to use C# for purposes, which it is not intended to. It is not easy to create more advanced hooking tutorials, especially in a video tutorial. It would be nice if you could give me specific example because hooking strongly depends on the target.
March 28th, 2011 - 19:01
Maybe a tutorial about finding/reversing the function, how to create function that does more than the normal one like logs some arguments/registers into a txtfile, more information like about the calling conventions and maybe even how to use the windows detours.
I’d understand this kinda varies from side to side but theres few suggestions obviously it could be multiple tutorials as detours are kinda world of them own, but the calling conventions and finding/reversing the function would be more of a top priority.
March 28th, 2011 - 21:34
I can surely make one about calling conventions. Thanks for the tip!
April 9th, 2011 - 20:38
Hi,
I’ve been trying out to stop an inside timer in a botting program for a game. Here is the problem: There are two free hours a day: one from 7-8 AM and a second hour from 5-6 PM, the rest having to pay to use. I firstly tried it the easy way: with TimeStopper. Luckily, it worked, but the program, when opened, starts the clock and is then stopped. However, this does not match with what I want as when I open the program at 12 AM, the clock will be actualized at 12 AM and the program will therefore not work. The only way I can do now is: open the program in a free hour and let it do the job, but then, when I close the program, I have to wait again for the next free hour.
I tried to reverse it with OllyDBG, domain in which I’m not very good at all. I tried to NOP every adress with the text string (found with a text string search) “timer” in it, I figured out a function like the following: http://msdn.microsoft.com/en-us/library/ms724253(v=vs.85).aspx, but nothing happens, the program keeps going on… I then suspended the thread, and the hole program stopped, which seems normal, but when I reactivate it, the time jumps to the real time, meaning that it does not continue as nothing happens. I therefore deduced that there is like a background routine, but I’m not sure how to stop it…
I also looked into the registry, but I wasn’t really sure about what I was doing, so I did not touch anything.
Could you help me?
April 10th, 2011 - 00:37
Timers work by usually calling GetTickCount(). You might to try that…even though you will get a lot of results.
April 10th, 2011 - 12:28
How do I search for that in Olly DBG? Sorry for being so demanding, but I’m really new to debugging…
April 10th, 2011 - 12:33
If you have the command line plugin for Olly (a white textbox appears in the lower corner) you can type “bp GetTickCount”
April 10th, 2011 - 18:20
Is it ok like that?
http://img593.imageshack.us/i/capturesdfg.png/
April 10th, 2011 - 18:34
Yes or you can go RightClick->Search For->All Intermediate Calls and then just type GetTickCount and it should appear (kernel32.GetTickCount). Right click and set bp.
April 11th, 2011 - 08:35
I’m trying to kill a player in halo, but writing 0 to the players health address doesn’t work, how could I accomplish this?
April 11th, 2011 - 12:55
Are you inside the process with a DLL or externally? After writing 0 to the address, do you need one shot to kill?
April 11th, 2011 - 19:20
Externally, and yes one shot
April 11th, 2011 - 20:07
Hi, I do not have “All Intermediate Calls”
April 11th, 2011 - 21:00
Click here
April 11th, 2011 - 21:01
Then you need to write a code cave. Basically what happens is everytime health is decreased there is a
“Health decreased. Is health below 0? Then Kill” function.
April 11th, 2011 - 21:50
Hi again,
Here is what I get:
http://img853.imageshack.us/i/captureazer.png/ Is that normal?
Then , if after starting Olly DBG, I directly search for “bp GetTickCount”, here is what I get:
http://img717.imageshack.us/i/capturegfjhg.png/
I get someting like “KERNELBA GetTickCount”. If I nope it, when running the program, it screws up, windows detects a problem, and that’s it…
April 11th, 2011 - 22:13
You are really getting ahead of yourself. Learn the basics first. It makes no sense to NOP it.
April 12th, 2011 - 22:37
Hi,
I do get beyond myself, but I really need you to help me, I will be willing to donate you some decent amount of money (because alot of money is involved!).
When I want to set a pb, I’m not sure what option I should choose. I though of calling a function giving a specific time (17H in this case), but I don’t know if it is a good, “codable” idea. Could you please help me? We’re just a few steps from the goal!
Thanks in advance, and remember, I’m willing to pay you! I’m a board owner so I respect my promises!
April 12th, 2011 - 23:55
No worries
I don’t want any money in exchange for help.
It seems I misread your post the first time. You have an application which is not free and basically you are allowed to use it between those 2 hours a day?
April 13th, 2011 - 16:35
Hi,
Yes, this is my problem. I want to block the internal clock (which 99.9% of chance it sets itself on windows) on a free hour so that it can be used indefinitely! So how can it be done?
(I will donate you money if it works, wheter you want it or not! I also used one of your tutorials on sending background keys, thanks for that tutorial aswell!)
April 13th, 2011 - 18:34
Send me an email with information about the target (name etc.) and I will help you from there.
April 12th, 2011 - 09:13
I’m trying to use unit_kill function to kill the player, but when I place a HWBP on it I get the same address you got when you looked up cinematic_screen_effect_set_video. Is that address for console, to parse the command? How would I find the unit_kill function?
and when I find it what type of paramter is unit? (unit_kill ) I tried player ID and Object ID but doesnt work, only (unit (list_get (players) 0))
April 12th, 2011 - 13:37
Good question, I think you have to define the player as an encounter etc in Sapien first so I thinm you can’t use it.
April 15th, 2011 - 00:43
Hey i’ve found alot of your tutorials very useful, one thing i’ve never seen covered by any other tutorials is how you go about finding the actual addresses for say “melee swing 1″ or something, like an attack loop, i’ve been trying to create a attack speed hack for a game i just found and can’t edit weapon speeds so i was using ollydbg to try and find the actual code where the attack takes place so i could in a way loop it at a faster speed but i’ve no idea how i would go about even finding this, t hanks for all your great work so far, hopefully you can give me some advice.
April 16th, 2011 - 14:36
You are on the right track. The problem with this is though, that this is heavily game dependent and a tutorial would be very rough.
You need to go into the melee function (this is also game dependent on how to get there), towards the end there should be a delay call…when you remove it you can melee as fast as you want.
April 18th, 2011 - 03:50
the game i’m trying with is argo by alaplaya if that helps is anyway, but i haven’t the slighest idea how i would even go about finding the melee function haha
May 6th, 2011 - 06:57
Did you release your gravity gun for halo? I couldn’t find a download link anywhere here.
May 6th, 2011 - 13:09
I cannot remember….I think I posted the link somewhere for some people but it was a very buggy version.
May 7th, 2011 - 03:32
Do you have a stable version? If not, i’d be interested in helping make a more stable version.
June 13th, 2011 - 08:01
Is it possible to debug a dll made for halo, once you attach it? Every time I attach the dll i made to halo, the symbols don’t load, and it doesn’t hit any breakpoints.
June 13th, 2011 - 08:12
nvm, I guess I thought visual studio would inject my dll once it attached, but it didn’t, so after using a dll injector to inject it, i can now debug it.
June 13th, 2011 - 12:50
If you use the debug version of the DLL you are going to have it much easier. After you release your DLL you have to change the output to “Release” otherwise it might crash for some other people. If you want to have the program break at a certain line you can add _asm 0xCC to your code where you want Olly to break (make sure you don’t ignore 0xCC in the olly options).
July 3rd, 2011 - 20:14
Have you ever thought about making an app/dll that would inject the rest of the dev functions into halo?
July 3rd, 2011 - 21:04
Halo PC?
July 5th, 2011 - 05:18
Yes
July 5th, 2011 - 20:41
Nope.
July 19th, 2011 - 21:36
hey, the past few months I’ve been learning c# and programing a few trainers for halo ce and halo’s ded server. Now that I look back on your trainer tut I realize all of the things that you put into your dll. I’d just like to say thanks for all the tuts.
July 20th, 2011 - 16:59
Thanks a lot for your comment! More stuff coming soon
July 22nd, 2011 - 10:33
hey do you know any sites or can you make a or tutorial on how asm rep movs dword works and its purpose?
I’m dissecting haloce code:
004FA85E F3:A5 REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS:[ESI];->ECX=00000000 ESI=400DE36C EDI=400DE4CC
004FA860 8BCB MOV ECX,EBX;->ECX=00000160
004FA862 83E1 03 AND ECX,3;->ECX=00000000
004FA865 F3:A4 REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[ESI]
it seems to change the ecx register, but why so elaborate?
July 22nd, 2011 - 16:14
Efficiency. Most of the time if it takes a lot of normal instructions to do a single task, and if it is used very often then processor companies add a new instruction that does exactly that.
Look at the 3DNOW! instruction set and you know what I mean.
July 24th, 2011 - 08:49
My friends antivirus doesn’t like it when i use CreateThread inside of DllMain. I’ve tried function ptrs, and using asm to call a function that will jmp to it, but it still doesn’t like it. Do you have any ideas on how i can do this?
July 24th, 2011 - 11:13
He can set your app on the whitelist?
July 24th, 2011 - 23:14
Hey, a good tut would be how to get past dynamic addresses. what other methods are there other than code injection.
July 25th, 2011 - 10:02
In my opinion there are no “dynamic addresses”. They all have a system behind them. If you start to learn ASM and the structure of the program/game you will understand.
You don’t need to inject code either. Many times the objects in a game are stored in a table. That table contains an array of pointers which point to the objects in the game. If you find a pointer to the start of the table you can iterate through all the objects.
I made a tutorial about memory structures so you might want to check that one out.
July 25th, 2011 - 19:05
well, my problem is getting the dynamic base in mp for halo. i can’t find a static pointer that writes to it. but I can find one in sp. I will look at your tut again though. Thanks
July 25th, 2011 - 23:57
Halo in MP? Well depends on what you want and it is not that easy.
July 26th, 2011 - 20:37
After watching your tut on memory structures a few times I found a dynamic pointer that I can aob scan for in ce and using code injection I can store the address of dynamic base to a cave. thanks for the tuts
July 25th, 2011 - 10:53
Yo Pat, thanks for all the stuff you made man, they really helped, and by the way dude, i fell in love with the autoshot =P Seya later man
August 20th, 2011 - 20:10
I having a problem with the visual studio 2008 C++ compiler, when trying to call my class’s constructor.
Halo_Process is a global variable.
Halo_Process = RWMemory(main_module_name);
When I follow it in the debugger, it goes through the constructor correctly then saves to my global variable, but right after that, it calls the deconstructor and the object is destroyed. Is there a setting or something I’m doing wrong here? Its not suppose to call the deconstrutor until it goes out of scope right?
August 20th, 2011 - 21:58
Could you post a code snippet on pastebin.com?
August 20th, 2011 - 22:53
here ya go: http://pastebin.com/mXRB8gcm
August 20th, 2011 - 23:00
Have you tried “= new RWMemory(…)”?
August 20th, 2011 - 23:05
That’s what it was originally, and it worked, but changed it, because I didn’t want to use new, because of the over head, and I have this in a .NET timer thread set to 120 milliseconds. So i wanted to use a global variable so i wouldn’t have to allocate and deallocate so much.
August 21st, 2011 - 02:50
I think’s because I’m using unmanaged within a managed environment. I’m going to try re programing this.
August 21st, 2011 - 16:07
I think you are just not programming it right
At some point you have to allocate the class. Why don’t you do it globally?
August 23rd, 2011 - 18:53
It is a global var, but halo may not be running when the app starts running. Though even if it was, it would need to figure if it was halo pc or ce, then initialize. I don’t like to use new, but I was thinking I could, instead of allocating and deallocating every 120 milliseconds, I could allocate it once it finds halo pc or ce, then delete when the game stops running or the app stops running. I should have done this in the first place. I’m going to try and learn win32 so to remove the .net dependencies.
September 2nd, 2011 - 03:35
Heres a rookie win32 question: How do i display an combo box item Without highlighting it?
Both the CB_SETCURSEL and WM_SETTEXT messages highlight it after displaying it.
September 2nd, 2011 - 13:28
Just highlight something else? I must admit I am not an expert myself though and I cannot remember how I solved this. :S
September 3rd, 2011 - 05:30
I was able to get most of the functionality of my win32 version of my app working, though it seems like changing the control’s appearance is nightmare. So i have even more questions:
1: How do i get a menu bar control similar to the .NET menu strip? I noticed its not a normal menu attached to the main window, but a separate window. I want to have a transparent background.
2: How can i get Transparent checkboxes? Using SetBkMode((HDC)wParam, TRANSPARENT); when the app is themed doesn’t work.
3: Using SetBkMode((HDC)wParam, TRANSPARENT); on static controls (aka labels) works, however when i change the text, it draws the new text over the old, how do i “refresh” it?
4: How do i get a Flat button appearance when the app is themed? Is there a way to do this without manually drawing the window?
September 4th, 2011 - 23:57
Sorry I am stumped here since I have barely touched Win32 GUI Programming. It might be that you are better off using a library like “Qt”.
September 9th, 2011 - 06:55
I figured out how to update the static control so it redraws itself:
void SetControlText(HWND hMainWin, HWND hControl, LPCWSTR lpwString)
{
wchar_t str_buffer[16];
GetWindowText(hControl, (LPWSTR)str_buffer, 16);
//only change if its different
if (!str_cmp((wchar_t*)str_buffer, (wchar_t*)lpwString))
{
SetWindowText(hControl, lpwString);
//redraw control
RECT rectButtonStatus;
GetWindowRect(hControl, &rectButtonStatus);
MapWindowRect(HWND_DESKTOP, hMainWin, &rectButtonStatus);
InvalidateRect(hMainWin, &rectButtonStatus, FALSE);
}
}
and to change static control color by handling the WM_CTLCOLORSTATIC message:
HBRUSH OnCtlColorStatic(HWND hwnd, HDC hdc, HWND hwndChild, int type)
{
COLORREF textcolor;
if (hwndChild == hControls[HHALO_TYPE])
{
textcolor = RGB(255,255,255);
}
else if (hwndChild == hControls[HHALO_STATUS])
{
textcolor = running_gt ? RGB(0,255,0) : RGB(255,0,0);
}
else if (hwndChild == hControls[HMAP_LBL])
{
textcolor = RGB(255,255,255);
}
.
.
.
SetTextColor(hdc, textcolor);
//transparent background for all static controls
SetBkMode(hdc, TRANSPARENT);
return GetStockBrush(NULL_BRUSH);
}
September 24th, 2011 - 11:52
For transparent themed checkboxes:
I first dynamically link to the UxTheme.dll for compatibility for windows before XP:
hUxTheme = GetModuleHandle(L”uxtheme.dll”);
if (hUxTheme)
{
pIsAppThemed = (BOOL (__stdcall *)())GetProcAddress(hUxTheme, “IsAppThemed”);
pDrawThemeParentBackground = (HRESULT (__stdcall *)(HWND hwnd, HDC hdc, RECT *prc))GetProcAddress(hUxTheme, “DrawThemeParentBackground”);
}
Then in the WM_CTLCOLORSTATIC handler:
HBRUSH OnCtlColorStatic(HWND hwnd, HDC hdc, HWND hwndChild, int type)
{
HBRUSH stock_brush_type = WHITE_BRUSH;
if (pIsAppThemed) theme_active = pIsAppThemed();
switch (GetDlgCtrlID(hwndChild))
{
case IDC_CHECKBOX:
if (theme_active)
{
if (pDrawThemeParentBackground) pDrawThemeParentBackground(hwndChild, hdc, NULL);
}
else
{
SetTextColor(hdc, WHITE_BRUSH);
SetBkMode(hdc, TRANSPARENT);
stock_brush_type = NULL_BRUSH;
}
break;
}
return GetStockBrush(stock_brush_type);
}
To change a themed checkbox’s textcolor, use a WM_NOTIFY handler like this:
int OnNotify(HWND hwnd, int idCtrl, LPNMHDR pnmh)
{
int ret_val = 0;
if (pnmh->code == NM_CUSTOMDRAW)
{
LPNMCUSTOMDRAW lpcd = (LPNMCUSTOMDRAW)pnmh;
if (lpcd->dwDrawStage == CDDS_PREPAINT)
{
switch (idCtrl)
{
case IDC_CHECKBOX:
{
int str_len = GetWindowTextW(lpcd->hdr.hwndFrom, szBuffer, SZ_BUFFER_SIZE);
HDC hdc = lpcd->hdc;//optimizer does this
SetBkMode(hdc, TRANSPARENT);
SetTextColor(hdc, GetSysColor(COLOR_HIGHLIGHT));
TextOut(hdc, 18, 2, szBuffer, str_len);
ret_val = CDRF_SKIPDEFAULT;
break;
}
}
}
}
return ret_val;
}
September 25th, 2011 - 07:08
the control also needs the following window’s stlyes: … WS_CLIPSIBLINGS |
WS_CLIPCHILDREN | …
September 24th, 2011 - 12:10
The closest thing i could find to to a transparent menu bar, that doesn’t get included in the wondow’s size, it to use a button with TrackPopupMenu. Like this:
HMENU hMenu = NULL;
int OnCreate(HWND hwnd, LPCREATESTRUCT WinData)
{
hMenu = CreatePopupMenu();
AppendMenu(hMenu , MF_STRING, IDM_ITEM1 ,L”item 1″);
AppendMenu(hMenu , MF_STRING, IDM_ITEM2 ,L”item 2″);
AppendMenu(hMenu , MF_SEPARATOR ,0 , L”");
AppendMenu(hMenu , MF_STRING, IDM_ABOUT, L”About”);
…
return TRUE;
}
void OnCommand(HWND hwnd, int id, HWND hwndCtl, UINT codeNotify)
{
switch (codeNotify)
{
case BN_CLICKED:
switch(id)
{
case IDC_MENU_BUTTON:
{
RECT rControl;
GetWindowRect(hwndCtl, &rControl);
TrackPopupMenu(hMenu, TPM_LEFTBUTTON, rControl.left, rControl.top + 19, 0, hwnd, NULL);
break;
}
case IDM_ITEM1:
break;
case IDM_ITEM2:
break;
case IDM_ABOUT:
break;
…
}
}
}
September 5th, 2011 - 03:09
The WM_SETFONT message was sending a EM_SETSEL message, so i sent the CB_SETCURSEL after it changed the font, and it worked.
September 5th, 2011 - 10:28
Or you could just cancel out the message.
September 5th, 2011 - 22:33
Yo Pat, I made a portal gun like yours but its buggy could you help me out?
his is how I have it setup in the timer
float xport = Mem.ReadFloat(0x402BF9C4);
float yport = Mem.ReadFloat(0x402BF9C8);
float zport = Mem.ReadFloat(0x402BF9CC);
int teleinx = 0x40473ADC;
int teleiny = 0x40473AE0;
int teleinz = 0x40473AE4;
int teleoutx = 0x40475C64;
int teleouty = 0x40475C68;
int teleoutz = 0x40475C6C;
if (checkBox1.Checked)
{
Mem.WriteFloat(teleinx, xport);
Mem.WriteFloat(teleiny, yport);
Mem.WriteFloat(teleinz, zport);
}
else
{
Mem.WriteFloat(teleoutx, xport);
Mem.WriteFloat(teleouty, yport);
Mem.WriteFloat(teleoutz, zport);
}
September 5th, 2011 - 23:47
Hey, tell me what you think of my portal gun http://www.youtube.com/watch?v=JoEwiT2Goto also my aimbot is practically finished.
September 6th, 2011 - 01:51
Nice work there =)
September 6th, 2011 - 04:30
thanks, I got alot of help from your tuts. Pingo sent me an Aob scanner to use in my trainers so in a while I’ll probably release alot of things. I learned alot from reading sources and from pingo too. anyway I’ll have everything I’ve done so far with vids and sources up in a few weeks. your tuts really help.
September 6th, 2011 - 01:03
oh and sorry bought the double*now triple post, my internet was being gay and when it refreshed it posted the first before I could finish typing then I lost my internet for a while. I found the problem was a bad last shot address(x,y,zport).
September 10th, 2011 - 07:34
Out of curiosity, are there any Windows Programmer books that your would recommend?
September 10th, 2011 - 12:09
I would always buy one language specific book (C#, C++). Just yesterday I bought a book on Framework Design which is quite handy if you want to write efficient code with common naming conventions etc.
September 25th, 2011 - 23:01
Here are my basic hacks including the Portal gun I just thought I’d post in case any1 wants to use them. It uses a sig scanner so It should work for all versions. I put two portal guns In there. one that move the BG teleporters around and another that works for all maps even custom maps Read the README http://www.4shared.com/file/2KL3LDGn/MY_HALO_HACKS.html
Any comments would be appreciated.
October 3rd, 2011 - 18:21
The Mess Around Trainer crashes the game, but the other trainers work.
October 4th, 2011 - 02:36
It must be how it jumps to and from caves, I have fixed that I’ll re-up soon. right now I am working on a few projects and busy with school.
October 5th, 2011 - 03:00
I finished converting my app from .NET to win32.
.NET:
8 to 10 threads
about 6,700K memory
win32:
2 to 3 threads
about 2,000K memory
October 5th, 2011 - 07:02
Heh nice work
October 5th, 2011 - 04:01
Whats Ur email?, I was wondering if you could test an app that I’m making and give me suggestions. I Tested on halo ce 1.0 and halo pc 1.4 so it should work for all versions.
October 5th, 2011 - 07:02
I don’t even have Halo installed :S
October 6th, 2011 - 20:25
Hello !
I don’t know how o contact you so I think this way is the only possible way. I want you to please you and the same time to give you to tutorial ideas.
1. Try to make a video tutorial on how to make a Counter Strike cheat or a Need For Speed Most Wanted one.
2. I saw somewhere a tutorial where that guy made a program which keylog windows calculator or windows virtual keyboard, by using API detours or API hooking, I don’t know exactly the method. He deleted his written tutorial. Maybe you will make a video tutorial on how to do this. What you say ?
Please, do these video tutorials !
Thank you in advance !
PS: Please send me an email with your answer too !
October 25th, 2011 - 20:00
I found something interesting, you can force the main thread to use console by doing something like this:
char *buffer = (char*)0×00652028;
buffer[0] = ‘s’;
buffer[1] = ‘v’;
buffer[2] = ‘_’;
buffer[3] = ‘p’;
buffer[4] = ‘l’;
buffer[5] = ‘a’;
buffer[6] = ‘y’;
buffer[7] = ‘e’;
buffer[8] = ‘r’;
buffer[9] = ‘s’;
buffer[10] = 0;
__asm
{
MOV EBX,0x651F74
MOV WORD PTR[EBX],2
MOV EDI,0x651F70
MOV BYTE PTR[EDI],1
MOV ESI,0x651F78
MOV WORD PTR[ESI],0×38
}
October 28th, 2011 - 14:27
That’s very interesting.