Presentation is loading. Please wait.

Presentation is loading. Please wait.

Rawhide Frontier Ctrl + Y John Battagline, Paul Betts, Aaron Cardwell, Jordan Lehmiller, Kyle Moore, John Scott.

Similar presentations


Presentation on theme: "Rawhide Frontier Ctrl + Y John Battagline, Paul Betts, Aaron Cardwell, Jordan Lehmiller, Kyle Moore, John Scott."— Presentation transcript:

1 Rawhide Frontier Ctrl + Y John Battagline, Paul Betts, Aaron Cardwell, Jordan Lehmiller, Kyle Moore, John Scott

2 Hit Point Bars Generic for both Buildings and Units Create new pixel buffer Manually fill pixels in the buffer Attach billboard entity to the object Update when damaged Size and offset defined in constants.cfg

3 Mini-Map Terrain imagery automatically generated from map Buildings added for all users –Goldmines identified Units for each player –Team colors Camera position / View box Mouse input –Move units and attack with units

4 Team Colors Object texture has white spots where color will be filled in Filter texture has black spots to tell the game where to fill in team colors Filter texture is loaded into memory and black spots are replaced with team color Textures are combined with multiplication Team colors defined in constants.cfg

5 Team Colors x=

6 Height Mapping Use of height maps which translate directly to the level nodes which block areas of the map and track units

7 Level and LevelNodes Nodes of the map which indicate numerous data –If the node is blocked by a building or terrain –What units are on the block Used in collision detection and building functions

8 Houses / Villagers Special ability to slowly produce population for a town Logic to mill around the town to create a sense of a growing community

9 GUI The GUI contains interactive buttons so that the user can easily build units and buildings GUI changes depending on what units are selected at the current time Tracks gold and food levels

10 Object Management Need a way to keep track of all the units and buildings in the game Must be able to add new units and buildings when they are built, and remove them when they are killed

11 WorldObject Every unit and a building in the game is stored as a WorldObject This class keeps track of all the information specific to each unit or building. –Health –PlayerID –Cost –SceneNode

12 Unit and Building Separate classes for Unit and Building inherit the information from WorldObject These classes describe actions specific to a Unit or a Building such as how to move or attack They also store details like unit speed, firepower, size

13 Collision Detection Need to move units from one point to another without walking straight through the other units

14 Collision Detection Must be able to navigate around a single unit…

15 Collision Detection …Buildings…

16 Collision Detection …or many things!

17 Networking Client/Server model One process on host computer Client requests permission from server before performing actions Events controlled by server Uses Raknet toolkit Uses small packets with good compression

18 Particle Systems Uses Ogre’s particle streamer Attach a particle system to a scene node and it moves with the units Client side only Buildings burn, gun smoke, cannon ball explosion, mouse click billboard

19 Action Queues Our game has a lot of inherent asynchronous elements –Network, user input, AI decisions We need a way to manage this in a structured manner The solution? Action Queues!

20 Action Queues Based on “async queues” from GTK+/Glib windowing toolkit A queue that is multithread-safe while still maintaining efficiency We use them to enqueue and process “Actions” –Attack, Unit killed, Mill around This paradigm abstracts away the source of the message

21 Sound Categories After awhile, our one gunshot sound got pretty boring! We needed a way to play a “category” of sound –Gunshot, death, lawman talking But, we don’t want all the sounds to be played at random –For example, “ricochet” noise shouldn’t be as often as the regular gunshot

22 Sound Categories Sounds are chosen based on weights encoded in the filename –Gun_25.wav for example These files are loaded at runtime, so sounds can be added and removed without editing lists or recompiling Weights are relative –So 5 files @ 100% = 20% actual likelihood

23 Sound Effects We recorded a lot of sound effects ourselves –John Battagline did most of the villager voices, John Scott did the outlaw voices in Spanish Other sounds taken from films and stock sounds online –Jail plays theme to “The Good, the Bad, and the Ugly”


Download ppt "Rawhide Frontier Ctrl + Y John Battagline, Paul Betts, Aaron Cardwell, Jordan Lehmiller, Kyle Moore, John Scott."

Similar presentations


Ads by Google