Date post: | 19-Jan-2016 |
Category: |
Documents |
Upload: | harry-carpenter |
View: | 216 times |
Download: | 0 times |
Troops and Flags
ITCS 5230 12/10/07
Graduate Team #1
Daniel – Model (Team Leader) Jonathan – Rule CheckerPriyesh – View, Sprites, Foley artistRob – Code design, AISuhyung – Graphic Artist
Physical Prototype
Nintendo DS
Basic Rules• Troops
– Move up, down, left, right.– Cost 3 points to capture (sends enemy troop to placement queue).– Can move max 3 squares each per turn (except crossing own barricades)
• Barricades– Placed only on your side, at beginning of turn.– Cost 0 points to cross your own, 2 points to capture enemies.– Disappear when crossed or landed on.– Max of three per square (2 for flag squares).
• Flags– Cost 4 points + number of flag barricades fortifying them (max 6).– Placed only on back row.
• Winning– One team captures all opponent’s flags.
Core Concepts
• Core Game Mechanic – spending turn points to move troops.
• Strategy– Offensive vs. Defensive troop movement.– Offensive vs. Defensive barricade placement.
How to Play
1. Places starting troops(3), flags(3), and barricades(6).
2. Receive turn points at the beginning of your turn. An even number awards an extra barricade and a six awards an extra flag barricade, both of which must be placed at the beginning of the turn.
3. Alternate turns spending the allotted turn points to move troops, destroy enemy barricades, and capture enemy flags.
4. A player wins when one team has captured all of the opponent’s flags.
Our Tools
• Hardware– Nintendo DS– M3 DS Simply
• Software– Devkit Pro/ PAlib– iDeaS emulator– Visual Studio 2005– Photoshop (BGs)– Pixen (sprites)
• Team management– Google Code
• SVN• Wiki
– Google groups• Mailing list• File transfer
Graphics…
Team logo
Why Rapid Dojo ?Robert HammondPriyesh DixitDaniel McIntyreJonathan AnnasSuhyung ChO
Graphics…
Main Image.
Up ->
Down ->
Graphics
Basic game map
Sprites
Troops
Flags
GraphicsWinner screens
Our Game Design
• Ported the board game design with changes– Ability to attack enemy troops– Partial flag capture– Destroy own barricade– Troop placement
Our Code Design
• Model-View-Controller-AI-Rule Checker– Split into 5 logical divisions– Interface + Implementation– Factory instantiation
Model• Holds the current game state.
– Board– Game pieces (barricades, flags, troops)– Player’s turn
• Controller, View, and AI can access the Model to do their calculations.
• Whenever the Controller asks to update the Model, it is assumed that all error/rule checking has already been accomplished.
Controller
• Controls the general game flow of players moving pieces, placing pieces, and switching player turns.
• Gets input from View of the input of the player and verifies their input against the Model and Rule Checker.
• Calls the game AI logic if in single player mode.
View
• Manages backgrounds and sprites
• Stylus XY to what was clicked
• Checks board and updates sprite
• Keeps an array of palettes:– Red troop, Blue troop– Red flag, Blue flag– Red barricade, Blue barricade– Button – Selector
Rule Checker
• Places all game rules in a centralized location.
• Examples of functions:– CostToCapture– CanPlacePiece– LegalMove
• Most important feature is the point representation.– All point values are defined in variables at the top of the code.– This is essential for easy game balancing and tweaking.
Our AI
• Determine target location– Offense: enemy flag or troop– Defense: own flag
• Static board evaluation– Use cost in action points
• A* search based on evaluation to the target
Our Playtesting
• Feedback we used:– Rules reference in-game– Show possible moves– More non-stochastic strategy
• Improvements:– Rules button in side-bar– Move costs shown on top screen– Initial setup is now player controlled
Demo