Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

Janilabo

 VIPs
  • Content Count

    870
  • Joined

  • Last visited

  • Days Won

    1

Janilabo last won the day on November 10 2012

Janilabo had the most liked content!

Community Reputation

11 Good

About Janilabo

  • Rank
    VIP
  • Birthday 08/19/1987

Personal Information

  • Location
    Finland
  • Interests
    Scripting & Programming!
  • Occupation
    Warehouse Worker

Contact Information

  • Skype
    janilabo

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Well, this script was running great back in the day, but now it is sadly outdated and for that reason broken.It would also require plenty of changes to get it back up & going (probably rewrite), mostly because MSSL is wayyyy outdated, dirty and dead project by now. I just recommend looking forward to Wanted's upcoming contributions (and obviously to slacky's aswell, if he does get active again around SCAR scripting scene).
  2. Hayyy Wanted, That is pretty cool release - nice job, buddy! Hopefully this, and any other things you are releasing/developing in the future, will bring some new life (activity) around this community. I must also say that, I am very happy to see that you are getting back into scripting/coding-related things! P.S. Sorry that I am not able to give you any actual feedback about the script though (I am done with RS stuff) Keep up the good work man.
  3. You simply use the X and Y variables of the TPoint record, like so: var found: TPointArray; h, i: Integer; begin if FindColorSpiralTolEx(100, 100, found, clWhite, 50, 50, 100, 100, 10) then begin h := High(found); WriteLn('Found ' + IntToStr(h + 1) + ' points!') for i := 0 to h do MoveMouse(found[i].X, found[i].Y); // Replace with your clicking method, whatever it is. MoveMouse(found[0].X, found[0].Y); // Index example, without loop. end; end.
  4. First off, parameter order: XS, YS, XE, YE (X-Start, Y-Start, X-End, Y-End) Examples with yours. 409[XS], 213[YS], 410[XE], 547[YE] <= that is fine! XS is NOT higher than XE and YS is NOT either higher than YE. The area however might be too small for your needs, because it is just 2-pixels wide (((410-409)+1)=2)! 409[XS], 547[YS], 410[XE], 213[YE] <= that is INCORRECT, you can clearly see YS is higher value than YE. It is not proper area. slacky provided you very useful example up there, it really should give you the idea how the "area logic" works. :\
  5. I must say that I am not really able to help you out guys... I think slacky might have solutions, that could get the CAPTCHA system of RSCR beaten - he certainly has the skills to do so, no doubt. ..but, it's a pretty boring task in a way, so it really takes great deal of motivation/interest aswell!
  6. While there is no response about the warning you have reported to here (I cannot help, because I have no idea what that is), I just simply recommend getting the development versions of SCAR - which are available without installer, so there is no third-party stuff like that included (if I remember correctly at least). You can find the development editions from: http://dev.scar-divi.com/ I am fairly sure those warnings have something to do with the installer and not something with SCAR itself, because Freddy really wouldn't try to hit us with any dirty stuff (not by purpose).
  7. Hey Rooster! Sorry man, MSSL was never developed for RS3 - only for OSR (RS07). :\ I would advice looking around OSI, but not sure if even OSI is up-to-date for RS3? So yeah, you might be out of luck. ..well, unless you are going to write your own libraries for it...
  8. Heyy,Project RSC private server has been down for nearly couple years already, so this script is pretty much useless now.
  9. Very happy to see new release/build, Freddy.Glad to hear those future plans aswell (especially about porting entire 3.40 API to v4)!
  10. Change Bmp from Integer to TSCARBitmap, like this: var x, y: Integer; Bmp: TSCARBitmap; Could be that it isn't the problem here, but that is how SCAR bitmaps should be defined with 3.35+.
  11. Ello spartakos, That is a nasty way of creating the bitmaps (inside loop), you never even free them... You will quickly get SCAR out of memory with this script! Fixed the bitmap creation problem: var Bmp1, Bmp2, x, y: Integer; begin Bmp1 := TSCARBitmap.Create('deNoTZuBgaGD4P4qGAQIA7QLjhA=='); Bmp2 := TSCARBitmap.Create('deNrjY+Bj+N/gMIpGEVUQAKBMVmg='); repeat if FindBitmapTol(x, y, Bmp1, 82, 125, 1158, 770, 50) then begin MoveMouse(x, y); ClickMouse(x, y, mbRight); // mbLeft to use Left Mouse Button! TypeText(Chr(32)); end; if FindBitmapTol(x, y, Bmp2, 82, 125, 1158, 770, 50) then begin MoveMouse(x, y); ClickMouse(x, y, mbRight); TypeText(Chr(32)); end; until False; end. Sadly I don't know what is the actual problem you are asking here, but could it be that you simply need a small delay between the bitmap lookups? Also, please always use CODE or SCAR tags.
  12. It would be a lot easier for people to help you out, if you also include the webpage of this game that you are playing. Without that I just don't think anybody is able to do this, what you are after here...
  13. So, I guess it works now as you wanted? Anyways, if you want a bit faster response for stopping the script with CTRL+ALT+S hotkey, then here you go: program Gopro; const ROUNDS = 5; // Before banking? var normal_path, bank_path, return_path: TPointArray; procedure Setup; var U, D, L, R: TPoint; begin U := Point(639, 702); D := Point(639, 780); L := Point(599, 739); R := Point(676, 738); normal_path := [R, U, R, U, L, L, L, L, L, U, R, R, R, R, R, R, R, R, U, L, L, L, L, L, L, L, L, U, R, R, R, R, R, R, U, L, L, L, L, U, R, R, R, D, L, L, L, L, D, R, R, R, R, R, R, D, L, L, L, L, L, L, L, L, D, R, R, R, R, R, R, R, R, D, L, L, L, L, L, L, L, D, R, R, D, R, R]; bank_path := [D, D, D, L, L, D, D, D, D, D, D, D, D, D, L, L]; return_path := [R, R, U, U, U, U, U, U, U, U, U, R, R, U, U, U]; end; procedure Wait2(MS: Integer); var t: Integer; k: Byte; begin t := GetTimeRunning; k := CharToVKey('s'); repeat if GetCurrentKeyState(VK_CONTROL) then if GetCurrentKeyState(VK_MENU) then if GetCurrentKeyState(k) then TerminateScript; until ((GetTimeRunning- t) > MS); end; procedure Move(coordinates: TPoint); begin MoveMouse(coordinates.X, coordinates.Y); Wait2(2000); ClickMouse(coordinates.X, coordinates.Y, mbLeft); Wait2(3000); end; procedure RunPath(path: TPointArray); var h, i: Integer; begin h := High(path); for i := 0 to h do begin MoveMouse(path[i].X, path[i].Y); Wait2(2000); ClickMouse(path[i].X, path[i].Y, mbLeft); Wait2(3000); end; end; procedure Detection; var x, y: Integer; begin while FindColor(x, y, 3094824, 94, 43, 171, 779) do begin MoveMouse(x, y); Wait2(350); ClickMouse(x, y, mbLeft); Wait2(50 + Random(35)); ClickMouse(x, y, mbLeft); Wait2(2000); end; end; procedure Put; begin MoveMouse(525, 769); Wait2(500) ClickMouse(525, 769, mbLeft); Wait2(500) MoveMouse(775, 654); Wait2(500) ClickMouse(775, 654, mbLeft); Wait2(500) MoveMouse(974, 128); Wait2(500) ClickMouse(974, 128, mbLeft); end; procedure Play; var h, i, c: Integer; begin h := High(normal_path); repeat for c := 1 to ROUNDS do for i := 0 to h do begin Detection; Move(normal_path[i]); end; RunPath(bank_path); Put; RunPath(return_path); until False; end; begin case (ROUNDS > 0) of True: begin Setup; Play; end; False: WriteLn('TERMINATING: Invalid rounds! Must be over 0...'); end; end. Enjoy!
  14. This aint going to be easy for me, because I don't play the game... But, I expect you are after something like this (I hope so): program Gopro; const ROUNDS = 5; // Before banking? var normal_path, bank_path, return_path: TPointArray; procedure Setup; var U, D, L, R: TPoint; begin U := Point(639, 702); D := Point(639, 780); L := Point(599, 739); R := Point(676, 738); normal_path := [R, U, R, U, L, L, L, L, L, U, R, R, R, R, R, R, R, R, U, L, L, L, L, L, L, L, L, U, R, R, R, R, R, R, U, L, L, L, L, U, R, R, R, D, L, L, L, L, D, R, R, R, R, R, R, D, L, L, L, L, L, L, L, L, D, R, R, R, R, R, R, R, R, D, L, L, L, L, L, L, L, D, R, R, D, R, R]; bank_path := [D, D, D, L, L, D, D, D, D, D, D, D, D, D, L, L]; return_path := [R, R, U, U, U, U, U, U, U, U, U, R, R, U, U, U]; end; procedure Move(coordinates: TPoint); begin MoveMouse(coordinates.X, coordinates.Y); Wait(2000); ClickMouse(coordinates.X, coordinates.Y, mbLeft); Wait(3000); end; procedure RunPath(path: TPointArray); var h, i: Integer; begin h := High(path); for i := 0 to h do begin MoveMouse(path[i].X, path[i].Y); Wait(2000); ClickMouse(path[i].X, path[i].Y, mbLeft); Wait(3000); end; end; procedure Detection; var x, y: Integer; begin while FindColor(x, y, 3094824, 94, 43, 171, 779) do begin MoveMouse(x, y); Wait(350); ClickMouse(x, y, mbLeft); Wait(50 + Random(35)); ClickMouse(x, y, mbLeft); Wait(2000); end; end; procedure Put; begin MoveMouse(525, 769); Wait(500) ClickMouse(525, 769, mbLeft); Wait(500) MoveMouse(775, 654); Wait(500) ClickMouse(775, 654, mbLeft); Wait(500) MoveMouse(974, 128); Wait(500) ClickMouse(974, 128, mbLeft); end; procedure Play; var h, i, c: Integer; begin h := High(normal_path); repeat for c := 1 to ROUNDS do for i := 0 to h do begin Detection; Move(normal_path[i]); end; RunPath(bank_path); Put; RunPath(return_path); until False; end; begin case (ROUNDS > 0) of True: begin Setup; Play; end; False: WriteLn('TERMINATING: Invalid rounds! Must be over 0...'); end; end.
  15. Of course, feel free to do that! It is made for you.
×
×
  • Create New...