1. Now with Project Management

      written by Ray Benefield
      Another week of Aggro Tactics stuff. I fully clean installed Windows 7 onto my computer to clear it of virtual guck and it is working out SOOO much better than it was. And prior to that I couldn't load up Unity3D so I could do no actual coding. Well with that install I am now able to use Unity3D again. Totally pumped. Today's topic is on the Project Management of Aggro Tactics... this is a HUGE change from what I did with the last version of Aggro.



      What is it?



      So what is Project Management? Well... exactly what it sounds like. It helps manage the project as a whole. A lot of indie developers jump into coding right off the bat, maybe do some design work, and overall just doing things in a fairly unorganized fashion. Which is fine if you are solo developing or developing with a small team. But without project management, there will be times when people step on each others toes, or they have to wait an arbitrary amount of time for a particular feature, or perhaps they forgot to implement a particular feature or write a particular document. Project management helps all of that. By utilizing project management software, I'm looking to provide a structure to the development of Aggro Tactics.



      The basics



      So right now I've got Aggro Tactics setup as a project with Unfuddle.com. Unfuddle offers private project management at free or a low price. I currently only need free, but in the near future I'm sure I will need to upgrade to the $10 a month plan, which still isn't bad at all. What Unfuddle provides me mainly is a ticketing system. For those that don't now Tickets represent tasks that need to be completed, bugs that need to be fixed, feature requests, etc. They are a way to manage tasks across the project. Each ticket contains a priority, a milestone, due date, component (what part of the project it affects), a comment system, and much more. You can even associate tickets to each other by making them a parent, or child, or just related.




      Above is a quick screenshot of the Active Tickets for Aggro Tactics, as of early yesterday morning (it has already changed quite a bit). Ticketing is a very major part of typical professional software development. It provides a way of communicating and organizing things that need to get done. I like tickets a lot. They are a very achievable reward. They give a great sense of accomplishment, while also providing a paper trail. Being able to comment on each ticket allows a sort of forum thread for each task which is exactly what is needed a lot of the time. I try to create tickets for any task that needs to get done. For example I created a ticket for re-loading my computer. Why? Because it was a crucial task that would allow me to work with Unity again. I've even got tickets created for each of these developer blog posts so I never forget to do them and completing one gives a sense of accomplishment.



      Version Control



      Another key feature that Unfuddle offers is version control for documents, code, assets, etc. Version control is another one of those great logging tricks. Version control leaves a paper trail and allows you to go back and see what has happened over time. It solidifies everything little task that you do. The great thing about Unfuddle is that there are what is called powerful commit messages. Basically you can "link" a document check-in with a ticket so that the ticket can access that version of code and that code can get to that ticket. That association is very powerful... especially when you are working with a team.



      Development Team



      So this is the major reason that I decided to setup project management for Aggro Tactics. I want to be able to bring in other people to work with me (not for me) to create, what I think would be a great game for those who enjoy strategy/tactical games. Project management software allows the team to work as a whole and communicate. It provides a very specifically structured forum for development. I'm hoping to start taking on developers to start working with me soon. I want to setup an ok base for people to jump in and start working with the code. I still need to create some startup wikis for developers. You know things like, this is the software you might need, this is a dictionary of terms to be used, this is the rulebook we are following, etc. I still have some key details to work out before I start adding people though.

      Adding other people is going to be a hard thing to do. Letting others babysit and help raise your baby is a scary thought. I'm hoping that I can effectively communicate my vision for Aggro Tactics to a team of people who have no idea of what the game will be like. Developers will probably be the first to be added. Followed by a couple testers/support to officially hunt for bugs in builds that exist so they can be taken care of as we develop. Of course before that I'm going to need to make a "Creating Tickets" wiki... hmmm. Lots to do. Off to go complete more tickets!!! Count this blog post as another down. ;) Also my goal is Combat details for next week... *crosses fingers*