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




Monday 23 December 2013

Merry Christmas and Happy shopping!

So a new TBTK update has just been released and Christmas is approaching. The only thing I'm missing is to join the sales frenzy that is happening everywhere.

With that, I'm doing a Christmas/New Year sales on AssetStore which starts today until the new year. Most of my package on AssetStore will have their price reduced for a few days. Here they are:


So get it on the double. Spread the word too. Spoiler: the next sale, if there's any, will be at least a good few months away.

Merry Christmas!

TBTK Update (v1.0.5) - Build the Wall!

Another update of TBTK is up. Didn't expect it to happen so soon after the last update, but here it's. 

For this release, I've added a editable wall system. It works very much like the obstacle system, only that it's between two adjacent tile. And of course, it's compatible with the cover and fog-of-war system.

Apart from that, the less noticeable update would be the overhaul of the effect duration tracking. Now it should make more sense to each different turn mode. It used to be based on round completely so faction which use an ability towards the end of the round will find the effect last much shorter. The new code keep tracks of the turn cycle between each faction so no faction will gain any advantage.

So in short, here are the new stuff:


     addition/change
  • added wall system, now support wall between adjacent tile
  • new wall system is integrated to existing cover and line-of-sight system
  • duration tracking for various ability/collectible effect has been reworked
  • SelfDestruct script has been updated to work in tandem with the new duration tracking
  • added support for manual faction's color assignment

     bug fix
  • fix a few editor bug with grid/unit generation
  • fix some bug with unit-abilities
  • fix bug where abilities duration doesnt work correctly when using turn-mode that isnt round based




Friday 13 December 2013

A New Project, about Mechs...

Finally I've successfully rid myself of the time black hole that is civV and really do some work. And I'm very happy to show off my new venture, which I named Mech-Corp at the moment. Like I said in previous post, this is like FTL meets XCom, inspired by Mech-Commander. Obviously it's a sci-fi setting in the future. Basically you control a ship travelling from point to point taking on various jobs. The goal? to build a squad of awesome mechs, or simple earn enough money to survive the day to day grind to get to the end of the story arc, if there's a story arc.

I've spent a great deal of time over the past few weeks putting together a barely functional early build. I spent even longer amount of time to put together various idea that shaped the build as it's now. The act of trying to juggling several game play element into a coherent and slick presentation is an incredibly difficult and time-consuming task. Well for me at least. It's unfortunately I don't think the demo is ready at this point. So I'll just show a bunch of screen-shots instead. 


It's still pretty rough around the edges, especially when you look at the untextured mech model and the place-holder icon. But it should show the core idea. There are a lot of features that I yet to implement. The pilot system, item and mech modification, perks/upgrades and progression, the procedural world generation system, procedural event generation, TBTK integration... I wouldn't go on and elaborate all the details at this point. I got a feeling that I'll have plenty change of heart as I go along. To be honest, I'm not sure if it's too ambitious for a one man project. But if FTL can be done by 2 persons, why not?

One thing for sure tho, I will be working on this for the foreseeable future. I know I've got some project that never got finished and are collecting dust now. But I'm determined to get this one done. So now this is online, let the internet hold me to my words.

Thursday 5 December 2013

Status Update (Civ5 is addictive as hell!!)

So I've been working on a new project on my spare time. Correction, so I've been playing civilization5 all the time. I have no idea how on earth I still manage to find time to do some work each day. I'm pretty sure I've spend way more time than I should have on it. The problem is the game is so darn additive. I started on Friday evening. 'Just one evening', I said. Before I know it, it's Monday morning and I cant feel anything below my waist, I have to pick one of my eyes up from my desk...  Now, I'm terrified just at the thought of booting it up.

It's a strange feeling. In the game, I raise civilisation span thousands of years, shape history, build wonders. I feel like I have contribute so much for the humanity. But in real life, I'm actually wasting a lot of time, doing the most worthless thing I can do with my time. Still, it's hands down one of the most entertaining and educational game of all time.

Anyway, I'm indeed working on a new project. It's sort of a XCom, FTL hybrid turn based game. Yes, TBTK will be the core component. And yes, this is what TBTK is intended for all long. AssetStore is just an after thought. Well, a very early after thought. If you have been following this blog, you will remember that I've been posting image about some mech model. And so you might have guess this new project will have mech. You are absolutely right. I'm building an army of mech. Normally at this point, people will show a bunch of concept art about the mech design. But I'm going to skip that and show the actual model instead. So this is a taste of what to come:


  

These are not all of course. But the rest will have to wait. I'd love to show some game screen, or even a playable prototype. Unfortunately none of that is ready. But if I manage to stay off civ5 long enough, I should be able to put something together. Hopefully I 'll get to talk about that soon.

Friday 22 November 2013

TBTK v1.0.4 is now released!

I'm so happy to announce that the latest TBTK is now live on AssetStore. Now with this latest release, all the "incoming" features listed when the kit is first released is now done. Honestly It's a great relief for me personally. Now I can ease my foot on the paddle a bit and perhaps find more time doing other things I'm interested. But knowing the way I work, it's certain that at some point in the future I'll pick it up again.

So about the update, first there's the perk system which has been coming long time. Almost every stats on unit can be modified via the perk system. But I have to say it's not the most comprehensive aspect of the toolkit yet. There's still a lot of things that can be added, more dynamic things like gain certain bonus after certain event. But I feel like going there could mean adding a lot more work so I'm going to leave it for now. Needless to say, the system can be used either as a self-contained progression within a single level or a persistent progress across a campaign.


The other addition is the hotseat multiplayer support. There's some limitation yet of course. For instance the unit selection scene doesn't really support this yet. But I doubt anyone who build a hotseat multiplayer game would wants to use the default unit selection scene. What I've done instead is add the code support to assign multiple player unit selection which should work automatically with the game play scene. In short, you build your own unit selection scene, assign unit selected by each player via an API and that's that. Otherwise, the hotseat can be a self-contained level with randomised or preset unit.

I've also add a few abilities following user request. There's Spawn Unit, Teleport and Change Enemy Faction. This should spice things up a bit. So if you have got TBTK, go have fun! If not, buy it, I promise it's worth it. :)



Change log for TBTK v1.0.4:
addition/change
  • add perk system
  • add “hotseat” multi-player support
  • add new ability (spawn unit, teleport)
  • icons can be removed in once assigned to reduce build size
  • grid generation in editor is significantly faster now.
  • get rid of warning message for NGUI for unity 4.0 and up
  • code improvement here and there.
bug fixes
  • fix a bug with GridManager faction setting and unit generation
  • fix some bugs with unit-abilities

Edit: A small update (v1.0.4f2) for bug fixing has been released on 5December2013

Monday 18 November 2013

Some Thoughts

I've been playing with the idea of making an end user game. In fact I'm in the process of it, testing water here and there. I have a vague idea so what it should be. But whenever I comes down to the details, I got lost. What I realise is, it's quite easy to visioning a game, but it's very hard to actually sort out all the design details. Not when you try to consider every factor there is to consider. 

Probably it's just me. Since I know I'm working on my own here I have to keep the scale down so there shouldn't be too many elements. Ideally there should be two or three very simple core elements that plays together real well. At least the is what I have in mind. But I have trouble even just to nail that down. In the attempt of playing with various possibility, often a lot more thing springs to mind. As a result, a simple thought could snow-balling into a very complex concept and what happen then is I find myself back to square one realising I couldn't possibly pull the whole idea off.

It not just the dealing with the gameplay design, there's also asset integration to think of. When operating with limited resources, obviously I need to set things up so the game don't need huge amount of asset. An open world design would certainly kill me before I can really get to the project. Well, I'm a bit over cautious I think.

Anyway, the plan is to wrap up the contract work I have on my hand. At the same time, finish up the update for TBTK. Then I'll focus on developing the idea and see where it takes me. So much things to try when I think of it, I havent even try Unity4.3. It does make me wonder why am I taking time writing this. Well, a man has to rant I suppose.

Friday 8 November 2013

Status Update

It's been a hectic time for the past few weeks. Many thing happens. Not necessarily bad things. But professionally speaking, they are chores that disrupt productivity. I end up feeling like I could have done a lot more in that particular period of time. Buy hey, you got to have some life outside work right?

Anyway, the perk system of TBTK is certainly taking shape. I'm still not very sure of it. Wondering if I could do more. For now, it's just some optional upgradeable that modify the unit stats. But in that respect, it's pretty decent. Almost every stats of the unit can be altered via perk. Of course there are also some other ideas that I'm playing with and hope I could make it work for future update. But to prevent false hope, I'm not going to say what are they.

Also something that has been coming, I've started working on a full game of my own. I'm slowly building the prototype, testing with various design idea as I go. Hopefully it turns out to be fun. Let just say that it is sci-fi theme and it has got mechs. While I wont show anything about the prototype, I've got a few models that I've been working on from time to time. Figure I could finally use them in the project. These are what I do when I don't feel like coding. It's a nice change of pace. Like the turret set and tank set I've done, these made to be a set and modular in nature so the pieces of mesh can be interchanged.



Now, if only uv mapping and texturing isn't such a pain...

Thursday 24 October 2013

TurnBased-ToolKit (TBTK) v1.0.3 is now released

Feels like I've fell off the grid for a long long time. For I have not posted anything at all for quite a while. So many things had happened for the past few weeks and plenty is still happening.

Anyway it's not my life story I'm want to talk about. This is in fact a quick status update and quick announcement. So status update, I'm alive and working... hard... And that's about it.

Now we get that out of the way. I like to announce that TBTK v1.0.3 has gone live on AssetStore as off yesterday. I think I've done sufficient bug testing on my own. Hopefully all the nasty one has been filtered. So the big shinny new features are in this update are square grid support. With this, I have covered most of the coming soon features I stated when I first release the toolkit.  Of course, along with square grid, I have also added a lot of stuff such as new turnMode, more option to setup a level, unit abilities and lots of bug fixes. It's a lot of small things that when put together, make lots of difference. The summarized change log is as follow:


TBTK Version Change – 1.0.3
additions/changes
  • TBTK tab on the top panel has been moved to 'Tools/SongGameDev/TBTK'
  • added support fro square grid
  • added new turn mode (SingleUnitRealTime & SingleUnitRealTimeNoRound), similar to SingleUnitPerTurn but faster unit get to move more in a round than slower one.
  • separated grid generation and unit generation
  • added point budget based unit generation
  • UnitAbility can now trigger other unit abilities, enable abilities with different target area, effect, etc.
  • UnitAbility can now fail/miss
  • damage effect on UnitAbility now has damageType associate with it.
  • and other minor tweaks.

bug fixes
  • fix bug with unit placement
  • fix various bugs with the UnitAbility
  • fix volume bug with AudioManager
  • fix bug with multiple shootObjects
  • fix bug when randomize level breaks the game on iOS 
  • and more...

Thursday 3 October 2013

Status Update (going afk)


So yes, you have seen it. SquareGrid for TBTK. It is a thing now, a work in progress that is. I just manage to get it working, just, like a few hours ago. It still need a lot of testing so as much as I want to update it now, it will have to wait. The last thing I want to have is another bug fest like the first release of v1.0.1. I'm going to take time to test it a bit and make sure most of the things are working. So this will be the major addition for v.1.0.3. Of course, there are many other small changes/tweaks/addition as well. Some of them might not be small at all. At the rate this is going, the next update is shaping up to be as big as the last one.

Unfortunately this is the end of the 'good news' for my AssetStore customer. I've just took a job that no doubt will consumed all the time I have in the this month. Let's just say it's an unfinished business from the past and I hope this time it goes well. I really want to get this settled once and for all. Anyway, the point is I won't be having too much time on my hand to work on any major update.

It also doesn't help that I got lots of travelling to do this month, for various reasons. On that note, I'll be away starting from this Saturday until next Thursday. Not sure if I'll have access to Internet so if I'm not responding to your email, please be patient.

Saturday 21 September 2013

TurnBased-ToolKit (TBTK) v1.0.2 is now released

Finally, after the bug ridden mess that is v1.0 and v1.0.1, v1.0.2 is finally on AssetStore. And boy oh boy the list of addition and bug fix are huge!

Obviously I fixed all of the know bugs in the new update. Or so I hope. I've spent quite a lot of time play testing. Now to the new features:

First there's the cover system and fog-of-war system I've been talking about. It's what you expect it to be. They are two independent game element so you can choose to enable both, either or none of them in any given scene. When fog-of-war is enabled, player cannot see what beyond the range of sight of the target. When cover system is enabled, unit will be harder to hit when hiding beyond cover. It's a similar system with the one in XCom so there are two type of covers, half and full. More cover gives the unit more bonus against the attack. And they are directional as well. When working along with fog-of-war system, unit behind a wall of full cover will be invisible.

A test scene in demo using both fog-of-war and cover system. The AI unit will be invisible when they are beyond player's unit sight or behind walls of cover. The small minimap on top is to gives an indication of where in the AI unit.

The cover objects can be placed manually into the grid via the new GridPainter (yes, that is overhauled as well). And yes, you can make your own cover object using custom mesh

Then there's the AI, I've to recode it almost from scratch to fit the new cover and fog-of-war system. So now not only it obeys the rule in accordance of the fog-of-war and cover system rules in a scene, it also have some unpredictability when in a simple, basic scene. I've also add a small option to set the basic behaviour of AI to either passive (wont move until hostile appeared) or active (actively move around seeking target). Having said that, it's still some what basic if I'm honest.

Another big change is the turn system. The old system completely. Now instead of one TurnMode setting, there's TurnMode and MoveOrder. Turn Mode determine the turn basic turn logic
like which faction turn is it, when is a new round, etc. The options are:
  • FactionAllUnitPerTurn - Each faction take turn to move all its unit in each round
  • FactionSingleUnitPerTurnSingle - Each faction take turn to move a single unit in each round
  • FactionSingleUnitPerTurnAll - Each faction take turn to move a single unit in each turn. The round is completed when all unit has moved
  • SingleUnitPerTurn - All units (regardless of faction) take turn to move according to the individual unit stats. The round is completed when all units has moved. MoveOrder has no effect on this setting
MoveOrder determine which unit get to move first within a faction and if unit switching is allowed. The options are: 
  • Free - Randomise move order for the unit. Unit switching is enabled
  • FixedRandom - Randomise move order for the unit. Unit switching is disabled
  • FixedStatsBased - Arrange the move order based on individual unit stats. Unit switching is not allowed
So combined these two there are 10 possible type of settings available. That should cover a lot of ground.

And I think that's about all that excites me enough to talk about. For the rest, please read the change log bellow or explore it yourself. :)




Version Change – 1.0.2f5 (13 September 2013)
     addition/change
  • added XCom style cover system
  • added fog of war
  • added support for a all AI faction scene (no player faction)
  • Total Revamp of TurnMode and MoveOrder. More variant are now supported.
  • Better AI
  • Added more target area for unit-abilities (line, cone)
  • Editor interface change and renaming some of the unit stats.
  • tweak the aiming of the range attack visually so a hit look like a hit and a missed look like a missed
  • tweak the trajectory of projectile shootObject so it's more robust
  • Many tweaks across the whole framework

     bug fixes
  • lots of bug fix with regarding turn transition and logic
  • fix bug with unit placement
  • fix bug hit sound and hit animation is played even an attack is missed
  • projectile shootObject max shootAngle limit is now increase to 75
  • fix bug where projectile shootObject sometime bounce off or overshoot from the target
  • and tons of other bugs.

Age of Throne (A release based on TDTK)


I'm pleased to announce that a new release based on TDTK is now out for both iOS and Android. It looks pretty good, although I've yet to play it. I'm totally convinced by the trailer! 

I have to say quite a lot of alternation has been done to toolkit to accommodate the game design. I've been provide support to the developer to alter some aspect of the toolkit to fit the game design. And of course, a lot of additional work has been done on top of the base frame-work. The end result looks quite different from the 3D demo I have.

Still, quite proud to be part of it!

iOS download link:
https://itunes.apple.com/us/app/id659900859?mt=8

Android download link:
https://play.google.com/store/apps/details?id=com.nexrage.ageofthrones





Friday 13 September 2013

More Updates

So I've been working day and night updating all the packages, especially TBTK. Here's what happened:

A new update of InputTouches has gone live on AssetStore. It's very a minor update. The only notable addition would be the tap multiTap event filter. Anyway, here's the full list of the changes:
  • Add option for multi-tap filter. Remove any prior tap event with lesser tap-count before the final tap event in a multiTap event.
  • A tap can now go on (being held down) for as long as needed
  • Added missing information to the documentation - pinch and rotate info
  • DragDetector_AndroidFix.cs has been merge into DragDetector.cs

An update of TDTK has also gone live on AssetStore. It's a hot-fix for several bugs I missed or accidentally introduce when working on the last update. Again, the full list of changes:
  • fix bug for tower aiming in separated barrel mode
  • fix bug with path-indicator when paused
  • fix timeScale issue when loading a new scene when paused
  • fix bug with dragNdrop build scheme where it stop working if a DragNDrop process is cancelled

Finally the big one, TBTK, which has effectively consumed my life for the past few days. I must say it's a big relief for me that the next update is almost done. If everything goes well, I should be able to submit by today. I hope this update would fix most of the issues in the last update, which was abysmal consider the bugs it has. I have put an extra effort bug-testing for this one. 

Apart from the bugs fix, I've added fog-of-war and XCom style cover system. This should be very interesting. Also I've restructured the TurnMode setting from ground up. The new system should cover more ground and have much more flexibility. I'll talk more about it when it's finally released. For now, here's a screen shot of the test-scene I'm working on:


Tuesday 10 September 2013

Updates Updates Updates...

Finally, all the latest update of PathFinder, TDTK and TBTK is now up on AssetStore.

The current iteration of TBTK is still very buggy at the moment so I wouldnt bother too much about it until the next update.

Next would be PathFinder. It's not really a big update, unless you like to use it for a vertical axis. Before this it use to only support xz-plane (horizontal) grid generation. So basically I've added grid-generation for xy-plane (vertical) following some user request. The next thing on the list would be to add serialization to the grid so it no longer need to be generated everytime the scene start. Still not sure how effective that is going to be in reducing load time, or how straight forward it's going to be implementing it. But we'll see when we get there. So the change log of the latest PathFinder is as follow:

PathFinder Version Change – 1.1.2
  • Added support for vertical grid (XY-plane)
  • Fix the inconsistency in the example scenes.
  • Fix bug where Agrid graph doesnt work if erode is set to zero


Finally, TDTK. The latest update fix a bunch of stuff with editors and the more recently added game play mechanic. The most notable addition would be the addition of the modular tile set to the package as well as the example scene. The updated demo is looking awesome after this small addition along with some lighting. I must urge you to check it out, just look at these screen shots!


However please note that the dsitributed package is export via Unity3.5 so it hasn't got the lighting treatment in the demo. Finally, here's the full list of the change/fix in latest update.

TDTK Version Change – 2.2.4
addition/change
  • Icon can now be deleted before building to reduce build size (for NGUI only)
  • Added modular tile set to the package, applied to the demo scene.
  • Input for Ability system has been changed (right/left click has been swapped).
  • Added mobile support for abilityManager
  • Added mobile support for drag and drop building scheme
  • Tower position during drag and drop phase will now 'sticked' to the cursor, as opposed to the last valid position.
  • Change how overlay is assigned in the editors.
  • Add option for pre-calculated hit result upon shoot, to prevent tower for firing redundant shot
  • (configure in GameControl)
bug fix
  • fix bug with spawn editor where generate wave in finite mode gives error
  • fix bug where ability armor reduction on creep doesn't work
  • fix bug where creating a new scene doesn't work with only 1 resource
  • get rid of the warning sign in Unity4.0 and up
  • fix bug where path-indicator does not point in the right direction in Unity4.0 and up
  • fix bug where DamageTable is not taken into account for shield
  • fix bug where shield pierce doesn't work

*For TDTK user,  please note that the dsitributed package is export via Unity3.5 so the example scene hasn't got the lighting treatment as shown in the demo. If you wish to have that, please let me know and I'll send you a copy of the package from Unity4.2.

Saturday 7 September 2013

Status Update (So much stuff!!)

It's been a very hectic week. And I just realised I haven't make any post in some time. The good news is I've been very busy updating all the package on AssetStore. Everything has been updated, and I do mean everything! I submitted the a hot fix for TBTK last week (looking to submit another by the end of next week. Then there's the latest TDTK, submitted a few days ago. PathFinder after that. And I'm about to submit an small update for InputTouches later today.

And boy I'm excited for the next demo of TDTK. I've finally took the plunge and downloaded and installed Unity4. God know how long since I last update my Unity. I'm still using 3.5 by the way. Anyhow just for demo purpose, I port TDTK to Unity4 and redecorate all the demo scene. And I was almost blown away by what I manage to achieve. I'm hoping you feel the same when I finally update the demo, when the AssetStore update is approved. Here's a glimpse of how it looks like:

It looks a lot more better in the actual game, when things are alive and moving

I've also make another simple demo in collaboration with another AssetStore publisher 3DForge. Here's the link to the webplayer:


Basically I used the 3DForge tower pack for the towers and the free skeleton pack for the creep. The rest are either unity standard asset or unity terrain asset. Not too shabby eh?


But that all is not what kept me busy for the most part. What really kept me busy, is TBTK. Who would have thought a simple turn based framework can be so much work? And the amount of bug I've introduce doesn't help either. I've been working on this babe almost day and night for the past 5 days. I could really use a break. Anyway I hope the new addition are worth it. For of war and cover system will be available in the coming update. I'm still working on the AI at the moment. I have a feeling that AI improvement will be a never ending task following the addition of the cover and fog of war system. I've also been doing some major overhauling to the turn mode setting. You bet the new system is going to cover a lot of ground. 

Finally I like to apologise to all the TBTK user for all the bugs. I'm trying my best to fix them all. Too bad the AssetStore approval process is a bit slow atm. Not entirely sure why but I bet Unite has something to do with it.

Anyway, that's all for the quickie update. I shall make new post about individual package as the new update submission is approved.

Friday 23 August 2013

TBTK First Update Released, Mobile support Included!

So it's happening earlier than I expected. TBTK v1.0.1 is now live on AssetStore. If you havent know already, mobile support is now included.

Rather than describe what I did in a lengthy and whinny sentences, I'll just put down the change log. They are as follow:

Version Change – v1.0.1
addition/change
  • optimization for mobile device
  • added touch input support for mobile device.
  • added support for camera control via touch
  • more comment and clean up has been added to the code
  • change the way attack animation delay works, delay duration can now be specified manually
  • point reward will no longer shown up when game end in non-persistant data mode
  • added optional minimum attack range for range unit

bug fixes
  • fix UI bug where ability tooltip not display correctly
  • fix bug where AI unit wont pick up collectible
  • fix bug where miss chance is mis-calculated and limited at 5%
  • fix bug where AP bonus on tile doesnt apply to unit

Monday 19 August 2013

Status Update (Pacific Rim is still awesome!!)

Forgive me, I still cant get over the fact of how awesome PacificRim really is. Some one needs to make a game about conducting the Jaeger program against kaiju, XCom style! Feel free to steal my idea.  :)

Mean while, back in my life, it's work, work... never ending work and never ending of ideas to try. The good news is, the research project which I worked part time for has now ended. Of course that doesn't mean that I can spend more time playing games now, it just means  that I can now concentrate full time on my own work. Got to say that feels... liberating. 

Anyway, I've been working hard through the weekend on TBTK. The plan is to try to fixed all the bugs reported to me (or encounter by myself) so far, add more polish to the code (by which I mean comment and clean up) then update the package by the end of coming week. If possible, I would very much like to squeeze in mobile support to TBTK before the release of next update. 

It goes without saying, of all these things I'm trying to do, the trickiest one being mobile support. There's plenty to consider of course. First the optimisation, by my standard, at the minimum, it needs to run for at least 20fps for all the demo scenes. When I first try it, it register something like 15fps or lower for even the smallest and simplest of the demo scene. After some tinkering which took almost all of my weekend, now at least even the space theme scene, the one that contains most lot of rendered object can easily push pass 20, sometime reaching 30. So it's not bad.

Then there's the Input scheme. Obviously on touch device you cant just hover over a tile with the cursor or right click, and there's no shortcut key as well for that matter. So an entirely different input scheme has to be used. The alternative input would involve a lot of second tap to confirm a selection. That is now half done, but there's still plenty of testing to do.

I have also tried my hand at cover system and fog of war. It's just too interesting to think about the possibility but not doing something about it. It's rather complicated compared to other mechanic of the toolkit, more so than I first anticipated. So they definitely wont make it into the next update. In fact, I'm not going to promise anything. Just hopefully it's going to make it to the toolkit at some point.

Apart from TBTK, I also have plans to do some update to TDTK. It's time to break out TDTK's 'to-do-list' and get something to do.

Now back to work...



Sunday 11 August 2013

TurnBased-ToolKit (TBTK) v1.0 now released


Finally, after much delay, TurnBased-ToolKit is now released. Yea, I know, not exactly a creative name but it's in tune with TowerDefense-ToolKit. Still, I'm excited to make this announcement. I'm not going to repeat posting things that I have posted, so please just check out the main page for the various link, demo, feature list, screen shots, etc.

I would consider this as an early release. It's no where near where I vision it when I first started. I still have tons of idea to try and develop. And that is exactly what I plan to do in coming weeks. Speaking of adding features, perk system, better AI, cover system immediately springs to mind. Cover system is definitely gonna be an interesting things to try. Cant wait...

Too bad I still have a week worth of part time job to go through. It has been especially bad during this last, final 3 weeks. Such is the nature of research project or indeed game project. I wish I could just screw it, just work for the hour which I have been paid. Well, remind me not to get into stuff like this anymore... 

Sorry for the rant. The point is, I will try to find as much time as I can to work on the next update. Hopefull I can do enough improvement/addition to make the next update by early next month. This is the is going to be the next TDTK. I'm going to keep on developing and support it as best I can. Hope this is interesting enough for certain people... who will then buy it so I have money to pay for the food! Please forgive my honesty there but it's kind of the truth. Many thanks in advance!  :D

Friday 2 August 2013

Status Update (Pacific Rim is beyond awesome!)

Status update again. I generally don't like to post a generic "Status Update" post. It just mean I didn't quite do enough in any specific project to warrant a single meaningful post.

It hasn't really been a good week. The project which I work part time on is at it's finishing phase. So in an effort to make the most of it, the team has been asked to put in extra hour. As a result, the so called 'part-time job' has taken up most of my time. At least it's all going to end in 2 weeks time and then I can focus on my own project full time again.

Anyhow, all this has set my plan back. I was planning to wrap up and submit the TurnBased-Tactic framework this week. Because of the set back, I'm currently still working on the documentation and packaging. It's partly my fault to be honest, I've been constantly reworking and polishing certain aspect of the framework that I'm not very happy with. But I suppose that is a good thing, the framework now feel much more better designed and organized than before. It's my principal anyway to make things as best as I can. It's worth the wait I think.

Finally, I got to say I watched Pacific Rim (two weeks ago), it's frinkin' AWESOME!! Although I have to temporarily forget about how physics work while watching it, I still can't get over how awesome it's after two weeks. A single fight scene in Pacific Rim is better than all the transformer film combined, period! If only I can make something that awesome.

Sunday 21 July 2013

Turn-Based Tactic Framework Update#7

Another week gone by and it's getting there. I'm almost at the stage where I'm mostly doing polishing and applying finishing touch. I'm hoping to get it done in two weeks time. I wont be releasing any demo now. Instead I'll only get to that when I'm done with everything. Also I'm planning on working a a video to show how everything work when that happen. For now, please just enjoy the screen shots I included in this post.


A lot of work has been put into polishing the interface. The most notable addition is perhaps the option/pause menu. HUD wise, more information is now available on screen at a glance. There's quite a lot of information to be displayed to be honest (who would have thought eh?). That just make you appreciate how hard is it to design a clean and intuitive interface that show all the vital information without getting too busy or confusing. Unit basic status, tile bonus, attack information and that's just the on screen information. I'm still working on the Unit Info panel. Even though it's there in the last update, It's still missing information like tile bonus and active effect.


I've redone a lot of code restructuring for the past week, to keep it more organised and simple so it make more sense to any potential user of the  framework. While at it, I've added more configuration option and make the corresponding interface for them. It's really sort of a clean up of the code in development stage and packaging into a end-user ready stage.


Of course, the framework is getting polished here and there while I work on the more notable stuff. There are a lot of small but significant changes/additions which I don't keep track of. Most of them wont even be visible on the surface. They are mostly about giving the framework the flexibility for future extension/addition.
The thing that are still on my to do list for now are completing unit information panel, rework the unit placement screen, finalize ability system (This is the real pain here) and finally, and this is just a thought,  let AI use unit ability.

Overall, it's still quite some way from the vision I have for this framework. There are still many things that I like to work on and add. But I'll keep that for myself for now. At least it is a pretty solid turn base framework for now. Hopefully I'll be wrapping things up this week and start to write the documentation next week.

Tuesday 16 July 2013

Latest Release

2 updates has just been released on AssetStore, TDTK and InputTouches

The update to InputTouches is minor really. It just to fix up 2 minor bugs. They are as follow:
  • Fix bug where third mouse button click is recognised as right-mouse click
  • Fix bug where multi-finger drag event wont be triggered if more than 1 fingers landed on the screen at the same time.

The update to TDTK is basically a fix to the recent update of v2.2.3. It's just to fix a few bugs with AbilityManager. As well as getting rid of the warning message when used in Unity4.1.

Both of them are now live on AssetStore.

Sunday 14 July 2013

Turn-Based Tactic Game Update#6

Finally I manage to put together a build worth showing (link at the end of this post). It is quite an improvement over the last one but it's still pretty basic. You can probably tell from the build that I spent most of the time I have last week nailing down the details. The game is playable and much more interesting now. It's by no mean balance of course, and there are still lots of rough edges that need polished and definitely bugs that have slip my attention. But hey, it's still a wip.

Although I've add a lot more stuff in term of code since the last build. The thing is I simply don't have the asset/resource at this point to show every features. Still missing lots of things like animation, audio, visual effects, more model for unit/collectible object, and the list goes on. But I guess that is something to worry about further down the lane, after the base framework is finalised.

For now, please just enjoy what it is.



'f' to autoplace unit during unit placement
q and e to rotate the camera, mouse wheel to zoom
hold spacebar to toggle units overlay
'Escape' or right-click to cancel ability
right-click on a unit in game to show more information
'Reset' at the unit selection screen reset all units and points


Monday 8 July 2013

Turn-Based Tactic Game Update#5

A major step forward this week. I've made quite a significant leap forward in several aspects. Starting with a few tweaks to the game mechanic. I 've got to pretty close to a state where I'm quite happy with. There are now various attack mode for the unit which is range, melee and hybrid. The first two are quite obvious, hybrid is basically for unit which can do both range and melee attack based on the range of the target. Then there's the counter attack mechanism, which allow unit to perform a counter attack to the attacker. All this combine with the abilities system, I guess it provide sufficient amount of flexibility to create a variety of interesting game play.

A great deal of work has been done to the details such as audio and animation. Unfortunately I don't really have the asset to showcase it yet. And I've put together a proper unit editing system. It's pretty much like the tower and creep editor in TDTK. Looking at the screen shot of the unit editor, it should give you a pretty good idea to what extent you can modify things. Just keep in mind it's not final and everything may still be changed.


Also I've ported the similar DamageArmorTable system from TDTK. This should enable setting up some rock-paper-scissors relation between the units. I've given the editor a face lift as well so it is more intuitive to use. The same update has been done to the one in TDTK too. So here's how the new editor looks like.


At this point I'm happy to say big picture is pretty much established. There are still many details that needs to be straighten out. Especially about the ability system. There's things to be added with the new tweaks to the core mechanic. I must say it hasn't really settled since I first started to work on it. On a hind sight it probably should have been the last thing I work on.

Anyway, until next week...

Saturday 6 July 2013

TDTK v2.2.3

A new version of TDTK is out. The main focus of this update is to to fix some critical bugs and polish the user interface. so it hasn't got a great deal of addition. Except the ScoreManager of course. So it's like what it says on the tin, a component to keep track of player score.

Like every other component, you can configure the various variables of the score calculation. Like how much score each creep kill gives, bonus for clean wave and combo for clean wave streak, boss wave bonus and so on. But again, it's all quite intuitive in my opinion, nothing too complicated. Following screen-shot should give you a pretty good idea about it.


Finally, here's the update log:

addition/change
  • Added ScoreManager for scoring purpose
  • UI support for ScoreManager
  • Updated DamageArmorTableEditor with slicker and more intuitive interface
  • Added support to PathTD to auto re-sample and fit path to terrain height (still in testing state)
  • option to use custom gameobject for tower preview during build phase
  • added animation shoot delay for turret tower

bug fix:
  • fix selected tower UI bug where certain stats are not displayed
  • fix error with spawnEditor where wave count cant be edited in finite auto-wave generation mode 
  • fix a few critical error with infinite spawn mode
  • fix tooltip error with UI
  • fix some bug with wave info display
  • some other minor bug.

Friday 5 July 2013

A Showcase of TDTK - "Diabetes Defender"

I would like to give this project by Bill Pomidor, MD - "Diabetes Defender" a shout out. Bill has been a TDTK user a long time back and I'm very glad to see the prototype he has made. Obviously the game is a TD game built using TDTK as its backbone. I think the concept is pretty cool and very refreshing. I especially like the fact that it's factual and educational in its unique way. Here's the trailer:


Don't just watch the video, go try the webplayer demo (current prototype) on the website. The level design is rather wonderful!

I would very much like to talk more about it but unfortunately this is all the project has got at the moment. It certainly very interesting to see where this is going.

Sunday 30 June 2013

Turn-Based Tactic Game Update#4

A rather disappointing week I'm afraid. I haven't done as much as I hope for. So I'm going to say up front, no webplayer update this week, again.

Now we get that out of the way, I can talk about what have been done this week for the project. The notable things that I've been working on is the addition of different turn-based mechanic. So there are 4 different modes that will be supported. They are:

  • FactionBased - Each faction takes turn to move all unit in control. The All unit can be moved within the round. example: x-com, civilization
  • FactionBasedSingleUnit - Each faction takes turn to move. Only one unit can be moved within the turn. example: worms series
  • UnitBasedRoundCap - Each unit take turn to move regardless of the faction. The unit with the highest speed get to move first. Each unit get to move only once per round. example: king's bounty
  • UnitBasedNoCap - Each unit take turn to move regardless of the faction. The unit with the higest speed get to move first. There are no round in this mode. Unit with much higher speed will get to move much more than slower unit. It's semi-realtime-ish.

Sorry for the lack of example, I guess my lacking of experience in turn-based tactic game shows there. I hope my explanation makes up for it. If not, just wait for the webplayer demo. Reading that, you might have probably learn by now that there are facility for multiple faction. However I must say there are no plan for multiplayer just yet. But multiple AI faction is certainly an option now. 

And that's that for this week. Thanks for reading!

No just kidding, apart from the multi-faction and addition of turn mode, the persistent unit system has been done as well. User will have the option to use persistent player unit or preset unit for each scene. Say in a campaign where player will be able to bring their unit to the next level, exception can be done to certain level that a set of pre-determined unit will be used. There are option to tweak the rules for unit's ap as well. To use it for movement/attack or not and so on. So all in all, there are plenty of option that can change the mechanic of the game. Which is nice to experiment on different game design, and of course, this is shaping up to be a pretty decent framework.

Finally, I've also added in game action cam. Something like those action cam in x-com. It's pretty cool I think. But it still need quite a bit of work to be honest.


The good news is, I'll have more time to work on this project this week. So hopefully I've go more to show next week.

Sunday 23 June 2013

Turn-Based Tactic Game Update#3

It's has been a fairly productive week. However there's nothing much to be shown. From the end user point at least (so no webplayer update this week, sorry). Thing is continue from the work I've done last week for the unit ability, I've been focusing on getting a full on customisable unit ability system working. That I'm afraid has killed many many millions of my brain cell and taken many many hours of my time in the week. But the consolation is I manage to get it working to some extent. It's not fully done but it's almost there. Just many fine details left that need sorting out. In some way, it works more or less like the ability/perk system in TDTK. However it's a lot more complicated because of the nature of the turn-based tile mechanic. The abilities can be very different from one to another. ie. some need targeting, some don't, some direct at the unit, some direct at the tile, some shoot, some don't, aoe and what not. In short, it's a bit of a nightmare. It just shows that I still have much to learn.



I've also improve the tile editing by a great deal. By adding in the facility to directly edit the tile using scene view. Basically the same thing every other tile-based editing tool use. The editor now allow changing the state of individual tile, as well as placement of unit and collectible item on the map. Following video shows just that.



Speaking of which, a small addition to the gameplay, there's now collectible on the map. These collectible would grant various bonus/buff/debuff when triggered. I haven't got the chance to really make a few examples yet but it's there. For now, there's just a basic one which heal the triggering unit.

Finally, a unit selection screen has also been added. Like every other addition this week. It's unpolished yet, just functional. For that reason, I'm not going to show it. But perhaps you can see where the base game is going at this point. So you get to select the units that you want and take them to battle. You have a limited budget so you cant take too many units. You earn points for your unit selection for the next battle and so on. I'm still working on the aspect of persistent unit through out battle. Basically very generic system like every other game. I can only say this is the case for the time being.

I guess most of this week progress are good for the project if I want to make a toolkit out of it. Something I have in mind if I'm honest. But frankly it's a bit of a chore compare to to some other thing I have in mind. I can only hope I can quickly get it done and move on.

Oh yes, just for research purpose, I've got myself king's bounty. I'm going to play it for a bit and try to get some inspiration. Let's hope I'm not going to get myself hooked.

Monday 17 June 2013

Turn-Based Tactic Game Update#2

Another weekend passed so here's another update. I'm intend to make weekly update for and post for this project. Let's see how long I can keep this up.


So as you can probably see I've add a few more polish touches to the UI. It's mostly just there to aid the gameplay. Also I've added a few unit abilities. Basically here's the addition:
  • UI polish
  • Unit abilities:
    • AimShot (increase attack and critical chance for 1 round)
    • RapidShot (gain additional attack for 1 round)
    • Fortify (increase defend bonus in certain tile temporarily)
    • MassRepair (heal all friendly)
    • Barrage (aoe attack an area)
    • StasisField (prevent a unit from moving/attacking)
  • and other little minute details.

The unit abilities works like this. Each unit gain 1 'AP' at each turn. Each ability will cost certain 'AP' to use. Just try the new webplayer build and find out what's new. It's an early build and the game is not exactly balance but any feedback/comments is much appreciated.

'A' to autoplace unit
q and e to rotate the camera, mouse wheel to zoom
hold spacebar to show all units' HP
'Escape' to deselect unit & cancel ability


If I'm honest, not a great deal has been added from the looks of things on the surface. True is I spend quite a lot of time working on the base framework of unit ability. I'm tyring to make something like the ability/perk system in TDTK. But It's proven to be quite tricky so far due to the diverse nature of the ability in a typical turn-based tactical game. Barrage and StasisField in particular has killed many of my poor brain cell. I've to use hack here and there to make things work at this stage.

The code has been restructured a lot as well. I'm trying to give it the facility and flexibility to modding. Make life easier for me to mod and build the actual game eventually when I'm happy with the base framework. If these elements works out well enough, I might consider releasing it to AssetStore as a toolkit.




Wednesday 12 June 2013

Turn-Based Tactic Game First Prototype

I think I've found my new favourite project. I've tons of idea how can I make this into an interesting game. It all started when I first getting my hand dirty on a hex-tile generator and a turn based system to match. It has pretty much spun out of control from there, in a good way. I find myself spending all my free time tinkering with it. So this is the early prototype in all it's glory.



As you can see, I've managed to spend more time on the earlier prototype I was working on. I manage to polish it up a little bit more, and get the AI to work. It's looking pretty decent at this point, according to a very satisfied developer. I won't lie, I'm immensely pleased about it.

However the gameplay is still a bit dry. Basically the player can only move and attack the enemies. There's a hit/miss/critical chance mechanic and that's about it.  There's no synergy between the unit, no unit or tactical ability or special attack, nothing. It will be very interesting to see how I can spice it up. And oh boy, I can't tell you how I looking forward to do just that.

The AI is also very basic this point. Each unit will just look for the nearest hostile target and move to attack it. But with currently limited gameplay, it's quite convincing none the less. If you fancy to give it a go, here's the webplayer (The game is very very basic at this point, you have been warned):

(q and e to rotate the camera, mouse wheel to zoom)

All the asset in this demo are made by myself. Except the explosion effect and the skybox. The explosion effect are part of the standard unity example asset for Shuriken ParticleSystem. The skybox is from AssetStore. The platforms are my latest asset creation, it's actually a tile set for mix and match. The texturing is still a bit under-worked at this point. I'll see if I can do more about it. I'll shed more details about it later.

It's quite unoptimised at this point, at least in graphical term. The tile are individual mesh and they have taken quite a lot of drawcall for some reason, probably due to the shader I'm using. The total drawcall hovers between 100 to 200 in run time after I run the combine mesh script on all the static environment object. It's fairly reasonable for PC I guess but not so much for mobile. Not really sure until I test it out, perhaps it will run just fine. So more thing to work on.

All in all, not bad for a less than a week work, ignoring the fact that all most of the 3D asset was made earlier. Did I say I'm very pleased with it?


Monday 10 June 2013

Weekend Break. Sort of...

Finally a weekend where I'm not tied down to any things. So here's what happen, I took the weekend off anything that I've been working on a regular basis lately and try something new. And this is what I've made in the past 2 days.




Obviously it's a simple top down - turn based - combat system with a hex based grid. It's a rather complete prototype with basically all the gameplay feature for such system in place, pre-start unit placement, unit selection, identification of various tile to selected unit (walkable, unwalkable, hostile, friendly), unit movement/attack, information display, turn-system, etc. Unfortunately I didn't quite manage to get the AI to work yet. Otherwise it would have been a nice little game.

The grid can be generated procedurally along with the walkable and unwalkable tile. The size and area of the grid can be adjusted naturally. And AI unit can be pre-placed in the grid generation phase. I was going toward a direction where I can go for procedural generated level. The different level layout in those image, took me only seconds.

Of course, there are still plenty of rough spot that I can work on, even as a prototype. Such as AI (obviously), better placement of AI unit, more intuitive way to setup level in unity editor (currently it's quite a pain to hand place unit). I would love to further develop this can see what I can come out with. But the main focus now is the AI. as soon as I get the AI working, I'll gladly put out a little game of this.

Overall, I'm pretty pleased with it. This is the first time I try to take on a turn-based strategy game. It has been a great fun!


Friday 7 June 2013

TDTK v2.2.2f1

A new hot fix version of TDTK (v2.2.2f1) has just went live on AssetStore. Well well, as usual, this is a usual fix that normally happen following any major update. But it's more urgent than usual because of a critical bug with the relatively new AbilitySystem. The bug almost render any addition/removal of the abilities useless. Thanks to Adam, a keen user who reported it to me, I manage to fixed it. Apart from that, I've also fixed some other issues. Not much in fact, just two precisely, all of which are ability system related.

I have also been experimenting with various possible addition. These efforts included modular building/props sets and modular tile set for construction of a more purposeful game scene, inverse TD game mode where player spawn units and guide them through hostile towers (with branching and selectable path), multiple upgrade paths and more unique passive ability for towers... Basically nothing short of either ambition and huge workload.

So far, I've only managed these as of the current submission. They are all tower related: chance to instant kill creeps with certain HP threshold, chance to by-pass shield, chance to stop shield regeneration permanently, and setting to inflict damage to shield only (no damage to HP).

In short, here's the change/update log:

addition/change
  • Added new options for tower stat (instant-kill chance, shield-breaker, shield-pierce, damage-shield-only)

bug fix
  • fix a critical bug with AbilityEditor and AbilityManager
  • fix bug ability effect aoeDamage where percentage damage will always be regard as straight damage value
  • fix ability button creation error with NGUI menu

Also, I will take this chance to do a shout out to Adam, acriticalStrike, Glenn Lusk. They have all left very positive review for me on AssetStore, which I really appreciate. Same goes for others who have done the same (I'm sorry I cant mention all so I will only do the most recent 3 entry). Many many thanks indeed, I'm humble by all your feedback and comment. I'm looking forward to do what I can to live up to your expectation.