Skip to content

Commit

Permalink
Merge branch 'pathing' of https://github.com/Henrybk/openkore into pr…
Browse files Browse the repository at this point in the history
…/3676
  • Loading branch information
alisonrag committed Dec 28, 2024
2 parents 6be731d + 7361775 commit fb55a2b
Show file tree
Hide file tree
Showing 23 changed files with 2,178 additions and 1,258 deletions.
Binary file modified NetRedirect.dll
Binary file not shown.
33 changes: 29 additions & 4 deletions control/config.txt
Original file line number Diff line number Diff line change
Expand Up @@ -236,6 +236,9 @@ runFromTarget_inAdvance 0
runFromTarget_dist 5
runFromTarget_minStep 7
runFromTarget_maxPathDistance 13
runFromTarget_noAttackMethodFallback 0
runFromTarget_noAttackMethodFallback_attackMaxDist 14
runFromTarget_noAttackMethodFallback_minStep 8

saveMap
saveMap_warpToBuyOrSell 1
Expand Down Expand Up @@ -401,6 +404,7 @@ mercenary_attackMaxRouteTime 4
mercenary_attackCanSnipe 0
mercenary_attackCheckLOS 1
mercenary_attackRouteMaxPathDistance 20
mercenary_attackUseWeapon 1
mercenary_attackNoGiveup 0
mercenary_attackChangeTarget 1
mercenary_attack_dance_melee 0
Expand All @@ -409,6 +413,7 @@ mercenary_attack_dance_ranged 0
mercenary_attackBeyondMaxDistance_waitForAgressive 1
mercenary_attackBeyondMaxDistance_sendAttackWhileWaiting 1
mercenary_attackSendAttackWithMove 1
mercenary_attackWaitApproachFinish 1

mercenary_lost_teleportToMaster_maxTries 6

Expand All @@ -421,13 +426,16 @@ mercenary_runFromTarget_inAdvance 0
mercenary_runFromTarget_dist 5
mercenary_runFromTarget_minStep 7
mercenary_runFromTarget_maxPathDistance 20
mercenary_runFromTarget_noAttackMethodFallback 0
mercenary_runFromTarget_noAttackMethodFallback_attackMaxDist 14
mercenary_runFromTarget_noAttackMethodFallback_minStep 8

mercenary_followDistanceMax 12
mercenary_followDistanceMin 3

mercenary_moveNearWhenIdle 1
mercenary_moveNearWhenIdle_minDistance 2
mercenary_moveNearWhenIdle_maxDistance 12
mercenary_moveNearWhenIdle_minDistance 3
mercenary_moveNearWhenIdle_maxDistance 8

mercenary_idleWalkType 1

Expand Down Expand Up @@ -467,13 +475,15 @@ homunculus_attackMaxRouteTime 4
homunculus_attackCanSnipe 0
homunculus_attackCheckLOS 1
homunculus_attackRouteMaxPathDistance 20
homunculus_attackUseWeapon 1
homunculus_attackNoGiveup 0
homunculus_attackChangeTarget 1
homunculus_attack_dance_melee 0

homunculus_attackBeyondMaxDistance_waitForAgressive 1
homunculus_attackBeyondMaxDistance_sendAttackWhileWaiting 1
homunculus_attackSendAttackWithMove 1
homunculus_attackWaitApproachFinish 1

homunculus_lost_teleportToMaster_maxTries 6

Expand All @@ -485,13 +495,16 @@ homunculus_runFromTarget 0
homunculus_runFromTarget_dist 5
homunculus_runFromTarget_minStep 7
homunculus_runFromTarget_maxPathDistance 20
homunculus_runFromTarget_noAttackMethodFallback 0
homunculus_runFromTarget_noAttackMethodFallback_attackMaxDist 14
homunculus_runFromTarget_noAttackMethodFallback_minStep 8

homunculus_followDistanceMax 12
homunculus_followDistanceMin 3

homunculus_moveNearWhenIdle 1
homunculus_moveNearWhenIdle_minDistance 2
homunculus_moveNearWhenIdle_maxDistance 12
homunculus_moveNearWhenIdle_minDistance 3
homunculus_moveNearWhenIdle_maxDistance 8

homunculus_idleWalkType 1

Expand Down Expand Up @@ -546,6 +559,8 @@ attackSkillSlot {
homunculus_sp
homunculus_dead
homunculus_resting
homunculus_noinfo_dead
homunculus_noinfo_resting
homunculus_onAction
homunculus_notOnAction
homunculus_whenIdle
Expand Down Expand Up @@ -626,6 +641,8 @@ doCommand {
homunculus_sp
homunculus_dead
homunculus_resting
homunculus_noinfo_dead
homunculus_noinfo_resting
homunculus_onAction
homunculus_notOnAction
homunculus_whenIdle
Expand Down Expand Up @@ -676,6 +693,8 @@ useSelf_skill {
homunculus_sp
homunculus_dead
homunculus_resting
homunculus_noinfo_dead
homunculus_noinfo_resting
homunculus_onAction
homunculus_notOnAction
homunculus_whenIdle
Expand Down Expand Up @@ -730,6 +749,8 @@ partySkill {
homunculus_sp
homunculus_dead
homunculus_resting
homunculus_noinfo_dead
homunculus_noinfo_resting
homunculus_onAction
homunculus_notOnAction
homunculus_whenIdle
Expand Down Expand Up @@ -830,6 +851,8 @@ equipAuto {
homunculus_sp
homunculus_dead
homunculus_resting
homunculus_noinfo_dead
homunculus_noinfo_resting
homunculus_onAction
homunculus_notOnAction
homunculus_whenIdle
Expand Down Expand Up @@ -871,6 +894,8 @@ useSelf_item {
homunculus_sp
homunculus_dead
homunculus_resting
homunculus_noinfo_dead
homunculus_noinfo_resting
homunculus_onAction
homunculus_notOnAction
homunculus_whenIdle
Expand Down
5 changes: 5 additions & 0 deletions control/timeouts.txt
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,11 @@ ai_attack_waitAfterKill 0.3
ai_homunculus_attack_waitAfterKill 0.3
ai_mercenary_attack_waitAfterKill 0.3

# Every x seconds loop the attack logic routine (send move, attack, skill, avoid, etc)
ai_attack_main 0.1
ai_homunculus_attack_main 0.1
ai_mercenary_attack_main 0.1

ai_attack_unstuck 2.75
ai_attack_unfail 12

Expand Down
17 changes: 12 additions & 5 deletions src/AI.pm
Original file line number Diff line number Diff line change
Expand Up @@ -602,12 +602,19 @@ sub ai_skillUse {
delete $args{target};
}

if ($char->{skills}{$args{skillHandle}}{lv} < $args{lv}) {
debug "Attempted to use skill (".$args{skillHandle}.") level ".$args{lv}." which you do not have, adjusting to level ".$char->{skills}{$args{skillHandle}}{lv}.".\n", "ai";
$args{lv} = $char->{skills}{$args{skillHandle}}{lv};
my $skill = Skill->new(auto => $args{skillHandle});
my $owner = $skill->getOwner();
my $lvl = $owner->getSkillLevel($skill);
if ($lvl < $args{lv}) {
debug "[$owner] Attempted to use skill (".$args{skillHandle}.") level ".$args{lv}." which you do not have, adjusting to level ".$lvl.".\n", "ai";
$args{lv} = $lvl;
}

if ($skill->getOwnerType == Skill::OWNER_CHAR) {
AI::queue("skill_use", \%args);
} else {
$owner->queue("skill_use", \%args);
}

AI::queue("skill_use", \%args);
}

##
Expand Down
Loading

0 comments on commit fb55a2b

Please sign in to comment.