Heretic is a powerful tool that is able to record user events, such as mouse clicks and keys, into a C/Java-like script, and play that script either once or repeatedly. It has many commands for dynamic pixel-based botting, window based botting, and static botting/macro-ing (i.e. key presses, mouse clicks, mouse moves, and pauses). Recommended download on brothersoft.com


   Download

  • The current version of Heretic is 1.4 Beta
  • Personal computer with Windows 2000/XP/Server/Vista/Windows 7
  • You can download the Freeware version of Heretic here. (1.4 MB file)

 

Softpedia "100% Clean" Award

   Features

Scripting:
· New
· Open
· Save
· Save As
· Compile
· Play
· Play Selection
· Correct Time
· Debug
· Repeat
· Record
· Stop
· Commands are not case-sensitive
· Returns (CrLfs) and spaces are excluded during script runtime (spaces are included if quotes are around them)

Recording:
· Recording Left, Middle and Right Mouse down
· Recording Left, Middle and Right Mouse up
· Recording w, s, d and a press down
· Recording w, s, d and a press up
· Recording up, down, right and left press down
· Recording up, down, right and left press up
· Recording key presses: F1, F2, F3, F4, Tab, Space, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -, =
· Recording extended mouse events
· Recording all other possible key and mouse inputs

Playing:
· Emulating Left, Middle and Right Mouse down
· Emulating Left, Middle and Right Mouse up
· Emulating Mouse moves/or not
· Emulating all keys pressed down including: w, s, d and a
· Emulating all keys pressed up including: w, s, d and a
· Emulating almost all key presses
· Emulating pause time in milliseconds
· Capturing and saving images
· Color range detection
· Option to ignore emulation of pause events
· Option to increase/decrease the percent time of pauses

HotKeys:
· CTRL+4 - Target window that the mouse is over
· CTRL+5 - Record a pixel based mouse move (records the color of the pixel your mouse is over, and makes a mouse move script)
· CTRL+6 - Toggle recording of mouse movemens
· CTRL+7 - Toggle recording of user extended clicks
· CTRL+8 - Record
· CTRL+9 - Play
· CTRL+0 - Stop
· CTRL+1 - Pause

 

   Release Notes/Change Log

· 1.4 Beta:
· Added 46 more imagesaves
· Added 46 more colorranges
· Added the following Dynamic Pixel Detection commands: IsImage, IsImageEx,
IsImageInArea, IsImageInAreaEx
· Added the following commands: LoadImage, FirstFindMode, RandomFindMode

 

   Commands

Basic Flow Control Commands:

call(functionname);

function(name);
endfunction();

If(condition);
else();
endif();

while(condition);
endwhile();

Miscellaneous Commands:

String(name, "hello world");
Int(name, 10245);
Double(name, 3.14);
Set(name, value);

Start(filepath);
StartEx(filepath, arguments, showtype);

Message(prompt, type, title);

To do a comment, simply put a semicolon(;) on both sides, for example:
;this is a comment;

Math Commands:

Add(num, num2);
Subtract(num, num2);
Multiply(num, num2);
Divide(num, num2);
Power(num, num2);
Tan(num);
Cos(num);
Sin(num);
Log(num);
Factorial(num);

String Parsing Commands:

Parse(string, begin, length);
Combine(string, string2);
RemoveAll(fromstring, toremove);
Replace(string, what, with);

User Event Commands:

Pause(milliseconds);
PauseS(seconds);
PauseM(minutes);
PauseH(hours);
SendKeys(keyname);
KeyUp(virtualkey);
KeyDown(virtualkey);
MoveMouse(x,y);

LeftUp();
LeftUpEx(x,y);
LeftDown();
LeftDownEx(x,y);
LeftClick();
LeftClickEx(x,y);

RightUp();
RightUpEx(x,y);
RightDown();
RightDownEx(x,y);
RightClick();
RightClickEx(x,y);

MiddleUp();
MiddleUpEx(x,y);
MiddleDown();
MiddleDownEx(x,y);
MiddleClick();
MiddleClickEx(x,y);

Window Handling Commands:

SelectWindow(classname, windowtitle);
SelectSubWindow(windowtitle);
DeselectWindow();

Pixel Detection Commands:

CaptureScreen(imagesave);
SaveImage(imagesave, filepath);
LoadImage(imagesave, filepath);
CreateColorRange(colorrange, R1, B1, G1, R2, B2, G2);
MoveMouseToColorRange(imagesave, colorrange);
MoveMouseToColorRangeEx(imagesave, colorrange, X1, Y1, X2, Y2);
MoveMouseToCenterScreen();
MoveMouseToColorRangeFromCenterScreen(imagesave, colorrange, X1, Y1, X2, Y2);

IsPixel(returnvariable, imagesave, x, y, colorrange);
IsPixelIn(returnvariable, imagesave, x1, y1, x2, y2, colorrange);

GetSaturation(returnvariable, imagesave, x, y);
GetSaturationInArea(returnvariable, imagesave, x1, y1, x2, y2);

IsSaturation(returnvariable, imagesave, x, y, percent);
IsSaturationEx(returnvariable, imagesave, x, y, percent, allowablePercentDiff);
IsSaturationInArea(returnvariable, imagesave, x1, y1, x2, y2, percent);
IsSaturationInAreaEx(returnvariable, imagesave, x1, y1, x2, y2, percent, allowablePercentDiff);

IsImage(returnvariable, lookinimagesave, lookforimagesave, x, y);
IsImageEx(returnvariable, lookinimagesave, lookforimagesave, x, y, percentDiff);
IsImageInArea(returnvariable, lookinimagesave, lookforimagesave, x1, y1, x2, y2);
IsImageInAreaEx(returnvariable, lookinimagesave, lookforimagesave, x1, y1, x2, y2, percentDiff);

FirstFindMode();
RandomFindMode();

Heretic Control Commands:

IgnorePauses(boolean);
SetPausePercent(number);
OrigionalPlayTime(number);
DisableRepeat();
EnableRepeat();

 

   Variables

Types:
· x = variable that discribes a position on the x axis
· y = variable that discribes a position on the y axis
· filepath = the path and file name of a file; example: C:\images\test.bmp
· showtype = Normal, Minimized, Maximized
· messagetype = App, Critical, Exclamation, Information, Right, Reading, Question, Systemmodal

Storage:
· imagesave = a picture of an image stored in memory; variablenames are imagesave0, imagesave1, imagesave2,
imagesave3, imagesave4, all the way to imagesave50
· colorrange = a range of colors between two colors, from (R1, G1, B1) to (R2, G2, B2); variable names are:
colorrange0, colorrange1, colorrange2, colorrange3, colorrange4, all the way to colorrange50
· lx = the last x position from a pixel/image detection command that was executed
· ly = the last y position from a pixel/image detection command that was executed

 

   Resources

The only functions that handle windows are: FindWindow, FindWindowEx, DeselectWindow, LeftUpEx, LeftDownEx, LeftClickEx, RightUpEx, RightDownEx, RightClickEx, MiddleUpEx, MiddleDownEx, MiddleClickEx, KeyDown, and KeyUp.

Virtual Key Codes (for KeyUp and KeyDown):
http://www.tronan.com/macromachine/scripthelp/VK.htm

For SendKeys information:
http://msdn.microsoft.com/en-us/library/8c6yea83.aspx

 

      Disclaimer: This software is shareware. The creator and contributors are not responsible with your actions with any of this software, and cannot be held accountable. You are not allowed to redistribute this software without Skyler Lyon's permission and consent. By using this software you agree to these terms.

© 2009 Skyler Lyon