THIS MACRO BECOME BUILT IN BBOT AS ADVANCED SQM AVOID AOE, NO NEED TO USE IT ANYMORE
So, yesterday my EK was RSed and lost over 300kk worth of items..
That is about 40 EURO worth of money on OTS i play.
That made me thinking.
People who RSed me were nice enough to explain how they did it.
basicly they stacked on me on one SQM after going up/down stairs.
BBOT didnt recognise them as people and used exori on 2 monsters that they were healing with Mas Sio - they needed 2 EDs to keep up with heal against my damage
So my idea now is, that i took Position of EVERY SQM that is up or down from stairs on spawn that i'm botting on.
Made macro to check if character is standing on mentioned SQM and setting up certain variable depending on result.
My aoe attack macro checks now for that variable, and also Macro.Runs that script jsut for extra safety.
Not only that but i also add random number generator, for AOE spell DELAY
SO here it is:
Variables
____________________________
Position check macro
____________________________
Delay macros
____________________________
example of AOE spell macro
So, yesterday my EK was RSed and lost over 300kk worth of items..
That is about 40 EURO worth of money on OTS i play.
That made me thinking.
People who RSed me were nice enough to explain how they did it.
basicly they stacked on me on one SQM after going up/down stairs.
BBOT didnt recognise them as people and used exori on 2 monsters that they were healing with Mas Sio - they needed 2 EDs to keep up with heal against my damage
So my idea now is, that i took Position of EVERY SQM that is up or down from stairs on spawn that i'm botting on.
Made macro to check if character is standing on mentioned SQM and setting up certain variable depending on result.
My aoe attack macro checks now for that variable, and also Macro.Runs that script jsut for extra safety.
Not only that but i also add random number generator, for AOE spell DELAY
SO here it is:
Variables
Code:
#RS SAFETY
#floor 10
flrA=10
rX0=30160
rY0=32766
rX1=30161
rY1a=32767
rY1b=32766
rX2=30162
rY2a=32766
rY2b=32767
rX6=30184
rY6=32753
rY6b=32752
rX7=30185
rY7=32753
rY7b=32752
rY8=32795
rY9=32794
rX8a=30223
rX8b=30224
rX8c=30225
rX8d=30226
rX13a=30142
rX13b=30141
rY13a=32764
rY13b=32765
rY13c=32766
rY14=32752
rX14a=30183
rX14b=30184
rX14c=30185
rX14d=30186
rX15=30183
rY15=32753
#floor 11
flrB=11
rY3a=32769
rY3b=32770
rX3a=30160
rX3b=30161
rX3c=30162
rY4=32755
rY5=32756
rX4a=30183
rX4b=30184
rX4c=30185
rX4d=30186
rY10=32797
rY11=32798
rX10a=30223
rX10b=30224
rX10c=30225
rX10d=30226
rX12a=30144
rX12b=30145
rY12a=32763
rY12b=32764
rY12c=32765
rY12d=32766
____________________________
Position check macro
Code:
500 {RSstairs}
rsX:=Self.X()
rsY:=Self.Y()
rsZ:=Self.Z()
!rsZ!==!flrA! [floor]
!rsX!==!rX0! [r0]
!rsY!==!rY0! [d0]
DANG:=666
exit()
{d0}
DANG:=777
exit()
{r0}
!rsX!==!rX1! [r1]
!rsY!==!rY1a! [d1a]
DANG:=666
exit()
{d1a}
!rsY!==!rY1b! [d1b]
DANG:=666
exit()
{d1b}
DANG:=777
exit()
{r1}
!rsX!==!rX2! [r2]
!rsY!==!rY2a! [d2a]
DANG:=666
exit()
{d2a}
!rsY!==!rY2b! [d2b]
DANG:=666
exit()
{d2b}
DANG:=777
exit()
{r2}
!rsX!==!rX6! [r6]
!rsY!==!rY6! [d6a]
DANG:=666
exit()
{d6a}
!rsY!==!rY6b! [d6b]
DANG:=666
exit()
{d6b}
DANG:=777
exit()
{r6}
!rsX!==!rX7! [r7]
!rsY!==!rY7! [d7a]
DANG:=666
exit()
{d7a}
!rsY!==!rY7b! [d7b]
DANG:=666
exit()
{d7b}
DANG:=777
exit()
{r7}
!rsY!==!rY8! [r8]
!rsX!==!rX8a! [d8a]
DANG:=666
exit()
{d8a}
!rsX!==!rX8b! [d8b]
DANG:=666
exit()
{d8b}
!rsX!==!rX8c! [d8c]
DANG:=666
exit()
{d8c}
!rsX!==!rX8d! [d8d]
DANG:=666
exit()
{d8d}
DANG:=777
exit()
{r8}
!rsY!==!rY9! [r9]
!rsX!==!rX8a! [d9a]
DANG:=666
exit()
{d9a}
!rsX!==!rX8b! [d9b]
DANG:=666
exit()
{d9b}
!rsX!==!rX8c! [d9c]
DANG:=666
exit()
{d9c}
!rsX!==!rX8d! [d9d]
DANG:=666
exit()
{d9d}
DANG:=777
exit()
{r9}
!rsX!==!rX13a! [r13a]
!rsY!==!rY13a! [d13a]
DANG:=666
exit()
{d13a}
!rsY!==!rY13b! [d13b]
DANG:=666
exit()
{d13b}
!rsY!==!rY13c! [d13c]
DANG:=666
exit()
{d13c}
DANG:=777
exit()
{r13a}
!rsX!==!rX13b! [r13b]
!rsY!==!rY13a! [d13a]
DANG:=666
exit()
{d13a}
!rsY!==!rY13b! [d13b]
DANG:=666
exit()
{d13b}
!rsY!==!rY13c! [d13c]
DANG:=666
exit()
{d13c}
DANG:=777
exit()
{r13b}
!rsY!==!rY14! [r14]
!rsX!==!rX14a! [d14a]
DANG:=666
exit()
{d14a}
!rsX!==!rX14b! [d14b]
DANG:=666
exit()
{d14b}
!rsX!==!rX14c! [d14c]
DANG:=666
exit()
{d14c}
!rsX!==!rX14d! [d14d]
DANG:=666
exit()
{d14d}
DANG:=777
exit()
{r14}
!rsX!==!rX15! [r15]
!rsY!==!rY15! [d15]
DANG:=666
exit()
{d9}
DANG:=777
exit()
{r15}
DANG:=777
exit()
{floor}
!rsZ!==!flrB! [floor2]
!rsY!==!rY3a! [r3a]
!rsX!==!rX3a! [d3a]
DANG:=666
exit()
{d3a}
!rsX!==!rX3b! [d3b]
DANG:=666
exit()
{d3b}
!rsX!==!rX3c! [d3c]
DANG:=666
exit()
{d3c}
DANG:=777
exit()
{r3a}
!rsY!==!rY3b! [r3b]
!rsX!==!rX3a! [d3a]
DANG:=666
exit()
{d3a}
!rsX!==!rX3b! [d3b]
DANG:=666
exit()
{d3b}
!rsX!==!rX3c! [d3c]
DANG:=666
exit()
{d3c}
DANG:=777
exit()
{r3b}
!rsY!==!rY4! [r4]
!rsX!==!rX4a! [d4a]
DANG:=666
exit()
{d4a}
!rsX!==!rX4b! [d4b]
DANG:=666
exit()
{d4b}
!rsX!==!rX4c! [d4c]
DANG:=666
exit()
{d4c}
!rsX!==!rX4d! [d4d]
DANG:=666
exit()
{d4d}
DANG:=777
exit()
{r4}
!rsY!==!rY5! [r5]
!rsX!==!rX4a! [d4a]
DANG:=666
exit()
{d4a}
!rsX!==!rX4b! [d4b]
DANG:=666
exit()
{d4b}
!rsX!==!rX4c! [d4c]
DANG:=666
exit()
{d4c}
!rsX!==!rX4d! [d4d]
DANG:=666
exit()
{d4d}
DANG:=777
exit()
{r5}
!rsY!==!rY10! [r10]
!rsX!==!rX10a! [d10a]
DANG:=666
exit()
{d10a}
!rsX!==!rX10b! [d10b]
DANG:=666
exit()
{d10b}
!rsX!==!rX10c! [d10c]
DANG:=666
exit()
{d10c}
!rsX!==!rX10d! [d10d]
DANG:=666
exit()
{d10d}
DANG:=777
exit()
{r10}
!rsY!==!rY11! [r11]
!rsX!==!rX10a! [d11a]
DANG:=666
exit()
{d11a}
!rsX!==!rX10b! [d11b]
DANG:=666
exit()
{d11b}
!rsX!==!rX10c! [d11c]
DANG:=666
exit()
{d11c}
!rsX!==!rX10d! [d11d]
DANG:=666
exit()
{d11d}
DANG:=777
exit()
{r11}
!rsX!==!rX12a! [r12a]
!rsY!==!rY12a! [d12a]
DANG:=666
exit()
{d12a}
!rsY!==!rY12b! [d12b]
DANG:=666
exit()
{d12b}
!rsY!==!rY12c! [d12c]
DANG:=666
exit()
{d12c}
!rsY!==!rY12d! [d12d]
DANG:=666
exit()
{d12d}
DANG:=777
exit()
{r12a}
!rsX!==!rX12b! [r12b]
!rsY!==!rY12a! [d12a]
DANG:=666
exit()
{d12a}
!rsY!==!rY12b! [d12b]
DANG:=666
exit()
{d12b}
!rsY!==!rY12c! [d12c]
DANG:=666
exit()
{d12c}
!rsY!==!rY12d! [d12d]
DANG:=666
exit()
{d12d}
DANG:=777
exit()
{r12b}
DANG:=777
exit()
{floor2}
DANG:=666
exit()
____________________________
Delay macros
Code:
2000 {rsRNG}
rsRNG:=Misc.Random(6, 10)
exit()
Code:
400 {PlayerTimer}
Creatures.PlayersOnScreen()>=2 [tim]
antiPK:=0
exit()
{tim}
Creatures.PlayersOnScreen()==1
VarAdd(antiPK, 1)
exit()
____________________________
example of AOE spell macro
Code:
0 {safe exori}
Macro.Run(RSstairs)
!DANG!==777
Self.Mana>=200
Self.Attacking()==1
Creatures.PlayersOnScreen()==01
!antiPK!>=!rsRNG!
Self.Say(exori)
exit()