ScriptUO

Official ScriptUO EasyUO Scripts => Script Debug => Topic started by: camotbik on December 14, 2009, 08:21:01 AM

Title: White perl Fishing.
Post by: camotbik on December 14, 2009, 08:21:01 AM
Updt:
This script was made just for white pearl farming. So you should start it standing on the end of the boat (near hatch), having scissors, dagger & fishing pole in your pack. If you have more than 80.1 fishing, the script will ask you, if you wish to continue(you start to fish up serpents after 80.1), couse there is no defending sub in it.

Code: [Select]
;==================================
; Script Name: Simple fishing.
; Author: CAMOTbIK
; Version: 0.9 Beta
; Client Tested with: 6.0.14.3
; EUO version tested with: 1.58
; Revision Date: 26.12.2009
; Public Release:
; Purpose: White pearls farming, with locked fishing on 80.1
;==================================
;             YOU NEED A BOAT, DAGGER, SCISSORS AND A FISHING POLE

set %fishing_pole KDF
set %dagger WSF
set %fish EQD_FQD_GQD_DQD
set %fish_steak IND
set %scissors JAG
set %shoes CWI_AWI_NVI_OVI_PVI_QVI_ZVI_TVI
set %leather JJG_HTD_SVH_UDF_YDF ;  leather.
set %fished_stuff WWS
set %rare_fish YDF
set %eatrare #true            ; Eat some rare fish ( saves hatch space )
set %checkandlockskill #true  ; checks if fishing is +80.1, if it is, locks it down - so the character wont fish up serpents.
gosub check_req
gosub find_hatch

repeat
{
 event macro 1 0 forward one
  wait 20
  scanjournal 1
   if stopped in #journal || blocked in #journal
    {
       event macro 1 0 back right
        wait 3s
         event macro 1 0 stop
          wait 1s
           event macro 1 0 turn around
            gosub find_hatch
             return
    }
   event macro 1 0 stop
    gosub fish
}
until #CHARGHOST = yes


sub fish
repeat
chooseSkill fishing
if %checkandlockskill #true
{
if #skill >= 801
 {
 event SkillLock fishing locked
  set %checkandlockskill #false
 }
}
if %eatrare = #true
{
 finditem %rare_fish C_ , #BACKPACKID
  while #findcnt > 0
   {
    set #lobjectid #findid
     event macro 17 0
   wait 2 0
       finditem %rare_fish C_ , #BACKPACKID
   }
}
if ( #weight > ( #maxweight - 10 ) )
 {
  gosub cut_fish
   gosub drop_fish
    gosub cut_shoes
     gosub drop_leather
      gosub unload
}
finditem %fishing_pole C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
 return
 }
set #LObjectID #FindID
set #LTargetKind 2
set #LTargetX #charposx + 2
set #LTargetY #CharPosY
event macro 17 0
target 10s
event macro 22 0
set %_jindex #jindex
set %go #false
set %maxtimeout  #sCnt2 + 120
repeat
if #sCnt2 >  %maxtimeout
  {
   return
  }
   if #jindex >= %_jindex
   {
      scanjournal %_jindex
      if pull in #journal || fail_to_catch in #journal || a_white in #journal
      {
        break
      }
      if seem_to_be in #journal || closer_to_the in #journal
      {
       return
      }
      if already_fishing in #journal || something_is_happening in #journal
      {
       wait 5s
      }
set %_jindex %_jindex + 1
    }
  wait 0
 until %go = #true
until %something = #true
return

sub find_hatch
findItem LWX_UVX_ZUX_ZNX G_2 ;  Looking for hatch
if #FINDCNT > 0
 {
  set %hatchid #FINDID
 }
else
{
 display ok You must stand near the hatch$
  halt
}
return

sub cut_fish
finditem %dagger C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  return
   halt
 }
finditem %fish C_ , #BACKPACKID
while #findcnt > 0
{
 wait 5
  set #ltargetid #findid
   event macro 17
    target
     set #ltargetkind 1
      event macro 22
       wait 1s
        finditem %fish C_ , #BACKPACKID
}
return

sub drop_fish
finditem %fish_steak C_ , #BACKPACKID
while #findcnt > 0
{
finditem %fish_steak C_ , #BACKPACKID
if #findkind <> -1
   {
   set %fish_in_the_pack #FINDID
    set %fish_ammount #FINDSTACK
     finditem %fish_steak G_2
      if #FINDCNT > 0
       {
        set %fish_on_the_ground #FINDID
         exevent drag %fish_in_the_pack %fish_ammount
          wait 1s
           exevent dropc %fish_on_the_ground
            wait 2s
    }
else
 {
  exevent drag %fish_in_the_pack %fish_ammount
   wait 1s
    Exevent Dropg #charposx #charposy
     wait 2s
      finditem %fish_steak C_ , #BACKPACKID
  }
 }
}
return

sub cut_shoes
finditem %scissors C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
   }
Else
 {
   return
 }
finditem %shoes C_ , #BACKPACKID
while #findcnt > 0
{
 wait 5
  set #ltargetid #findid
   event macro 17
    target
     set #ltargetkind 1
      event macro 22
       wait 1s
        finditem %shoes C_ , #BACKPACKID
}
return

sub unload
finditem %fished_stuff C_ , #BACKPACKID
while #findcnt > 0
 {
Exevent Drag #findid #findstack
wait 10
 Exevent Dropc %hatchid
  wait 2s
      finditem  %fished_stuff C_ , #BACKPACKID
 }
return

sub check_req
chooseSkill fishing
if #skill >= 802
 {
  display yesno Your fishing is higher than 80.1 You may catch some sea monsters, wich could(will) kill you - there is no defence sub in this script. Do you wish to continue anyway?
   if #dispres = no
 {
     halt
 }
 }
finditem %fishing_pole C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a Fishing Pole in your pack and restart the script
   halt
 }
finditem %scissors C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a scissors in your pack and restart the script
   halt
 }
finditem %dagger C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a dagger in your pack and restart the script
   halt
 }
return

sub drop_leather
finditem %leather C_ , #BACKPACKID
while #findcnt > 0
{
finditem %leather C_ , #BACKPACKID
if #findkind <> -1
   {
   set %leather_in_the_pack #FINDID
    set %leather_ammount #FINDSTACK
     finditem %leather G_2
      if #FINDCNT > 0
       {
        set %leather_on_the_ground #FINDID
         exevent drag %leather_in_the_pack %leather_ammount
          wait 1s
           exevent dropc %leather_on_the_ground
            wait 2s
    }
else
 {
  exevent drag %leather_in_the_pack %leather_ammount
   wait 1s
    Exevent Dropg #charposx #charposy
     wait 2s
      finditem %leather C_ , #BACKPACKID
  }
 }
}
return

If you try it, please leave your opinion.
Title: Re: White perl Fishing.
Post by: 12TimesOver on December 14, 2009, 09:39:52 AM
Hmmm, I don't see where that would be a problem.

Did you mean to say
Code: [Select]
findItem KDF C_ , #backpackid?

Either way, this is fine:
Code: [Select]
set %fishingpole KDF
findItem %fishingpole C_ , #backpackid

The problem must be elsewhere.

X

Title: Re: White perl Fishing.
Post by: camotbik on December 14, 2009, 03:04:03 PM
Ok, i have made a lot of progress. Firstly, made the code cleaner, did put some while cycles insted of goto and added some checks on tools.
Code: [Select]
;==================================
; Script Name: Simple fishing.
; Author: CAMOTbIK
; Version: 0.1 Beta
; Client Tested with: 6.0.14.3
; EUO version tested with: 1.58
; Revision Date: 14.12.2009
; Public Release:
; Purpose: White pearls fishing, with locked fishing on 80.1
;==================================
;             YOU NEED A BOAT, DAGGER, SCISSORS AND A FISHING POLE

set %fishing_pole KDF
set %dagger WSF
set %fish EQD_FQD_GQD_DQD
set %fish_steak IND
set %scissors JAG
set %shoes CWI_AWI_NVI_OVI_PVI_QVI_ZVI_TVI
set %fished_stuff JJG_HTD_SVH_UDF_YDF
set %checkskill #true
gosub check_req
gosub find_hatch


repeat
{
 event macro 1 0 forward one
  wait 20
   event macro 1 0 stop
    gosub fish
}
until #CHARGHOST = yes


sub fish
repeat
chooseSkill fishing
if %checkskill #true
{
if #skill >= 801
 event SkillLock fishing locked
  set %checkskill #false
}
if ( #weight > ( #maxweight - 10 ) )
 {
  gosub cut_fish
   gosub drop_fish
    gosub cut_shoes
     gosub unload
}
finditem %fishing_pole C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
   }
Else
 {
 return
    }
set #LObjectID #FindID
set #LTargetKind 2
set #LTargetX #charposx + 2
set #LTargetY #CharPosY
event macro 17 0
target 10s
event macro 22 0
set %_jindex #jindex
set %go #false
set %maxtimeout  #sCnt2 + 120
repeat
if #sCnt2 >  %maxtimeout
  {
   return
  }
   if #jindex >= %_jindex
   {
      scanjournal %_jindex
      if pull in #journal || fail_to_catch in #journal
      {
        break
      }
      if seem_to_be in #journal || closer_to_the in #journal
      {
       return
      }
set %_jindex %_jindex + 1
    }
  wait 0
 until %go = #true
until %something = #true
return

sub find_hatch
findItem LWX_UVX_ZUX_ZNX G_2 ;  Looking for hatch
if #FINDCNT > 0
 {
  set %hatchid #FINDID
 }
else
{
 display ok You must stand near the hatch$
  halt
}
return

sub cut_fish
finditem %dagger C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  return
   halt
 }
finditem %fish C_ , #BACKPACKID
while #findcnt > 0
{
 wait 5
  set #ltargetid #findid
   event macro 17
    target
     set #ltargetkind 1
      event macro 22
       wait 1s
        finditem %fish C_ , #BACKPACKID
}
return

sub drop_fish
finditem %fish_steak C_ , #BACKPACKID
while #findcnt > 0
{
finditem %fish_steak C_ , #BACKPACKID
if #findkind <> -1
   {
   set %fish_in_the_pack #FINDID
    set %fish_ammount #FINDSTACK
     finditem %fish_steak G_2
      if #FINDCNT > 0
       {
        set %fish_on_the_ground #FINDID
         exevent drag %fish_in_the_pack %fish_ammount
          wait 1s
           exevent dropc %fish_on_the_ground
            wait 2s
    }
else
 {
  exevent drag %fish_in_the_pack %fish_ammount
   wait 1s
    Exevent Dropg #charposx #charposy
     wait 2s
      finditem %fish_steak C_ , #BACKPACKID
  }
 }
}
return

sub cut_shoes
finditem %scissors C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
   }
Else
 {
   return
 }
finditem %shoes C_ , #BACKPACKID
while #findcnt > 0
{
 wait 5
  set #ltargetid #findid
   event macro 17
    target
     set #ltargetkind 1
      event macro 22
       wait 1s
        finditem %shoes C_ , #BACKPACKID
}
return

sub unload
finditem %fished_stuff C_ , #BACKPACKID
while #findcnt > 0
 {
Exevent Drag #findid #findstack
wait 10
  Exevent Dropc %hatchid
   wait 2s
      finditem  %fished_stuff C_ , #BACKPACKID
 }
return

sub check_req
finditem %fishing_pole C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a Fishing Pole in your pack and restart the script
   halt
 }
finditem %scissors C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a scissors in your pack and restart the script
   halt
 }
finditem %dagger C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a dagger in your pack and restart the script
   halt
 }
return

Would like to hear your toughts.
Title: Re: White perl Fishing.
Post by: Coragin on December 15, 2009, 05:12:15 AM
I got a couple GM Fishers thanks to TM, I will try this out, I like the idea of putting resources in the hatch, saves time to bank run lol.

Now, if you added in sea serpent kills and save hides/scales/mib into hatch that would be awesome!
Title: Re: White perl Fishing.
Post by: camotbik on December 15, 2009, 09:14:36 AM
I got a couple GM Fishers thanks to TM, I will try this out, I like the idea of putting resources in the hatch, saves time to bank run lol.

Now, if you added in sea serpent kills and save hides/scales/mib into hatch that would be awesome!

Thank you for your reply. The serpent killing and looting is the next feature i wanted to write. I'm still learning, so it may take a while. I did add some features like, eating rare fishes (saves hatch space), when the boat reaches land it automaticly turns around(back left+wait+turn around) and starts to fish again(i was missing this in scripts i was using before).

Code: [Select]
;==================================
; Script Name: Simple fishing.
; Author: CAMOTbIK
; Version: 0.7 Beta
; Client Tested with: 6.0.14.3
; EUO version tested with: 1.58
; Revision Date: 14.12.2009
; Public Release:
; Purpose: White pearls farming, with locked fishing on 80.1
;==================================
;             YOU NEED A BOAT, DAGGER, SCISSORS AND A FISHING POLE

set %fishing_pole KDF
set %dagger WSF
set %fish EQD_FQD_GQD_DQD
set %fish_steak IND
set %scissors JAG
set %shoes CWI_AWI_NVI_OVI_PVI_QVI_ZVI_TVI
set %fished_stuff JJG_HTD_SVH_UDF_YDF_WWS
set %rare_fish YDF
set %eatrare #true            ; Eat some rare fish ( saves hatch space )
set %checkandlockskill #true  ; checks if fishing is +80.1, if it is, locks it down - so the character wont fish up serpents.
gosub check_req
gosub find_hatch


repeat
{
 event macro 1 0 forward one
  wait 20
  scanjournal 1
   if stopped in #journal || blocked in #journal
    {
       event macro 1 0 back right
        wait 3s
         event macro 1 0 stop
          wait 1s
           event macro 1 0 turn around
            gosub find_hatch
             return
    }
   event macro 1 0 stop
    gosub fish
}
until #CHARGHOST = yes


sub fish
repeat
chooseSkill fishing
if %checkandlockskill #true
{
if #skill >= 801
 event SkillLock fishing locked
  set %checkandlockskill #false
}
if %eatrare = #true
{
 finditem %rare_fish C_ , #BACKPACKID
  while #findcnt > 0
   {
    set #lobjectid #findid
     event macro 17 0
   wait 10
       finditem %rare_fish C_ , #BACKPACKID
   }
}
if ( #weight > ( #maxweight - 10 ) )
 {
  gosub cut_fish
   gosub drop_fish
    gosub cut_shoes
     gosub unload
}
finditem %fishing_pole C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
 return
 }
set #LObjectID #FindID
set #LTargetKind 2
set #LTargetX #charposx + 2
set #LTargetY #CharPosY
event macro 17 0
target 10s
event macro 22 0
set %_jindex #jindex
set %go #false
set %maxtimeout  #sCnt2 + 120
repeat
if #sCnt2 >  %maxtimeout
  {
   return
  }
   if #jindex >= %_jindex
   {
      scanjournal %_jindex
      if pull in #journal || fail_to_catch in #journal
      {
        break
      }
      if seem_to_be in #journal || closer_to_the in #journal
      {
       return
      }
      if already_fishing in #journal || closer_to_the in #journal
      {
       wait 5s
      }
set %_jindex %_jindex + 1
    }
  wait 0
 until %go = #true
until %something = #true
return

sub find_hatch
findItem LWX_UVX_ZUX_ZNX G_2 ;  Looking for hatch
if #FINDCNT > 0
 {
  set %hatchid #FINDID
 }
else
{
 display ok You must stand near the hatch$
  halt
}
return

sub cut_fish
finditem %dagger C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  return
   halt
 }
finditem %fish C_ , #BACKPACKID
while #findcnt > 0
{
 wait 5
  set #ltargetid #findid
   event macro 17
    target
     set #ltargetkind 1
      event macro 22
       wait 1s
        finditem %fish C_ , #BACKPACKID
}
return

sub drop_fish
finditem %fish_steak C_ , #BACKPACKID
while #findcnt > 0
{
finditem %fish_steak C_ , #BACKPACKID
if #findkind <> -1
   {
   set %fish_in_the_pack #FINDID
    set %fish_ammount #FINDSTACK
     finditem %fish_steak G_2
      if #FINDCNT > 0
       {
        set %fish_on_the_ground #FINDID
         exevent drag %fish_in_the_pack %fish_ammount
          wait 1s
           exevent dropc %fish_on_the_ground
            wait 2s
    }
else
 {
  exevent drag %fish_in_the_pack %fish_ammount
   wait 1s
    Exevent Dropg #charposx #charposy
     wait 2s
      finditem %fish_steak C_ , #BACKPACKID
  }
 }
}
return

sub cut_shoes
finditem %scissors C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
   }
Else
 {
   return
 }
finditem %shoes C_ , #BACKPACKID
while #findcnt > 0
{
 wait 5
  set #ltargetid #findid
   event macro 17
    target
     set #ltargetkind 1
      event macro 22
       wait 1s
        finditem %shoes C_ , #BACKPACKID
}
return

sub unload
finditem %fished_stuff C_ , #BACKPACKID
while #findcnt > 0
 {
Exevent Drag #findid #findstack
wait 10
 Exevent Dropc %hatchid
  wait 2s
      finditem  %fished_stuff C_ , #BACKPACKID
 }
return

sub check_req
finditem %fishing_pole C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a Fishing Pole in your pack and restart the script
   halt
 }
finditem %scissors C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a scissors in your pack and restart the script
   halt
 }
finditem %dagger C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a dagger in your pack and restart the script
   halt
 }
return
Title: Re: White perl Fishing.
Post by: Masscre on December 15, 2009, 05:52:04 PM
I got a couple GM Fishers thanks to TM, I will try this out, I like the idea of putting resources in the hatch, saves time to bank run lol.

Now, if you added in sea serpent kills and save hides/scales/mib into hatch that would be awesome!

Would not work the hatch would fill up in less than an hour. Hides take up alot of weight and the hatch can only hold 400 stones in weight.
Title: Re: White perl Fishing.
Post by: camotbik on December 15, 2009, 06:38:19 PM
I got a couple GM Fishers thanks to TM, I will try this out, I like the idea of putting resources in the hatch, saves time to bank run lol.

Now, if you added in sea serpent kills and save hides/scales/mib into hatch that would be awesome!

Would not work the hatch would fill up in less than an hour. Hides take up alot of weight and the hatch can only hold 400 stones in weight.

There's a way of stacking them on the ships floor and just keep adding Hides as you fish, so the stack wont disapear.
Title: Re: White perl Fishing.
Post by: Masscre on December 16, 2009, 04:24:47 AM
The stacking method I have used for hides and scales both, but you cant run a long dry spell of not getting a serpent to kill or they will eventually decay.
Title: Re: White perl Fishing.
Post by: 12TimesOver on December 16, 2009, 04:38:21 AM
The stacking method I have used for hides and scales both, but you cant run a long dry spell of not getting a serpent to kill or they will eventually decay.
I typically average 6-7 serps an hour most times, probably sufficient time between kills however I certainly would hate to risk it and lose all of those hides.

Recalling to the bank/home doesn't really take that much time and is the safest method. At 6-7 serps/hr I bank only every couple of hours and it takes under 2 or 3 minutes.

Just some thoughts ;)

X
Title: Re: White perl Fishing.
Post by: camotbik on December 17, 2009, 07:08:00 PM
Ok, I have thinked around and decided that the script works fine for the purpose it was made - perl farming. No serpent killing/etc will be included. So this is the final version of this script. Thank you guys for your help. I would like to release it in public scripts library. Should i just move it to there or is it done some kind of other way?
(http://img195.imageshack.us/img195/9788/fisherf.png)
Code: [Select]
==================================
; Script Name: Simple fishing.
; Author: CAMOTbIK
; Version: 0.8 Beta
; Client Tested with: 6.0.14.3
; EUO version tested with: 1.58
; Revision Date: 14.12.2009
; Public Release:
; Purpose: White pearls farming, with locked fishing on 80.1
;==================================
;             YOU NEED A BOAT, DAGGER, SCISSORS AND A FISHING POLE

set %fishing_pole KDF
set %dagger WSF
set %fish EQD_FQD_GQD_DQD
set %fish_steak IND
set %scissors JAG
set %shoes CWI_AWI_NVI_OVI_PVI_QVI_ZVI_TVI
set %leather JJG_HTD_SVH_UDF_YDF ;  leather.
set %fished_stuff WWS
set %rare_fish YDF
set %eatrare #true            ; Eat some rare fish ( saves hatch space )
set %checkandlockskill #true  ; checks if fishing is +80.1, if it is, locks it down - so the character wont fish up serpents.
gosub check_req
gosub find_hatch


repeat
{
 event macro 1 0 forward one
  wait 20
  scanjournal 1
   if stopped in #journal || blocked in #journal
    {
       event macro 1 0 back right
        wait 3s
         event macro 1 0 stop
          wait 1s
           event macro 1 0 turn around
            gosub find_hatch
             return
    }
   event macro 1 0 stop
    gosub fish
}
until #CHARGHOST = yes


sub fish
repeat
chooseSkill fishing
if %checkandlockskill #true
{
if #skill >= 801
 event SkillLock fishing locked
  set %checkandlockskill #false
}
if %eatrare = #true
{
 finditem %rare_fish C_ , #BACKPACKID
  while #findcnt > 0
   {
    set #lobjectid #findid
     event macro 17 0
   wait 2 0
       finditem %rare_fish C_ , #BACKPACKID
   }
}
if ( #weight > ( #maxweight - 10 ) )
 {
  gosub cut_fish
   gosub drop_fish
    gosub cut_shoes
     gosub drop_leather
      gosub unload
}
finditem %fishing_pole C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
 return
 }
set #LObjectID #FindID
set #LTargetKind 2
set #LTargetX #charposx + 2
set #LTargetY #CharPosY
event macro 17 0
target 10s
event macro 22 0
set %_jindex #jindex
set %go #false
set %maxtimeout  #sCnt2 + 120
repeat
if #sCnt2 >  %maxtimeout
  {
   return
  }
   if #jindex >= %_jindex
   {
      scanjournal %_jindex
      if pull in #journal || fail_to_catch in #journal || a_white in #journal
      {
        break
      }
      if seem_to_be in #journal || closer_to_the in #journal
      {
       return
      }
      if already_fishing in #journal || something_is_happening in #journal
      {
       wait 5s
      }
set %_jindex %_jindex + 1
    }
  wait 0
 until %go = #true
until %something = #true
return

sub find_hatch
findItem LWX_UVX_ZUX_ZNX G_2 ;  Looking for hatch
if #FINDCNT > 0
 {
  set %hatchid #FINDID
 }
else
{
 display ok You must stand near the hatch$
  halt
}
return

sub cut_fish
finditem %dagger C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  return
   halt
 }
finditem %fish C_ , #BACKPACKID
while #findcnt > 0
{
 wait 5
  set #ltargetid #findid
   event macro 17
    target
     set #ltargetkind 1
      event macro 22
       wait 1s
        finditem %fish C_ , #BACKPACKID
}
return

sub drop_fish
finditem %fish_steak C_ , #BACKPACKID
while #findcnt > 0
{
finditem %fish_steak C_ , #BACKPACKID
if #findkind <> -1
   {
   set %fish_in_the_pack #FINDID
    set %fish_ammount #FINDSTACK
     finditem %fish_steak G_2
      if #FINDCNT > 0
       {
        set %fish_on_the_ground #FINDID
         exevent drag %fish_in_the_pack %fish_ammount
          wait 1s
           exevent dropc %fish_on_the_ground
            wait 2s
    }
else
 {
  exevent drag %fish_in_the_pack %fish_ammount
   wait 1s
    Exevent Dropg #charposx #charposy
     wait 2s
      finditem %fish_steak C_ , #BACKPACKID
  }
 }
}
return

sub cut_shoes
finditem %scissors C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
   }
Else
 {
   return
 }
finditem %shoes C_ , #BACKPACKID
while #findcnt > 0
{
 wait 5
  set #ltargetid #findid
   event macro 17
    target
     set #ltargetkind 1
      event macro 22
       wait 1s
        finditem %shoes C_ , #BACKPACKID
}
return

sub unload
finditem %fished_stuff C_ , #BACKPACKID
while #findcnt > 0
 {
Exevent Drag #findid #findstack
wait 10
 Exevent Dropc %hatchid
  wait 2s
      finditem  %fished_stuff C_ , #BACKPACKID
 }
return

sub check_req
finditem %fishing_pole C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a Fishing Pole in your pack and restart the script
   halt
 }
finditem %scissors C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a scissors in your pack and restart the script
   halt
 }
finditem %dagger C_ , #BACKPACKID
if #FINDCNT > 0
 {
  set #lobjectid #findid
 }
Else
 {
  display ok Put a dagger in your pack and restart the script
   halt
 }
return

sub drop_leather
finditem %leather C_ , #BACKPACKID
while #findcnt > 0
{
finditem %leather C_ , #BACKPACKID
if #findkind <> -1
   {
   set %leather_in_the_pack #FINDID
    set %leather_ammount #FINDSTACK
     finditem %leather G_2
      if #FINDCNT > 0
       {
        set %leather_on_the_ground #FINDID
         exevent drag %leather_in_the_pack %leather_ammount
          wait 1s
           exevent dropc %leather_on_the_ground
            wait 2s
    }
else
 {
  exevent drag %leather_in_the_pack %leather_ammount
   wait 1s
    Exevent Dropg #charposx #charposy
     wait 2s
      finditem %leather C_ , #BACKPACKID
  }
 }
}
return
Title: Re: White perl Fishing.
Post by: TrailMyx on December 17, 2009, 07:26:09 PM
Forgive me, but I haven't had a chance to run it.  Do you have your script fail if someone has their fishing above 80.1?  If not, then people will die and probably be grumpy. 
Title: Re: White perl Fishing.
Post by: camotbik on December 17, 2009, 07:56:02 PM
after 80.1 character will fish up serpents, wich will kill him. The purpose of this script ist just pure white pearl farming, so a 80.1 locked fishing is a must. Still, you can carry a bow on your character and some arrows and the serpents will be no problem.
Title: Re: White perl Fishing.
Post by: TrailMyx on December 17, 2009, 08:03:16 PM
after 80.1 character will fish up serpents, wich will kill him. The purpose of this script ist just pure white pearl farming, so a 80.1 locked fishing is a must. Still, you can carry a bow on your character and some arrows and the serpents will be no problem.

If you put in a failsafe (i.e. a skill check) that will abort the script, then there's no problem.  You have to understand that most people don't read directions, so if you don't fail the execution, then peeps will get grumpy because they might die.  You have to cover any limitations your script might have, otherwise you'll get blamed for the downfall of humanity.  Trust me, I know.  ;)
Title: Re: White perl Fishing.
Post by: camotbik on December 25, 2009, 06:42:36 PM
Sure, why not.
Code: [Select]
chooseSkill fishing
if #skill >= 802
 {
  display yesno Your fishing is higher than 80.1 You may catch some sea monsters, wich could(will) kill you - there is no defence sub in this script. Do you wish to continue anyway?
   if #dispres = no
 {
     halt
 }
 }
It's included in the script below.
Title: Re: White perl Fishing.
Post by: camotbik on December 27, 2009, 09:01:04 PM
I was wondering if anyone had any input or experience with my script? If you have, maybe you could post your thougts.
Title: Re: White perl Fishing.
Post by: liquiddrool on February 07, 2010, 02:38:48 PM
Got stuck in an endless "forward one stop" loop.  There was one slight bug, when it looks for the fishing pole it looks in backpack(after you use a fishing pole it automatically equips).  I got around it by putting two fishing poles in my backpack, script automatically swaps between the two :)  Besides that I just updated object IDs.

I trained up from 50 to 80.1 on it.  Disabled the auto skill lock and manually locked it at 80.1, maybe next time I macro it up will test the skill lock.

I'll let you know how the pearls go.