The following warnings occurred:
Warning [2] Use of undefined constant SAPI_NAME - assumed 'SAPI_NAME' (this will throw an Error in a future version of PHP) - Line: 3388 - File: inc/functions.php PHP 7.4.33-nmm6 (Linux)
File Line Function
/inc/functions.php 3388 errorHandler->error
/showthread.php 116 build_archive_link
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm6 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/inc/functions.php 3324 build_forum_breadcrumb
/showthread.php 195 build_forum_breadcrumb
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm6 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/showthread.php 195 build_forum_breadcrumb






Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
NPC Caster AI
Author Message
Indiaret
Apprentice
*

Posts: 45
Likes Given: 3
Likes Received: 1 in 1 posts
Joined: Apr 2016
Reputation: 0



Post: #1
NPC Caster AI
Hi,

trying to do NPC AI of casters (similar to older spheres) I want to my caster to :
1) always run from his target
2) still casting on close range.

Case 2 is more urgent for me ... I dont know how to do that the caster can start cast spells even on meele range versus his target. Now if his target come too close, he starts fighting only as meeler.
In best variant should be on close range combined like sometimes hits, sometimes starts to cast.

In case 1 i´ve find out that i can simulate running through trigger @npcActFollow, but if u have any better ideas, id like to hear them.

[events e_caster]
on=@NpcActFollow
argn2=3
argn3=1


Thanks
10-03-2023 08:30 AM
Find all posts by this user Like Post Quote this message in a reply
Indiaret
Apprentice
*

Posts: 45
Likes Given: 3
Likes Received: 1 in 1 posts
Joined: Apr 2016
Reputation: 0



Post: #2
RE: NPC Caster AI
I guess its this blocking it in source sphere scripts:

bool CChar::NPC_FightMagery(CChar *pChar)
{
ADDTOCALLSTACK("CChar::NPC_FightMagery");
// Check if NPC can fight using magery
// RETURN:
// false = switch to melee combat

if ( !pChar || !NPC_FightMayCast(false) ) // not checking skill here since it will do a search later and it's an expensive function
return false;
10-04-2023 03:42 AM
Find all posts by this user Like Post Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 1 Guest(s)