SRL Archive - SRL Bugs

Disabled randoms?


Wanted

2009-12-06 16:05:49

I'm looking at SolveTeleportRandoms/LoadTeleportRandoms in AntiRandoms.SCAR I'm really confused on to how exactly I enable certain randoms… because I have custom solvers in place of original SRL ones and I think some recently updated randoms that have been committed are still disabled -.-

Naum

2009-12-06 16:13:21

    SolveRandom := nil;

In a record block, just change it (nil) to the procedure used to solve it, for example:

    SolveRandom := @SolveMolly;

:)

Wanted

2009-12-06 16:17:13

mmmk, this really needs to be updated in SRL IMO

Beekeepr, Demon ect.. ect.

Edit: Naum, what you posted doesn't change anything -.-

Edit2: Well only molly and prison pete were set to nil for solverandom, but alot of inrandoms are set to nil whats up with that?

Naum

2009-12-06 16:23:22

From: IceFire908

Edit2: Well only molly and prison pete were set to nil for solverandom, but alot of inrandoms are set to nil whats up with that?


Dunno, bro. Maybe thats the prob?
You could try patching it all up and posting it somewhere :)

Nava2

2009-12-06 16:26:23

Is the global boolean set?

Quickmarch

2009-12-06 16:26:34

From: IceFire908
Edit2: Well only molly and prison pete were set to nil for solverandom, but alot of inrandoms are set to nil whats up with that?


Probably because they don't work. :p

Naike

2009-12-06 16:28:13

Let me find a post by our dear Zephz0r explaining the random system.. give me a sec.

Edit:

From: ZephyrsFury
Step 1: Check for gametab configs: two types - ones with Tab 1 present and ones without.

Step 2: For ones with Tab 1 present, check specific InRandoms functions (generally include minimap colour counting, autocolouring, maybe some text finding). This step is done everytime FindNormalRandoms is called in game. This is because with these randoms, straight after entering (ie before logging out), tab configs remain unchanged, that is all tabs remain visible as if you were out of the random. (either a RS bug or an attempt to play with randoms detection).

Step 3: If the above two steps are passed, we check for music. Switch to the Music tab and check music.

Step 4: Check text occurances in the chatbox or mainscreen if music fails. Not always reliable as if we log out and relogin, chats don't automatically appear or if the script manages to click the minimap or something before FindNormalRandoms is called, chats are closed.

Step 5: If all detection steps are passed we move onto N1ke's RandomTool (if enabled) . This gives the user a timer in which to choose to solve the random manually without having to pause and stuff up the SRL solver.

Step 6: Solve.

As of current there are a few problems with detection…
  • As the InRandom functions have to be very specific as to not have the music tab being checked outside a random, there are problems with the randoms not getting detected at all (especially the case with Freaky Forester which is just really hard to detect).
  • Sometimes InRandom functions return true outside a random and the music tab and inv tab is continuously switched back and forth until the function returns false again (mostly due to movement of NPC dots which are often counted and used in InRandom functions).
  • Music has changed. It seems music inside randoms aren't always the same any more. It seems there are alternative tracks or music just doesn't change upon entering at all.
  • Tab configs have changed. Eg. Drill Demon used to be Type 2 (without gametab 1) but now is Type 1.
You mentioned efficiency with the InRandoms functions. The way they're constructed is meant to maximise efficiency by doing a simple GetColor or FindColor before doing more time consuming checks such as colour counts or TPA splits.

Oh and I think you missed it but FindTalk and related functions were removed many revisions ago due to all talking randoms being removed from Runescape.

Wanted

2009-12-06 16:30:57

Actually I think it's because inrandoms with nil check for music tab or missing tabs or blackminimaps…. I think naums post answered my question though.

ZephyrsFury

2009-12-09 23:00:35


Step 1: Check for gametab configs: two types - ones with Tab 1 present and ones without.

Step 2: For ones with Tab 1 present, check specific InRandoms functions (generally include minimap colour counting, autocolouring, maybe some text finding). This step is done everytime FindNormalRandoms is called in game. This is because with these randoms, straight after entering (ie before logging out), tab configs remain unchanged, that is all tabs remain visible as if you were out of the random. (either a RS bug or an attempt to play with randoms detection).


Only those with all tabs visible or all-but-one tabs visible require a custom InRandom function. All the others can just rely on tab configs and music and hence we don't bother with InRandoms for those.