This is my AFK MM for the Butcherblock Monter Mission "The Poisoned Flounder". This is NOT to be posted anywhere but here on Redguides without my consent!! NO EXCEPTIONS!
This macro works in many parts. It is also written from a few other macros including hunter macro. Make sure you start ALL bot macros before you start the main macro. This macro will kill mobs in the mission until it is ready to loot the shard. All toons will loot the shard and exit and repeat the mission.
Download this macro >>HERE<<
EDIT: 2/21/2007
NBBMAIN
Changed and cleaned up some code to make things run smoother. Added in Subs to /open and /loot chests in mission before killing. Removed the need for swap.inc and spellcast.inc. Removed alot of the "echos" from the original Hunter.mac that were not needed for this. Moved /call ReadIni into the Butcher Sub, so it will read the ini file for mobs and loot when in the correct zone. This all made it so I could take out the commands to restart the macro.
Shortened alot of the delays in alot of the subs during the mission to make things move faster for those using three toons. That with the fact that it now opens and loots chests, should make it alot faster and easier to win. Added "kick" and "taunt" into the combat Sub, therefore removing the /call specialit sub. Removed the display stats variable.
Added in a variable to turn off opening and looting of chests in case said plugins it relys on are not working. Edit these to 0 if you DO NOT want it to open and loot chests.
TODO: Add in a loot counter so when you get 30 Plundered Treasure it will wait instead of continuing to fight.
Add in a "In Mission" Variable, so the macro knows when its in the mission or waiting for a new one.
NBBCLERIC
Cleaned up the code a bit so not so many restarts, should loop well enough now to not need restarts. Added a couple more zone checks in to make sure the right subs will be performed in the right zones.
NBBENCH
Cleaned up the code a bit so not so many restarts, should loop well enough now to not need restarts. Added a couple more zone checks in to make sure the right subs will be performed in the right zones.
NBBWARRIOR
Cleaned up the code a bit so not so many restarts, should loop well enough now to not need restarts. Added a couple more zone checks in to make sure the right subs will be performed in the right zones. Added in "kick" to the combat sub. Also added in a zonecheck to combat sub in case bot is not in mission for some reason wont be attacking and assisting in butcherblock.
NBBROGUE
Added the NBBROGUE.mac back in for those who wanted it. This is the same as the NBBWARRIOR.mac except it will use "backstab" instead of "kick" and will use the aa "hamstring".
NBBMAIN.mac
NBBCLERIC.mac
NBBENCH.mac
NBBWARRIOR.mac
NBBROGUE.mac
INIFILES PIRATELOOT.ini
INIFILES PIRATEMOB.ini
Enjoy! RedCents and Feedback welcome.
My contribution to the Redguides community!
EDIT: I am a member of many different boards, if I find this posted elsewhere without my consent I will be upset and if you use the same name as here I will ask the mods to take action. This is for REDGUIDES ONLY!
This macro works in many parts. It is also written from a few other macros including hunter macro. Make sure you start ALL bot macros before you start the main macro. This macro will kill mobs in the mission until it is ready to loot the shard. All toons will loot the shard and exit and repeat the mission.
Download this macro >>HERE<<
EDIT: 2/21/2007
NBBMAIN
Changed and cleaned up some code to make things run smoother. Added in Subs to /open and /loot chests in mission before killing. Removed the need for swap.inc and spellcast.inc. Removed alot of the "echos" from the original Hunter.mac that were not needed for this. Moved /call ReadIni into the Butcher Sub, so it will read the ini file for mobs and loot when in the correct zone. This all made it so I could take out the commands to restart the macro.
Shortened alot of the delays in alot of the subs during the mission to make things move faster for those using three toons. That with the fact that it now opens and loots chests, should make it alot faster and easier to win. Added "kick" and "taunt" into the combat Sub, therefore removing the /call specialit sub. Removed the display stats variable.
Added in a variable to turn off opening and looting of chests in case said plugins it relys on are not working. Edit these to 0 if you DO NOT want it to open and loot chests.
Rich (BB code):
/declare OpenChest int outer 1
/declare LootChest int outer 1
TODO: Add in a loot counter so when you get 30 Plundered Treasure it will wait instead of continuing to fight.
Add in a "In Mission" Variable, so the macro knows when its in the mission or waiting for a new one.
NBBCLERIC
Cleaned up the code a bit so not so many restarts, should loop well enough now to not need restarts. Added a couple more zone checks in to make sure the right subs will be performed in the right zones.
NBBENCH
Cleaned up the code a bit so not so many restarts, should loop well enough now to not need restarts. Added a couple more zone checks in to make sure the right subs will be performed in the right zones.
NBBWARRIOR
Cleaned up the code a bit so not so many restarts, should loop well enough now to not need restarts. Added a couple more zone checks in to make sure the right subs will be performed in the right zones. Added in "kick" to the combat sub. Also added in a zonecheck to combat sub in case bot is not in mission for some reason wont be attacking and assisting in butcherblock.
NBBROGUE
Added the NBBROGUE.mac back in for those who wanted it. This is the same as the NBBWARRIOR.mac except it will use "backstab" instead of "kick" and will use the aa "hamstring".
- Have the person running the NBBMain macro as the leader of the group (This is important)
- Make sure everyone in the group is by Mister Squich.
- Edit Player2, Player3, Player4, Player5, Player6 in NBBMain mac to reflect the members of the group.
- Edit ME in NBBMain to reflect the name of the toon running NBBMain
- Again make sure the toon running NBBMAIN is the leader of the group!!!!
- Make sure the toon running NBBMAIN is the LEADER of the group.
- This macro uses warp ALOT, use at your own risk. I have used this for almost an entire year with NO PROBLEMS.
- Make sure you do the AA's on each toon once as the macro will get them automaticly.
NBBMAIN.mac
Rich (BB code):
| BB MM Macro
| NBBMain.mac
| Author : robdawg
| Edit : Chill, Fallon
| BBMM Edit : Nijhal
| Version : v1.2BB Pirate MM 04/14/2006
| Useage : /macro NBBMain
| Description : This macro is intended to be used with NBBWarrior, NBBRogue, NBBCleric
| NBBEnch macros. When used all together, it will run 'The Poisoned Flounder'
| Butcherblock Monster Mission completely unattended. Start all other macros first.
| Make sure the toon running this macro is the LEADER of the group.
|
| Edit: 2/21/2007
| Changed and cleaned up some code to make things run smoother. Added in Subs to /open
| and /loot chests in mission before killing. Removed the need for swap.inc and
| spellcast.inc.
|------------------------------------------------------------------------------------
#turbo 10
#Chat say
#Chat Group
#Chat Tell
#event Butcher "Butcherblock Mountains"
#event Chest "#*#The guards be on tew us!#*#"
#event Reset "Try attacking someone other than#*#"
#event Wait "You have been slain by#*#"
#event Backup "You cannot see your target#*#"
#event Fail "#*#coulden't even get me#*#"
Sub Main
/echo BBMM Mainbot started
/keypress esc
/keypress esc
/keypress esc
|------------------------------------------------------------
|Should I open and loot chests?
|------------------------------------------------------------
/declare OpenChest int outer 1
/declare LootChest int outer 1
|------------------------------------------------------------
|How many times should aquire target fail before delaying?
|------------------------------------------------------------
/declare RV_FailMax int outer 20000
|------------------------------------------------------------
|How far would you like to target a mob?
|------------------------------------------------------------
/declare RV_MaxRadius int outer 10000
|------------------------------------------------------------
|How far is the combat range?
|------------------------------------------------------------
/declare RV_Range int outer 10
|------------------------------------------------------------
|What is the minimum Z Value of mobs I should target?
|------------------------------------------------------------
/declare RV_MinZRange int outer -1000
|------------------------------------------------------------
|What is the maximum Z Value of mobs I should target?
|------------------------------------------------------------
/declare RV_MaxZRange int outer 1000
|------------------------------------------------------------
|Should I loot all items?
|------------------------------------------------------------
/declare RV_LootAllItems int outer 0
|------------------------------------------------------------
|Generic Counter Variable
|------------------------------------------------------------
/declare c int outer 0
|------------------------------------------------------------
|Variables that you don't need to worry about.
|------------------------------------------------------------
/declare RV_FailCounter int outer 0
/declare RV_MyTargetID int outer 0
/declare RV_MyTargetName string outer
/declare RV_MyTargetDead int outer 0
/declare RV_InvalidTargetID int outer 0
/declare RV_HasTarget int outer 0
/declare RV_RandomWait int outer 0
/declare RV_LootSlot int outer 0
/declare RV_CheckLook int outer 0
/declare RV_Fighting int outer 0
/declare RV_TargetDead int outer 0
/declare RV_MyXLOC int outer 0
/declare RV_MyYLOC int outer 0
/declare RV_FastRange int outer
/declare RV_RangeMax int outer
/declare RV_RangeMin int outer
/varcalc RV_FastRange ${RV_Range}+3
/varcalc RV_RangeMax ${RV_Range}+1
/varcalc RV_RangeMin ${RV_Range}-1
/fastdrop on
/lootn never
:Start
/if (${Zone.ID}==68) /call event_Butcher
/if (${OpenChest}) /call ChestOpen
/if (${LootChest}) /call ChestLoot
/doevents
/call BuffCheck
/call GMCheck
/call GetTarget
/doevents
:KillAdds
/target ${NearestSpawn[NPC Radius 20]}
/open
/call GMCheck
/if (${RV_HasTarget}) /call MoveToMob
/if (${RV_HasTarget}) /call CombatSub
/if (${RV_HasTarget}) /call MoveToMob
/if (${RV_HasTarget} && (${Defined[RV_LootArray]} || ${RV_LootAllItems})) /call LootMob
/call ResetSub
/call GMCheck
/if (${NearestSpawn[NPC Radius 20].ID}) /target ${NearestSpawn[NPC Radius 20]}
/if (${Target.Type.Equal[PC]}) /squelch /target clear
/varset RV_RandomWait ${Math.Rand[5]}
/varcalc RV_RandomWait ${RV_RandomWait}+1
/echo Paranoia - Waiting ${RV_RandomWait} seconds before resuming
/delay ${RV_RandomWait}s
/call GMCheck
/if (${NearestSpawn[NPC Radius 20].ID}) /target ${NearestSpawn[NPC Radius 20]}
/if (${Target.Type.Equal[PC]}) /squelch /target clear
/if (${Target.ID}) {
/echo Looks like something is attacking us, killing it...
/call GMCheck
/squelch /warp target
/delay 1s
/keypress back
/delay 4
/varset RV_HasTarget 1
/varset RV_Fighting 1
/goto :KillAdds
}
/goto :Start
/return
|--------------------------------------------------------------------------------
|SUB: Aquire Target
|--------------------------------------------------------------------------------
Sub GetTarget
/declare RV_CurrentRadius int local
/declare RV_TargetSub int local
:Acquire
/call GMCheck
/doevents
/if (${Zone.ID}==68) /call event_Butcher
/for RV_CurrentRadius 100 to ${RV_MaxRadius} step 100
/for RV_TargetSub 1 to ${RV_MobArray.Size}
/squelch /target radius ${RV_CurrentRadius} nopcnear notid ${RV_InvalidTargetID} npc
"${RV_MobArray[${RV_TargetSub}]}"
/varset RV_MyTargetID ${Target.ID}
/varset RV_MyTargetDead 0
/if (${Target.ID}) {
/if (${Int[${Target.PctHPs}]}<4) {
/varset RV_InvalidTargetID ${Target.ID}
/call ResetSub
/goto :Acquire
}
/if (${Int[${Target.Z}]}<${RV_MinZRange}) {
/varset RV_InvalidTargetID ${Target.ID}
/call ResetSub
/goto :Acquire
}
/if (${Int[${Target.Z}]}>${RV_MaxZRange}) {
/varset RV_InvalidTargetID ${Target.ID}
/call ResetSub
/goto :Acquire
}
/varset RV_HasTarget 1
/if (${Target.Type.Equal[PC]}) /squelch /target clear
/varset RV_MyTargetName ${Target.CleanName}
/call GMCheck
/squelch /warp target
/open
/delay 1s
/keypress back hold
/keypress back
/delay 1s
/return
}
/next RV_TargetSub
/delay 2
/next RV_CurrentRadius
/if (!${Target.ID}) {
/delay 2s
/varcalc RV_FailCounter ${RV_FailCounter}+1
/doevents
/if (${RV_FailCounter}>=${RV_FailMax}) {
/delay 3s
/varset RV_FailCounter 0
}
/goto :Acquire
}
/return
|--------------------------------------------------------------------------------
|SUB: Moving
|--------------------------------------------------------------------------------
Sub MoveToMob
/varset RV_MyXLOC ${Int[${Me.X}]}
/varset RV_MyYLOC ${Int[${Me.Y}]}
/declare RV_DistanceTimer timer 15
/doevents
:MovementLoop
/call GMCheck
/if ((!${RV_Fighting})&&(!${RV_TargetDead})&&(${Target.PctHPs}<100)) {
/varset RV_InvalidTargetID ${Target.ID}
/varset RV_HasTarget 0
/call ResetSub
/return
}
/if (${Target.ID}) {
/face fast
}
/call GMCheck
/if (${Int[${Target.Distance}]}>${RV_FastRange}) {
/keypress forward hold
}
/call GMCheck
/if (${Int[${Target.Distance}]}<${RV_FastRange}&&${Int[${Target.Distance}]}>${RV_RangeMax}) {
/keypress forward
}
/call GMCheck
/if (${Int[${Target.Distance}]}<${RV_RangeMin}) {
/keypress back
}
/call GMCheck
/if (!${RV_DistanceTimer}) {
/if ((${RV_MyXLOC}==${Int[${Me.X}]})&&(${RV_MyYLOC}==${Int[${Me.Y}]})) /call HitObstacle
/varset RV_MyXLOC ${Int[${Me.X}]}
/varset RV_MyYLOC ${Int[${Me.Y}]}
/varset RV_DistanceTimer 15
/goto :Movementloop
}
/if (${Int[${Target.Distance}]}>${RV_FastRange}) /goto :MovementLoop
/return
|--------------------------------------------------------------------------------
|SUB: Combat
|--------------------------------------------------------------------------------
Sub CombatSub
/call GMCheck
/keypress back hold
/delay 4
/keypress back
/g assist me
/varset RV_Fighting 1
/varset RV_TargetDead 0
:CombatLoop
/call GMCheck
/doevents
/attack on
/doevents
/call MoveToMob
/if (${Target.Type.Equal[corpse]})...
/if ((${Target.Distance}<11)&&(${Me.AbilityReady["Taunt"]})) /doability "Taunt"
/if ((${Target.Distance}<11)&&(${Me.AbilityReady["Kick"]})) /doability "Kick"
/if (!${Target.ID}) {
/attack off
/keypress forward
/keypress back
/varset RV_TargetDead 1
/varset RV_Fighting 0
/delay 1s
/target radius 30 corpse
/delay 1s
/if (!${Target.ID}) {
/call ResetSub
/return
}
/face fast
}
/if (!${RV_TargetDead}) {
/goto :CombatLoop
}
/return
|--------------------------------------------------------------------------------
|SUB: Looting
|--------------------------------------------------------------------------------
Sub LootMob
/call GMCheck
/declare LootSlot int inner 0
/declare LootCheck int inner 0
/declare LootTotal int inner 0
/face fast
/call GMCheck
/keypress forward
/keypress back
/delay 2s
/call GMCheck
/loot
/delay 2s
/if (!${Corpse.Items}) {
/return
}
/varset LootTotal ${Corpse.Items}
/for LootSlot 1 to ${LootTotal}
/itemnotify loot${LootSlot} leftmouseup
/delay 1s
/if (${RV_LootAllItems}) {
/autoinventory
/delay 1s
} else {
/for LootCheck 1 to ${RV_LootArray.Size}
/if (${Cursor.Name.Find[${RV_LootArray[${LootCheck}]}]}) {
/varcalc RV_LootStats[${LootCheck}] ${RV_LootStats[${LootCheck}]}+1
/autoinventory
/delay 1s
}
/next LootCheck
}
/if (${Cursor.ID}) {
/destroy
/delay 1s
}
/next LootSlot
/call GMCheck
/notify LootWnd DoneButton leftmouseup
/delay 2
/return
|--------------------------------------------------------------------------------
|SUB: Reset
|--------------------------------------------------------------------------------
Sub ResetSub
/call GMCheck
/keypress esc
/keypress esc
/keypress esc
/keypress esc
/varset RV_HasTarget 0
/varset RV_TargetDead 0
/varset RV_Fighting 0
/return
|--------------------------------------------------------------------------------
|SUB: Obstacle Avoidance
|--------------------------------------------------------------------------------
Sub HitObstacle
/call GMCheck
/squelch /warp target
/return
|--------------------------------------------------------------------------------
|SUB: GM Check
|--------------------------------------------------------------------------------
Sub GMCheck
/if (${Spawn[gm].ID}) {
/beep
/beep
/beep
/echo GM has entered the zone!
/echo FUCK HIM but ending the macro...
/endmacro
/unload
}
/return
|--------------------------------------------------------------------------------
|SUB: Reading from an INI File
|--------------------------------------------------------------------------------
Sub ReadINI(FileName,SectionName,ArrayType)
/delay 1s
/if (${Ini[${FileName},${SectionName},-1,NO].Equal[NO]}) {
/delay 1s
/return
}
/declare nValues int local 1
/declare nArray int local 0
/declare KeySet string local ${Ini[${FileName},${SectionName}]}
:CounterLoop
/if (!${KeySet.Arg[${nValues},|].Length}) {
/varcalc nValues ${nValues}-1
/goto :MakeArray
}
/varcalc nValues ${nValues}+1
/goto :CounterLoop
:MakeArray
/if (!${nValues}) /return
/if (${FileName.Equal["PirateMob.ini"]}&&${nValues}>0) {
/declare RV_MobArray[${nValues}] string outer
/declare RV_MobStats[${nValues}] string outer
}
/if (${FileName.Equal["PirateLoot.ini"]}&&${nValues}>0) {
/declare RV_LootArray[${nValues}] string outer
/declare RV_LootStats[${nValues}] string outer
}
/for nArray 1 to ${nValues}
/if (${FileName.Equal["PirateMob.ini"]}) {
/varset RV_MobArray[${nArray}] ${Ini[${FileName},${SectionName},${ArrayType}${nArray}]}
/varset RV_MobStats[${nArray}] 0
}
/if (${FileName.Equal["PirateLoot.ini"]}) {
/varset RV_LootArray[${nArray}] ${Ini[${FileName},${SectionName},${ArrayType}${nArray}]}
/varset RV_LootStats[${nArray}] 0
}
/next nArray
/delay 1s
/return
|---------------------------------------------------------------------------------
|Sub: Butcher. Moves around in butcherblock and gets task.
|---------------------------------------------------------------------------------
Sub event_Butcher
/doevents flush
/call RemoveTask
:butcherr
/call GMCheck
/delay 5s
/target Mister
/delay 1s
/face fast
/delay 1s
/call GMCheck
/keypress forward hold
/delay 1s ${Target.Distance}<10
/keypress back
/doevents
/delay 5s
/call GMCheck
/say interested
/delay 5s
/notify TaskSelectWnd TSEL_AcceptButton leftmouseup
/delay 5s
/notify TaskTemplateSelectWnd TaskTemplateSelectListOptional listselect 3
/delay 3s
/notify TaskTemplateSelectWnd TaskTemplateSelectAcceptButton leftmouseup
/delay 3s
/doevents
/keypress esc
/keypress esc
/keypress esc
/target Mister
/delay 3s
/call GMCheck
/say Board
/delay 10s
/say board
/delay 1m
/notify AAWindow AAW_LoadButton leftmouseup
/delay 2m
/call ReadINI PirateMob.ini "${Zone.Name}" Mob
/call ReadINI PirateLoot.ini "${Zone.Name}" Loot
/return
|-----------------------------------------------------------------------------------
|Sub RemoveTask Removes group members from previous task.
|-----------------------------------------------------------------------------------
Sub RemoveTask
:removetask
/taskremove Player2
/delay 1s
/taskremove Player3
/delay 1s
/taskremove Player4
/delay 1s
/taskremove Player5
/delay 1s
/taskremove Player6
/delay 1s
/taskremove Me
/return
|------------------------------------------------------------------------------------
|Sub Chest : Warps to docks, loots chest and tells others to do the same.
|------------------------------------------------------------------------------------
Sub event_Chest
/delay 1s
/call GMCheck
/squelch /warp loc -13, -1036, -53
/delay 1s
/targ race chest
/delay 1s
/call GMCheck
/open
/delay 1s
/target corpse
/delay 1s
/call GMCheck
/loot
/delay 2s
/itemnotify loot2 rightmouseup
/delay 2s
/notify LootWnd DoneButton leftmouseup
/cleanup
/delay 1s
/g loot the shard ya animals
/delay 1s
/target mister
/delay 1s
/call GMCheck
/squelch /warp target
/delay 2s
/say cast off
/delay 3m
/call RemoveTask
/return
|-----------------------------------------
|Sub Reset
|-----------------------------------------
Sub event_Reset
/call GMCheck
/keypress esc
/keypress esc
/keypress esc
/keypress esc
/varset RV_HasTarget 0
/varset RV_TargetDead 0
/varset RV_Fighting 0
/return
|------------------------------------------------------------------------------------
|Sub BuffCheck : Checks to see if its time to recast buffs.
|------------------------------------------------------------------------------------
Sub BuffCheck
/if (${Me.Buff["Swift like the wind"].Duration} !> ${MF_BuffTicks}) {
/g I need buffs
/delay 60s
}
/return
|------------------------------------------------------------------------------------
|Sub event_Wait : Waits to get task
|------------------------------------------------------------------------------------
Sub event_Wait
/delay 90s
/return
|------------------------------------------------------------------------------------
|Sub event_Backup : Simple Back up sub
|------------------------------------------------------------------------------------
Sub event_Backup
/keypress back
/return
|------------------------------------------------------------------------------------
|Sub Fail : Resets macro if MM Failed
|------------------------------------------------------------------------------------
Sub event_Fail
/target mister
/delay 3s
/call GMCheck
/squelch /warp target
/delay 1s
/g we failed time to go
/say cast off
/delay 4
/call ResetSub
/delay 1m
/return
|------------------------------------------------------------------------------------
|Sub ChestOpen : Opens all chests in zone at start of mission.
|------------------------------------------------------------------------------------
Sub ChestOpen
:chestopen
/target npc race chest
/if (!${Target.ID}) /return
/open
/goto :chestopen
/return
|------------------------------------------------------------------------------------
|Sub ChestLoot : Loots all chests that were opened at the start of the mission.
|------------------------------------------------------------------------------------
Sub ChestLoot
/target race chest
/if (!${Target.ID}) /return
/squelch /ghost on
:chestloot
/target race chest
/if (!${Target.ID}) /goto :lootdone
/delay 4
/squelch /warp target
/delay 4
/loot
/delay 1s
/itemnotify loot1 rightmouseup
/delay 2s
/notify LootWnd DoneButton leftmouseup
/goto :chestloot
:lootdone
/delay 4
/squelch /ghost return
/return
NBBCLERIC.mac
Rich (BB code):
|----------------------------------------------------------------------------
| Name: NBBCleric.mac
| Author: Nijhal
| Credits for code: Crystane, plink, hawk810, noobhaxxor
|----------------------------------------------------------------------------
| BB MM ClericBot, must be in BB Mtns near Mister
| Squich to use it.
|
|-----------------------------------------------------------------------------
#Chat say
#Chat Group
#Chat Tell
#event Done "#*#you have looted#*#"
#event Loot "#*#tells the group, 'loot the shard ya animals'"
#event Fail "#*#tells the group, 'we failed time to go'"
Sub Main
/echo |-----------------------------
/echo | Pirate MM Cleric bot v1.2
/echo |-----------------------------
/popup Pirate MM Cleric bot v1.2
/echo Setting up that no drop loot will be looted without confirmation.
/lootnodrop never
/squelch /docrack nomeleepush on
/call GMCheck
:loopstart
/call GMCheck
/doevents
/if (${Window[TaskTemplateSelectWnd].Open}) /call GoGoGo
/if (!${Zone.ID}==10) /goto :loopstart
/if (${Zone.ID}==10) /call Heal
/goto :loopstart
/return
|--------------------------------------------------
| Zones into the mission.
|--------------------------------------------------
Sub GoGoGo
/delay 5s
/notify TaskTemplateSelectWnd TaskTemplateSelectListOptional listselect 2
/delay 5s
/notify TaskTemplateSelectWnd TaskTemplateSelectAcceptButton leftmouseup
/delay 5s
/if (${Window[TaskWnd].Open}) {
/cleanup
}
/delay 5s
/target mister
/delay 1s
/call GMCheck
/if (${Target.Distance}>100) /squelch /warp target
/delay 2s
/say board
/delay 1m
/notify AAWindow AAW_LoadButton leftmouseup
/return
|--------------------------------------------------
| Loots the shard.
|--------------------------------------------------
Sub event_Loot
/if (!${Zone.ID}==10) /return
/doevents flush
/call GMCheck
/squelch /warp loc -13, -1036, -53
/delay 1s
/target corpse
/delay 2s
/call GMCheck
/squelch /warp target
/delay 2s
:looter
/if (!${Zone.ID}==10) /return
/loot
/doevents
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/doevents
/call GMCheck
/goto :looter
/doevents flush
/return
|--------------------------------------------------
|Continously Heals Party
|--------------------------------------------------
Sub Heal
/doevents
/keypress F2
/call GMCheck
/if (${Target.Distance}>50) /squelch /warp target
/doevents
/delay 2s
/if (${Me.PctHPs}<99) /goto :heal
/doevents
/if (${Target.PctHPs}<99) {
/goto :heal
} else {
/return
}
:heal
/doevents
/if (${Me.State.NotEqual[STUN]}) {
/if (${Me.AltAbilityReady["Gift of Temperance"]}) {
/delay 2
/aa act Gift of Temperance
/delay 5
}
}
/doevents flush
/return
|------------------------------------------------
|Exits Mission if you fail
|------------------------------------------------
Sub event_Fail
/target mister
/delay 4
/call GMCheck
/squelch /warp target
/delay 4
/say cast off
/return
|--------------------------------------------------------------------------------
|SUB: GM Check
|--------------------------------------------------------------------------------
Sub GMCheck
/if (${Spawn[gm].ID}) {
/beep
/beep
/beep
/echo GM has entered the zone!
/echo FUCK HIM but ending the macro...
/afk
/endmacro
/unload
}
/return
|--------------------------------------------------
|Loots and Exits
|--------------------------------------------------
Sub event_Done
/delay 3s
/call GMCheck
/cleanup
/delay 10s
/if (${Zone.ID}==10) /gate
/doevents flush
/delay 1m
/return
NBBENCH.mac
Rich (BB code):
|----------------------------------------------------------------------------
| Name: NBBEnch.mac
| Author: Nijhal
| Credits for code: Crystane, plink, hawk810, noobhaxxor
|----------------------------------------------------------------------------
| BB MM Enchanterbot, must be in BB Mtns near Mister
| Squich to use it. Will buff and rebuff party and loot shard at end of mission.
|
|-----------------------------------------------------------------------------
#Chat say
#Chat Group
#Chat Tell
#event Done "#*#you have looted#*#"
#event Loot "#*#tells the group, 'loot the shard ya animals'"
#event Buffs "#*#tells the group, 'I need buffs'"
#event Fail "#*#tells the group, 'we failed time to go'"
Sub Main
/echo |-----------------------------
/echo | Pirate MM Enchanter bot v1.2
/echo |-----------------------------
/popup Pirate MM Enchanter bot v1.2
/echo Setting up that no drop loot will be looted without confirmation.
/lootnodrop never
/call GMCheck
:loopstart
/call GMCheck
/doevents
/if (${Window[TaskTemplateSelectWnd].Open}) /call GoGoGo
/goto :loopstart
/return
|--------------------------------------------------
| Zones into the mission.
|--------------------------------------------------
Sub GoGoGo
/delay 5s
/notify TaskTemplateSelectWnd TaskTemplateSelectListOptional listselect 4
/delay 5s
/notify TaskTemplateSelectWnd TaskTemplateSelectAcceptButton leftmouseup
/delay 5s
/if (${Window[TaskWnd].Open}) {
/cleanup
}
/delay 5s
/target mister
/delay 1s
/call GMCheck
/if (${Target.Distance}>100) /warp target
/delay 2s
/say board
/delay 1m
/keypress V
/delay 1s
/notify AAWindow AAW_LoadButton leftmouseup
/delay 1s
/keypress V
/delay 1s
/call event_Buffs
/return
|--------------------------------------------------
|Buffs the party
|--------------------------------------------------
Sub event_Buffs
/if (${Zone.ID}==68) /return
/popup ReBuffing Group!!!
/keypress F1
/call Buffage
/keypress F2
/call Buffage
/keypress F3
/call Buffage
/keypress F4
/call Buffage
/keypress F5
/call Buffage
/keypress F6
/call Buffage
/return
|--------------------------------------------------
|Sub Buffage
|--------------------------------------------------
Sub Buffage
/if (${Zone.ID}==68) /return
/delay 1s
/call GMCheck
/squelch /warp target
/delay 1s
/aa act breath of wind
/delay 5s
/call GMCheck
/squelch /warp target
/delay 1s
/aa act Swift Like the Wind
/delay 9s
/doevents
/return
|--------------------------------------------------
| Loots the shard.
|--------------------------------------------------
Sub event_Loot
/if (${Zone.ID}==68) /return
/doevents flush
/call GMCheck
/squelch /warp loc -13, -1036, -53
/delay 1s
/target corpse
/delay 2s
/call GMCheck
/squelch /warp target
/delay 2s
:looter
/if (!${Zone.ID}==10) /mac nbbench
/loot
/doevents
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/doevents
/call GMCheck
/goto :looter
/doevents flush
/return
|------------------------------------------------
|Exits Mission if you fail
|------------------------------------------------
Sub event_Fail
/if (${Zone.ID}==68) /return
/target mister
/delay 4
/call GMCheck
/squelch /warp target
/delay 4
/say cast off
/return
|------------------------------------------------
|SUB: GM Check
|------------------------------------------------
Sub GMCheck
/if (${Spawn[gm].ID}) {
/beep
/beep
/beep
/echo GM has entered the zone!
/echo FUCK HIM but ending the macro...
/afk
/endmacro
/unload
}
/return
|--------------------------------------------------
|Loots and Exits
|--------------------------------------------------
Sub event_Done
/if (${Zone.ID}==68) /return
/cleanup
/delay 3s
/call GMCheck
/cleanup
/delay 10s
/if (${Zone.ID}==10) /gate
/doevents flush
/delay 1m
/return
NBBWARRIOR.mac
Rich (BB code):
|----------------------------------------------------------------------------
| Name: NBBWarrior.mac
| Author: Nijhal
| Credits for code: Crystane, plink, hawk810, noobhaxxor
|----------------------------------------------------------------------------
| BB MM WarriorBot, must be in BB Mtns near Mister
| Squich to use it.
|
|-----------------------------------------------------------------------------
#Chat say
#Chat Group
#Chat Tell
#event Done "#*#you have looted#*#"
#event Loot "#*#tells the group, 'loot the shard ya animals'"
#event Assist "#*#tells the group, 'assist me'"
#event Fail "#*#tells the group, 'we failed time to go'"
#event Far "Your target is too far#*#"
#event Far "You can't hit them#*#"
Sub Main
/echo |-----------------------------
/echo | Pirate MM Warrior bot v1.2
/echo |-----------------------------
/popup Pirate MM Warrior bot v1.2
/echo Setting up that no drop loot will be looted without confirmation.
/lootnodrop never
:loopstart
/call GMCheck
/doevents
/if (${Window[TaskTemplateSelectWnd].Open}) /call GoGoGo
/goto :loopstart
/return
|--------------------------------------------------
| Zones into the mission.
|--------------------------------------------------
Sub GoGoGo
/notify TaskTemplateSelectWnd TaskTemplateSelectListOptional listselect 3
/delay 5s
/notify TaskTemplateSelectWnd TaskTemplateSelectAcceptButton leftmouseup
/delay 5s
/if (${Window[TaskWnd].Open}) {
/cleanup
}
/delay 5s
/target mister
/delay 1s
/call GMCheck
/if (${Target.Distance}>100) /warp target
/delay 2s
/say board
/delay 1m
/notify AAWindow AAW_LoadButton leftmouseup
/delay 1s
/return
|--------------------------------------------------
| Loots the shard.
|--------------------------------------------------
Sub event_Loot
/doevents flush
/call GMCheck
/squelch /warp loc -13, -1036, -53
/delay 1s
/target corpse
/delay 2s
/call GMCheck
/squelch /warp target
/delay 2s
:looter
/if (!${Zone.ID}==10) /return
/loot
/doevents
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/doevents
/call GMCheck
/goto :looter
/doevents flush
/return
|--------------------------------------------------
|Assists Main Tank
|--------------------------------------------------
Sub event_Assist
:combat
/if (!${Zone.ID}==10) /return
/stick off
/keypress F2
/delay 1s
/call GMCheck
/squelch /warp target
/delay 1s
/assist
/delay 1s
/face fast nolook
/attack on
/doevents
/face fast nolook
/stick 10 behind
/doevents
/if (!${Target.ID}) {
/attack off
/doevents flush
/return
}
/if ((${Target.Distance}<11)&&(${Me.AbilityReady["Kick"]})) /doability "Kick"
/goto :combat
/return
|-------------------------------------
|Zones out if mission fails
|-------------------------------------
Sub event_Fail
/target mister
/delay 4
/call GMCheck
/squelch /warp target
/delay 4
/say cast off
/return
|-------------------------------------
|Warps if too far
|-------------------------------------
Sub event_Far
/call GMCheck
/squelch /warp target
/doevents flush
/return
|-------------------------------------
|SUB: GM Check
|-------------------------------------
Sub GMCheck
/if (${Spawn[gm].ID}) {
/beep
/beep
/beep
/echo GM has entered the zone!
/echo FUCK HIM but ending the macro...
/afk
/endmacro
/unload
}
/return
|--------------------------------------------------
|Loots and Exits
|--------------------------------------------------
Sub event_Done
/cleanup
/delay 3s
/call GMCheck
/if (${Zone.ID}==10) /gate
/doevents flush
/delay 1m
/return
NBBROGUE.mac
Rich (BB code):
|----------------------------------------------------------------------------
| Name: NBBRogue.mac
| Author: Nijhal
| Credits for code: Crystane, plink, hawk810, noobhaxxor
|----------------------------------------------------------------------------
| BB MM WarriorBot, must be in BB Mtns near Mister
| Squich to use it.
|
|-----------------------------------------------------------------------------
#Chat say
#Chat Group
#Chat Tell
#event Done "#*#you have looted#*#"
#event Loot "#*#tells the group, 'loot the shard ya animals'"
#event Assist "#*#tells the group, 'assist me'"
#event Fail "#*#tells the group, 'we failed time to go'"
#event Far "Your target is too far#*#"
#event Far "You can't hit them#*#"
Sub Main
/echo |-----------------------------
/echo | Pirate MM Rogue bot v1.2
/echo |-----------------------------
/popup Pirate MM Rogue bot v1.2
/echo Setting up that no drop loot will be looted without confirmation.
/lootnodrop never
:loopstart
/call GMCheck
/doevents
/if (${Window[TaskTemplateSelectWnd].Open}) /call GoGoGo
/goto :loopstart
/return
|--------------------------------------------------
| Zones into the mission.
|--------------------------------------------------
Sub GoGoGo
/notify TaskTemplateSelectWnd TaskTemplateSelectListOptional listselect 1
/delay 5s
/notify TaskTemplateSelectWnd TaskTemplateSelectAcceptButton leftmouseup
/delay 5s
/if (${Window[TaskWnd].Open}) {
/cleanup
}
/delay 5s
/target mister
/delay 1s
/call GMCheck
/if (${Target.Distance}>100) /warp target
/delay 2s
/say board
/delay 1m
/notify AAWindow AAW_LoadButton leftmouseup
/delay 1s
/return
|--------------------------------------------------
| Loots the shard.
|--------------------------------------------------
Sub event_Loot
/doevents flush
/call GMCheck
/squelch /warp loc -13, -1036, -53
/delay 1s
/target corpse
/delay 2s
/call GMCheck
/squelch /warp target
/delay 2s
:looter
/if (!${Zone.ID}==10) /return
/loot
/doevents
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/nomodkey /itemnotify loot2 rightmouseup
/delay 4
/doevents
/call GMCheck
/goto :looter
/doevents flush
/return
|--------------------------------------------------
|Assists Main Tank
|--------------------------------------------------
Sub event_Assist
:combat
/if (!${Zone.ID}==10) /return
/stick off
/keypress F2
/delay 1s
/call GMCheck
/squelch /warp target
/delay 1s
/assist
/delay 1s
/face fast nolook
/attack on
/doevents
/face fast nolook
/stick 10 behind
/doevents
/if (!${Target.ID}) {
/attack off
/doevents flush
/return
}
/if ((${Target.Distance}<11)&&(${Me.AbilityReady["Backstab"]})) /doability "Backstab"
/if (${Me.State.NotEqual[STUN]}) {
/if (${Me.AltAbilityReady["Hamstring"]}) {
/delay 2
/aa act Hamstring
/delay 4
}
}
/goto :combat
/return
|-------------------------------------
|Zones out if mission fails
|-------------------------------------
Sub event_Fail
/target mister
/delay 4
/call GMCheck
/squelch /warp target
/delay 4
/say cast off
/return
|-------------------------------------
|Warps if too far
|-------------------------------------
Sub event_Far
/call GMCheck
/squelch /warp target
/doevents flush
/return
|-------------------------------------
|SUB: GM Check
|-------------------------------------
Sub GMCheck
/if (${Spawn[gm].ID}) {
/beep
/beep
/beep
/echo GM has entered the zone!
/echo FUCK HIM but ending the macro...
/afk
/endmacro
/unload
}
/return
|--------------------------------------------------
|Loots and Exits
|--------------------------------------------------
Sub event_Done
/cleanup
/delay 3s
/call GMCheck
/if (${Zone.ID}==10) /gate
/doevents flush
/delay 1m
/return
INIFILES PIRATELOOT.ini
Rich (BB code):
[East Freeport: The Poisoned Flounder]
Loot1=plunder
Loot2=shard
[Butcherblock]
Loot1=plunder
Loot2=shard
INIFILES PIRATEMOB.ini
Rich (BB code):
[East Freeport: The Poisoned Flounder]
mob1=Guard Bribbely
mob2=Tarker Gargurd
mob3=Jasmine Yiur
mob4=Tanlok Harson
mob5=Guard Quallith
mob6=Innkeep Hunter
mob7=Guard Popal
mob8=Grendig
mob9=Sissin Tanner
mob10=Sanhan Tanner
mob11=Myrissa O
mob12=Monita O
mob13=Jillian Dayson
mob14=Ston O
mob15=Jheron Felkis
mob16=Sun Alemaker
mob17=Cloud Alemaker
mob18=Rin Distlemor
mob19=Guard Zintrin
mob20=Wenden Bl
mob21=Harg Tonicka
mob22=Winsa Tanner
mob23=Tohsan Hallard
mob24=Guard Dreikin
mob25=Zenita D
mob26=Quan Nektogo
mob27=Innkeep Nasumi
mob28=Gord Smith
mob29=Klan Smith
mob30=Jenna Smith
Enjoy! RedCents and Feedback welcome.
My contribution to the Redguides community!
EDIT: I am a member of many different boards, if I find this posted elsewhere without my consent I will be upset and if you use the same name as here I will ask the mods to take action. This is for REDGUIDES ONLY!
Last edited:



I've been playing with this for hours now and can't get it to finish a mission within the allotted time.