Jump to content
  • 0

Advanced AI and Mob control system.


Igniz

Question


  • Group:  Members
  • Topic Count:  13
  • Topics Per Day:  0.00
  • Content Count:  69
  • Reputation:   15
  • Joined:  12/06/11
  • Last Seen:  

Well, I am a developer since 2008 and i saw a lot of features and games and everything but there are a lot of things that we can't do as developers: Absolute control of the enviroment and monsters.
Does anyone remember this? Well it could be amazing if rAthena revives this tecnology, the posibilities are endless with the proper focus, let's talk about it with an example:
 
 
Command "setid", "monsterid" and "monsterwalk[0,3]"
 
// This creates a group of monsters with ID "X", very similar to WoE Guardians ID's, if they are on the same ID, they are allies (otherwise enemies). The groupID are set by the developer for control (read below). The command setid it's self explainable, it sets an ID "X" to a player.
setid, playerID, ID;
monstergroupid, ID, groupID, amount ,map, mapx, mapy;

This orders to walk the "X" group of monster to a X1/Y1 point on the map, the variables x2/y2 are set if the developer want to make a bucle of movement (patrol mode from x1/y1 to x2/y2), otherwise, the mobs just stay there inmobile when they reach the x1/y1 coords.

monsterwalk0, groupID, mapx1, mapy1,{mapx2, mapy2}     // Pasive walk (just walk, attacks if attacked by enemy)
monsterwalk1, groupID, mapx1, mapy1,{mapx2, mapy2}     // Aid walk (sees the player, the monster heals or helps attacking the enemy
monsterwalk2, groupID, mapx1, mapy1,{mapx2, mapy2}     // Aggresive walk (sees the player, attacks) 
monsterwalk3, groupID, mapx1, mapy1,{mapx2, mapy2}     // Run away walk (sees the player and runs of the player)
Ok, setted the proper commands let's talk about this example quest:
 
The user needs to help the villagers of Payon of being attacked and get robbed. The group of evil porings wants to rob their apples so if they reach the store of Payon game over.
 
Basically:
- User and porings are enemies: User got ID 1 and porings ID 2.
setid, playerID, 1;   // We set the "good boys" side.
monstergroupid, 2, 1, 100 ,payon, payoncoordsx1, payoncoordy1;   // This creates 100 porings with ID 2 (enemy) and groupID 1 (control group ID)
monsterwalk2, 1, payonstorecoordx, payonstorecoordy;   //This makes the poring group "1" run at the payon store coordinates killing all enemies on their run.
 
We do a function that checks if they reach the coords (raw code), if they do so, the game ends.
attachrid(1)    // This attach the group ID "1" of enemy porings
getmapxy(m,x,y);
if(x && y == payonstorecoordx && payonstorecoordy)
endgame;

As i said, the posibilities are endless, we can do smart wars, quests, games.........

Obviously we can add more commands for functions, for example a command that check the remain monsters of group X and do something etc:
getremainmonstersid, groupID; 
set remainmonsters, getremainmonstersid, 1;
if(remainmonsters < 10) announce "PoringKing: THIS IS NOT THE END HUMANS! WE WILL BACK!!";
 
 
 It's time to make more fun RO and give him back a breath of life. The developers and players really NEEDS this.
  • Upvote 2
Link to comment
Share on other sites

1 answer to this question

Recommended Posts


  • Group:  Members
  • Topic Count:  14
  • Topics Per Day:  0.00
  • Content Count:  104
  • Reputation:   27
  • Joined:  12/05/13
  • Last Seen:  

I would really like to see a script command where we can spawn a monster and set it as a player's ally without being in a battleground area.

If there's a command like that, please let me know since I need it for a script I'm itching to do. lol :lol:

I'll try to apply this patch sometime later... hope it works!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...