• 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

PlatPimp v1.0

tiikimagick

Member
Joined
Jul 9, 2005
RedCents
The macro says it all. Comments & Helpful improvements welcome.
Enjoy,Redcents appreciated :)

Rich (BB code):
| PlatPimp v1.0
| Made by Tiikimagick
| http://www.redguides.com
|-----------------------------------------------General Overview-----------------------------------------------------------
|* You need to be in Neriak ,the third gate to start (neriakc)
|* Although any class/race may use this mac, I would catch argo for whatever reason somtimes. A level 1 dark elf works perfectly. 
|* You need a stack of jaspers to begin. If starting from scratch, go ahead and get at least 1pp from the tutorial to buy the jasper. After the first run, you will be able to buy a stack.
|* Every run lands 35-110 pp. and should take up too 2-4 mins(depending on machine speed and connection) 
|* You will need mq2givenpc mq2rwarp and mq2piggyzone,if you dont have givenpc go ahead and add a warp function.
|* For multiple instances, i suggest using mq2wireframe to help out load times.
|* Add this code to your piggyzone.ini , it lands you right by the vendor(telnor the jewelry merch) to sell the loot.[neriakc] default= 805.97 -1415.28 -80.84
|* Im a tard when it comes to coding macros, but i found this works without flaw..be forewarned made this on a old old laptop, macro might need some personal tuning.
|* Some code is based off of macro's seen on redguides.com
|* Was a nice thing to use on the progression... :P
|* Be sure to leave 2 spaces in your inventory bagless, for the jasper and quest item.

#turbo 20

#Event RAN "$$BAM$$"

#Event Zoned "You have entered#*#"

Sub Main
	/declare TimesRun int outer
	/varset TimesRun 0

    :Main
        /popup Platpimp 1.0
        /delay 4s
        /target mare x
        /delay 2s
        /ctrlkey /itemnotify ${FindItem[=jasper].InvSlot} leftmouseup
        /give
        /delay 2s
        /notify GiveWnd GVW_Give_Button leftmouseup 
        /delay 6s
        /zone cabeast
        /delay 28s
        /call Zoner
        /call Zoner
        /delay 6s
        /target elf
        /ctrlkey /itemnotify ${FindItem[=klok's seal].InvSlot} leftmouseup
        /delay 2s
        /give
        /delay 2s
        /notify GiveWnd GVW_Give_Button leftmouseup
        /delay 9s
        /zone qeynos2
        /delay 28s
        /call Zoner
        /call Zoner
        /delay 3s
        /target brohan
        /delay 1s
        /ctrlkey /itemnotify ${FindItem[=a sealed letter].InvSlot} leftmouseup
        /delay 2s
        /give
        /delay 1s
        /notify GiveWnd GVW_Give_Button leftmouseup
        /delay 8s
        /zone neriakc
        /delay 56s
        /call Zoner
        /call Zoner
        /echo Got one down
        /delay 2s
        /target telnor
        /delay 2s
        /nomodkey /click right target
        /delay 5s ${Window[MerchantWnd].Open}
        /delay 1s
        /ctrlkey /itemnotify ${FindItem[=combine rapier].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine scimitar].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine short sword].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine smithy hammer].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine spear].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine morning star].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine great staff].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine long sword].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine two handed sword].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine warhammer].InvSlot} leftmouseup
        /ctrlkey /itemnotify ${FindItem[=combine dagger].InvSlot} leftmouseup
        /nomodkey /shift /notify MerchantWnd MW_Sell_Button leftmouseup
        /delay 1s
        /nomodkey /shift /notify MerchantWnd MW_done_Button leftmouseup
        /goto :main

        

        
	
Sub Zoner(string ZoneName, string ZoneLoc)
    /delay 5s
    :loop
    /if (${Zone[${Zone.ShortName}].ID} != ${Zone.ID}) /goto :loop
    /delay 2s



/return

Sub Event_RAN
	/varcalc TimesRun ${TimesRun}+1
/return
 
That Zoner sub is pretty interesting. You never call it with arguments, but the sub allows for 2 arguments. Neither of which are used in the sub. And then your Zone.ID check looks like it checks if Zone.ID is not equal to Zone.ID (other than actually during a zone event, I dunno when that would be) I have a feeling it was designed to work with a zonename as an argument and then the if statement would check if you were actually in that zone or not.

I actually like the theory to that Zoner sub better than the one that was in advtaskwarp.
 
So you can read the comments without having to scroll the Code window:

|* You need to be in Neriak ,the third gate to start (neriakc)
|* Although any class/race may use this mac, I would catch argo for whatever reason somtimes. A level 1 dark elf works perfectly.
|* You need a stack of jaspers to begin. If starting from scratch, go ahead and get at least 1pp from the tutorial to buy the jasper. After the first run, you will be able to buy a stack.
|* Every run lands 35-110 pp. and should take up too 2-4 mins(depending on machine speed and connection)
|* You will need mq2givenpc mq2rwarp and mq2piggyzone,if you dont have givenpc go ahead and add a warp function.
|* For multiple instances, i suggest using mq2wireframe to help out load times.
|* Add this code to your piggyzone.ini , it lands you right by the vendor(telnor the jewelry merch) to sell the loot.[neriakc] default= 805.97 -1415.28 -80.84
|* Im a tard when it comes to coding macros, but i found this works without flaw..be forewarned made this on a old old laptop, macro might need some personal tuning.
|* Some code is based off of macro's seen on redguides.com
|* Was a nice thing to use on the progression... :P
|* Be sure to leave 2 spaces in your inventory bagless, for the jasper and quest item.
 
This looks like a ban waiting to happen.

Would it not be easier to just send an email to eqcs and ask them to ban you?

lol

But, nice macro none the less

N
 
Would PoK be the best spot to bind at for this? or another zone? Also when the mac tries to use the givenpc, it say "Invalid item slot 'null' Any ideas what might be up?
 
Simple, you didn't read the directions.

|* Be sure to leave 2 spaces in your inventory bagless, for the jasper and quest item.

buckeyesfan1 said:
Would PoK be the best spot to bind at for this? or another zone? Also when the mac tries to use the givenpc, it say "Invalid item slot 'null' Any ideas what might be up?
 
I have my first two slots empty, with a 100 stack of jaspers in the first slot. Should I put those in my bag?
 
Got bored so rewrote this to be easier to read, more user friendly and more effiecent in my opinion. If your computer needs longer pauses change DelayMult to a higher number, it's currently set to buy 100Jaspers at a time, so you need to start out with atleast 88pp and 8silver on you. You can change the number it buys at one time by editing BuyJasper. You can start this macro from any zone.

I recomend being bound in PoK.

Rich (BB code):
| PlatPimp v2.0
| Made by Tiikimagick
| Recoded by WickedMetalHead
| http://www.redguides.com
|-----------------------------------------------General Overview-----------------------------------------------------------
|This is a rewrite of the Macro Made by Tiikimagick, all credit for idea's go to them
|I just rewrote to be a little cleaner looking and to not depend on mq2givenpc
|You need mq2rwarp and mq2piggyzone (or similiar) plugin's to run this.
|You also need atleast 2 General inventory slots open and 8gold 8silver 8copper per jasper
|This Macro defaults to buying 100 Jaspers, Edit BuyJasper to change how many Jasper's
|you wish this to buy.
|Change DelayMult to a higher number if your computer lags and needs longer pauses.
|I recomend being bound in PoKnowledge.
|You also need the common files sell, buy, packs, cleanpacks, commonsubs.
| Please be sure to get the lastest updates at http://www.soc-music.com/mq2/
| These file MUST be in the common directory in your macros directory.

#include common/sell.inc
#include common/buy.inc
#include common/packs.inc
#include common/cleanpacks.inc
#include common/CommonSubs.inc

Sub Main

	/declare TimesRun int outer
	/declare BagCheck int outer
	/declare Emptyslot int outer
	/declare DelayMult int outer
	/declare BuyJasper int outer
	
	/varset Emptyslot 0
	/varset TimesRun 0
	
	|Change this to a higher number for longer delay's
	/varset DelayMult 1
	
	|Change this to determine how many Jasper's to buy at one time
	/varset BuyJasper 100

  /popup PlatPimp 2.0
  /echo Starting PlatPimp 2.0...

|Check for Empty Spaces in Inventory

  /echo Checking if you have atleast 2 Empty General Inventory Slots...

  /for BagCheck 22 to 29
      /call BagChecker ${BagCheck}
  /next BagCheck
  
  /if (${Emptyslot} >= 2) {
       /echo You have ${Emptyslot} Open Slots, which meets the requirements...
       /goto :CheckZone
       }
  /if (${Emptyslot} < 2 {
       /echo You have LESS then 2 Open Slots and Fail to meet requirements..
       /echo Ending the Macro...
       /endmac
       }
       
|Check if in correct zone

  :CheckZone
  
  /echo Checking If You are in the Correct Zone...
  
  /if (${Zone.ID} == 42) {
       /echo You are in Neriak Third Gate!
       /goto :Main
       }
  /if (${Zone.ID} != 42) {
       /echo You are not in Neriak Third Gate...
       /echo Moving you to Neriak Third Gate
       /call ZoneMe neriakc
       }

|Checks are Done, Starting to run the actual macro now.

  :Main    
    /echo You Meet all requirments... Starting the Plat Pimpage...
    
        :PlatPimp
        
           /call Jasper
           /call Give "Mare X`Lottl" "jasper"
           /call ZoneMe cabeast
           /call Give "Half Elf Maiden" "klok's seal"
           /call ZoneMe qeynos2
           /call Give "Brohan Ironforge" "a sealed letter"
           /call ZoneMe neriakc
           /call SellOff
           
           /call RunTracker
           
        /goto :PlatPimp
        
    /if (FALSE) {
        :OnExit
        /echo PlatPimp v2.0 Ran a Total of ${TimesRun} Times...
        /endmac
        }
        
/return

sub PlatCheck

     /declare CashNeed int
     /varset CashNeed ${Math.Calc[${BuyJasper}*888]}

     /if (${Me.Cash} >= ${CashNeed}) {
          /echo You have Enough Money...
          /return
          }
     /if (${Me.Cash} < ${CashNeed}) {
          /echo You do NOT have Enough Money...
          /echo Ending Macro
          /endmac
          }

/return

sub Jasper

  /if (${Zone.ID} == 42) {
     
     /echo Checking On Ammount of Jasper...
     
     
     /delay ${Math.Calc[${DelayMult}*1]}
     
     /call PlatCheck
     
     /if (${FindItemCount[=jasper]}<1) {
          /warp loc 807 -1411 -80.75
          /tar Telnor D`Unnar
          /face fast
          /delay ${Math.Calc[${DelayMult}*1]}s
          /nomodkey /click right target
          /delay 5s ${Window[MerchantWnd].Open}
          /call Buy "Jasper" ${BuyJasper}
          /delay ${Math.Calc[${DelayMult}*1]}s
          /nomodkey /notify MerchantWnd MW_Done_Button LeftMouseUp
          /delay ${Math.Calc[${DelayMult}*1]}s
          }
     
     
   }
     
/return

sub Give(string Name, string Item2)

     /tar ${Name}
     /warp target
     /keypress up hold
     /delay ${Math.Calc[${DelayMult}*1]}
     /keypress up
     /face fast
     
     
     /ctrlkey /itemnotify ${FindItem[=${Item2}].InvSlot} leftmouseup
     /delay ${Math.Calc[${DelayMult}*1]}
     /nomodkey /click left target
     /delay ${Math.Calc[${DelayMult}*1]}s
     /notify GiveWnd GVW_Give_Button leftmouseup
     
     /delay ${Math.Calc[${DelayMult}*1]}
     
     

/return

sub ZoneMe(string Destination)
     /echo Going to ${Zone[${Destination}].Name}...
     /zone ${Destination}
     :ZoneLoop
     /if (${Zone[${Zone.ShortName}].ID} != ${Zone[${Destination}].ID}) {
          /delay ${Math.Calc[${DelayMult}*1]}s
          /goto :ZoneLoop
          }
     /delay ${Math.Calc[${DelayMult}*3]}s
/return

sub SellOff

  /if (${Zone.ID} == 42) {
       
     /warp loc 807 -1411 -80.75
     /tar Telnor D`Unnar
     /face fast
     
     /delay ${Math.Calc[${DelayMult}*1]}s
      
     /nomodkey /click right target
     /delay 5s ${Window[MerchantWnd].Open}
     
     /if (${FindItem[=Combine Rapier].ID}) /call Sell "Combine Rapier"
     /if (${FindItem[=Combine Scimitar].ID}) /call Sell "Combine Scimitar"
     /if (${FindItem[=Combine Short Sword].ID}) /call Sell "Combine Short Sword"
     /if (${FindItem[=Combine Smithy Hammer].ID}) /call Sell "Combine Smithy Hammer"
     /if (${FindItem[=Combine Spear].ID}) /call Sell "Combine Spear"
     /if (${FindItem[=Combine Morning Star].ID}) /call Sell "Combine Morning Star"
     /if (${FindItem[=Combine Great Staff].ID}) /call Sell "Combine Great Staff"
     /if (${FindItem[=Combine Long Sword].ID}) /call Sell "Combine Long Sword"
     /if (${FindItem[=Combine Two Handed Sword].ID}) /call Sell "Combine Two Handed Sword"
     /if (${FindItem[=Combine Warhammer].ID}) /call Sell "Combine Warhammer"
     /if (${FindItem[=Combine Dagger].ID}) /call Sell "Combine Dagger"
     
     /delay ${Math.Calc[${DelayMult}*1]}s
     
     /nomodkey /notify MerchantWnd MW_Done_Button LeftMouseUp
     
     
     }
        
/return

sub RunTracker

     /varcalc TimesRun ${TimesRun}+1

/return

sub BagChecker(int BagNum)
      /if (!${InvSlot[${BagNum}].Item.ID}) /varcalc Emptyslot ${Emptyslot}+1
/return
 
Last edited:
LOL useing the mac now seems really slow way to make plat but no one else is doing it on sever so i'm GTG


Red cent for you guys make great macs I use 2.0 works nice
 
After you copied and pasted it into notepad, and saved it with a .mac extention in your macro folder in mq2, in your MQ2 window, type:

whateveryoucalledit.mac

and then it should start.
 
Just a quick off the wall question.

How does the short term for getting aggravation froma mob always seem to get shortened to argo?

Most noticeable on teamspeak but I see it typed that way now and again also.

Websters said:
Main Entry: ag·gra·va·tion
Pronunciation: "a-gr&-'vA-sh&n
Function: noun
1 : an act or circumstance that intensifies or makes worse
2 : the act, action, or result of aggravating; especially : an increasing in seriousness or severity <aggravation of an injury>
3 : IRRITATION, PROVOCATION
usage see AGGRAVATE
 
Learningcurve said:
Just a quick off the wall question.

How does the short term for getting aggravation froma mob always seem to get shortened to argo?

Most noticeable on teamspeak but I see it typed that way now and again also.


Good question, and one I'd like an answer to as well, but probably has roots in laziness. I've always said 'aggro', and typed it out as the same.
 
DISCLAIMER:this is not to be construed as a flame to anyone except a genuine idiot. any construance as to the aforementioned construal can be forwarded to the local Staples, and placed in the bin clearly marked "Shredder" as i am a huge ninja turtles fan. If you have a modicum of intelligence, please disregard the following statements as applicable to yourself, but rather, read and enjoy them to the fullest extent possible.

A FLAME TO ALL IDIOTS!!! (not who i am quoting)


Learningcurve said:
Just a quick off the wall question.

How does the short term for getting aggravation froma mob always seem to get shortened to argo?

Most noticeable on teamspeak but I see it typed that way now and again also.


Aggro = Aggression
Uber = upper being / superior
WOOt = an exclamatory remark visualization... W = hair, OO = two eyes/glasses, t = face line partial nose and eyeglasses frame.
Newbie/NooB/newB = new player
Mob = Mobile Object, a term used for any sprite, character, or object whether PC or NPC that is in motion. Used in classic MUDD games.
MUDD = Multi User Dynamic Dungeon.
Everquest = Massively Multiplayer Graphical Online Roleplaying Multi User Dynamic Dungeon.
WoW = kill yourself now...


lots of things people take for granted or talk about without knowing what the heck they are talking about, but what can you do. too many to educate, too many to kill, too many to actually care about. but i like you people. so to answer your ??? someone that has played forever one time made a mistake and typed argo instead of agro, which is aggro just further shortened, and some newbie saw it and thought cool, and he taught his newbie friend, and they taught some other newbie friends, and without even knowing what they were talking about started a sub-sub-sub culture of idiots.

Basically it started off the right way, with a normal human being, and through the EQ generations, it has been perverted and the true meaning lost to the vaults of knowledge that the original wave of EQ players built from first time experience into what it should be today.

So there you have it. if anyone has any other questions, study the book entitled, LerN toO tawk OgEr iN Ayt DAyz - bY: Ogg then do an intelligence check against an ogre warrior, Roll a d-20, pop the top on a dr. pepper, and take 15 minutes explaining how exactly that character CAN actually cast a level 9 cantrip. record the whole thing, write it down, and send it in a petition to Dean Graf at email [email protected] that's their customer service supervisor. dont forget to put your IP, all your account names, and your faithful contribution to the MQ2 project...


IF YOU'RE NOT AN IDIOT, PLEASE DISREGARD THIS MESSAGE!

/ziiiip :# :#
 
oh one more thing, great macro here. works fine. however, the one thing i thought that was amiss about it is using the current default zone in locations for the piggyzone, lands you in a very visible area of PoK (a.k.a. in front of the soulbinder.) if one were to take a little of extra time and set different default waypoints into the piggyzone script, this would be a lot less player detectable. just a little thought from my end of the schoolyard.
 
Cool macro, but does seem like something to run when one is totally out of plat and doesn't mind getting banned quickly. ;)

I imagine one could take out all the warping and just use advpath to make it less obvious but would take way too long.. Probably without warping lev 1 character could get killed too.
 
My version.

Heya all, Nice Idea.

Tho the code of the v1.0 is horror.
I didnt see the v2.0 so far hehe, but I rewrote v1.0
Can start it now from Anywhere in EQ.
And no matter how fast or slow your machine is, this will work. Lotsa warping tho and NO MQ2givenpc needed.

Enjoy Crystane.

Rich (BB code):
| PlatPimp.mac v1.1 for www.redguides.com Idea plain stolen from the auther in the first post, Rewriten by Crystane, Enjoy......
|-----------------------------------------------General Overview-----------------------------------------------------------
|* You need to be in Neriak ,the third gate to start (neriakc)
|* Although any class/race may use this mac.
|* You need a stack of jaspers to begin. If starting from scratch, go ahead and get at least 1pp from the tutorial to buy the jasper. After the first run, you will be able to buy a stack.
|* You will need mq2rwarp and mq2piggyzone.
|* For multiple instances, i suggest using mq2wireframe to help out load times.
|* Add this code to your piggyzone.ini: [neriakc] default= 805.97 -1415.28 -80.84
|* It lands you right by the vendor(telnor the jewelry merch) to sell the loot and buy jasper.
|* !NOTE: Need 2 free Top-Level Spots in your inventory, for the jasper and quest item.
|* Customize the number for "MaxRuns" to define after how many runs the macro stops.

#turbo 20

#include common/buy.inc

#Event Zoned "You have entered #1#."
#Event Zoned "You have entered #1#,"

Sub Main
	/declare MaxRuns int outer

|************ Customize the number for "MaxRuns" to define after how many runs the macro stops.
	/varset MaxRuns 100

	/declare TimesRun int outer
	/varset TimesRun 0
	/if (${FindItem[=a sealed letter].InvSlot}) /goto :Handin3
	/if (${FindItem[=klok's seal].InvSlot}) /goto :Handin2
	/zone neriakc
        /call Zoner neriakc
        /delay 2s
	/if (!${FindItem[=jasper].InvSlot}) {
		/target telnor
		/delay 2s ${Target.ID}
		/call warper
		/nomodkey /click right target
		/delay 5s ${Window[MerchantWnd].Open}
		/delay 1s
		/call Buy "Jasper" 100
		/nomodkey /shift /notify MerchantWnd MW_done_Button leftmouseup
		/delay 1s !${Window[MerchantWnd].Open}
	}		
:Main
	/squelch /target clear
        /target mare x
        /delay 2s ${Target.ID}
	/call warper
        /ctrlkey /itemnotify ${FindItem[=jasper].InvSlot} leftmouseup
        /call Giver
:Handin2
        /zone cabeast
	/call Zoner cabeast
        /target elf
        /delay 2s ${Target.ID}
	/call warper
        /ctrlkey /itemnotify ${FindItem[=klok's seal].InvSlot} leftmouseup
        /call Giver
:Handin3
        /zone qeynos2
        /call Zoner qeynos2
        /delay 3s
        /target brohan
        /delay 2s ${Target.ID}
	/call warper
        /ctrlkey /itemnotify ${FindItem[=a sealed letter].InvSlot} leftmouseup
        /call Giver
        /zone neriakc
        /call Zoner neriakc
        /delay 2s
        /target telnor
        /delay 2s ${Target.ID}
|	/call warper
	/face fast nolook
        /nomodkey /click right target
        /delay 5s ${Window[MerchantWnd].Open}
        /delay 1s
        /if (${FindItem[=combine rapier].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine rapier].InvSlot} leftmouseup
        /if (${FindItem[=combine scimitar].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine scimitar].InvSlot} leftmouseup
        /if (${FindItem[=combine short sword].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine short sword].InvSlot} leftmouseup
        /if (${FindItem[=combine smithy hammer].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine smithy hammer].InvSlot} leftmouseup
        /if (${FindItem[=combine spear].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine spear].InvSlot} leftmouseup
        /if (${FindItem[=combine morning star].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine morning star].InvSlot} leftmouseup
        /if (${FindItem[=combine great staff].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine great staff].InvSlot} leftmouseup
        /if (${FindItem[=combine long sword].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine long sword].InvSlot} leftmouseup
        /if (${FindItem[=combine two handed sword].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine two handed sword].InvSlot} leftmouseup
        /if (${FindItem[=combine warhammer].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine warhammer].InvSlot} leftmouseup
        /if (${FindItem[=combine dagger].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine dagger].InvSlot} leftmouseup
        /nomodkey /shift /notify MerchantWnd MW_Sell_Button leftmouseup
        /delay 1s
	/if (!${FindItem[=jasper].InvSlot}) /call Buy "Jasper" 100
        /nomodkey /shift /notify MerchantWnd MW_done_Button leftmouseup
	/delay 1s !${Window[MerchantWnd].Open}
	/varcalc TimesRun ${TimesRun}+1
	/echo TimesRun: ${TimesRun}
	/if (${TimesRun}>${MaxRuns}) /end
/goto :main
/return

Sub warper
:tryagain
/if (${Spawn[gm].ID}) {
	/echo GM in zone, cant warp. Ending and Exiting.
	/delay 1s
	/timed 10 /exit
	/end
}
/if (!${Spawn[${Target.Name}].NearestSpawn[PC radius 80].ID} || ${Spawn[${Target.Name}].NearestSpawn[PC radius 100].ID}==${Me.ID}) {
	/warp loc ${Math.Calc[${Target.Y}+5]}, ${Math.Calc[${Target.X}+5]}, ${Target.Z}
} else {
	/delay 1s
	/goto :tryagain
}
/delay 2s
/return

Sub Giver
/face fast nolook
/delay 5s ${Cursor.ID}
/delay 5
/nomodkey /click left target
/delay 5s ${Window[GiveWnd].Open} || !${Cursor.ID}
/delay 5
/notify GiveWnd GVW_Give_Button leftmouseup
/delay 9s !${Window[GiveWnd].Open}
/delay 5
/return

Sub Zoner(ZoneTGT)
/echo Waiting till arriveing in ${ZoneTGT}
/if (${Zone.ShortName.Equal[${ZoneTGT}]}) /return
/delay 2s
:waittoarrive
/delay 1s
/doevents Zoned
/if (!${Macro.Return.Equal[${ZoneTGT}]} && ${Zone.ShortName.NotEqual[${ZoneTGT}]}) /goto :waittoarrive
/delay 2s
/return        
	
Sub Event_Zoned
/delay 2s
/return ${Zone.ShortName}
 
Search for the tradeskilling macroes and zips,
in those threads they have usually included the common files.
 
http://www.redguides.com/community/showthread.php?p=137002
The above is the link to the platpimp v3.0.


Sorry for bumping an old post, I got bored and decided to add a few more things to this. It now calculates how long its been running, how much plat it has made in total, as well as plat per minute.
Rich (BB code):
| PlatPimp.mac 2.1 for www.redguides.com Idea plain stolen from the author in the first post, Rewriten by Crystane, PPM(Plat Per Minute) added by Getin.
|-----------------------------------------------General Overview-----------------------------------------------------------
|* You need to be in Neriak ,the third gate to start (neriakc)
|* Although any class/race may use this mac.
|* You need a stack of jaspers to begin. If starting from scratch, go ahead and get at least 1pp from the tutorial to buy the jasper. After the first run, you will be able to buy a stack.
|* You will need mq2rwarp and mq2piggyzone.
|* For multiple instances, i suggest using mq2wireframe to help out load times.
|* Add this code to your piggyzone.ini: [neriakc] default= 805.97 -1415.28 -80.84
|* It lands you right by the vendor(telnor the jewelry merch) to sell the loot and buy jasper.
|* !NOTE: Need 2 free Top-Level Spots in your inventory, for the jasper and quest item.
|* Customize the number for "MaxRuns" to define after how many runs the macro stops.

#turbo 20

#include common/buy.inc

#Event Zoned "You have entered #1#."
#Event Zoned "You have entered #1#,"

Sub Main
	/declare TimeRan int outer
	/declare MaxRuns int outer 100
	/declare TimesRun int outer 0
	/declare StartPlat float outer ${Math.Calc[${Me.Cash}/1000]}
	/declare PlatMade float outer
	/declare PlatMadeTemp float outer
	/declare PPM
	/if (${FindItem[=a sealed letter].InvSlot}) /goto :Handin3
	/if (${FindItem[=klok's seal].InvSlot}) /goto :Handin2
	/echo before zone
	/zone neriakc
        /call Zoner neriakc
        /delay 2s
	/if (!${FindItem[=jasper].InvSlot}) {
		/target telnor
		/delay 2s ${Target.ID}
		/call warper
		/nomodkey /click right target
		/delay 5s ${Window[MerchantWnd].Open}
		/delay 1s
		/call Buy "Jasper" 100
		/nomodkey /shift /notify MerchantWnd MW_done_Button leftmouseup
		/delay 1s !${Window[MerchantWnd].Open}
	}		
:Main
	/squelch /target clear
        /target mare x
        /delay 2s ${Target.ID}
	/call warper
        /ctrlkey /itemnotify ${FindItem[=jasper].InvSlot} leftmouseup
        /call Giver
:Handin2
        /zone cabeast
	/call Zoner cabeast
        /target elf
        /delay 2s ${Target.ID}
	/call warper
        /ctrlkey /itemnotify ${FindItem[=klok's seal].InvSlot} leftmouseup
        /call Giver
:Handin3
        /zone qeynos2
        /call Zoner qeynos2
        /delay 3s
        /target brohan
        /delay 2s ${Target.ID}
	/call warper
        /ctrlkey /itemnotify ${FindItem[=a sealed letter].InvSlot} leftmouseup
        /call Giver
        /zone neriakc
        /call Zoner neriakc
        /delay 2s
        /target telnor
        /delay 2s ${Target.ID}
|	/call warper
	/face fast nolook
        /nomodkey /click right target
        /delay 5s ${Window[MerchantWnd].Open}
        /delay 1s
        /if (${FindItem[=combine rapier].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine rapier].InvSlot} leftmouseup
        /if (${FindItem[=combine scimitar].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine scimitar].InvSlot} leftmouseup
        /if (${FindItem[=combine short sword].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine short sword].InvSlot} leftmouseup
        /if (${FindItem[=combine smithy hammer].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine smithy hammer].InvSlot} leftmouseup
        /if (${FindItem[=combine spear].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine spear].InvSlot} leftmouseup
        /if (${FindItem[=combine morning star].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine morning star].InvSlot} leftmouseup
        /if (${FindItem[=combine great staff].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine great staff].InvSlot} leftmouseup
        /if (${FindItem[=combine long sword].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine long sword].InvSlot} leftmouseup
        /if (${FindItem[=combine two handed sword].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine two handed sword].InvSlot} leftmouseup
        /if (${FindItem[=combine warhammer].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine warhammer].InvSlot} leftmouseup
        /if (${FindItem[=combine dagger].InvSlot}) /ctrlkey /itemnotify ${FindItem[=combine dagger].InvSlot} leftmouseup
        /nomodkey /shift /notify MerchantWnd MW_Sell_Button leftmouseup
        /delay 1s
	/if (!${FindItem[=jasper].InvSlot}) /call Buy "Jasper" 100
        /nomodkey /shift /notify MerchantWnd MW_done_Button leftmouseup
	/delay 1s !${Window[MerchantWnd].Open}
	/varcalc TimesRun ${TimesRun}+1
	/echo TimesRun: ${TimesRun}
	/varcalc TimeRan ${Macro.RunTime}/60
	/echo Macro Has been running for ${TimeRan} minutes
	/varset PlatMadeTemp ${Math.Calc[${Me.Cash}/1000]}
	/varset PlatMade ${Math.Calc[${PlatMadeTemp}-${StartPlat}]}
	/echo You have made ${PlatMade}
	/echo That is ${Math.Calc[${PlatMade}/${TimeRan}]} plat per minute
	/if (${TimesRun}>${MaxRuns}) /end
/goto :main
/return

Sub warper
:tryagain
/if (${Spawn[gm].ID}) {
	/echo GM in zone, cant warp. Ending and Exiting.
	/delay 1s
	/timed 10 /exit
	/end
}
/if (!${Spawn[${Target.Name}].NearestSpawn[PC radius 80].ID} || ${Spawn[${Target.Name}].NearestSpawn[PC radius 100].ID}==${Me.ID}) {
	/warp loc ${Math.Calc[${Target.Y}+5]}, ${Math.Calc[${Target.X}+5]}, ${Target.Z}
} else {
	/delay 1s
	/goto :tryagain
}
/delay 2s
	/keypress forward hold
	/delay 1
	/keypress back
	/if (${Target.Distance} > 15) /goto :tryagain
/return

Sub Giver
/face fast nolook
/delay 5s ${Cursor.ID}
/delay 5
/nomodkey /click left target
/delay 5s ${Window[GiveWnd].Open} || !${Cursor.ID}
/delay 5
/notify GiveWnd GVW_Give_Button leftmouseup
/delay 9s !${Window[GiveWnd].Open}
/delay 5
/return

Sub Zoner(ZoneTGT)
/echo Waiting till arriveing in ${ZoneTGT}
/if (${Zone.ShortName.Equal[${ZoneTGT}]}) /return
/delay 2s
:waittoarrive
/delay 1s
/doevents Zoned
/if (!${Macro.Return.Equal[${ZoneTGT}]} && ${Zone.ShortName.NotEqual[${ZoneTGT}]}) /goto :waittoarrive
/delay 2s
/return        
	
Sub Event_Zoned
/delay 2s
/return ${Zone.ShortName}
Lemme know what you think.
 
Last edited:
PlatPimp v1.0

Users who are viewing this thread

Back
Top
Cart