Welcome Guest [Log In] [Register]
Welcome to COS. We hope you enjoy your visit.


You're currently viewing our forum as a guest. This means you are limited to certain areas of the board and there are some features you can't use. If you join our community, you'll be able to access member-only sections, and use many member-only features such as customizing your profile, sending personal messages, and voting in polls. Registration is simple, fast, and completely free.


Join our community!


If you're already a member please log in to your account to access all of our features:

Username:   Password:
Add Reply
SCAR and you; why this program is amazing!
Topic Started: Nov 15 2009, 10:25 AM (513 Views)
akwardsaw5
Member Avatar

Recruit
i am here to tell you guys about SCAR. SCAR is a "macro" that can simulate keystrokes, mouse movements and clicks, and can even detect colors, text, and so forth. BUT it can also do lots of other amazing things as well!

a description from the maker of SCAR himself(freddy1990)
Code:
 
SCAR Divi is a program designed to automate repetitive tasks on your computer. It uses color, image, pattern and text recognition algorithms to gather data about the current state of your machine and act upon it accordingly as programmed. The program has the ability to move the mouse cursor and send keystrokes to act upon the gathered information. You can create scripts in the pascal language for the program to run using a very large amount of functions are your disposal.


download at: http://freddy1990.com/index.php?page=product&name=scar

Instructions to set up:
1: download SCAR, from the link
2: go through the set up, you can read or just go through
3: when finished, open up SCAR and you are done!

Instructions to set up a script:
1: open SCAR if not already open
2: copy, or type the script if you havnt already saved it, if saved just open it using File > open > find the script
3: follow the directions for set up, if there are any
4: hit run :)

look at this little snippit,

Code:
 
program New;

const
 website = 'www.google.com';

begin
 if website = '' then
 begin
   writeln('error: invalid web address');
   exit;
 end;
 OpenWebPage(website);
 writeln('successfully opened webpage: ' + website);
end.


what this does, is open up a webpage in your default browser automatically, even if you donthave your internet browser open already. i know this isnt really very usefull, but it does help you out being lazy if you want to open a webpage, but to lazy to open up the browser and type it in :)

all you need to do to operate the snippet, is to simply type in the web address where it says "google". make sure to keep it between the " ' ' "

other usefull features:
Code:
 

program New;

const
 num1 = 1;
 num2 = 0;

begin
 writeln(inttostr(num1 + num2));
end.


this is a simple calculator. simply fill in the numbers you want in in the "const". and change the "+" to what ever you want(which is +, - , *, /)

now, you may be all "great, it can do simple maths, and open up web pages!"

now now, it can do much much more than that! this is a simple little timer, using math and such:
Code:
 
program New;

const
 time = 1;
 text = ' ';
begin
 wait(1000 * 60 * time)
 alert(text);
end.


all this will do, is wait a specified amount of time in minuets(specify in the const "time") and when the time runs out, it will alert you with the specified text (that you chose in "text").

i personally use this to help me remember when i need to leave for the bus in the morning, leave for wrestling, or just when a show is going to come on.

like i said before, SCAR has MANY capabilities, and can literally do almost any thing, from opening web pages, to acting like a note pad to help you remember stuff, or to even play a GAME like tic tac toe, "click it" and ect.


i know, this may seem confusing to you, but SCAR really is an easy easy program to learn, and script. i am very good at it, and one of the elite few who actually are looked up to at it(much like riff with msl :)). if you have any other questions or concerns, or if you would wish to go further with scripting SCARs full capability, post, PM me, or hook me up on #cosclan
Posted Image
Offline Profile Quote Post Goto Top
 
Mark
Member Avatar
The Poet
Legend
Here are my thoughts:

Bots are gay!

Posted Image
Posted Image
Offline Profile Quote Post Goto Top
 
akwardsaw5
Member Avatar

Recruit
these are my little creations using SCAR:

SCAR Notepad:

Instructions:
open the script, and hit play. it acts like the notepad, with saving and opening and such :)

Code:
 
program New;

var
 // Initform variables.
 EndInitform : Boolean;
 notepad : TForm;
 Memo1 : TMemo;
 Button1, Button2, Button3 : TButton;
 OpenDialog1 : TOpenDialog;
 SaveDialog1 : TSaveDialog;
 filemenu : TMainMenu;
 Title, Title1, Option : TMenuItem;
 t : string;

procedure LoadFile(sender: TObject);
begin
 OpenDialog1 := TOpenDialog.Create(notepad);
 OpenDialog1.InitialDir := AppPath;
 OpenDialog1.Options := [ofFileMustExist, ofReadOnly];
 OpenDialog1.Filter := 'Text Documents (*.txt)|*.txt|' +
                       'All Files|*|';
 if(OpenDialog1.Execute)then
 begin
   LoadFromFile(Memo1, OpenDialog1.FileName);
 end else
   WriteLn('User pressed cancel!');
 OpenDialog1.Free;
 t:= memo1.Text;
end;

procedure SaveTehFile;
begin
   SaveDialog1 := TSaveDialog.Create(nil);
 SaveDialog1.InitialDir := AppPath;
 SaveDialog1.Filter := 'Text Documents (*.txt)|*.txt|' +
                       'All Files|*|';
 if SaveDialog1.Execute then
   savetoFile(Memo1, Savedialog1.FileName);
 SaveDialog1.Free;
end;

procedure SaveFile(sender: TObject);
begin
 SaveTehFile;
 t:= memo1.Text;
end;

procedure KeyBoredComand(letter : char);
begin
 keydown(vk_control);
 KeyDown(getkeycode(letter));
 wait(10);
 keyup(vk_control);
 Keyup(getkeycode(letter));
end;

procedure copy(sender : tobject);
begin
 KeyBoredComand('c');
end;

procedure paste(sender : tobject);
begin
 KeyBoredComand('v');
end;

procedure cut(sender : tobject);
begin
 KeyBoredComand('x');
end;

procedure Undo(sender : tobject);
begin
 KeyBoredComand('z');
end;

procedure Redo(sender : tobject);
begin
 KeyBoredComand('y');
end;

procedure clear(sender : tobject);
begin
 memo1.text:= '';
end;

procedure InitformOnClose(Sender : TObject; var Action : TCloseAction);
begin
 if memo1.text <> t then
 if GetApplication.MessageBox('Text has been modified! Do you wish to save?', 'Save?', 4) = mryes then
   SaveTehFile;
 if (not(notepad.ModalResult = 1)) then
   EndInitform := True;
end;

procedure Initform;
var
 TimeInitform : Integer;
 hotkey : TMenuAutoFlag;
begin
 TimeInitform := GetSystemTime;
 notepad := CreateForm;
 with notepad do
 begin
   OnClose := @InitformOnClose;
   Position := poScreenCenter;
   BorderStyle := bsSingle;
   BorderIcons := [biMinimize,biSystemMenu];
   ClientWidth := 600;
   ClientHeight := 600;
   Caption := 'Akwardsaw''s Note Pad';
   Color := clblack;
   Font.Color := clWindowText;
   Font.Height := -11;
   Font.Name := 'MS Sans Serif';
   Font.Style := [];
   PixelsPerInch := 96;
 end;
 Memo1 := TMemo.Create(notepad);
 with Memo1 do
 begin
   Parent := notepad;
   Left := 2;
   Top := 2;
   Width := 596;
   Height := 578;
   Memo1.ScrollBars := ssVertical;
   with Lines do
   begin
     Add('Memo1');
   end;
   text:= '';
   TabOrder := 8;
 end;
 FileMenu := TMainMenu.Create(notepad);
 Title := TMenuItem.Create(notepad);
 Title.Caption := 'File';
 FileMenu.Items.Add(Title);

 Option := TMenuItem.Create(notepad);
 Option.Caption := 'Clear';
 Option.OnClick := @clear;
 FileMenu.Items.Items[0].Add(Option);

 Option := TMenuItem.Create(notepad);
 Option.Caption := 'Load';
 Option.OnClick := @LoadFile;
 FileMenu.Items.Items[0].Add(Option);

 Option := TMenuItem.Create(notepad);
 Option.Caption := 'Save';
 Option.OnClick := @SaveFile;
 FileMenu.Items.Items[0].Add(Option);
 
 Title1 := TMenuItem.Create(notepad);
 Title1.Caption := 'Edit';
 FileMenu.Items.Add(Title1);
 
 Option := TMenuItem.Create(notepad);
 Option.Caption := 'Undo';
 Option.OnClick := @Undo;
 FileMenu.Items.Items[1].Add(Option);
 
 Option := TMenuItem.Create(notepad);
 Option.Caption := 'Redo';
 Option.OnClick := @Redo;
 FileMenu.Items.Items[1].Add(Option);
 
 Option := TMenuItem.Create(notepad);
 Option.Caption := '-';
 Option.Enabled := false;
 FileMenu.Items.Items[1].Add(Option);
 
 Option := TMenuItem.Create(notepad);
 Option.Caption := 'Cut';
 Option.OnClick := @cut;
 FileMenu.Items.Items[1].Add(Option);

 Option := TMenuItem.Create(notepad);
 Option.Caption := 'Copy';
 Option.OnClick := @copy;
 FileMenu.Items.Items[1].Add(Option);
 
 Option := TMenuItem.Create(notepad);
 Option.Caption := 'Paste';
 Option.OnClick := @paste;
 FileMenu.Items.Items[1].Add(Option);
 
 Option := TMenuItem.Create(notepad);
 Option.Caption := '-';
 Option.Enabled := false;
 FileMenu.Items.Items[1].Add(Option);
 
 WriteLn('Initform compiled in ' + IntToStr(GetSystemTime - TimeInitform) + ' milliseconds!');
end;

procedure SafeInitform;
var
 v : TVariantArray;
begin
 SetArrayLength(v, 0);
 ThreadSafeCall('Initform', v);
end;

procedure ShowInitformModal;
begin
 notepad.ShowModal;
end;

procedure SafeShowInitformModal;
var
 v : TVariantArray;
begin
 SetArrayLength(v, 0);
 ThreadSafeCall('ShowInitformModal', v);
end;

procedure MainInitform;
begin
 try
   SafeInitform;
   SafeShowInitformModal;
 finally
   FreeForm(notepad);
 except
   WriteLn('An error seems to have occurred in: Initform');
 end;
end;

begin
 ClearDebug;
 MainInitform;
 GetSelf.WindowState := wsNormal;
 t:= memo1.Text;
 if (EndInitform) then
   TerminateScript;
end.


a fact generator, hit run, select a bubble that you wish to generate, and hit generate :)

Code:
 
program New;

var
 // Initform variables.
 frmDesign : TForm;
 GroupBox1 : TGroupBox;
 RadioButton1, RadioButton2, RadioButton3 : TRadioButton;
 Memo1 : TMemo;
 Button1 : TButton;

// This form was parsed using DFM Form Parser v.26c Beta by Ron.
// Generated from FactGenerator.dfm.

function GetFact(site, s1, s2: string): string;
var a: string;
begin
 a:= getpage(site);
 result:= TrimEx('        ', between(s1, s2, a));
end;

procedure StartClick(sender: TObject);
begin
 if RadioButton1.Checked then
   Memo1.Text:= GetFact('http://4q.cc/index.php?pid=fact&person=chuck', '<div id="factbox">', '</div>');
 if RadioButton2.Checked then
   Memo1.Text:= GetFact('http://4q.cc/index.php?pid=fact&person=mrt', '<div id="factbox">', '</div>');
 if RadioButton3.Checked then
   Memo1.Text:= GetFact('http://www.randomfunfacts.com/',
   '<td bordercolor="#FFFFFF"><font face="Verdana" size="4"><strong><i>', '</i></strong></font>');
end;

procedure Initform;
var
 TimeInitform : Integer;
begin
 TimeInitform := GetSystemTime;
 frmDesign := CreateForm;
 with frmDesign do
 begin
   Position := poScreenCenter;
   BorderStyle := bsSingle;
   BorderIcons := [biMinimize,biSystemMenu];
   Width := 365;
   Height := 183;
   Caption := 'Akwardsaw'#39's Fact Generator';
   Color := clBtnFace;
   Font.Color := clWindowText;
   Font.Height := -11;
   Font.Name := 'MS Sans Serif';
   Font.Style := [];
   PixelsPerInch := 96;
 end;
 GroupBox1 := TGroupBox.Create(frmDesign);
 with GroupBox1 do
 begin
   Parent := frmDesign;
   Left := 8;
   Top := 8;
   Width := 97;
   Height := 89;
   Caption := 'What Fact?';
   TabOrder := 0;
 end;
 RadioButton1 := TRadioButton.Create(GroupBox1);
 with RadioButton1 do
 begin
   Parent := GroupBox1;
   Left := 8;
   Top := 16;
   Width := 113;
   Height := 17;
   Caption := 'Chuck Norris';
   TabOrder := 0;
 end;
 RadioButton2 := TRadioButton.Create(GroupBox1);
 with RadioButton2 do
 begin
   Parent := GroupBox1;
   Left := 8;
   Top := 40;
   Width := 113;
   Height := 17;
   Caption := 'Mr. T';
   TabOrder := 1;
 end;
 RadioButton3 := TRadioButton.Create(GroupBox1);
 with RadioButton3 do
 begin
   Parent := GroupBox1;
   Left := 8;
   Top := 64;
   Width := 113;
   Height := 17;
   Caption := 'Random';
   TabOrder := 2;
 end;
 Memo1 := TMemo.Create(frmDesign);
 with Memo1 do
 begin
   Parent := frmDesign;
   Left := 112;
   Top := 16;
   Width := 225;
   Height := 81;
   with Lines do
   begin
     Add('');
   end;
   TabOrder := 9;
   ScrollBars := ssVertical;
 end;
 Button1 := TButton.Create(frmDesign);
 with Button1 do
 begin
   Parent := frmDesign;
   Left := 96;
   Top := 112;
   Width := 73;
   Height := 25;
   Caption := 'Generate';
   TabOrder := 10;
   Button1.OnClick := @StartClick;
 end;
 WriteLn('Initform compiled in ' + IntToStr(GetSystemTime - TimeInitform) + ' milliseconds!');
end;

procedure SafeInitform;
var
 v : TVariantArray;
begin
 SetArrayLength(v, 0);
 ThreadSafeCall('Initform', v);
end;

procedure ShowInitformModal;
begin
 frmDesign.ShowModal;
end;

procedure SafeShowInitformModal;
var
 v : TVariantArray;
begin
 SetArrayLength(v, 0);
 ThreadSafeCall('ShowInitformModal', v);
end;

procedure MainInitform;
begin
 try
   SafeInitform;
   SafeShowInitformModal;
 finally
   FreeForm(frmDesign);
 except
   WriteLn('An error seems to have occurred in: Initform');
 end;
end;

begin
 ClearDebug;
 MainInitform;
end.


more to come lol, although i may have to resort to other methods of posting the scripts
Posted Image
Offline Profile Quote Post Goto Top
 
akwardsaw5
Member Avatar

Recruit
Mark
Nov 15 2009, 07:27 AM
Here are my thoughts:

Bots are gay!

:( im not talking about bots lol, im talking about programs
Posted Image
Offline Profile Quote Post Goto Top
 
Mark
Member Avatar
The Poet
Legend
Programmable bots?

Posted Image
Posted Image
Offline Profile Quote Post Goto Top
 
akwardsaw5
Member Avatar

Recruit
Mark
Nov 15 2009, 07:47 AM
Programmable bots?

if you want. im not directing this to any thing other than making programs to help make things easier, or entertaining for the general purpose. :lol:

besides, bots can be any thing
Posted Image
Offline Profile Quote Post Goto Top
 
Mark
Member Avatar
The Poet
Legend
Can a bot be a human?

Posted Image
Posted Image
Offline Profile Quote Post Goto Top
 
akwardsaw5
Member Avatar

Recruit
Mark
Nov 15 2009, 07:57 AM
Can a bot be a human?

yep, his name is Icie Juicy :rolleyes:
Posted Image
Offline Profile Quote Post Goto Top
 
Mark
Member Avatar
The Poet
Legend
No. He's a jug full of ice and juice.

OH YEAH!!!!!!!!!!!!!!!!

Posted Image
Posted Image
Offline Profile Quote Post Goto Top
 
Templer104
Member Avatar
^Yeah thats me
Site Manager
eww bots...
<center>Posted Image</center><center>4th to reach 3000 posts --- 2+ Year Member --- CoS BAMF</center>
Offline Profile Quote Post Goto Top
 
akwardsaw5
Member Avatar

Recruit
Templer104
Nov 15 2009, 09:12 AM
eww bots...

did you read the thread?
Posted Image
Offline Profile Quote Post Goto Top
 
Icie Juicy
Member Avatar
95% jucier than your average Clan Leader
Leader
akwardsaw5
Nov 15 2009, 07:59 AM
Mark
Nov 15 2009, 07:57 AM
Can a bot be a human?

yep, his name is Icie Juicy :rolleyes:

I've been found out!!!


Those are some cool programs. I really have no experience with this stuff, but you made a notepad! :D

Posted Image
Posted ImagePosted Image
Posted Image
Offline Profile Quote Post Goto Top
 
1 user reading this topic (1 Guest and 0 Anonymous)
« Previous Topic · COS Archive · Next Topic »
Add Reply