• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

Problem - Bone Chip Macro issue (Emu related)

Maze_EQ

New member
Joined
Nov 8, 2013
RedCents
30¢
Okay, so heres the issue I haven't been able to solve.

When you run this macro while handing to the guy in kaladim for bone chips, it will pick up a stack of chips and try handing them to him, and since RoF2 allows stacks in trade window, it will bug out and eat the bone chips.

I have a feeling it's


Rich (BB code):
/for l0 0 to 3
   /ctrl /itemnotify ${FindItem[=Bone Chips].InvSlot} leftmouseup
   /delay 20 ${Cursor.ID}
   |/delay 0
   /if (${l0}==0) {
      |/ubertrade
      /click left target
      /delay 20 ${Window[GiveWnd].Open}
      |/delay 0
   } else {
      /notify GiveWnd GVW_MyItemSlot${l0} leftmouseup
      /delay 20 !${Cursor.ID}
      |/delay 0

Due to the patchwork armor being given, and the macro trying to destroy it.

If anyone can help me optimize this, would be much appreciated.

(Bone Chip revised does not work in my situation)

Once I resolve the hand in, I can make a travel macro using mq2navigation easily from the bone chip seller on this server.

Rich (BB code):
#turbo 40
#Event Exp             "You gain#*#experience#*#"
Sub Main
/declare  ReportExp          bool	outer	TRUE
/declare  LDExp              float      outer   ${Me.PctGroupLeaderExp}
/declare  AAExp              float      outer   ${Me.PctAAExp}
/declare  Exp                float      outer   ${Me.PctExp}
/declare Kills int outer 0
/declare kCount int outer 0

/declare l0 int local


/target npc Gunlok

:Loop
/if (${FindItemCount[=Bone Chips]}<4) /goto :Done

/for l0 0 to 3
   /ctrl /itemnotify ${FindItem[=Bone Chips].InvSlot} leftmouseup
   /delay 20 ${Cursor.ID}
   |/delay 0
   /if (${l0}==0) {
      |/ubertrade
      /click left target
      /delay 20 ${Window[GiveWnd].Open}
      |/delay 0
   } else {
      /notify GiveWnd GVW_MyItemSlot${l0} leftmouseup
      /delay 20 !${Cursor.ID}
      |/delay 0
   }
/if (!${FindItemCount[=Bone Chips]}) /goto :Done
/next l0

/notify GiveWnd GVW_Give_Button leftmouseup
/delay 20 !${Window[GiveWnd].Open}
|/delay 0
/doevents
/if (${FindItem[Small].InvSlot}) /call Small
/if (${FindItem[Rusty].InvSlot}) /call Rusty
/if (${FindItem[Torch].InvSlot}) /call Torch
/goto :Loop

:Done
|/delay 0
/notify GiveWnd GVW_Give_Button leftmouseup
/echo out of chips
/end
/return

Sub Event_Exp(string Line)
  |- Experience calculation and reporting
 /if (${ReportExp}) /echo ** XP-Delta: REG (${Math.Calc[${Me.PctExp}-${Exp}]}%), AA (${Math.Calc[${Me.PctAAExp}-${AAExp}]}%), LDR (${Math.Calc[${Me.PctGroupLeaderExp}-${LDExp}]}%)
  /varset LDExp ${Me.PctGroupLeaderExp}
  /varset AAExp ${Me.PctAAExp}
  /varset Exp ${Me.PctExp}  
  /varcalc kCount ${kCount}+1
  /echo ${kCount} Handins - ${Int[${Math.Calc[${Macro.RunTime}/60]}]} Min, ${Int[${Math.Calc[${Macro.RunTime}-${Int[${Math.Calc[${Macro.RunTime}/60]}]}*60]}]} Sec.
 
/return

Sub Small
/ctrl /itemnotify ${FindItem[Small].InvSlot} leftmouseup
/delay 1s ${Cursor.ID}
/destroy
/return

Sub Rusty
/ctrl /itemnotify ${FindItem[Rusty].InvSlot} leftmouseup
/delay 1s ${Cursor.ID}
/destroy
/return

Sub Torch
/ctrl /itemnotify ${FindItem[Torch].InvSlot} leftmouseup
/delay 1s ${Cursor.ID}
/destroy
/return

- - - Updated - - -

After some testing and failing:

EDIT: Also seems to swap patchwork with stack of chips and hands a stack, which does not work on emu. Hmm, gotta figure out how to rectify that.

EDIT2: Tested handin on Trooper Mozo that does the same quest. Hand-in is fine. The factor that is breaking on EMU is the item that he gives you on turnin.

This is most likely due to desyncs, but the desyncs arent a problem if i can get rid of the item and not put it in inventory.

- - - Updated - - -

Got it working like a charm.

It does about 1.3/sec, which is good enough for me, hasnt wasted one bone chip yet, and you alternatively can drop the weapons on the ground and pick em up when your bag is empty to make some serious profit for a newb on emu.

:)



Rich (BB code):
#Event Exp             "You gain#*#experience#*#"
Sub Main
/declare  ReportExp          bool	outer	TRUE
/declare  LDExp              float      outer   ${Me.PctGroupLeaderExp}
/declare  AAExp              float      outer   ${Me.PctAAExp}
/declare  Exp                float      outer   ${Me.PctExp}
/declare Kills int outer 0
/declare kCount int outer 0

/declare l0 int local

/target npc Gunlok
:Loop
/if (${FindItemCount[=Bone Chips]}<4) /goto :Done
/if (${Cursor.Stack}>1 && ${Cursor.ID}==13073 || ${Cursor.ID}!=13073) {
	/autoinventory
	}

/for l0 0 to 3
   /ctrl /itemnotify ${FindItem[=Bone Chips].InvSlot} leftmouseup
   /delay 20 ${Cursor.ID}
   |/delay 0
   /if (${l0}==0 && ${Cursor.Stack}==1 && ${Cursor.ID}==13073) {
      |/ubertrade
      /click left target
      /delay 20 ${Window[GiveWnd].Open}
      |/delay 0
   } else {
      /notify GiveWnd GVW_MyItemSlot${l0} leftmouseup
      /delay 20 !${Cursor.ID}
      |/delay 0
   }
/if (!${FindItemCount[=Bone Chips]}) /goto :Done
/next l0
/notify GiveWnd GVW_Give_Button leftmouseup
/delay 3
/echo Destroying ${Cursor.Name}
/delay 1
/destroy
/delay 1
/doevents
/goto :Loop

Sub Event_Exp(string Line)
  |- Experience calculation and reporting
  /if (${ReportExp}) /echo ** XP-Delta: REG (${Math.Calc[${Me.PctExp}-${Exp}]}%), AA (${Math.Calc[${Me.PctAAExp}-${AAExp}]}%), LDR (${Math.Calc[${Me.PctGroupLeaderExp}-${LDExp}]}%)
  /varset LDExp ${Me.PctGroupLeaderExp}
  /varset AAExp ${Me.PctAAExp}
  /varset Exp ${Me.PctExp}  
  /varcalc kCount ${kCount}+1
  /echo ${kCount} Handins - ${Int[${Math.Calc[${Macro.RunTime}/60]}]} Min, ${Int[${Math.Calc[${Macro.RunTime}-${Int[${Math.Calc[${Macro.RunTime}/60]}]}*60]}]} Sec.
/return
 
Last edited:
Problem - Bone Chip Macro issue (Emu related)

Users who are viewing this thread

Back
Top
Cart