Impressed with JIRA Agile

Just wanted to emphasize how much I'm loving JIRA Agile despite us starting to use it only a few days ago. Being able to quickly and easily drag-drop tickets and organize them into bi-weekly goals (sprints) is a godsend, and I really wish we started using it months ago. I mean, I might be a bit biased since I'm very much a visual person, but wow. It actually encourages me to do more - really satisfying to focus in on a few sub-tasks and move them to the "Done!" section. Also pleased that the rest of the team seems to have embranced it as quickly as I have.

I'll have to follow-up in a few weeks on this to see how much it has helped the team as that's the real test. Look at all these colorful tickets in our sprint so far:


12/27 Update

Wow, time flies! Various things have been added since my last blog update:

  • Modules and modifying them via xml
  • Bomb-based effect deployment
  • Two phases of inventory versions, one using dropdown lists to equip items, and the latest version using drag-and-drop
  • Repair droid
  • Fancyness experimentations (interpolation for bars on the GUI -- sooo smooth!)

Currently I'm taking what I learned from inventory creation to create something similar for shops.

As for my partner, he's been busy with integration and refactoring the combat system so it'll fit into the navigation scene he's been working on. Basically the end result will be for combat to be triggered as needed (e.g. as a result of a player decision). It's been very enlightening to have another developer analyze my code and say what can be improved about it -- how else can a programmer get better? :)

Also, we're trying something new to better track our progress and to-do tasks. It's pretty cool so far.


Quick Update & Lots of Learning

Implemented the new and improved Effects system last week, in addition to starting work on modules/abilities. In our game, modules are similiar to regular equipment except that they have passive effects and abilities associated with them. I got a few abilities to work for testing purposes, but the system needs to be more robust to support different ways of representing abilities and the way it delivers effects. For example, the ability might activate a bomb that will apply an effect to all enemies on the screen. Or it might launch a few drones to attack them. I already had an idea of how I was going to implement them last week, but that has been moved to this week.

I've also been doing a burst of Unity tutorials to help me prepare to improve the visuals of the game, such as with effect systems. Unity Technologies has been releasing some really great tutorials on their site every week, and just recently they put up a video on particle systems. One thing that has been lacking lately is a good reference on all the customizable properties of particle systems, so I'm really happy they covered them in the video.

Lastly...holy cow, Unity 4.3 came out yesterday!! I'm especially happy about it finally having the latest version of MonoDevelop (love/hate relationship with it), but the 2D additions have been really awesome as well. I watched a pretty good tutorial on some of the new features last night.


Xml Support In!

I did a late nighter yesterday to finish up system states for equipment and xml support for enemies and equipment. Released a new combat build, and our game designer has started playing around with the many possible settings.

Plans for today:

  1. Do some cleanup work on the code
  2. Implemented some requested features for the next build
  3. Start working on modules feature


You know what I love about floats? 9.0 - 5.0 can sometimes = 4.00001! Gahh!

I spent most of my game dev time today reworking the code to gracefully handle float values. While I could have just converted everything to integer values, I wanted to maintain support for floats due to things such as critical hits (base damage x critical damage of 150%), which may result in a fractional value. After speaking to our game designer about this, I implemented a simple solution of rounding up at .5, else rounding down. The player will only ever see integer values despite some rounding happening in the background.

Tomorrow I plan on re-implementing system state logic based on the game design changes. For example, when a ship system is disabed, weapons will no longer be usable. If there's time, I can finally start on a long-waited feature: xml support! Once that's in, our game designer can dive in with modifying enemies and equipment stats, and see how much potential the combat has in terms of fun.