Page 3 of 15
Re: Aion Bot
Posted: Sat Feb 18, 2012 6:10 am
by botje
yep, tried that, strange huh?
Re: Aion Bot
Posted: Sat Feb 18, 2012 7:13 am
by botje
fixed it, seems i didnt define the right variables in the function.
also, perhaps its possible to get a game section for AION?
Botje
Re: Aion Bot
Posted: Sat Feb 18, 2012 8:47 pm
by Administrator
If there is enough attention paid to AION, I'll open a new section. As is, I don't really thing 1 thread that is barely on its second page really warrants a need for a whole forum section.
Re: Aion Bot
Posted: Sat Feb 18, 2012 9:01 pm
by botje
true true, but watch what happens when the bot gets in a working state and it goes F2P
we'll see ^^
Re: Aion Bot
Posted: Sun Apr 15, 2012 2:04 am
by shavas
Well i for one am very keen to get the bot up and working. Played SOOOO much RoM before frogster ruined it. Even being in the top guild on our server it still sucked..... scouts were and probably are so op.
Anyways.. going to start testing your bot.
Re: Aion Bot
Posted: Sun Apr 15, 2012 3:10 am
by shavas
Some updates below for 3. Target isnt working ran outta time. I just googled about till i found places that had stuff updated.
Code: Select all
CharNameOffset = 0xD23568,
CharLegionOffset = 0xBEDC68,
CharLvlOffset = 0xCC7848,
CharClassOffset = 0xBF67D4,
CharCurHPOffset = 0xCC7870,
CharMaxHpOffset = 0xCC786C,
CharCurMPOffset = 0xBF6778,
CharMaxMpOffset = 0xBF6774,
CharCurExpOffset = 0xCC7860,
CharMaxExpOffset = 0xCC7850,
CharCurDpOffset = 0xBEB50E,
CharMaxDpOffset = 0xBEB50C,
CharEpRecoverOffset = 0xBEB4E8,
CharPosXOffset = 0xCBDD68,
CharPosYOffset = 0xCBDD64,
CharPosZOffset = 0xCBDD6C,
CharCamXOffset = 0xCBD944,
CharCamYOffset = 0xCBD93C,
CharHasTargetOffset = 0x8774E4,
CharIsFlyingOffset = 0xBEB518,
CharFlightRestOffset = 0xBEB514,
CharFlightMaxOffset = 0xBEB510,
CharIsCastingOffset = 0xBE1054,
CharCurCubeOffset = 0xBF67C8,
CharMaxCubeOffset = 0xBF67C4,
MiolIsAliveOffset = 0xC3EA48,
Re: Aion Bot
Posted: Sun Apr 15, 2012 5:10 am
by botje
thanx mate, ill include them, but i cant test them, seeying i only play at gameforge...
but ill add them nonetheless, and proberly add some setting to switch to them
Botje
Re: Aion Bot
Posted: Sun Apr 15, 2012 5:21 pm
by shavas
just create a free account then
then you can test both sides. Private servers just use a customised command line i thought.
I guess the next thing to do with the bot is see if we can port over the waypoint system from rom. Not hugely sure what / how difficult that will be. but considering both systems use a x/y co-ords system and we have that in Aion it shouldn't be 2 hard to get something similar going (well maybe for Administrator... i'll see how far i get tonight if i get time to play about).
Re: Aion Bot
Posted: Mon Apr 16, 2012 1:55 am
by botje
yeah i know, i tried to make something, but failed very VERY hard xd
even something simple as calculating distance between character and mob is above my current capabilities >.<
Re: Aion Bot
Posted: Mon Apr 16, 2012 2:44 am
by shavas
well got the waypoints recording now. Atm it is a complete hackfest of the rom code to just get it working. Now to work on getting it to move using the waypoints... that will be ALOT harder.
Re: Aion Bot
Posted: Mon Apr 16, 2012 2:55 am
by botje
yeah, recording is not the problem, thats easy enough.
but using them... xd good luck mate,
and thanx for the help, was getting lonely here
Re: Aion Bot
Posted: Mon Apr 16, 2012 3:54 am
by shavas
yeah got the WP's loading. just working on getting the bot to move. ahh well tomorrow is another day.
Re: Aion Bot
Posted: Tue Apr 17, 2012 2:24 am
by botje
dunno if you are familiar with autoit, but i got some code here that could provide some insight.
Code: Select all
;#################################################
;navigate functions
;#################################################
Func calcDist($xa,$ya)
$distCalc = sqrt( ($xa-PlayerXPos())^2 + ($ya-PlayerYPos())^2 )
if($distCalc > 15) Then
_jumpPlayer()
EndIf
return $distCalc
EndFunc
Func _getRandomJumpTimer()
return _TimeGetStamp() + Random(0,6,1)
EndFunc
Func _jumpPlayer()
if($jumper < _TimeGetStamp()) Then
if( $jumper <> 0) Then
Send("{SPACE down}")
Sleep(80)
Send("{SPACE up}")
EndIf
$jumper = _getRandomJumpTimer()
EndIf
EndFunc
Func _switchRotate($target, $now)
if($target < $now) Then
If(($now - $target) > 180) Then
$rot_down = "a down"
$rot_up = "a up"
Else
$rot_down = "d down"
$rot_up = "d up"
EndIf
Else
If(($target - $now) > 180) Then
$rot_down = "d down"
$rot_up = "d up"
Else
$rot_down = "a down"
$rot_up = "a up"
EndIf
EndIf
EndFunc
; rechnet 90 zu 360 hoch
Func getAngle($diffX, $diffY)
$angle = ATan($diffY/$diffX)
$angle = ($angle * 180.0 )/ $pi
if $diffX > 0 and $diffY > 0 Then
return getThreeSixty((180 -$angle),true)
ElseIf $diffX > 0 and $diffY < 0 Then
return getThreeSixty((-180 -$angle),true)
ElseIf $diffX < 0 and $diffY < 0 Then
return getThreeSixty((0 -$angle),true)
ElseIf $diffX < 0 and $diffY > 0 Then
return getThreeSixty((0 -$angle),true)
EndIf
EndFunc
; Flag = true - rechne 180 auf 360 hoch
;Flag = false - calc 360er rotate!
Func getThreeSixty($angle, $flag = false)
If($flag) Then
If($angle < 0) Then
$angle = (360 - ($angle * -1))
EndIf
Else
If($angle > 360)Then
$angle = $angle - 360
ElseIf($angle < 0)Then
$angle = $angle + 360
EndIf
EndIf
Return $angle
EndFunc
Func alignRotaion($x, $y, $move = false)
$playerXcoord = PlayerXPos()
$playerYcoord = PlayerYPos()
;$playerZcoord = PlayerZPos()
$diffY = Round($y - $playerYcoord,2)
$diffX = Round($x - $playerXcoord,2)
$angle = getAngle($diffX, $diffY)
$nowAng = getThreeSixty(GetPlayerPos(), true)
_switchRotate($angle, $nowAng)
While ($angle + 5) < $nowAng OR ($angle - 5) > $nowAng
if $move Then
Send("{w down}")
EndIf
Send("{"&$rot_down&"}")
$nowAng = getThreeSixty(GetPlayerPos(), true)
WEnd
if $move Then
if(($angle + 5) < $nowAng AND ($angle - 5) > $nowAng) Then
Send("{w up}")
EndIf
EndIf
Send("{"&$rot_up&"}")
EndFunc
Func walkPoints()
while $i < ($countMax-1)
checkShutDown()
WinActivate("AION Client")
WinWaitActive("AION Client")
_toolTip("Move to waypoint "&($i/3)+1)
$xCoord=$wpField[$i]
$yCoord=$wpField[$i+1]
$zCoord=$wpField[$i+2]
$i=$i+3
$Distance = calcDist($xCoord,$yCoord)
while $Distance > 3
alignRotaion($xCoord, $yCoord, true)
Send("{Tab}")
if(enemyInsgid()) Then
Send("{w up}")
KillEnemy()
_toolTip("Move to waypoint "&($i/3)+1)
EndIf
$Distance = calcDist($xCoord,$yCoord)
Send("{w down}")
If $Run = False Then
Send("{w up}")
ExitLoop
EndIf
WEnd
If $Run = False Then
Send("{w up}")
ExitLoop
EndIf
$jumper = _getRandomJumpTimer()
WEnd
$i=0
EndFunc
Re: Aion Bot
Posted: Tue Apr 17, 2012 3:31 pm
by shavas
oh the code for all that is already in rombot. I am no math geek so i dont know what the functions are really. But i know their purpose in the greater code. The hard part is retrofitting the whole class to work in your bot code. If i had an OLD copy of the rombot it would be easier. In the past rombot worked on addresses just like aion does. But eventually some clever guys figured out all the pointers and now it just works off them plus offsets so changing stuff about takes time. And i didnt get time to work on it last night.
Re: Aion Bot
Posted: Tue Apr 17, 2012 4:11 pm
by botje
k, just trowing it out there
Re: Aion Bot
Posted: Wed Apr 18, 2012 9:43 am
by MiesterMan
Looks like Aion came out as "truly free" with this 3.0 launch last week. I'm downloading now and will let you know if the version I get is crapshielded or not.
Re: Aion Bot
Posted: Wed Apr 18, 2012 11:06 am
by botje
welcome aboard man, AION has no crapshield
Re: Aion Bot
Posted: Wed Apr 18, 2012 9:27 pm
by shavas
wont be working on the bot till sunday. Got family visiting and kids birthday in weekend. So touch base then with updates.
Re: Aion Bot
Posted: Wed Apr 18, 2012 9:38 pm
by shavas
i only play on the true free live servers.... so i know it is all fine.
Re: Aion Bot
Posted: Wed Apr 18, 2012 11:26 pm
by MiesterMan
Cool, well, I'm just waiting for the 13 GB download to finish so I can play...
What the hell kind of update is 13 GB?