Well, the title says it all. Feel free to question if there's any.
This is K.Song Tan's game development blog. Once a fanatic gamer, capable of juggling several game simultaneously, including the notorious World of Warcraft, while doing a PhD. Now finally out of uni and out of job, he is having a crack at the final frontier of gaming, developing.
Welcome to Song-GameDev, You'll find Song's work trying to beat what he call the ultimate end game.
My AssetStore Link
I've moved - GO TO THE NEW WEBSITE
Unity Store Link - Click to see all the Song's work that has been put on Unity AssetStore
Follow @SongGameDev
Unity Store Link - Click to see all the Song's work that has been put on Unity AssetStore
Follow @SongGameDev
Friday, 8 February 2013
Thursday, 7 February 2013
Perk System in detail
So I say I'll do a break down of the perk system and here it's.
TowerUnlockNew,
TowerBuildLevelBonus,
TowerBuffHP,
TowerBuffAttack,
TowerBuffDef, TowerCritical,
TowerCriticalChance,
TowerCriticalDamage,
AllCostReduction
BuildCostReduction,
UpgradeCostReduction,
LifeIncreaseCap,
LifeBonus,
LifeBonusWaveClearedLifeRegen,
ResourceBonus,
ResourceGeneration,
ResourceGain,
ResourceGainCreepKilled,
ResourceGainWaveCleared,
ResourceGainResourceTower,
SpecifiedTowerLevelBonus,
SpecifiedTowerBuffHP,
SpecifiedTowerBuffAttack,
SpecifiedTowerBuffDef,
SpecifiedTowerBuffRange,
SpecifiedTowerCritical,
SpecifiedTowerCriticalChance,
SpecifiedTowerCriticalDamage,
SpecifiedTowerAllCostReduction,
SpecifiedTowerBuildCostReduction,
SpecifiedTowerUpgradeCostReduction,
SpecifiedTowerStun,
SpecifiedTowerSlow
Start with individual perk item. Each item can be assigned a name, icons (included unavailable, available and purchased) and description which will be used for in game UI. Then there's a type, which define what this particular item is for. That means unfortunately the purpose of any item is still needed to be pre-defined and partially hard coded, so there can be a finite number of type available. Currently there are 34 perk type available, some are quite similar to each other. Basically it can be categrorized into 4 major group, they are:
- Life related
- Resource related
- All Tower stats or cost modifier
- Specific tower stats or cost modifier
Full list of the perk type available is listed at the bottom of this post
Naturally for each item, you can specify the cost required to unlock. Then comes the requirement for each item. There are 3 of these:
- wave count requirement - player need to survive at least how many wave before the item become available
- perk point requirement - how many item player need to purchase and unlock before the item become available. Note that purchase an item gives player 1 perk point
- pre-req perk - what are the perk/item needed to be unlocked before the item become available. You can have as many of this. Even a perk that require unlocking every other item in the list!
Finally there some type dependent variable(s) that is tied to the functionality of the perk type itself. For instance, 'UnlockNewTower' would require selection of a towers assigned to TowerManager, 'SpecifedTowerStun' would require two numerical value, success percentage and stun duration, instant resource bonus would require an integer array the length of total resource count. Some of these value can be set to be interpreted as percentage range from 0 to 1.
So basically you can create a list of item. Each item would act as a tech upgrade, a perk or indeed an in game shop item. PerkManager in each level can be be used to enable/disable any item in the list as well as unlocked them prior to the game start.
Example UI for both unity default UI and NGUI implementation has also been added as a compliment element to the perk system. I wont say the sample UI is very flexible for customisation but it does have some option. And I'm still looking for ways to allow the item list of the perk window to be customises with greater flexibility.
Finally here's what I secretly plan to do next. Add in active player abilities, like AOE damage effect, boost tower speed for a fixed duration. Probably a energy system to go with it. Like using each ability cost energy which will then recharge overtime . Then I'm probably gonna add a lot more perk to complement the ability system. Wouldn't that be awesome?!
Anyway, I think I covered pretty much there is to the perk system. As promised, the full list of the perk type available:
TowerBuildLevelBonus,
TowerBuffHP,
TowerBuffAttack,
TowerBuffDef, TowerCritical,
TowerCriticalChance,
TowerCriticalDamage,
AllCostReduction
BuildCostReduction,
UpgradeCostReduction,
LifeIncreaseCap,
LifeBonus,
LifeBonusWaveClearedLifeRegen,
ResourceBonus,
ResourceGeneration,
ResourceGain,
ResourceGainCreepKilled,
ResourceGainWaveCleared,
ResourceGainResourceTower,
SpecifiedTowerLevelBonus,
SpecifiedTowerBuffHP,
SpecifiedTowerBuffAttack,
SpecifiedTowerBuffDef,
SpecifiedTowerBuffRange,
SpecifiedTowerCritical,
SpecifiedTowerCriticalChance,
SpecifiedTowerCriticalDamage,
SpecifiedTowerAllCostReduction,
SpecifiedTowerBuildCostReduction,
SpecifiedTowerUpgradeCostReduction,
SpecifiedTowerStun,
SpecifiedTowerSlow
Tuesday, 5 February 2013
Annoucing TDTK v2.2.0b
I'm very pleased to report that I've just submit TDTKv2.2.0b to AssetStore. First thing first, new demo. I would consider it's a beta version for v2.2 rather than anything. The reason is that there are some components are not finalised in their implementation. And I have got immediate plans to refined them as well as add in more game-changing component.
So what's new?
In a nutshell, many things. Lots of stuff has been given a face lift. Most of it aim to give a more streamline experience to the user. For instance, you no longer need to assign individual tower prefab to BuildManager and Each platform will now have all tower available listed, to enable or disable them for a particular build platform, simply check or unchecked them. The Pièce de résistance for this release of course, is the perk system which I have mentioned in previous post, here and here. So let just goes through the list (beware of the wall of text):
- New perk system and perk editor for construction/design of tech tree or in game shop.
- Each item in the perk list can be enable/disable in each individual level via PerkManager.
- Both sample UI has addition component for tech-tree/shop interface.
- Rework tower management. BuildManager will have acess to a common list of tower prefab and each tower can be enable/disable individually in different level.
- Each individual tower can be enable/disable on each build platform
- New multi-resource system, all level will have the same resource type. each starting value can be customised.
- Add menu item for quick scene setup as well as various component addition
- Modification for SpawnEditor for easier of inserting and removing specific wave in the list
- Modification for path inspector editor for easier of inserting and removing specific waypoint in the list
- Added position based zoom to CameraControl, camera will move toward the zoom point of the cursor.
- Current and next wave information will now be displayed in game in both UI and NGUI.
- Add critical damage mechanism to towers.
- Default UI has been tweaked to be compatible with mobile.
- UIiOS is no longer supported
- and some other smaller tweaks and additions.
Finally here's the bomb shell. I'll be honest. This update has been a bit of a rush job since I've been busy and I really want to get it out before my departure from office for 2 weeks during February (starting after the day I post this), where I wont have access to my usual working PC. As a result, I didn't quite manage to update the documentation to the usual standard. However I do plan to make a new series of video to go with the new version, hopefully in the next few days. It's a good thing the macbook I carry with me is capable to recording video. It's a set back, but I'll get the documentation right when I carry on working. I apologize in advance for the inconvenience.
I like to talk more, especially about the perk system. Unfortunately this is all the time I have now. I'll make another post about it and showcase it in detail, in like 48 hours or so hopefully. If you are interested, stay tuned.
Subscribe to:
Posts (Atom)