Dev-C++ DevPak: Rev. 36
SVN: http://svn2.assembla.com/svn/ScarPP
Project Home: http://www.assembla.com/wiki/show/ScarPP
How to get it from the svn:
1. download SVN
2. make a directory that you want Scar++ to be in and go there from the terminal (click run, then type in "cmd" without the quotes. us cd to get to the directory you created)
3. type in "svn co http://svn2.assembla.com/svn/ScarPP"
4. profit? Your done, you should now have scar++
Demo Scar++ Program:
The easiest way to install Scar++ is to download the devpak and run it through dev-C++. Make sure that you go into Project->Project Options->Parameters and under linker you put -lScar++. It won't compile without that.Code:#include <Scar++.h> #include <iostream> using namespace std; int main() { Scar setup; cout << "I've got me a scar!\n"; while(true) MoveMouseSmooth(rand(), rand()); return 0; }
For all that wonder, Scar++ is an open source c++ library to try to aid users who are coming from scar to start to use c++. It is not an IDE or an interpreted language, it is c++ in all its glory.
For now, all functions are part of one giant Scar object. This was done as an attempt to let the auto complete functions of many c++ IDE's help in writing some excellent cheating programs. (as well as making the ++ justified, if it wasn't there then this would really be c )
The first stage will be to mimic all the essential functions for cheating in runescape. This includes color finding, bitmap matching, and even the ability to map out letter and such. Mainly in this stage I am trying to get the project to the point where moving the SRL library into a c++ version will be a fairly trivial thing. I will not be adding functions that do tasks that are already vastly available to c++ (For example, string manipulation, Standard I/O, ect.) There are already vast libraries available to c++ so there is no reason to add these sorts of functions.
The second stage will be a refining stage. Somethings might not be done the fastest, so I will be reviewing what has been written and pulling out every trick I know of to increase the speed of the code and remove bugs (sometimes it takes many readings to remove bugs) No new functions will be added, the code will basically be in a frozen state.
The final stage will be to add some functions that I think should be in scar anyways, for example, PathFinding (one of the big reasons I took on this project). I will be open to extra suggestions at this point so suggestions will be welcome.
The final stage will span out indefinitely.
Right now the project is midway through stage 1. Many of the useful functions have been ported over (and there are quite a few that I expect will be done here quickly) As always, comments on the code or improvements you see fit are fully welcome. I hesitated to release the initial code, so don't make me regret it (so Please Participate if you can.)
Here is the link to the project Scar++ Revisions will be going up pretty dang fast (We are at 20 now) so if you are participating make sure you keep yourself up to date.
[ORIGINAL POST]
Would anyone be interested in a C++ version of scar? I have already started work on it (got the color converting functions and most of the mouse functions done) and was wondering if it would be interesting to anyone else.
It would not be a full IDE, just the library (well, most of the library) so it wouldn't have as much protection as scar has.
On the plus side, it should be pretty fast and extremely flexible (the whole reason I've started this project). Allowing users the full power of C++ and its associated compilers.
If you are interested, let me know. If you have suggestions I would love to hear them as well. If you would like to help, I would be happy to share what I have now and work with you to get there.
For any interested, I'm including a list a finished functions, if you want to help, go ahead an look up the scar manual and pick a function to port.
[/ORIGINAL POST]SCAR Code:void GetMousePos(int& x, int& y);
void MoveMouse(int x, int y);
void MoveMouseSmooth(int x, int y);
void MoveMouseSmoothEx(int x, int y, int minsleeptime = 1,
int maxsleeptime = 3, int maxdistance = 45,
int gravity = 20, int forces = 10);
void MoveMouseSmoothFrom(int x0, int y0, int x1, int y1);
void MoveMouseSmoothFromEx(int x0, int y0, int x1, int y1, int minsleeptime = 1,
int maxsleeptime = 3, int maxdistance = 45,
int gravity = 20, int forces = 10);
void MoveMouseSpline(int x, int y, int rx, int ry); // This function uses "MoveMouseSplineEx" so isn't really done, but once MoveMouseSplineEx is done it will be
void MoveMouseSplineFrom(int x0, int y0, int x1, int y1, int rx, int ry);
void MoveMouseSplineFromEx(int x0, int y0, int x1, int y1, int rx, int ry,
int mouseSpeed = 50, int ctrlSpacing = 30,
int ctrlVariance = 65);
void MouseBox(int x0, int y0, int x1, int y1);
void MoveMouseCC(int x, int y, int range, int segments, int pcount,
int delay);
void ClickMouse(int x, int y, bool Left);
void ClickMouseMid(int x, int y);
void ClickMouseSpline(int x, int y, int rx, int ry, bool Left);
void ClickMouseBox(int x0, int y0, int x1, int y1, bool Left);
void HoldMouse(int x, int y, bool Left);
void ReleaseMouse(int x, int y, bool Left);
void HoldMouseMid(int x, int y);
void ReleaseMouseMid(int x, int y);
bool IsMouseButtonDown(bool LeftButton);
void ColortoRGB(unsigned int color, int& R, int& G, int& B);
unsigned int RGBtoColor(int R, int G, int B);
void ColortoHSL(unsigned int color, double& H, double& S, double& L);
unsigned int HSLtoColor(double H, double S, double L);
void RGBtoHSL(int R, int G, int B, double& H, double& S, double& L);
void HSLtoRGB(double H, double S, double L, int& R, int& G, int& B);
void RGBtoXYZ(int R, int G, int B, double& X, double& Y, double& Z);
void XYZtoRGB(double X, double Y, double Z, int& R, int& G, int& B);
void ColortoXYZ(unsigned int color, double& X, double& Y, double& Z);
unsigned int XYZtoColor(double X, double Y, double Z);
void HSLtoXYZ(double H, double S, double L, double& X, double& Y, double& Z);
void XYZtoHSL(double X, double Y, double Z, double& H, double& S, double& L);