Hey guys. It's been several weeks since the start of fall semester and I've been quite busy. For the past few weeks, I've been working on a pretty big feature addition into our game. The overall theme of the feature is customization. The first major addition is a game store. For each level, we give you an initial set of traps to get you started. During the game however, you can use the points you have accumulated to purchase additional traps. Because the score acts as a currency system, whatever is left over is transferred to your overall profile. This brings me to the next feature I implemented. The game loads up a profile data file for the player and it keeps track of the total score accumulated, levels that a player has beaten, and the characters he has unlocked. The profile is saved out into a binary data and is read back in at the start of the game. The levels unlocked information is also vital to the traps in our game. Traps are unlocked as you beat certain levels so we can slowly ease the player into our game. Presenting the player with so many traps all at once causes too steep of a learning curve.
To help facilitate this major feature, I've created two tools to help the designer improve their productivity. The first tool I created is the GlobalItemsDefinition tool. This tool bundles up all the important information into a single gui window so they're easily changeable. For example, the designer could simply add a new trap to the global list by clicking on the "Add" button and change the name of the trap in a textfield. There are information for store prices, the level at which a player unlocks the trap, and even the models of the trap is adjustable in this tool. Instead of looking for prefabs and going through code everywhere, the designer simply drag and drop the model they want onto the prefab location in the tool and the tool will automatically set up the connection. All of this information is then saved onto an xml file and read in when a game begins.
The second tool is a level specific editor which will allow the designer to select the starting traps for each particular level. They are also able to alter the number of a certain trap type a player gets. This information is also saved to an xml file and read in when a level needs that information. These two tools help consolidate several different systems that all uses traps such as the inventory, store, and the state manager.
Currently, I am working on the outside game store that will allow the user to purchase traps before the game starts but at a higher cost.
Monday, September 17, 2012
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment