• Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

AI system for Warcraft 3: World of Warcraft

Status
Not open for further replies.
Level 15
Joined
Feb 15, 2006
Messages
851
Hi guys:

Here's the idea that I have for the AI system in this project.

Because we must emulate a normal player as closer as possible. We need to do a bunch of triggers which detects some player actions in order to make react the npc players accordingly.

This system will require two components: and input and an output triggers.

  • Input: All the code related to get information from the player. I have planned to make triggers which detects chat and player status (life, mana, etc).

  • Output: All the code related to show a response from the npc players. Those triggers can be classified in behavior triggers (triggers which affect the npc actions) and chatting triggers (triggers which show comments from the npc players)

Now it comes the difficult part:
  • Select which behaviors we want in npc players
  • With that information, determine how to develop such behaviors.
  • For the npc players, and according to the actions, create a list of chat text to put them in action.
  • Create a list of common commands for the input.

I can work with the systems development, but I would need some feedback about which behaviors are done by the players in WOW (how they start, how the should react, how they end the game, etc), which text should be displayed by the npc players, according to the actions, and which commands we should use to give instructions to the players.

I'll wait for your comments.
 
Level 25
Joined
Mar 25, 2004
Messages
4,880
Sounds very good. We'll need to develop chat channels as well such as Looking For Group channels, General channels, Trade channels, etc.
Since we're going to make NPCs talk realisticly, we're going to need to make alot of dialogues for the NPCs and for different behaviors too!
@Nas: moyack has a good idea about this behavior thing and with my experience in WoW we're definatley going to need emotes like Dance emotes and cheer emotes, maybe laughing emotes too. Think you can add dance emotes to each race etc.?
 
Level 17
Joined
Sep 25, 2004
Messages
508
Ok, I'm starting to understand the options now. I have a few questions:

- Behaviors: can you explain how do they work? I mean, let's say a character is almost dead: does it have some pre-determined options (run, fight), or can you make some more elaborate responses\strategies?
I'll explain a little better: do you have a "library" of commands to assign in response to a situation, or is possible to make some "chain commands", or even make some new commands?

- How do the ai use the abilities? Does it just choose the abilities that it "thinks" fits better a situation, or is possible to customize that too?
I'm asking because there will probably be some dummy abilities, or with triggered effect that doesn't have anything to do with the ability it's based on.
 
Level 15
Joined
Feb 15, 2006
Messages
851
Behaviors in general will be events which measure hitpoints, mana, and nearby partners (including type, priest, warrior, etc.) so according with that, we are going to manipulate them to attack, defend, detect enemies, etc. All those behaviors will be accompained with chat messages.

In order to do that, we must analyze which strategies are used in WOW, an example would be, if we have warriors, they must attack first and the casters must give magic support to them.

So, at the end, it will be like a event list.

About the abilities, I'd try to use the harcoded AI, in order to optimize the system. Anyways, in some special situations we can trigger specific behaviors. I suppose the abilities has been designed in such way that they work with the hardcoded AI.
 
Level 8
Joined
Jul 28, 2004
Messages
258
You people are aiming too high. Even if you remain motivated all the way along, I doubt you will finish everything you wanted before 2010.
What I suggest is that you do first what is absolutely required for regular gameplay and then release a demo, keep the extras for later releases.
 
Level 15
Joined
Feb 15, 2006
Messages
851
You people are aiming too high. Even if you remain motivated all the way along, I doubt you will finish everything you wanted before 2010.
What I suggest is that you do first what is absolutely required for regular gameplay and then release a demo, keep the extras for later releases.
I'm completely agree with you, but we can build a base system, as the one which is developed, and try to get the goal of emulating as closer as possible a human player, everything will be molded to the circumstances and WC3 engine boundaries.

About the ideas, they are not so high IMO, put triggers that run periodically detecting stuff like enemies or something similar is not a huge thing. Detecting hitpoints and mana is easier, so I don't see the problem. We can create an AI using brute force algorithms, which will use a string array as a chat database.

Hey, at the end is not a huge thing.
 
Status
Not open for further replies.
Top