Author Topic: the beginnings  (Read 11588 times)

0 Members and 1 Guest are viewing this topic.

Offline SunTigressTopic starter

  • TopTwo's Woman
  • Elite
  • *
  • *
  • Posts: 900
  • Activity:
    0%
  • Reputation Power: 9
  • SunTigress has no influence.
  • Gender: Female
  • Respect: +43
  • Referrals: 0
    • View Profile
the beginnings
« on: July 29, 2009, 07:56:04 PM »
0
ok, i basically took the advise of my elders (hehe) and started from the beginning, testing each piece as I go. So far, I can check to make sure my dagger is in my pack, and I can set my variables. I can now SJ into Covetous and am working on writing in my rail.

Step 1 - Dagger check -> done
Step 2 - Set variables -> done
Step 3 - Recall to harpies -> done
Step 4 - Get on rail and find harpies -> in progress
Step 5 - Kill harpies
Step 6 - Use Claw to loot feathers
Step 7 - Continue on rail killing harpies and looting
Step 8 - When overweight, recall home
Step 9 - Dump loot
Step 10 - Repeat

Version 1.2

Code: [Select]
;Setup
;~~~~~~~~~~~~~~~~~~~~~~~~Daggers~~~~~~~~~~~~~~~~~~~~~~~~
finditem TSF_WSF_ c
if #findkind = -1
{
   display Ok, You do not have a dagger in your backpack.
   halt
}
set %daggerID #findid

;~~~~~~~~~~~~~~~~~~~~~~~~Runebooks~~~~~~~~~~~~~~~~~~~~~~
gosub TM_AddUnderscore #CHARNAME
set %charname #RESULT
set %rune1 1
set %rune2 2
GoSub setup_runebook
GoSub setup_travel
GoSub setup_secure

;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Main loop
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
repeat
GoSub Harpies
until #false




;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;subs
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


sub harpies
    set %runebook %runebookid
     GoSub TM_TravelFromRunebook %travel_method %rune2 %rune2 %runebook
return


sub setup_runebook
display Target your Rune Book.
   wait 1
   set #targcurs 1
   while #targcurs = 1
     wait 0
set %runebookid #ltargetid
return


sub setup_travel
   set %travel_method SJ
   display YESNO Travel by Sacred Journey?
   if #dispres = NO
   {
   set %travel_method RE
   }
return

sub setup_secure
   display  Target your secure container.
   wait 5
   set #targcurs 1
   target
   while #targcurs = 1
     wait 0
   set %secure #ltargetid #findx #findy #findz
return



;=================================================================
; Script Name: TrailMyx's Runebook/Spellcast Subs
; Author: TrailMyx
; Version: 2.5
; Shard OSI / FS: OSI / FS
; Revision Date: 09/27/2007
; Purpose:
;   Runebook subs to manage your runebook travel needs.  You need either to know
;   the runebook ID or runebook name.
;
; Subroutines:
;     TM_NewCastSpell - casts spells with appropriate waits, delays, retrys.
;     TM_TravelFromRunebook - Uses specified runbook #FINDID to travel from .  If a location is blocked
;                             the next location will be tried until success.
;     TM_TravelFromNamedRunebook - Same as TM_TravelFromRunebook, but allows you to specify a runebook name
;
;  Examples:
;     gosub TM_NewCastSpell 31 !rbook 10 20 20 ; recall
;     gosub TM_TravelFromRunebook RE 1 3 %runebookid ; travel (recall) to location from #FINDID runebook using slots 1-3
;     gosub TM_TravelFromNamedRunebook GA 1 2 LUMBERJACKING1 ; gate using LUMBERJACKING1 runebook starting at rune 1
;     gosub TM_RandomRunebookTravel SJ 1 6 %runebookid  ; Randomly choose a rune from 1-6 in runebook
;     gosub TM_TravelFromObject RE %runeid ; travels to rune specified by %runeid
;
;  Use of these subrountes is allowed, but please give me (TrailMyx) credit somewhere in your script.
;
;  Release History:
;     2.0 - Initial public release
;     2.1 - Bug in TM_FindValidTextNoAdvance, added return value to TM_TravelFromNamedRunebook
;     2.2 - Bug in TM_NewCastSpell when mana gets too low
;     2.3 - Better spellcasting for chivalry, necro
;           Added TM_TravelFromNamedRunebook
;           Added TM_RandomRunebookTravel
;     2.4 - Little fix for journal handler
;     2.5 - Hack to allow for transport through a red moongate.
;
;  Requirements:
;
;    This script requires that you have your character name
;    setup in a variable called %charname.  Place this bit of code
;    in your script initialization somewhere:
;
;   gosub TM_AddUnderscore #CHARNAME
;   set %charname #RESULT
;=================================================================
;-------------------------------------------------------------------------------
; %1 = spell number
; %2 = #TARGETID or SELF or NONE
; %3 = retry count (-1 = cast until successful)
; %4 = cast delay
; %5 = recovery delay
sub TM_NewCastSpell
  namespace push
  namespace local NCS
  set !lpc #LPC
  set #LPC 100
  set !whichspell %1
  set !whichtarget %2
  set !castretrymax %3
  set !waitdelay %4
  set !recovery_delay %5

  set !castretry 0
  set !temp_ltargetid #LTARGETID
  set !temp_ltargetkind #LTARGETKIND

  NewCastSpell_loop1:
    if !castretrymax < 0
      goto NewCastSpell_cont1
    if !castretry > !castretrymax
      goto NewCastSpell_end1
    NewCastSpell_cont1:
      gosub TM_AdvJournalSync SPELLCAST
      set #LTARGETKIND 1
      set #LTARGETID !whichtarget
      set !tempmana #MANA
      event macro 15 !whichspell ; cast the spell
      wait !waitdelay
      set !targettimeout #SCNT + 7
      NewCastSpell_wait1:
        gosub TM_AdvJournalScan SPELLCAST VALID you_have_not_yet mana your_spirit more_reagents
        if #RESULT = #TRUE || #SCNT > !targettimeout
        {
          set !casttimeout #SCNT2 + !recovery_delay
          repeat
          until #SCNT2 > !casttimeout     ; finish up cast delay
          set !castretry !castretry + 1
          goto NewCastSpell_loop1
        }
        if !whichtarget = NONE
          goto NewCastSpell_skip1
        if #TARGCURS = 1
          goto NewCastSpell_targ1
        goto NewCastSpell_wait1 ; wait for target cursor

  NewCastSpell_targ1:
    if !whichtarget = SELF
      event macro 23
    else
      event macro 22

  NewCastSpell_skip1:
    wait 5
    set !casttimeout #SCNT2 + !recovery_delay
    NewCastSpell_skip2:
      if !whichspell >= 0 && !whichspell <= 63 ; Magery
      {
        gosub TM_AdvJournalScan SPELLCAST VALID spell_fizzles there_is_already mana your_spirit more_reagents
      }
      else
      {
        set !cont #FALSE  ; Chivalry, Necromancy, etc
        finditem !whichtarget *
        if !whichtarget in SELF_NONE || #FINDKIND <> -1
          set !cont #TRUE

        if #MANA >= !tempmana && !cont = #TRUE ; check if target is still there
          set #RESULT #TRUE
        else
          set #RESULT #FALSE
      }
      repeat
      until #SCNT2 > !casttimeout     ; finish up cast delay
      if #RESULT = #TRUE
      {
        if !castretrymax > -1
        {
          set !castretry !castretry + 1 ; %castretrymax of -1 will cast until successful
          if !castretry > !castretrymax
            goto NewCastSpell_end1
        }
        goto NewCastSpell_loop1
      }
      if #SCNT2 <= !casttimeout     ; finish up cast delay
        goto NewCastSpell_skip2
  NewCastSpell_end1:
    set #LTARGETID !temp_ltargetid
    set #LTARGETKIND !temp_ltargetkind
    set #LPC !lpc
    namespace pop
return
;-------------------------------------------------------------------------------
; %1 = Method (RE, GA, SJ)
; %2 = index location within runebook (1-16)
; %3 = index location within runebook (1-16), try up to this point
; %4 = runebook item id
; returns #TRUE if error, #FALSE for no error
sub TM_TravelFromRunebook
  namespace push
  namespace local RFR
  set #LTARGETKIND 1
  set !method %1
  set !locindex %2
  set !locindexend %3
  set !rbook %4

  finditem !rbook C_ , #BACKPACKID
  if !method notin RE_GA_SJ || #FINDKIND = -1
  {
    namespace pop
    return #TRUE
  }
  if !locindex notin 1_2_3_4_5_6_7_8_9_10_11_12_13_14_15_16
  {
    namespace pop
    return #TRUE
  }
  if !locindexend notin 1_2_3_4_5_6_7_8_9_10_11_12_13_14_15_16
  {
    namespace pop
    return #TRUE
  }

  TravelFromRunebook_loop1:
    set #LOBJECTID !rbook
    set #LTARGETKIND 1
    event macro 17 0
    gosub GumpWait generic_gump generic_gump

    set !runeclickx 140 ; page 1, rune 1
    set !runeclickx ( #CONTPOSX + !runeclickx + ( 35 * ( ( !locindex - 1 ) / 2 ) ) )
    if !locindex > 8
    {
      set !runeclickx 310 ; page 2, rune 1
      set !runeclickx ( #CONTPOSX + !runeclickx + ( 35 * ( ( !locindex - 9 ) / 2 ) ) )
    }
    set !runeclicky #CONTPOSY + 196
    click !runeclickx !runeclicky
    wait 5

    set !runeclicky #CONTPOSY + 24
    set !runeclickx #CONTPOSX + 164 ; page 1 set to default
    if !locindex % 2 = 0
    {
      set !runeclickx #CONTPOSX + 305 ; page 2 set to default
    }
    click !runeclickx !runeclicky
    wait 5
    set !oldx #CHARPOSX
    set !oldy #CHARPOSY
    if !method = RE
      gosub TM_NewCastSpell 31 !rbook -1 10 10 ; recall until successful
    if !method = GA
    {
      gosub TM_NewCastSpell 51 !rbook -1 10 20 ; gate until successful
      set !temp_cnt #SCNT + 10
      repeat
        finditem KEF_OTF_JEF G_0
      until #FINDKIND <> -1 || #SCNT > !temp_cnt
      if #FINDKIND <> -1
      {
        set #LOBJECTID #FINDID
        wait 10
        event macro 17 0
        wait 20
        if #CONTNAME = generic_gump && #CONTSIZE = 420_280
        {
          gosub TM_AdvJournalSync SPELLCAST
          set !clickx #CONTPOSX + 26
          set !clicky #CONTPOSY + 261
          click !clickx !clicky ; click ok
        }
      }
    }

    if !method = SJ
      gosub TM_NewCastSpell 210 !rbook -1 10 30 ; sacred journey until successful
    wait 30

    set !tempscnt #SCNT + 10
  WaitforTravel_loop1:
    gosub TM_AdvJournalScan SPELLCAST VALID location_is_blocked something_is_blocking you_spirit_lacks
    if #RESULT = #TRUE
    {
      gosub TM_AdvJournalSync SPELLCAST
      set !locindex !locindex + 1
      if !locindex > !locindexend
      {
        namespace pop
        return #TRUE
      }
      goto TravelFromRunebook_loop1
    }
    if ( ( #CHARPOSX = !oldx && #CHARPOSY = !oldy ) && #SCNT < !tempscnt )
      goto WaitforTravel_loop1

  if #CONTNAME = generic_gump && #CONTSIZE = 452_236 ; RunUO close runebook
  {
    set !clickx #CONTPOSX + 120
    set !clicky #CONTPOSY + 60
    click !clickx !clicky mc r
    wait 5
  }
  namespace pop
  click 401 254 n
return #FALSE
;------------------------------------------------
; %1 method
; %2 starting index
; %3 ending index
; %4 runebook name
sub TM_TravelFromNamedRunebook
  namespace push
  namespace local TFNR
  set !method %1
  set !start_index %2
  set !end_index %3
  set !runbook_name %4
  if !method notin RE_GA_SJ
  {
    namespace pop
    return #TRUE
  }
  if !start_index notin 1_2_3_4_5_6_7_8_9_10_11_12_13_14_15_16
  {
    namespace pop
    return #TRUE
  }
  if !end_index notin 1_2_3_4_5_6_7_8_9_10_11_12_13_14_15_16
  {
    namespace pop
    return #TRUE
  }
  locatenamedrunebook:
    finditem ZBN C_ , #BACKPACKID
    if #FINDKIND <> -1
    {
      event property #FINDID
      if !runbook_name in #PROPERTY
      {
        gosub TM_TravelFromRunebook !method !start_index !end_index #FINDID ; recall to location
      }
      else
      {
        ignoreitem #FINDID rbook
        goto locatenamedrunebook
      }
    }
    else
    {
      display ok Cannot locate specified runebook named , #SPC , !runbook_name
      stop
    }
  ignoreitem reset rbook
  namespace pop
return
;-------------------------------------------------------------------------------
sub TM_RandomRunebookTravel
  namespace push
  namespace local RRT
  set !travelmethod %1
  set !rune1 %2
  set !rune2 %3
  set !runebook %4
  if !rune1 > !rune2
  {
    set !temp !rune2
    set !rune2 !rune1
    set !rune1 !temp
  }
  RunebookTravel_loop1:
    set !random #RANDOM
    set !rune ( ( !random % ( !rune2 - !rune1 + 1 ) ) + !rune1 )
    gosub TM_TravelFromRunebook !travelmethod !rune !rune !runebook
    if #RESULT = #TRUE
      goto RunebookTravel_loop1
  namespace pop
return
;-------------------------------------------------------------------------------
; %1 = Method (RE, GA, SJ)
; %2 = Object Findid
; returns #TRUE if error, #FALSE for no error
sub TM_TravelFromObject
  namespace push
  namespace local RFR
  set !method %1
  set !object %2

  finditem !object C_ , #BACKPACKID
  if !method notin RE_GA_SJ || #FINDKIND = -1
  {
    namespace pop
    return #TRUE
  }

  set !oldx #CHARPOSX
  set !oldy #CHARPOSY
  TravelFromObject_loop1:
    if !method = RE
      gosub TM_NewCastSpell 31 !object -1 10 10 ; recall until successful
    if !method = GA
    {
      gosub TM_NewCastSpell 51 !object -1 10 20 ; gate until successful
      set !temp_cnt #SCNT + 10
      repeat
        finditem KEF_OTF_JEF G_0
      until #FINDKIND <> -1 || #SCNT > !temp_cnt
      if #FINDKIND <> -1
      {
        set #LOBJECTID #FINDID
        wait 10
        event macro 17 0
        wait 20
        if #CONTNAME = generic_gump && #CONTSIZE = 420_280
        {
          gosub TM_AdvJournalSync SPELLCAST
          set !clickx #CONTPOSX + 26
          set !clicky #CONTPOSY + 261
          click !clickx !clicky ; click ok
        }
      }
    }

    if !method = SJ
      gosub TM_NewCastSpell 210 !object -1 10 30 ; sacred journey until successful
    wait 30

    set !tempscnt #SCNT + 10
  WaitforTravel2_loop1:
    gosub TM_AdvJournalScan SPELLCAST VALID location_is_blocked something_is_blocking your_spirit_lacks
    if #RESULT = #TRUE
    {
      gosub TM_AdvJournalSync SPELLCAST
      set !locindex !locindex + 1
      if !locindex > !locindexend
      {
        namespace pop
        return #TRUE
      }
      goto TravelFromObject_loop1
    }

    if ( ( #CHARPOSX = !oldx && #CHARPOSY = !oldy ) && #SCNT < !tempscnt )
      goto WaitforTravel2_loop1
  namespace pop
return #FALSE
;-------------------------------------------------------------------------------
; %1 - Journal Name
; %2 - #LPC setting (optional)
; Brings !_jindex up to the most recent #journal entry
sub TM_AdvJournalSync
  namespace push
  namespace local TM_AdvJS_ , %1
  set !_jindex #jindex + 1
  if %0 > 1
    set !lpc_set %2
  namespace pop
  set !TM_FunctionCalled #TRUE
return
;-------------------------------------------------------------------------------
; %1 - Journal Name
; %2 - NONE, ADVANCE , ( _VALID ) - advances jindex pointer, anything else
; %3, %4, %5, etc strings to match
; returns #TRUE for match, #FALSE for no match
;  Will not advance !_jindex pointer to allow for scanning journal history for more than one search.
;  Also searches for : , #SPC in journal entry to be sure someone isn't spamming the text
;  About %2 arguments:
;    NONE: defaults to basic journal scan (no SPAM checking, no #jindex pointer copy advancing)
;    ADVANCE: no spam checking, advances #jindex copy
;    VALID: invokes SPAM filtering, no advance of #jindex copy
;    VALID_ADVANCE, VALIDADVANCE, ADVANCE_VALID, etc.: invokes SPAM filtering, advances of #jindex copy
sub TM_AdvJournalScan
  namespace push
  namespace local TM_AdvJS_ , %1
  set !args %2
  set !temp_lpc #LPC
  if !lpc_set = N/A
    set #LPC 1000
  else
    set #LPC !lpc_set
  set !num_args %0
  set !first_arg 3
  if !_jindex = N/A
    set !_jindex #jindex
  if !charname = N/A
  {
    set !charname #CHARNAME
    AdvJournalScan_loop1:
      str pos !charname #SPC
      if #STRRES <> 0
      {
        set !val #STRRES - 1
        str left !charname !val
        set !left #STRRES
        set !val !val + 1
        str del !charname 1 !val
        set !charname !left , _ , #STRRES
        goto AdvJournalScan_loop1
      }
  }
  set !index !first_arg
  repeat
    set !temp_jindex !_jindex
    set !text % . !index
    while !temp_jindex <= #jindex
    {
      scanjournal !temp_jindex
      str pos #JOURNAL !charname 1
      set !namepos #STRRES
      str count #JOURNAL !charname
      set !namecnt #STRRES
      str pos #JOURNAL :_ 1
      set !smcpos #STRRES
      str pos #JOURNAL !text 1
      set !textpos #STRRES
      if !textpos < !smcpos && !smcpos <> 0 || !smcpos = 1 || :_ notin #JOURNAL || VALID notin !args
        set !pass #TRUE
      else
        set !pass #FALSE
      if ( !text in #journal && ( ( !namepos = 1 && !namecnt <= 1 ) || !pass ) )
      {
        set !temp_jindex !temp_jindex + 1
        if ADVANCE in !args
          set !_jindex !temp_jindex
        set #LPC !temp_lpc
        namespace pop
        set !TM_FunctionCalled #TRUE
        return #TRUE
      }
      set !temp_jindex !temp_jindex + 1
    }
    set !index !index + 1
  until !index - !first_arg > !num_args - !first_arg
  set #LPC !temp_lpc
  namespace pop
  set !TM_FunctionCalled #TRUE
return #FALSE
;-------------------------------------------------------------------------------
; %1 = Gumpname 1
; %2 = Gumpname 2
; #TRUE gump occured before timeout
sub GumpWait
  namespace push
  namespace local GW
  wait 10
  set !timedelay #SCNT
  while #SCNT <= !timedelay + 7
  {
    if #CONTNAME = %1 || #CONTNAME = %2
    {
      namespace pop
      return #TRUE
    }
  }
  namespace pop
return #FALSE



;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;End of TM subs
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~





 
« Last Edit: August 01, 2009, 06:58:29 AM by SunTigress »
If at first you don't succeed, try try again. Then give up. There is no use in making a fool of yourself.

Scrripty

  • Guest
Re: the beginnings
« Reply #1 on: July 30, 2009, 12:44:57 AM »
0
You need to put TM's Advanced Journal Scanner in there I believe just at a quick glance.  You have a check weight gosub without a check weight SUB.  Also, you're calling TM_TravelFromRuneBook with a gosub, but the name doesn't match, the closest is, TM_TravelFromNamedRunebook.  That should help fix some of your problems. :)

Offline Cerveza

  • Hacksimus Maximus
  • Scripthack
  • *
  • Posts: 5857
  • Activity:
    0%
  • Reputation Power: 80
  • Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!
  • Gender: Male
  • So... Hows that Hopey-Changey thing working out?
  • Respect: +403
  • Referrals: 11
    • View Profile
Re: the beginnings
« Reply #2 on: July 30, 2009, 05:19:09 AM »
0
Code: [Select]
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Main loop
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MAIN_LOOP
    GoSub Harpies

Try this instead

Code: [Select]
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
;Main loop
;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
repeat
gosub Harpies
until #false

Your mainloop isn't code and falls through....
XXXXXXXXXX________________________________________] 20%
I've forgotten more about this game then most people will ever know.
Thank you for controlling your children. Their manners reflect your love for them.
Give a man a fish and you feed him for a day. Don't teach a man to fish, and you feed yourself. He's a grown man. Fishing's not that hard.

Offline SunTigressTopic starter

  • TopTwo's Woman
  • Elite
  • *
  • *
  • Posts: 900
  • Activity:
    0%
  • Reputation Power: 9
  • SunTigress has no influence.
  • Gender: Female
  • Respect: +43
  • Referrals: 0
    • View Profile
Re: the beginnings
« Reply #3 on: July 30, 2009, 07:56:24 AM »
0
Also, you're calling TM_TravelFromRuneBook with a gosub, but the name doesn't match, the closest is, TM_TravelFromNamedRunebook.  That should help fix some of your problems. :)

thats because i kept trying different ways, from in my script using runebook and using TMs runebook, and using namedrunebook and TMs namedrunebook. i couldn't get either to work, and i got so frustrated last night that i wasn't paying attention when i posted. sorry.
If at first you don't succeed, try try again. Then give up. There is no use in making a fool of yourself.

Offline TrailMyx

  • Officially retired from UO
  • Administrator
  • *
  • *
  • Posts: 13303
  • Activity:
    0.4%
  • Reputation Power: 154
  • TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!
  • Gender: Male
  • Viper!
  • Respect: +1349
  • Referrals: 33
    • View Profile
    • ScriptUO
Re: the beginnings
« Reply #4 on: July 30, 2009, 08:01:43 AM »
0
For my runebooks subs to work, you need these:

TM_AdvJournalSync
TM_AdvJournalScan
at least TM_TravelFromRunebook
and TM_NewCastSpell

That's why I suggested you loading your code up into ScriptUO (the program) and then going to the Tools tab and selecting Syntax Error Check

Here's the output from that:

Code: [Select]
Method count: 56
Command count: 56
*** Pass 1 - Label accounting:
*** Warning - GOSUB gumpwait - Line 79 has no matching SUBroutine
*** Warning - GOSUB check_weight - Line 441 has no matching SUBroutine
*** Warning - SUBROUTINE tm_travelfromnamedrunebook - Line 165 unused
Subroutine labels = 10
Tag labels = 11
34 Code block(s).
3 Warnings(s) encountered.
*** Pass 2 - Execution [SYNTAXCHECK]
** Error - Line 1: Unknown command Setup

So it looks like you have the runebook stuff covered.  In fact you don't need tm_travelfromnamedrunebook.  But the script is looking for two other subs that aren't there yet.
« Last Edit: July 30, 2009, 08:04:54 AM by TrailMyx »
Please read the ScriptUO site RULES
Come play RIFT with me!

Offline SunTigressTopic starter

  • TopTwo's Woman
  • Elite
  • *
  • *
  • Posts: 900
  • Activity:
    0%
  • Reputation Power: 9
  • SunTigress has no influence.
  • Gender: Female
  • Respect: +43
  • Referrals: 0
    • View Profile
Re: the beginnings
« Reply #5 on: July 30, 2009, 08:07:05 AM »
0
ahh, ok. Sorry about the syntax check, i thought you meant i was supposed to do that when i was done.  :(
If at first you don't succeed, try try again. Then give up. There is no use in making a fool of yourself.

Offline TrailMyx

  • Officially retired from UO
  • Administrator
  • *
  • *
  • Posts: 13303
  • Activity:
    0.4%
  • Reputation Power: 154
  • TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!
  • Gender: Male
  • Viper!
  • Respect: +1349
  • Referrals: 33
    • View Profile
    • ScriptUO
Re: the beginnings
« Reply #6 on: July 30, 2009, 08:08:09 AM »
0
Once you get your code read to start testing, the next thing you'll want to learn is placing "pause" in places.  Then the script pauses, you may single step through the code to see what the execution is doing.

You can then use F7 (Step into), F8 (Step over - doesn't descent into subroutines to see the execution) and F6 (Step out - completes a subroutine execution)
Please read the ScriptUO site RULES
Come play RIFT with me!

Offline TrailMyx

  • Officially retired from UO
  • Administrator
  • *
  • *
  • Posts: 13303
  • Activity:
    0.4%
  • Reputation Power: 154
  • TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!
  • Gender: Male
  • Viper!
  • Respect: +1349
  • Referrals: 33
    • View Profile
    • ScriptUO
Re: the beginnings
« Reply #7 on: July 30, 2009, 08:09:57 AM »
0
ahh, ok. Sorry about the syntax check, i thought you meant i was supposed to do that when i was done.  :(

It's a good tool to run as your are writing your script, especially when you start testing pieces of your code.  Sometimes your problems will be runtime bugs, and you'll have to use the method I described in the last post to slowly step through your code.
Please read the ScriptUO site RULES
Come play RIFT with me!

Offline SunTigressTopic starter

  • TopTwo's Woman
  • Elite
  • *
  • *
  • Posts: 900
  • Activity:
    0%
  • Reputation Power: 9
  • SunTigress has no influence.
  • Gender: Female
  • Respect: +43
  • Referrals: 0
    • View Profile
Re: the beginnings
« Reply #8 on: July 30, 2009, 09:32:47 AM »
0
Once you get your code read to start testing, the next thing you'll want to learn is placing "pause" in places.  Then the script pauses, you may single step through the code to see what the execution is doing.

You can then use F7 (Step into), F8 (Step over - doesn't descent into subroutines to see the execution) and F6 (Step out - completes a subroutine execution)


I feel very stupid, because I don't think I understand what you are saying. Do I need to put pauses after every sub, open the code in SUO, and then use F7 to run each sub individually? Do I highlight the sub I want to run?
If at first you don't succeed, try try again. Then give up. There is no use in making a fool of yourself.

Offline TrailMyx

  • Officially retired from UO
  • Administrator
  • *
  • *
  • Posts: 13303
  • Activity:
    0.4%
  • Reputation Power: 154
  • TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!TrailMyx is awe-inspiring!
  • Gender: Male
  • Viper!
  • Respect: +1349
  • Referrals: 33
    • View Profile
    • ScriptUO
Re: the beginnings
« Reply #9 on: July 30, 2009, 09:37:10 AM »
0
well, you can actually put a pause right at the beginning and step to wherever.  Really as you get better at script authoring, you'll start to know where the code is going wonky and that will tell you were you may have to put your pauses so you can single step and see what's happening.

Soon, you will wonder as you are single stepping, "gee, I wonder what value is in that variable..."  Have you wondered that yet?  :)
Please read the ScriptUO site RULES
Come play RIFT with me!

Offline SunTigressTopic starter

  • TopTwo's Woman
  • Elite
  • *
  • *
  • Posts: 900
  • Activity:
    0%
  • Reputation Power: 9
  • SunTigress has no influence.
  • Gender: Female
  • Respect: +43
  • Referrals: 0
    • View Profile
Re: the beginnings
« Reply #10 on: July 30, 2009, 09:46:05 AM »
0
yes, unfortunately. I look at advanced codes and think "what does that do? what does it have to do with anything?" and get super confused. Then, when I think I understand simple things, I really don't. I end up adding things like gosub check_weight, when i just wanted to put wait 5. you know, making things harder than they are.

I ran a syntax check, and everything looks good right now. I show no syntax errors, but I still am not recalling. I am going to work with the pausing and stepping through things, but I loaded up what I have right now for you to look at (when you have time).
If at first you don't succeed, try try again. Then give up. There is no use in making a fool of yourself.

Offline Cerveza

  • Hacksimus Maximus
  • Scripthack
  • *
  • Posts: 5857
  • Activity:
    0%
  • Reputation Power: 80
  • Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!
  • Gender: Male
  • So... Hows that Hopey-Changey thing working out?
  • Respect: +403
  • Referrals: 11
    • View Profile
Re: the beginnings
« Reply #11 on: July 30, 2009, 09:57:34 AM »
0
Just curious, did you read the tutorials?

Did you make a written listing of what you want the script to do?

I find it MUCH easier to just write down steps you want to accomplish... including some "if this happens" and such.

1 - Recall to a gate (need to define a gate rune in a runebook)
2 - Walk to the gate (need some type of rail here that will search for the gate)
3 - Select the destination (gump check and click)
4 - Wait till I appear on the other side of the gate
5 - Rail over to the place I want to be using the safest path

etc....

Just write it out like your doing it. Or even take your char and do by hand just exactly what you want the script to do. Keep a notepad handy and write down each step along the way. Make comments about stuff while your doing it.

Just jumping into a script isn't always the best way to go.
XXXXXXXXXX________________________________________] 20%
I've forgotten more about this game then most people will ever know.
Thank you for controlling your children. Their manners reflect your love for them.
Give a man a fish and you feed him for a day. Don't teach a man to fish, and you feed yourself. He's a grown man. Fishing's not that hard.

Offline SunTigressTopic starter

  • TopTwo's Woman
  • Elite
  • *
  • *
  • Posts: 900
  • Activity:
    0%
  • Reputation Power: 9
  • SunTigress has no influence.
  • Gender: Female
  • Respect: +43
  • Referrals: 0
    • View Profile
Re: the beginnings
« Reply #12 on: July 30, 2009, 10:01:08 AM »
0
I've read each tutorial multiple times. I do have my step by step list, which is what I am doing now. Starting from the beginning, I want to make sure I have a dagger in my pack, I want to select all my variables (runebooks, secure, etc.), and I want to recall to where the harpies are. That is as far as I've gotten. Stuck at step 3.
If at first you don't succeed, try try again. Then give up. There is no use in making a fool of yourself.

Offline Cerveza

  • Hacksimus Maximus
  • Scripthack
  • *
  • Posts: 5857
  • Activity:
    0%
  • Reputation Power: 80
  • Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!Cerveza is awe-inspiring!
  • Gender: Male
  • So... Hows that Hopey-Changey thing working out?
  • Respect: +403
  • Referrals: 11
    • View Profile
Re: the beginnings
« Reply #13 on: July 30, 2009, 10:05:49 AM »
0
Ok cool, post up what your doing, step by step, and we can help with each part as you get to it....

Of course if you want to, some like to resolve things on their own, and thats cool.
XXXXXXXXXX________________________________________] 20%
I've forgotten more about this game then most people will ever know.
Thank you for controlling your children. Their manners reflect your love for them.
Give a man a fish and you feed him for a day. Don't teach a man to fish, and you feed yourself. He's a grown man. Fishing's not that hard.

Offline SunTigressTopic starter

  • TopTwo's Woman
  • Elite
  • *
  • *
  • Posts: 900
  • Activity:
    0%
  • Reputation Power: 9
  • SunTigress has no influence.
  • Gender: Female
  • Respect: +43
  • Referrals: 0
    • View Profile
Re: the beginnings
« Reply #14 on: July 30, 2009, 10:17:04 AM »
0
ehh, I will post up what I eventually want the stupid thing to do, step by step, so that you know where I am going with this.

as for resolving it on my own, that is how I usually roll, but this has me so flustered that I have to ask for help. I usually like to do things on my own so that I'm not being annoying or bothering anyone or anything.


Newest version is under the old post
« Last Edit: July 30, 2009, 10:24:47 AM by SunTigress »
If at first you don't succeed, try try again. Then give up. There is no use in making a fool of yourself.

Tags: