role playing games (rpgs)
DESCRIPTION
Role Playing Games (RPGs). Mike Rowan Anthony Scimeca. Overview. History Tactics MMORPG Large Scale AI Reputation System Side-Quests. Overview. Games which are typically set in a fantasy environment. (Magic, Mythology, etc.) Top Down View - PowerPoint PPT PresentationTRANSCRIPT
Role Playing Games (RPGs)
Mike RowanAnthony Scimeca
History Tactics MMORPG Large Scale AI Reputation System Side-Quests
Overview
Games which are typically set in a fantasy environment. (Magic, Mythology, etc.)
Top Down View Rich and extensive stories to entertain user. Strategic element to gameplay. Heavily built on character building. Use of Hit Points (HP) for health.
Overview
RPGs are a hard genre to define and are ultimately descendants from a wide variety of games.
War games, Sports Simulation, etc. Dungeons & Dragons (1974) – board game
that revolutionized the genre and can almost be considered a prototype of later RPGs.◦ Fantasy based game where users used
imaginations to depict a world of possibilities ◦ combination of make-believe, play-acting, and a
logical, math-based rule system.
History
DND (1974)– first CRPG (Computer RPG) ◦ Made for PLATO (a
computerized learning system at Southern Illinois University)
◦ Game consisted of many novels of RPG genre such as character creation and development of specific statistics, and leveling up with experience points.
◦ Featured a shop to buy equipment.
◦ Story involved killing a dragon and obtaining orb.
History
UNIX based games helped pave the way for common day RPGs.◦ Rouge (1980) – Featured randomized dungeons
for replay ability. Ultima (1981) – laid many foundations such
as tile based graphics, and more complex fights requiring more strategy
Wizardry: Proving Grounds of the Mad Overworld(1981) – First RPG that was party-based, offered first-person view of action.
History
Turn based◦ Each member of party has a turn and can perform
an action at this time.◦ Slower pace to allow for user to think things out◦ Wizardry video (1:10-2:31)
Real-Time◦ More realistic, fast-paced.◦ Can get hectic with needing to keep track of many
things at once.◦ Chinese game Qingcheng video
Combat
Need path finding algorithms for enemy NPCs in today’s games.
Have more difficult AI in later stages of game. Need smart AI for friendly NPCs and enemy
NPCs. Must quickly assess situation and decide what
is best tactic to use. Consider strengths/weaknesses of party
members on each side.◦ Pokemon (1:45-2:05)◦ Heroes of Might and Magic (1:40-2:10)
AI
MMORPG Massively Multiplayer Online Role Playing
Game Popular MMORPG games include EVE
Online, World of Warcraft, Aion, Guild Wars Many are pay to play and do not offer a
simple “You Win” or “Game Over” screen, no matter how long you play
MMORPG Player Interaction Players can interact with most players
usually based upon other player locality For example, a player can “speak”
something that will show up on the chat screen of other players within 25 yards or a player can “yell” something that has a 100 yard radius
Other players follow the same rules as the player, however they interact at their own pace, not controlled by the CPU
MMORPG Reputation System The reputation system is one of the biggest
drivers of player environment interaction Some reputations determine who the player
fights and who the player can interact friendly towards
The player needs a sense of involvement with the NPC’s in an MMORPG because the player wants to interact with their environment as they do different things
MMORPG NPC Units The AI is very important in NPC units
◦ Path finding to various players and player set obstacles
◦ Analyzing the reputation of other players◦ Priority system for determining who to attack or
defend, also known as “threat” or “aggro”
Path finding AI units in MMORPGs need to be able to find
the player (or multiple players) from any location and learn how to get there or otherwise compensate for the situation
http://www.youtube.com/watch?v=lw9G-8gL5o0
Threat / Aggro There are numerous ways enemies can
attack another player when there are multiple players playing the game◦ Attack at random◦ Attack first on sight◦ Attack strategically depending on the players’
roles There are modifiers that exist to change this
Threat / Aggro For example, a unit may have a specific
ability to force the unit to attack it by shielding friendly targets or putting themselves on top of the priority list of potential targets
A good example is in World of Warcraft. A “tank” unit is designed to direct all damage to it by using abilities that have high threat
Threat / Aggro As threat is generated, the enemy keeps a
list of who is generating the most threat. That will determine who they will attack
With the emergence of MMORPGs and the large sizes that are demanded out of RPG games today, larger maps are needed, meaning more NPCs are interacting at a certain time.
To compensate for this issue, a concept of Level of Detail AI is used.
The following is the implementation used for Neverwinter Nights (NWN) by BioWare.
Level of Detail AI
Concept is borrowed from graphic engines. Essentially, objects that are further in the
distance do not need to be made as complex so they are constructed with less polygons.
Level of Detail AI
To translate this into an AI perspective, NPCs that are out of the viewing distance from the human player do not need to be fully processed and optimized.
Need to split characters into groups according to distance.
Level of Detail AI
Level of Detail AI
Level of Detail AI
Assign a certain % of CPU time to each category. Will determine how much CPU is devoted to specific group every iteration of an update.
Level of Detail AI
Levels 1-3: go through the entire pathfinding algorithm, since these characters are shown their movements need to be smooth and natural.
Level 4: Characters are out of viewing range, they perform inter-tile method but instead of smooth movement, they jump from tile to tile.
Level 5: Characters are not in vicinity, therefore simply determine time between itself and destination, then have a delay and jump to target location
Level of Detail AI - Pathfinding
NWN has very complex rule set, the Basic combat rules fill 10 pages of text and there are over 50 pages of exceptions to the base rules.
Therefore need to cut down processing power used in each combat situation, especially when not shown.
Level of Detail AI - Combat
Level 1&2: Implement full rule system since combat is actively shown to user.
Level 3: Implement full rule system unless many complications occur. If this is the case, skip computations, need to allow character to look like it is performing correct action.
Level 4: Compute each character’s damage capabilities and determine winner through formula. (
Level 5: Perform biased coin flip according to damage capability of each character.
Level of Detail AI - Combat
Reputation System Provides a different system of events for
players who want an alternative playing experience
Shows the player that the AI controlled factions care about what you do for them, making the player feel involved
Allows the player to strive for things, such as rarities and rewards specific to a particular faction
Master Event List So, are all events stored per NPC? Events are stored in a Master Event List
◦ Conserves memory◦ Keeps events organized for more timely response◦ Easy to update
Events are consolidated so that an NPC can reference the list in order to determine how they should react to the player instead of keeping their stance in local memory
Master Event List To add an event to the list, you take an
event:
Subject Group PlayerVerb DidViolenceToObject Group BanditObject Individual JoeMagnitude 75 (Killed)Where 50,20,138 (in front of saloon)When High NoonTemplate KilledBanditTemplateReference Count Known by 11 NPCsReputation Effects Bandits hate player more
Lawmen like player moreFarmers like player more
Provide a table entry with the details:
Master Event List Later on, the NPC can reference that list NPC’s can share information between
themselves if they find it relevant about the player so reputation can trickle down to all NPC’s associated
This gives the programmer the ability to change the gameplay for the player based upon previous player choices
Faction Knowledge Now we see how these events can occur,
how can an NPC remember? Assign a hierarchy of reputation For example, if someone helped or hurt
someone from Lehigh, that may affect you. If this someone was also a family member, it would affect you more
The following example from EVE on the trickling down of reputation
- Agent works for Federation
Navy
- This agent is Level 1
- This player’s current standing (reputation) is
6.4
- Mission named Break Their
Will
- Upon mission completion,
player receives 0.1389%
reputation gain for Federation
Navy
- This player’s new standing
with the agent is 6.5
- The player gained some reputation
Reputation allows for many things:◦ Access to higher level agents that give better
rewards.◦ Ability to purchase better items◦ Additional services
Upon completion of a Level 4 mission, there are higher rewards than a Level 1
For example, notice the higher gain in reputation towards the Navy
Optional missions that involve objective based storylines that are separate from main storyline.
Normally used to obtain a useful item, gain extra experience, or learn more about the overall story or background of game.
Allows gamers to make decisions in story, and makes getting a 100% completion rate a more difficult and rewarding task.
Zelda Satire
Side Quests
Side QUEst GEnerator Tool – software for generating side quests, reduce manual labor in creating them.
Programmer can then write dialogue for quest after generating or hook SQUEGE up to a game dependent script generator
Have specific patterns for side quests.◦ Assassain’s Creed
SQUEGE
Pattern DescriptionTalk Chain Talk to multiple NPCsAcquire item Find location of item and obtainDeliver item Find location of item and return to an NPCKill antagonist Find location of NPC and killAssassinate antagonist
Find location of NPC and kill then report back to NPC who assigned mission
One of many tasks Must complete one of several tasksAll of many tasks Must complete all tasks specifiedChain quest Complete pattern one after another in specified
order
Pattern Catalog
Last 3 are meta-quests, combine simple quests into more complex ones with more options. (Like Recursion)
Takes input of patterns, NPCs, Containers, Items and Options.
Will output a quest outline. Designer can accept this outline or decline
and have SQUEGE generate another. If accepted, designer adapts quest outline
and adds story content and generates a script either manually or automatically.
SQUEGE process
Examples Many ways to go about side quests.
Straight forward
Can have a side quest in a side quest.
So while this is all good and well, there are still cases where designers need to adapt or reject SQUEGE generated quests.
For example, do not want to give the user a very powerful item at the beginning of the game through an easy side quest.
SQUEGE
Normal – all other points in the quest are disabled
Optional – Is not required to complete the quest
Close – Either close-succeed or close-fail. all points become disabled, quest is considered completed and logged as so if necessary.
SQUEGE - Quest Points
Each quest point in a pattern has a set of possible encounters.
These encounters have a weight associated with them and are chosen depending on weight of each. (Higher weight has more priority)
Subquests can also be generated, factor established by user determines how often subquest is generated for a quest.
How it works
Adding Patterns Need to specify quest points and possible
encounters for each quest point. Example Code:
Newer console RPG games have elaborate stories and are evolving into a solo player experience where user can get attached to the main hero.
Computer RPG games are all utilizing trend of MMORPGs.
First and Third person views more popular. Hybrid versions of RPGs mixed with other
genres are being mainstreamed.◦ Borderlands (FPS+RPG)◦ Sports Simulators (RPG role of soley managing team)◦ World of Warcraft (RTS+RPGs)
Currently and Moving Forward
Brockington, Mark, “Level-Of-Detail AI for a Large Role-Playing Game” AI Game Programming Wisdom Vol. 1, pp 419-425, 2002
Alt, Greg, “A Dynamic Reputation System Based on Event Knowledge” AI Game Programming Wisdom Vol. 1, pp 426-435, 2002
Onuczko, Curtis, and Szafron, Duane, and Schaeffer, Jonathan, “Stop Getting Side-Tracked by Side-Quests” AI Game Programming Wisdom Vol. 3, pp 513-526, 2002
Barton Matt, “The History of Computer Role-Playing Games Part 1: The Early Years (1980-1983)” http://www.armchairarcade.com/neo/node/1081 2006.
References