Advertisement

Monsters standing around bored

Started by September 02, 2009 04:29 PM
24 comments, last by Edtharan 15 years, 5 months ago
This point was made, but I think it's an important one.

Why are they there?

The ogre who was charged with guarding a dungeon will patrol around, check and upkeep traps, make sure the things that need guarding are still there. Whereas an ogre that just moved into the dungeon is probably going to go out and look for food and stuff to steal from travelers. The squatter may only be in a small section of the dungeon, where as the guardian will patrol all around.

Wolves will likely be guarding their area, or patrolling in packs, looking for food (read: players), and when they find it, they'll flank out and attack. If you notice them first, they'll be in their pack, vulnerable.

Bandits will be guarding their base camp, or laying in wait to ambush travelers. Going to their ambush point, they'll have less gold than coming from.

Here is an important question, Does every enemy you encounter have full health all the time? When do they run? When do they call for help?
I think you're right at trying to hold the line in terms of the monster's greater purpose in the game, s&s. While an ecology is cool and monsters with deeper purpose are even cooler, it may invite an unwanted exploration of depth that you have no intention of creating and which might even derail the focus of the game. For instance, I was reading commentary from some time ago on GTA 4 and how the huge volume of physical space and visual fidelity seemed to imply something that wasn't there: Here you had this realistic, big thing that screamed "city!" yet lacked enough interactivity and range of ambient life to fulfill what the visual representation/ideal implied.

If the monsters show a greater depth in behaviors I think I'm going to want them to be more than XP dispensers. I think more in the spirit of what you're talking about would be (if it's a combat heavy game) to have a wide variety of monsters fighting or supporting one another. It would provide a lot of entertainment value just to stealthfully watch and maybe choose when to engage in the battle (or maybe cowardly wait and wade through the corpses). Monsters casting magic spells or using special abilities in this way would be especially interesting, particularly if you have a wide range of abilities to give them and can't always predict them in advance. It would be fun, for instance, to see something like a dragon immobilizing NPC enemies or a unicorn raising fallen creatures from the dead because it would not only be surprising but force you to strategize in different ways.

--------------------Just waiting for the mothership...
Advertisement
Personally Im tired of MMORPG games where monsters stand around like mannekins (seemingly laid out like a minefield pattern) or (only slightly better) move between waypoints endlessly. When they attack (after letting you get up rediculously close) they have little variation in what they do to attack you.
Other 'monsters' a few paces away stand there like dummies and dont get involved except when you try to maneuver and activate more of them (seems like cant go 10 paces in any direction without activating another one). Dim spawning systems will respawn 'adversaries' right next to you when you are already engaged in a fight.




Things that would only take a little more scripting :

Varying waypoints (random movement between a list of (sets of ) waypoints - even if they have to be prevetted to eliminate pathfinding. Daily schedules that use different waypoint subsets. Different waypoint sets used modally (like when they are on 'alert'.

Monsters that run away as a tactic -- run to allies, run to get their piled weapons, run to formation, run to defensive position run to hide so that player has to find them.

Groups of 'monsters' that patrol up and down roads/paths -- a simple follow the leader line of a formation (more of something for player to avoid).

Monsters that have a 'prey' which they at least hunt/chase (which would also have a random waypoint move system). Herd movements than move in general pattern.

Monsters that have an 'entry point' out of view of players when they respawn.

More 'instanced' scenarios that keep other players out (far less general N^2 event signalling) and no interference (allowing chereographing the encounter better)

Just more moving of 'guards' that have intervals so giving the player a more interesting solution to find -- having to take time to observe/discover an approach. Having multiple paths in terrain to facilitate this.


Towns with more NPCs that walk logical paths so they dont look like ghosttowns.





Ways of paying for the extra server CPU load of slightly more intelligent scripts:

Fewer monsters are needed because they are more challenging (give more XP each) and would be spaced out more to allow the player (and them) to maneuver.
Fewer monsters means less updates and server interactions (lower N^2)

Longer respawn times (mileage may vary depending on how much the game is a 'shooting gallery'.

Mini-Instancing saves overhead , can be more flexible/load leveled.



--------------------------------------------[size="1"]Ratings are Opinion, not Fact
Quote:
Original post by sunandshadow
Actually, I'm not a big fan of realistic simulation, I don't think that giving the monsters their own needs or economy or whatever is the right idea. Monsters are props that are there to make players peel like adventurers or whatever role they have signed up for. So really we should think of monsters not as animals or natives, but like performance artists in the park hoping to get coins tossed in their hat by amused passers-by.

I don't think realistic simulation is a good idea (realism is not necessarily fun). But I also don't like static environments.

For instance, is the level designer places the monsters in front of the cave, and each time you visit the came th4e monsters are still standing around in that same location, then the monster start to feel just like, the rocks and bushes in the level: Something to navigate.

However, if the monsters are more dynamic, that is they move around and even react to the player(s)'s presence, then they become less "just a bush" and more of an aspect of the gameplay.

As an example:

If you have "scout" enemies, that move around and try to avoid the player (hiding, running off when they see the player, etc) and report back to the lair when they see the player, then these become a bit more of a challenge (you need to sneak around to successfully attack them).

If the Troop enemies are dynamic too, say that they leave the lair and seek the players near where the scout saw them (and do a small bit of patrolling too), then the combination of the scout and the Troop enemies adds a whole extra level of strategy and gameplay to the game.

If the player's deliberately get seen by the Scout, and then sneak in past the Troops enemies that come rushing out, then they can loot the lair with a reduced enemy presence for a while (but if they take too long then they have to face the Troop enemies coming home). It might also be that the player's don't want to alert the Troop enemies and so try to run down the Scout before they alert the Troop enemies.

And Lairs might communicate between each other, so if a player gets seen at one lair, they might recruit nearby lairs to seek out the player(s) and "deal" with them.

Where as before, all that the players could do is to kill the enemies where the level designer placed them.

So if they are "just" props for the player to kill, then I think this reduces the range of what a player can experience in the game.

The AI needed to do this is pretty simple (a simple - less than 10 states - finite state machine to direct each AI). And the functions needed to do it would be pretty much what is needed if you are going to have any AI enemy respond to the player (eg: attack them).

For example, the scout would have:
States:
Mission: Move to specific way point. When reached way point -> Enter "Return" state

Return: Move to Lair way point. If see player -> Enter "Create temporary way point" State. If at Lair way point -> Enter "Report" state.

Report: Pass data about Way point to Lair/Boss AI (either the one from the mission or the one created). When report delivered -> Enter "Wander" state.

Wander: Move to a random Lair Way point. When nearest Lair/BossAI object gives a specific Way Point to move to -> Enter "Mission" state.

Create Way Point: Create a temporary Way Point and compile a report about it (enemy strengths, etc). When Way Point created -> Enter "Hide" state

Hide: Move to nearest Lair way point in stealth. If haven't seen an enemy in a set period of time -> Enter "Return" state. If the Enemy see me -> Enter "Flee" state.

Flee: Move to nearest lair at a run. If haven't seen an enemy in a set period of time -> Enter "Hide" state. If attacked by Enemy -> Enter "Combat" state.

Combat: Fight enemy. If no longer in combat -> Enter "Flee" state.

The FSM for the Troop AIs would be even simpler (no Hide/Flee states - Create Way point would go straight to combat).

The Lair/Boss AI would get the reports from the scouts and Troops and then give a number of troops/scouts their "missions" (give them a set way point to go to) and spawn new enemies over time (when it doesn't have enough).

It is more complex but, besides the FSM, it doesn't really use anything new, and FSMs are fairly easy to code anyway. Also as only the code from the current state is executed, the added complexity of the other states does not impact the amount of processor time the AI needs on the CPU.

So for such a small amount of effort, the player gets a far richer gaming experience and also feels that they ahve a greater impact on the game world.
There was really an interesting scene in Batman Arkham Asylum (Skip to around 6:00 or so in the video below). What made it really interesting was the sound effects (which is really loud), the fact you simply would not be able to battle that many enemies at one time, and the idea that they might escape at any second.
>Batman Arkham Asylum Gameplay 18 [HD]


Here is another one in which the enemies are mocking you because you cant get to them. Quite entertaining (right at the start of the video). If you skip to around 3:50 you can see the enemies searching for something.
>Batman Arkham Asylum Gameplay 12 [HD]
I dream hard of helping people.
Quote:

- Monsters can interact with the environment; they can eat berries off of bushes, flying monsters can land on a flower and take off again, monsters could compete with players to gather harvestable resources, or cause harvestable resources (or other monsters) to spawn. Monsters could perhaps dig holes or build mounds (which then degraded and disappeared so as not to clutter up the landscape).


OMG, that bee just dealt me 3pts of Piercing damage!
Advertisement
I have been for a long time interested in playing a game with an active ecosystem in which all the creatures live in a realistic food chain, live in and off of local flora, &c. So instead of being able to run from area to area torching all the animals and collecting their meat, you may have to take into account just how long it takes for the population to recover, what creatures eat the little shrubs you just singed, &c. On the other hand, if you wanted to eradicate a particularly pesky species, all you have to do is totally nuke its habitat and it may take years for it to recover (or may ever come back). A well-designed ecosystem in many types of games could quite altogether remove the need for scripted events such as orc raids which would occur naturally with population tension unless proper measures were taken beforehand. Wolves in the wild would come on their own into farmlands and eat the livestock and the deer population would be kept in check naturally by the threats of overpopulation while still being prone to over-hunting.

Even if the ecosystem did not become a key part of the game progression, those sorts of natural developments make for much richer game environments. How much more interesting would the Metroid franchise be if the skree had some distinct place in the world?
Bioshock did a really good job with this. Whenever you returned to a room, then you could never be sure what the NPC's would be doing. Sometimes they were just walking around, but other times they would be fighting, arguing, or laughing together.

Of course, this works best when the monsters have personality via voice acting or some sort of grunting. :-) But then again, if simulating social systems isn't your cup of tea, you might want to try something else.
How hard is it to get monsters to go on the offensive every once in a while? All to often I feel like the bad guy in video games. The mosters are just hanging out, doing whatever it is they do, then I come running in and slaughter them. Why? To level up or get some gold. Or maybe because there's some back story thats completely b.s.

Pretty lame. If they're blood thirsty, snarling beasts that live only for the kill, make them behave that way.
I had a really funny experience with Oblivion. Early in the game I decided to explore, and I was running all over the place. Well, in between two of the cities (I can't remember which ones, it's been a while), two guards were lobbing arrows at each other. It was hilarious, because I could talk to them and everything, and as soon as I stopped they continued firing arrows at each other.

I was completely dumbfounded. I thought I was supposed to do something, but I couldn't figure out what. As I watched, one finally went down, and the other started to walk away, when another guard came in and killed that one! It was so bizarre. Some animal or bandit must have come between them and they accidentally hit each other or something. I did get some pretty nice equipment that day, and took a strength potion to carry it all somewhere to sell it.

I returned to that area several times afterwards but nothing like it ever happened again anywhere.

This topic is closed to new replies.

Advertisement