Author Topic: Puzzle Boards  (Read 26473 times)

0 Members and 2 Guests are viewing this topic.

Offline cgeorgemoTopic starter

  • Hero Member
  • *
  • Posts: 586
  • Activity:
    0%
  • Reputation Power: 5
  • cgeorgemo has no influence.
  • Gender: Male
  • I'm Brian...cgeorgemo is Curious George Missouri
  • Respect: +36
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #45 on: October 04, 2009, 04:37:46 PM »
0
They may have changed the way those particular gumps work.
Yeah I'm hoping that the boards will be different than the token for soulstones.
Sarcasm is your body's natural defense against stupidity.

Offline manwinc

  • Elite
  • *
  • *
  • Posts: 2556
  • Activity:
    0%
  • Reputation Power: 32
  • manwinc is a rising star!manwinc is a rising star!manwinc is a rising star!manwinc is a rising star!manwinc is a rising star!manwinc is a rising star!
  • Gender: Male
  • "The Devs Hard at Work"
  • Respect: +272
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #46 on: October 04, 2009, 05:28:50 PM »
0
Contpos 0 0

after it has been confirmed it is open.


and you can use #contposx #contposy for where you are scanning so it scans no matter where the gump is. Did noone look at my example!?!?!
Monkeys and Typewriters!

" Oh I know, We'll make a Boss Encounter that requires 3 keys per player to enter, Then we'll make it not a closed instance so you never know if you are going to pop into a fresh room or a boss that has 1% Health left with 20 dudes smashing its face in, wasting your time and effort"

Offline cgeorgemoTopic starter

  • Hero Member
  • *
  • Posts: 586
  • Activity:
    0%
  • Reputation Power: 5
  • cgeorgemo has no influence.
  • Gender: Male
  • I'm Brian...cgeorgemo is Curious George Missouri
  • Respect: +36
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #47 on: October 04, 2009, 08:40:46 PM »
0
Contpos 0 0

after it has been confirmed it is open.


and you can use #contposx #contposy for where you are scanning so it scans no matter where the gump is. Did noone look at my example!?!?!
I could look at your example for a few hours and still not know what over half of it means.
Sarcasm is your body's natural defense against stupidity.

Offline cgeorgemoTopic starter

  • Hero Member
  • *
  • Posts: 586
  • Activity:
    0%
  • Reputation Power: 5
  • cgeorgemo has no influence.
  • Gender: Male
  • I'm Brian...cgeorgemo is Curious George Missouri
  • Respect: +36
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #48 on: October 04, 2009, 10:14:42 PM »
0
Okay I've been looking through the documentation at http://wiki.easyuo.com/index.php/Main_Page and I think I'm starting to understand.
I'm really impressed with the way you used a cipher to tell the script how to click. I'm just going to write a sub for each click up and down and for each row and have the script run through them in subs.
Does
Code: [Select]
Str Left #pixcol 1 just grab the 1st number in the #pixcol value?

Sarcasm is your body's natural defense against stupidity.

Offline cgeorgemoTopic starter

  • Hero Member
  • *
  • Posts: 586
  • Activity:
    0%
  • Reputation Power: 5
  • cgeorgemo has no influence.
  • Gender: Male
  • I'm Brian...cgeorgemo is Curious George Missouri
  • Respect: +36
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #49 on: October 05, 2009, 09:22:40 AM »
0
Okay this is what I've come up with so far.
I think I'm done until they unlock the room and let us have access to the puzzle boards again.
Until that happens I cant measure some distances or get some color values I need to make this work.

*WARNING* it isn't nearly as elegant as Manwinc's script is. If you think of his as a marksman's bullet think of mine as an artillery barrage.
[sarcasm]But it is my first script and I think he had done at least a couple more. [/sarcasm]


Code: [Select]
;====================================================
; Script Name: Cgeorgemo's Puzzle Board Clicker
; Author: Cgeorgemo
; Version: 1.0
; Client Tested with: not tested yet
; EUO version tested with: 154
; Shard OSI / FS:  OSI
; Revision Date:
; Public Release:
; Purpose: Clicking the Puzzle Boards
;====================================================

Finditem C_ , #backpackid
set #lobjectid #findid
event macro 17 0
wait 20
gosub Find_Board


;========Find Which Board=====================
sub Find_Board
set %x #contposx + xshift ; measure to find
set %y #contposy + yshift ; measure to find
savepix %x %y 1
If #pixcol xxxxxxxxxxxx ; find this color value
{
 gosub Solve_6
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_8
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_11
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_12
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_10
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_7
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_15
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_3
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_5
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_9
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_13
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_14
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_4
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_1
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_2
 gosub apply
}
gosub Solve_16
gosub apply

;===========Solution Subs=================
sub Solve_1
gosub Row_1
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2d
return

sub Solve_2
gosub Row_1
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_4d
gosub Row_3
gosub Row_3d
gosub Row_1
gosub Row_1u
gosub Row_3
gosub Row_3u
return

sub Solve_3
gosub Row_1
gosub Row_1d
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1d
gosub Row_4
gosub Row_4u
return

sub Solve_4
gosub row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2d
gosub Row_1
gosub Row_1d
gosub Row_1d
gosub Row_4
gosub Row_4d
return

sub Solve_5
gosub Row_1
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_3
gosub Row_3d
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2u
return

sub Solve_6
gosub Row_1
gosub Row_1u
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_2d
gosub Row_1
gosub Row_1d
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_4
gosub Row_4u
return

sub Solve_7
gosub Row_2
gosub Row_3d
gosub Row_1
gosub Row_1d
gosub Row_4
gosub Row_4u
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2u
return

sub Solve_8
gosub Row_4
gosub Row_4d
gosub Row_1
gosub Row_1d
gosub Row_2
gosub Row_2u
gosub Row_2u
return

sub Solve_9
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3d
gosub Row_1
gosub Row_1d
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_4d
gosub Row_3
gosub Row_3u
return

sub Solve_10
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_4
gosub Row_4d
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_3
gosub Row_3d
return

sub Solve_11
gosub Row_4
gosub Row_4d
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_1
gosub Row_1d
return

sub Solve_12
gosub Row_4
gosub Row_4u
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_1d
gosub Row_2
gosub Row_2d
return

sub Solve_13
gosub Row_2
gosub Row_2u
gosub Row_2d
gosub Row_1
gosub Row_1d
gosub Row_2
gosub Row_2d
gosub Row_2u
gosub Row_3
gosub Row_3d
return

sub Solve_14
gosub Row_3
gosub Row_3d
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2u
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_1
gosub Row_1d
return

sub Solve_15
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_4
gosub Row_4d
gosub Row_3
gosub Row_3d
gosub Row_2
gosub Row_2d
gosub Row_4
gosub Row_4u
return

sub Solve_16
gosub Row_3
gosub Row_3u
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_4
gosub Row_4d
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2d
return

;=====================Row and Direction Subs==========
sub Row_1
set %clickx #contpos + 115
set %clicky #contpos + 90
click %clickx %clicky
wait 5
return

sub Row_2
set %clickx #contposx + 115
set %clicky #contposy + 123
click %clickx %clicky
wait 5
return


sub Row_3
set %clickx #contposx + 115
set %clicky #contposy + 156
click %clickx %clicky
wait 5
return

sub Row_4
set %clickx #contposx + 115
set %clicky #contposy + 189
click %clickx %clicky
wait 5
return

sub Row_1u
set %clickx #contposx + 95
set %clicky #contposy + 90
click %clickx %clicky
wait 5
return

sub Row_1d
set %clickx #contposx + 137
set %clicky #contposy + 90
click %clickx %clicky
wait 5
return

sub Row_2u
set %clickx #contposx + 95
set %clicky #contposy + 123
click %clickx %clicky
wait 5
return

sub Row_2d
set %clickx #contposx + 137
set %clicky #contposy + 123
click %clickx %clicky
wait 5
return

sub Row_3u
set %clickx #contposx + 95
set %clicky #contposy +156
click %clickx %clicky
wait 5
return

sub Row_3d
set %clickx #contposx + 137
set %clicky #contposy + 156
click %clickx %clicky
wait 5
return

sub Row_4u
set %clickx #contposx + 95
set %clicky #contposy + 189
click %clickx %clicky
wait 5
return

sub Row_4d
set %clickx #contposx + 137
set %clicky #contposy + 189
click %clickx %clicky
wait 5
return

;============Apply Sub==============
sub apply
set %Clickx #contposx + 120
set %Clicky #contposy + 330
click %clickx %Clicky
wait 5
halt





Well there it sits waiting for OSI to stop all those bad cheaters from getting too much goodies so I can get in the room and finish it.
« Last Edit: October 05, 2009, 09:35:36 AM by cgeorgemo »
Sarcasm is your body's natural defense against stupidity.

Offline cgeorgemoTopic starter

  • Hero Member
  • *
  • Posts: 586
  • Activity:
    0%
  • Reputation Power: 5
  • cgeorgemo has no influence.
  • Gender: Male
  • I'm Brian...cgeorgemo is Curious George Missouri
  • Respect: +36
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #50 on: October 05, 2009, 02:30:22 PM »
0
So I ran the syntax error check in Scriptuo and got these results

Method count: 56
Command count: 56
*** Pass 1 - Label accounting:
*** Error - Subroutine Solve_1 - Line 146 nested without return.
Subroutine labels = 30
Tag labels = 0
15 Code block(s).
0 Warnings(s) encountered.
*** Pass 2 - Execution [SYNTAXCHECK]

When I look at subroutine Solve_1 at line 146 I see a return at line 159 which is meant to end it. What am I missing?
Sarcasm is your body's natural defense against stupidity.

Offline Masscre

  • Gran Master Jester !!
  • Scripthack
  • *
  • Posts: 4615
  • Activity:
    0%
  • Reputation Power: 55
  • Masscre is leading the good life!Masscre is leading the good life!Masscre is leading the good life!Masscre is leading the good life!Masscre is leading the good life!Masscre is leading the good life!Masscre is leading the good life!Masscre is leading the good life!Masscre is leading the good life!Masscre is leading the good life!Masscre is leading the good life!
  • Gender: Male
  • Air Guitar Commander !!
  • Respect: +390
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #51 on: October 05, 2009, 02:58:31 PM »
0
Your structure is a little wacked it problably works but has issues in the structure.

You need a main program
then sub routines to break the main up and make it easy to trouble shoot.


Code: [Select]
;====================================================
; Script Name: Cgeorgemo's Puzzle Board Clicker
; Author: Cgeorgemo
; Version: 1.0
; Client Tested with: not tested yet
; EUO version tested with: 154
; Shard OSI / FS:  OSI
; Revision Date:
; Public Release:
; Purpose: Clicking the Puzzle Boards
;====================================================

Finditem C_ , #backpackid
set #lobjectid #findid
event macro 17 0
wait 20
gosub Find_Board


;========Find Which Board=====================
sub Find_Board                                                   <------------------------ you have a subroutine here but no return for it
set %x #contposx + xshift ; measure to find
set %y #contposy + yshift ; measure to find
savepix %x %y 1
If #pixcol xxxxxxxxxxxx ; find this color value
{
 gosub Solve_6
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_8
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_11
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_12
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_10
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_7
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_15
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_3
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_5
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_9
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_13
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_14
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_4
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_1
 gosub apply
}
set %x #contposx + xshift
set %y #contposy + yshift
savepix %x %y 1
If #pixcol xxxxxxxxxxxx
{
 gosub Solve_2
 gosub apply
}
gosub Solve_16
gosub apply
                                                                              <---------------------------------------structure wise it appears you should have a  return here
;===========Solution Subs=================
sub Solve_1
gosub Row_1
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2d
return

sub Solve_2
gosub Row_1
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_4d
gosub Row_3
gosub Row_3d
gosub Row_1
gosub Row_1u
gosub Row_3
gosub Row_3u
return

sub Solve_3
gosub Row_1
gosub Row_1d
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1d
gosub Row_4
gosub Row_4u
return

sub Solve_4
gosub row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2d
gosub Row_1
gosub Row_1d
gosub Row_1d
gosub Row_4
gosub Row_4d
return

sub Solve_5
gosub Row_1
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_3
gosub Row_3d
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2u
return

sub Solve_6
gosub Row_1
gosub Row_1u
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_2d
gosub Row_1
gosub Row_1d
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_4
gosub Row_4u
return

sub Solve_7
gosub Row_2
gosub Row_3d
gosub Row_1
gosub Row_1d
gosub Row_4
gosub Row_4u
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2u
return

sub Solve_8
gosub Row_4
gosub Row_4d
gosub Row_1
gosub Row_1d
gosub Row_2
gosub Row_2u
gosub Row_2u
return

sub Solve_9
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3d
gosub Row_1
gosub Row_1d
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_4d
gosub Row_3
gosub Row_3u
return

sub Solve_10
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_4
gosub Row_4d
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_3
gosub Row_3d
return

sub Solve_11
gosub Row_4
gosub Row_4d
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_4
gosub Row_4u
gosub Row_1
gosub Row_1d
return

sub Solve_12
gosub Row_4
gosub Row_4u
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_1d
gosub Row_2
gosub Row_2d
return

sub Solve_13
gosub Row_2
gosub Row_2u
gosub Row_2d
gosub Row_1
gosub Row_1d
gosub Row_2
gosub Row_2d
gosub Row_2u
gosub Row_3
gosub Row_3d
return

sub Solve_14
gosub Row_3
gosub Row_3d
gosub Row_2
gosub Row_2u
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2u
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_1
gosub Row_1d
return

sub Solve_15
gosub Row_3
gosub Row_3u
gosub Row_2
gosub Row_2u
gosub Row_4
gosub Row_4d
gosub Row_3
gosub Row_3d
gosub Row_2
gosub Row_2d
gosub Row_4
gosub Row_4u
return

sub Solve_16
gosub Row_3
gosub Row_3u
gosub Row_4
gosub Row_4u
gosub Row_3
gosub Row_3u
gosub Row_4
gosub Row_4d
gosub Row_1
gosub Row_1u
gosub Row_2
gosub Row_2d
return

;=====================Row and Direction Subs==========
sub Row_1
set %clickx #contpos + 115
set %clicky #contpos + 90
click %clickx %clicky
wait 5
return

sub Row_2
set %clickx #contposx + 115
set %clicky #contposy + 123
click %clickx %clicky
wait 5
return


sub Row_3
set %clickx #contposx + 115
set %clicky #contposy + 156
click %clickx %clicky
wait 5
return

sub Row_4
set %clickx #contposx + 115
set %clicky #contposy + 189
click %clickx %clicky
wait 5
return

sub Row_1u
set %clickx #contposx + 95
set %clicky #contposy + 90
click %clickx %clicky
wait 5
return

sub Row_1d
set %clickx #contposx + 137
set %clicky #contposy + 90
click %clickx %clicky
wait 5
return

sub Row_2u
set %clickx #contposx + 95
set %clicky #contposy + 123
click %clickx %clicky
wait 5
return

sub Row_2d
set %clickx #contposx + 137
set %clicky #contposy + 123
click %clickx %clicky
wait 5
return

sub Row_3u
set %clickx #contposx + 95
set %clicky #contposy +156
click %clickx %clicky
wait 5
return

sub Row_3d
set %clickx #contposx + 137
set %clicky #contposy + 156
click %clickx %clicky
wait 5
return

sub Row_4u
set %clickx #contposx + 95
set %clicky #contposy + 189
click %clickx %clicky
wait 5
return

sub Row_4d
set %clickx #contposx + 137
set %clicky #contposy + 189
click %clickx %clicky
wait 5
return

;============Apply Sub==============
sub apply                             <--------------------------------- you also have a sub routine here but no return for it either
set %Clickx #contposx + 120
set %Clicky #contposy + 330
click %clickx %Clicky
wait 5
halt
                                             <--------------------------------- you have a halt here but this is not teh main bulk of the program just a subroutine you need a return here also
« Last Edit: October 05, 2009, 05:16:50 PM by TrailMyx »

Offline UOMaddog

  • Maddog
  • Elite
  • *
  • *
  • Posts: 1625
  • Activity:
    0%
  • Reputation Power: 22
  • UOMaddog might someday be someone...UOMaddog might someday be someone...UOMaddog might someday be someone...UOMaddog might someday be someone...
  • Gender: Male
  • Biggest B@D@$$ of the Universe
  • Respect: +307
  • Referrals: 8
    • View Profile
    • Insane UO
Re: Puzzle Boards
« Reply #52 on: October 05, 2009, 05:15:30 PM »
0
Massacre...for being Elite, you sure don't know how to use Code brackets!!  :P

Fixed - TM
« Last Edit: October 05, 2009, 05:19:18 PM by TrailMyx »
There are 10 kinds of people in this world: those that understand binary and those that don't!

Windows:  A 64-bit tweak of a 32-bit extension to a 16-bit user interface for an 8-bit operating system based on a 4-bit architecture from a 2-bit company that can't stand 1 bit of competition!

Offline cgeorgemoTopic starter

  • Hero Member
  • *
  • Posts: 586
  • Activity:
    0%
  • Reputation Power: 5
  • cgeorgemo has no influence.
  • Gender: Male
  • I'm Brian...cgeorgemo is Curious George Missouri
  • Respect: +36
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #53 on: October 05, 2009, 05:40:05 PM »
0
Masscre thanks for the tips. Hell thank all of you for the tips.
I moved some stuff around slightly and came up with this.
Code: [Select]
;====================================================
; Script Name: Cgeorgemo's Puzzle Board Clicker
; Author: Cgeorgemo
; Version: 1.1
; Client Tested with: not tested yet
; EUO version tested with: 154
; Shard OSI / FS:  OSI
; Revision Date:
; Public Release:
; Purpose: Clicking the Puzzle Boards
;====================================================
Finditem C_ , #backpackid
set #lobjectid #findid
event macro 17 0
wait 20
gosub Find_Board
gosub apply
halt


;========Find Which Board=====================
sub Find_Board
  set %x #contposx + xshift ; measure to find
  set %y #contposy + yshift ; measure to find
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx ; find this color value
  {
    gosub Solve_6
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_8
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_11
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_12
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_10
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_7
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_15
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_3
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_5
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_9
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_13
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_14
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_4
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_1
    return
  }
  set %x #contposx + xshift
  set %y #contposy + yshift
  savepix %x %y 1
  If #pixcol xxxxxxxxxxxx
  {
    gosub Solve_2
    return
  }
  gosub Solve_16
  return

;===========Solution Subs=================
sub Solve_1
  gosub Row_1
  gosub Row_1u
  gosub Row_4
  gosub Row_4u
  gosub Row_3
  gosub Row_3u
  gosub Row_2
  gosub Row_2u
  gosub Row_1
  gosub Row_1u
  gosub Row_2
  gosub Row_2d
return

sub Solve_2
  gosub Row_1
  gosub Row_1u
  gosub Row_4
  gosub Row_4u
  gosub Row_4d
  gosub Row_3
  gosub Row_3d
  gosub Row_1
  gosub Row_1u
  gosub Row_3
  gosub Row_3u
return

sub Solve_3
  gosub Row_1
  gosub Row_1d
  gosub Row_2
  gosub Row_2u
  gosub Row_1
  gosub Row_1d
  gosub Row_4
  gosub Row_4u
return

sub Solve_4
  gosub row_3
  gosub Row_3u
  gosub Row_2
  gosub Row_2u
  gosub Row_1
  gosub Row_1u
  gosub Row_2
  gosub Row_2d
  gosub Row_1
  gosub Row_1d
  gosub Row_1d
  gosub Row_4
  gosub Row_4d
return

sub Solve_5
  gosub Row_1
  gosub Row_1u
  gosub Row_4
  gosub Row_4u
  gosub Row_3
  gosub Row_3u
  gosub Row_2
  gosub Row_2u
  gosub Row_3
  gosub Row_3d
  gosub Row_1
  gosub Row_1u
  gosub Row_2
  gosub Row_2u
return

sub Solve_6
  gosub Row_1
  gosub Row_1u
  gosub Row_3
  gosub Row_3u
  gosub Row_2
  gosub Row_2u
  gosub Row_2d
  gosub Row_1
  gosub Row_1d
  gosub Row_4
  gosub Row_4u
  gosub Row_3
  gosub Row_3u
  gosub Row_4
  gosub Row_4u
return

sub Solve_7
  gosub Row_2
  gosub Row_3d
  gosub Row_1
  gosub Row_1d
  gosub Row_4
  gosub Row_4u
  gosub Row_1
  gosub Row_1u
  gosub Row_2
  gosub Row_2u
return

sub Solve_8
  gosub Row_4
  gosub Row_4d
  gosub Row_1
  gosub Row_1d
  gosub Row_2
  gosub Row_2u
  gosub Row_2u
return

sub Solve_9
  gosub Row_4
  gosub Row_4u
  gosub Row_3
  gosub Row_3d
  gosub Row_1
  gosub Row_1d
  gosub Row_1u
  gosub Row_4
  gosub Row_4u
  gosub Row_4d
  gosub Row_3
  gosub Row_3u
return

sub Solve_10
  gosub Row_4
  gosub Row_4u
  gosub Row_3
  gosub Row_3u
  gosub Row_4
  gosub Row_4d
  gosub Row_2
  gosub Row_2u
  gosub Row_1
  gosub Row_1u
  gosub Row_3
  gosub Row_3d
return

sub Solve_11
  gosub Row_4
  gosub Row_4d
  gosub Row_3
  gosub Row_3u
  gosub Row_2
  gosub Row_2u
  gosub Row_1
  gosub Row_1u
  gosub Row_4
  gosub Row_4u
  gosub Row_1
  gosub Row_1d
return

sub Solve_12
  gosub Row_4
  gosub Row_4u
  gosub Row_2
  gosub Row_2u
  gosub Row_1
  gosub Row_1u
  gosub Row_1d
  gosub Row_2
  gosub Row_2d
return

sub Solve_13
  gosub Row_2
  gosub Row_2u
  gosub Row_2d
  gosub Row_1
  gosub Row_1d
  gosub Row_2
  gosub Row_2d
  gosub Row_2u
  gosub Row_3
  gosub Row_3d
return

sub Solve_14
  gosub Row_3
  gosub Row_3d
  gosub Row_2
  gosub Row_2u
  gosub Row_1
  gosub Row_1u
  gosub Row_2
  gosub Row_2u
  gosub Row_4
  gosub Row_4u
  gosub Row_3
  gosub Row_3u
  gosub Row_1
  gosub Row_1d
return

sub Solve_15
  gosub Row_3
  gosub Row_3u
  gosub Row_2
  gosub Row_2u
  gosub Row_4
  gosub Row_4d
  gosub Row_3
  gosub Row_3d
  gosub Row_2
  gosub Row_2d
  gosub Row_4
  gosub Row_4u
return

sub Solve_16
  gosub Row_3
  gosub Row_3u
  gosub Row_4
  gosub Row_4u
  gosub Row_3
  gosub Row_3u
  gosub Row_4
  gosub Row_4d
  gosub Row_1
  gosub Row_1u
  gosub Row_2
  gosub Row_2d
return

;=====================Row and Direction Subs==========
sub Row_1
  set %clickx #contpos + 115
  set %clicky #contpos + 90
  click %clickx %clicky
  wait 5
return

sub Row_2
  set %clickx #contposx + 115
  set %clicky #contposy + 123
  click %clickx %clicky
  wait 5
return


sub Row_3
  set %clickx #contposx + 115
  set %clicky #contposy + 156
  click %clickx %clicky
  wait 5
return

sub Row_4
  set %clickx #contposx + 115
  set %clicky #contposy + 189
  click %clickx %clicky
  wait 5
return

sub Row_1u
  set %clickx #contposx + 95
  set %clicky #contposy + 90
  click %clickx %clicky
  wait 5
return

sub Row_1d
  set %clickx #contposx + 137
  set %clicky #contposy + 90
  click %clickx %clicky
  wait 5
return

sub Row_2u
  set %clickx #contposx + 95
  set %clicky #contposy + 123
  click %clickx %clicky
  wait 5
return

sub Row_2d
  set %clickx #contposx + 137
  set %clicky #contposy + 123
  click %clickx %clicky
  wait 5
return

sub Row_3u
  set %clickx #contposx + 95
  set %clicky #contposy +156
  click %clickx %clicky
  wait 5
return

sub Row_3d
  set %clickx #contposx + 137
  set %clicky #contposy + 156
  click %clickx %clicky
  wait 5
return

sub Row_4u
  set %clickx #contposx + 95
  set %clicky #contposy + 189
  click %clickx %clicky
  wait 5
return

sub Row_4d
  set %clickx #contposx + 137
  set %clicky #contposy + 189
  click %clickx %clicky
  wait 5
return

;============Apply Sub==============
sub apply
  set %Clickx #contposx + 120
  set %Clicky #contposy + 330
  click %clickx %Clicky
  wait 5
return


No syntax errors and about half as many sub calls.
Still a crap ton of sub calls though............yeah a crap ton.......it's a metric unit.....
Sarcasm is your body's natural defense against stupidity.

Offline UOMaddog

  • Maddog
  • Elite
  • *
  • *
  • Posts: 1625
  • Activity:
    0%
  • Reputation Power: 22
  • UOMaddog might someday be someone...UOMaddog might someday be someone...UOMaddog might someday be someone...UOMaddog might someday be someone...
  • Gender: Male
  • Biggest B@D@$$ of the Universe
  • Respect: +307
  • Referrals: 8
    • View Profile
    • Insane UO
Re: Puzzle Boards
« Reply #54 on: October 05, 2009, 05:59:06 PM »
0
You could probably use my tutorial to combine all the different subs into 1 sub where you pass it the correct coordinates. It'd be a good practice is sub-passing arguments!
There are 10 kinds of people in this world: those that understand binary and those that don't!

Windows:  A 64-bit tweak of a 32-bit extension to a 16-bit user interface for an 8-bit operating system based on a 4-bit architecture from a 2-bit company that can't stand 1 bit of competition!

Offline cgeorgemoTopic starter

  • Hero Member
  • *
  • Posts: 586
  • Activity:
    0%
  • Reputation Power: 5
  • cgeorgemo has no influence.
  • Gender: Male
  • I'm Brian...cgeorgemo is Curious George Missouri
  • Respect: +36
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #55 on: October 05, 2009, 08:15:10 PM »
0
You could probably use my tutorial to combine all the different subs into 1 sub where you pass it the correct coordinates. It'd be a good practice is sub-passing arguments!
I'll take a look.
I'm not sure how you could combine those subs without basically ripping off what Manwinc did. But then again I didn't understand what he'd done till I read it about 30 times.
Sarcasm is your body's natural defense against stupidity.

Offline UOMaddog

  • Maddog
  • Elite
  • *
  • *
  • Posts: 1625
  • Activity:
    0%
  • Reputation Power: 22
  • UOMaddog might someday be someone...UOMaddog might someday be someone...UOMaddog might someday be someone...UOMaddog might someday be someone...
  • Gender: Male
  • Biggest B@D@$$ of the Universe
  • Respect: +307
  • Referrals: 8
    • View Profile
    • Insane UO
Re: Puzzle Boards
« Reply #56 on: October 05, 2009, 08:26:49 PM »
0
I honestly didnt look at manwinc's so i don't know...I'll take a look!
There are 10 kinds of people in this world: those that understand binary and those that don't!

Windows:  A 64-bit tweak of a 32-bit extension to a 16-bit user interface for an 8-bit operating system based on a 4-bit architecture from a 2-bit company that can't stand 1 bit of competition!

Scrripty

  • Guest
Re: Puzzle Boards
« Reply #57 on: October 05, 2009, 08:42:10 PM »
0
You could probably use my tutorial to combine all the different subs into 1 sub where you pass it the correct coordinates. It'd be a good practice is sub-passing arguments!
I'll take a look.
I'm not sure how you could combine those subs without basically ripping off what Manwinc did. But then again I didn't understand what he'd done till I read it about 30 times.

Hey, no scripters have a copyright on a script you write.  So if his way is the ONLY way to do it, its probly ok to do it that way, just try to write it yourself.

Offline cgeorgemoTopic starter

  • Hero Member
  • *
  • Posts: 586
  • Activity:
    0%
  • Reputation Power: 5
  • cgeorgemo has no influence.
  • Gender: Male
  • I'm Brian...cgeorgemo is Curious George Missouri
  • Respect: +36
  • Referrals: 1
    • View Profile
Re: Puzzle Boards
« Reply #58 on: October 05, 2009, 09:41:53 PM »
0
If the only way to do it was the way manwinc did I don't think I'd bother trying to skin that cat again.
You really should go look a this script it's elegant.
He creates a loop that saves the first number of 12 different color values from scans that he takes at
221 91
221 126
221 161
221 196
262 92
262  127
262 162
262 197
303 93
303 128
303 163
303 198
After he gets the pixel code he then assigns a cipher that passes the correct movements by breaking apart the cipher 2 values at a time.
Freaking cool!
« Last Edit: October 05, 2009, 10:00:27 PM by cgeorgemo »
Sarcasm is your body's natural defense against stupidity.

Scrripty

  • Guest
Re: Puzzle Boards
« Reply #59 on: October 06, 2009, 07:35:39 AM »
0
If the only way to do it was the way manwinc did I don't think I'd bother trying to skin that cat again.
You really should go look a this script it's elegant.
He creates a loop that saves the first number of 12 different color values from scans that he takes at
After he gets the pixel code he then assigns a cipher that passes the correct movements by breaking apart the cipher 2 values at a time.
Freaking cool!

I believe I read something about it posted by cheffe.  He explained something like that very technique in a tutorial on #pixcol scanning I believe. :)  Basically showing that the best way to come up with a unique value was to add a bunch of the number results for the pixels together to come up with a unique number.  Definately good reading.  I'll see if I can find it.

Tags: