SKULLS OF THE SHOGUn AI POST-MORTEM Borut Pfeifer Developer: Haunted Temple Studios Publisher: Microsoft Platforms: XBLA, Windows Phone, Windows 8 Release.

Slides:



Advertisements
Similar presentations
Soar and StarCraft By Alex Turner. What is StarCraft: Brood War? A Real-Time Strategy (RTS) computer game released in A sci-fi war simulation Continually.
Advertisements

A New World Or People Keep Telling Me This is Ambitious By Jeremiah Lewis.
Mobile Robot ApplicationsMobile Robot Applications Textbook: –T. Bräunl Embedded Robotics, Springer 2003 Recommended Reading: 1. J. Jones, A. Flynn: Mobile.
Extreme Programming Alexander Kanavin Lappeenranta University of Technology.
Imbalanced data David Kauchak CS 451 – Fall 2013.
Enhancing Readability
Dave Pottinger,
Multi-tiered AI Patrick Schmid. Multi-tiered AI We already saw a presentation about this topic Remember Ke‘s presentation? Short recap.
Lower bound: Decision tree and adversary argument
Rhythm Passing Concepts
The Design Document Ahmet Uğur. Overview No standard format Should communicate the nature of the game effectively Companies with agreed format The design.
A Test-Taking Strategy
Half life 2/ Counter Strike: Source bot Charlie Cross CIS
CSE 380 – Computer Game Programming Pathfinding AI
Coaching Strategy in a 25 Point Set: Five Points, Five Factors AVCA Web Seminar Kent Miller Head Volleyball Coach University of Toledo.
Artificial Intelligence in Game Design Introduction to Learning.
(Quickly) Testing the Tester via Path Coverage Alex Groce Oregon State University (formerly NASA/JPL Laboratory for Reliable Software)
Structures & Strategies S3 Netball
Estimating Areas The art of Math. Exact Answers? Not Exactly… You can’t always get an exact answer But sometimes you still need to get very close to the.
SM3120 Game Level Design Lesson 03 – Level Design: Architecture and Spaces Ryan Lam.
1  2004 Morgan Kaufmann Publishers Chapter Seven.
Binary Arithmetic Math For Computers.
Players and Parents were asked to come up with questions they have generally about the team. This is a summary of those questions Do coaches have.
Click on the bad guys to kill them (some may take more then one hit) Every time you beat a boss, you will appear in a different place. Kill everyone before.
INTRODUCTION TO MACHINE LEARNING David Kauchak CS 451 – Fall 2013.
CS378 - Mobile Computing App Project Overview. App Project Teams of 2 or 3 students Develop an Android application of your choosing subject to instructor.
Could You Use More Traffic?. If you’re like most marketers, the answer to this question is… YES!
.:::The EA FEAR Division Presents:. When you download FEAR you should be able to load it pretty quickly, so if it’s taking long consider the problems.
IT253: Computer Organization
Introduction to AI Engine & Common Used AI Techniques Created by: Abdelrahman Al-Ogail Under Supervision of: Dr. Ibrahim Fathy.
Fall 2006CS4455 Prototyping Maribeth Gandy Jeff Wilson
Mark Dunlop, Computer and Information Sciences, Strathclyde University 1 Algorithms & Complexity 5 Games Mark D Dunlop.
Ethics of Software Testing Thomas LaToza CS 210 Final Presentation 12 / 2 / 2002.
By Molly K.. This shows my Kodu moving in my game. One of the pros with movement is that you can do all the things like jump, walk on water and never.
Sofia Bulgaria Summer School IST eXPERT: Best Practice on e-Project Development 30 June - 2 July 2003 eXtreme programming.
Tactics. What is a tactic? A tactic is a specific way of carrying out a particular strategy and of applying in action principles of play common in games.
1 Legacy Code From Feathers, Ch 2 Steve Chenoweth, RHIT Right – Your basic Legacy, from Subaru, starting at $ 20,295, 24 city, 32 highway.
Coaching Pack 12 – 16 Years. What Am I Coaching Today? What Might the Players Learn or Get Better at? TechnicalPsychological example PhysicalSocial example.
The concept of RAID in Databases By Junaid Ali Siddiqui.
Dakota Humphries (Project Lead) Thomas Impellitteri (Tech Lead) Daryl McGhee II (Design Lead) Keith Rosier (Asset Lead)
Coaching Pack 9 – 11 Years. What Am I Coaching Today? What Might the Players Learn or Get Better at? TechnicalPsychological example PhysicalSocial example.
AI Evaluation David Nowell CIS 588 2/14/05 Baldur’s Gate.
Structures, Strategies and Compositions Lesson 1 – aim and purpose of fast break.
Extreme programming (XP) Variant of agile Takes commonsense practices to extreme levels © 2012 by Václav Rajlich1.
Vince Apple-Chiarella. Professionalism  Arrival time Be earlier than you need to be, in case something happens. Consistent late arrivers make a bad impression.
Chess Strategies Component Skills Strategies Prototype Josh Waters, Ty Fenn, Tianyu Chen.
Optimising Networking in Air Defence Dstl/CP12250 ISMOR 21, September 2004 Jackie Offord - C4/ISTAR Team Policy and Capability Studies
Structures, Strategies and Compositions Lesson 10.
Social Experimentation & Randomized Evaluations Hélène Giacobino Director J-PAL Europe DG EMPLOI, Brussells,Nov 2011 World Bank Bratislawa December 2011.
Qualitative Spatial Analysis Part 2 Chris Mansley.
Deriving Consistency from LEGOs What we have learned in 6 years of FLL by Austin and Travis Schuh © 2005 Austin and Travis Schuh, all rights reserved.
Strategy For The 21 st Century Prometheus Process venturist ® incorporated Prometheus Process Key Lessons.
Analyzing an Architecture. Why analyze an architecture? Decide whether it solves the problem Compare to other architectures Assess what needs to change,
1 CO Games Development 2 Week 13 Influence Maps Gareth Bellaby.
Understanding AI of 2 Player Games. Motivation Not much experience in AI (first AI project) and no specific interests/passion that I wanted to explore.
Detail Issues in Robust Pathfinding Thomas Young
By: Antonio Vazquez.  As far as this year goes, there were a lot of struggles that I had this year, I can’t really explain why, they just occurred. 
The Game Development Process: Artificial Intelligence.
Artificial intelligence In The Gaming Industy. For years games have used Artificial Intelligence, normally we call them bots, like for example your playing.
Structures, Strategies and Compositions
Deriving Consistency from LEGOs
Application of Artificial Intelligence and Graphics to Support a Three-Dimensional Game Chris Cummings.
Enemy and Friendly AIs Richard Gesick.
David Kauchak CS52 – Spring 2016
Main Memory Management
Analyzing an Architecture
Analyzing an Architecture
Tactics.
Minimax strategies, alpha beta pruning
Presentation transcript:

SKULLS OF THE SHOGUn AI POST-MORTEM Borut Pfeifer Developer: Haunted Temple Studios Publisher: Microsoft Platforms: XBLA, Windows Phone, Windows 8 Release Date: February 2012 Fall 2012

Background

SKULLS OF THE SHOGUN

CONSTRAINTS –Combination of RTS & TBS elements –Turn based/board gamey –No grid/analog world –An action is a resource (5 orders per turn) –Arcade-strategy: fast, no “waiting for AI”

GAME MECHANICS - Units

GAME MECHANICS - Resources

GAME MECHANICS - TERRAIN

GAME MECHANICS - Advanced ABILITIES

1 st sKULL

NxM problem: –All units vs. all targets –Infeasible, but ideal, right? –Eval big list of unit-target pairs –Utility theory based approach Issues: –Hard to compare strategic differences with so many pairs. –Huge diff in utility between available/unavailable objectives. –Deciding to defend required a lot more context (want to avoid duplicating this logic in each low level objective). Objective Evaluation

Pathfinding in analog space –Use grid even though inexact. –Needs dynamic obstacle avoidance. –Can’t avoid inaccuracies. Pathfinding

–Must organize objective comparisons. –Architecture must be very fault-tolerant. –Target distance key in comparing objectives. –Must know all pair distances, fast, at turn start - can’t avoid NxM problem here. 1 st PASS Lessons

2 nd sKULL

Est. distances for strategic decisions: –Use quad tree w/fewer nodes –More inaccurate –Use estimates when assigning objectives –Still need full path when starting action EstimatING Strategic Distances

–Single list of objectives/targets –Split by type: –Resources –Attack –Defense –High level strategy modes: –Build up resources –Attack –Last ditch (losing badly) Decision Making

Run pathfinding on quad tree for all pairs Rank objectives in each category –ex: prioritize enemies on periphery as easier to kill Find available units for every objective –in range this turn Run high level strategy check –Easy to manage, 1-2 pages of if statements Assign 5 orders to top objectives by strategy –resources strategy = 3 resource objectives, 2 attack, 1 defense –Fallback to other available objectives, then unavailable. Decision Making Algorithm

Comparing objectives more manageable. –Lost some unimportant comparisons. –(When Unit X is better than Y for 2 objectives, but is way better fit for lower priority objective.) Quad tree introduces error: –Before objective starts, look for real path (dynamic obstacles can still cause failure) –Re-eval objectives on failure: looks “human”, because it tries one thing, finds it can’t succeed, tries another. 2 nd Pass Lessons

3 rd sKULL

Need to prioritize unavailable objectives sometimes: Reinforcements! –Simple set of tests in high level strategy analysis – 2 turns, if extra units Need more tactical info for objectives comparisons: Influence maps! –Besides avoiding counterattacks or prioritizing available targets, why is one target better than another? Difficulty modes, advanced spell use STILL Missing Elements

Influence map – Red Army

Influence map – Blue Army

Influence map – Blue Army Resource appeal Resource strength – enemy influence (normalized)

Influence map – Blue Army Threat Level Threat = Red team – Blue team influence Activity = Red team + Blue team influence Vulnerability = Threat - activity Threat to Blue = Red team – Blue team influence

–Easily plugged in to objective eval. –Influence used for base objective score. –Each objective multiplies that score. –Maybe 3-7 cases per objective to modify score (easy to manage). Influence Map usage

Advanced AI: –Ledges: Positioning to knock off, avoiding, forming walls –Advanced spells: Simple, conservative scoring (costs rice). –Difficulty: Categorize behaviors for novice vs. expert. Things the AI still doesn’t do: –Use Spawn Oni spell (barbarian unit – too chaotic!) –Not very zen like (doesn’t follow master level strategies). Oh Yeah…

Learning is fun! Always Be Architecting –Never spend too much time up front - you’ll be wrong. –Apply prototyping methodology - throw stuff out. –Leave spaces - code w/flexibility in mind, so you won’t have to. Apples to Apples –Split up decision making to compare similar utilities. –Push common analysis (e.g. defense) to higher level to take advantage of broader strategies. Fault Tolerance at every level –Shit happens, your game model will never be accurate enough. –Always try to deal w/error 1 level above, possibly pass it higher up.

More Info Skulls of the Shogun - Fall 2012 XBLA, Windows Phone, Windows 8