For the next two weeks I will be working on a new type of Tower Defense game as a side-project. After I am done with this project I will take a look back at the 3 projects I have started in the last couple months and start work back up on one of them. I'm not abandoning the joint project with Spencer, but he recently stated he was getting burned out on it, so I figured I'd start something else in the mean time.
I started roughing out some the of GUI stuff for fun the other night while drafting designs for how I wanted the game to work. Now this is just a rough idea for a prototype, but it's the base I'm going to use to make a functioning project over the next week, and then spend the week after polishing it with sprites and interface assets (sound, animations, textures). I'm going to try and document as much of the process as possible. I will be taking some of my old scripts and utilizing them to accomplish the goal.
The idea for the game is a Tower Defense/Management game aimed at running a functioning Raid Guild in an MMO. It's a little difficult to describe how the gameplay will work but I'll try. You will start out with 40 members of your "guild". 5 of each characters in each of the 8 classes in the game. These classes are representative of typical MMO and RPG classes. Wizard (Mage), Priest, Occultist (Warlock), Witch Doctor (Shaman), Trapper (Hunter), Druid, Protector (Warrior), and Trickster (Rogue). You will decide what role each of the characters is going to have; tank, dps, or support. From there you will designate what the character is going to do in their free time: level professions, do quests, repair items, craft items, or perform research.
Leveling professions allows you to create objects to use in battle: equipment, potions, flasks, and food. Doing quests allows the character to level up and gain basic equipment, money, and/or resources for professions. Higher levels means more base damage, health, mana, farther attack range, or faster attack speed. You are required for the cost of repairs for your guild also, so if you find yourself constantly wiping on a boss you will have to quest more to fund your attempts. This will help balance gameplay for someone stuck on a boss as it will essentially force you to level your character to get the money to continue trying, inherently making the boss fight slowly easier. Crafting items comes from professions, but it takes time; so you'll want to balance having designated characters that specifically craft objects for your core raid group.
Once you have a team of able-bodied raiders, you will begin conquering dungeons one boss at a time. To do this you will decide on one of the unlocked dungeons, and select your party of 10 to take. Once you do that, you will designate a starting position on the grid for each of your 10 characters and start the fight. The characters will take over doing whatever they are scripted to do based on typical class/role abilities (healers will heal, ranged will attack the boss, etc...). You will then manage the positions of the group based on the bosses attack patterns, moving them out of harms way when needed. Tanks will gain debuff's that will need to be managed, either by support members or by switching tanks using a taunt and allowing the debuff's to time-out. It will be different on a fight by fight basis, so you'll have to pay attention to everyone's stats and make decisions as you see fit. The idea is for the player to have to create a strategy to defeat each boss, rather than simply powering through a fight with sheer numbers or overpowered characters. Each fight will be difficult to complete, but you will receive good gear, randomly dropped from a list specific to that particular fight. This will increase the reasons to play the fight again later if you need a specific piece of loot to help a character out. Defeating a boss allows you to progress to the next fight, and so forth.
The base of the game is going to use the building script created during the You May Be Eaten... game development cycle that was scrapped from the project. This will give me a decent base to add objects to the game world with little problem; converting it to 2D is easy enough. This will work perfect as it was scripted to snap to a "grid" as long as the grid is created out of blocks (as I wrote the script from Minecraft Clone examples in the first place). The biggest thing I will need to create are the PlayerPrefs, and for that I will have to create a flow-chart for each "character" in the game and correlate a PlayerPrefs Int series to describe what level/role/class each character has, and possibly a name if I go that deep.
This will easily be accomplished by creating an integer that represents any of the 8 classes in the game. I'm going to use 10, 20, 30, 40, 50, 60, 70, and 80 to allow me to create subcategories within each of the classes and have them be diversified by the ten's base they are represented by. This means that Warrior may be represented by a 10, but changing that Warrior's role to a tank will change that to an 11; this allows me to use the GUI to call a line like "PlayerPrefs.GetInt ("warrior1class")" and then tell the GUI; "if (PlayerPrefs.GetInt ("warrior1class") = 11) { WarriorTank == true; }" or at least some form of that. And then defining what WarriorTank is to the GUI and the rotation of attack the character will use automatically based on its level. "PlayerPrefs.GetInt ("warrior1level")" Keeping that script inside of a game object named Warrior1. Then if the player selects the character represented by Warrior1, the character data will be able to tell what class the Warrior is, and what level the Warrior is; then referencing a persistent script that has all of the level statistics for each class and role in it. That way the PlayerPrefs are not attempting to reference and calculate more than they need, as the game will house the basic information that each preference represents.
The rest of the game will be built on the GUI entirely since you wont have any real control over your characters physically doing anything related to questing, or learning. That's all "off-screen" information that only works off timers and integer increases. A 5-minute quest may grant you 100 XP, but a 10 minute quest may grant you 300 XP; remembering that you can't use the guild member in battle while they are busy doing something else. This will hopefully give players something to balance their time past simply trying to smash through dungeons.
No comments:
Post a Comment