Jimmy Chattin - I make better games.

Saturday, February 9, 2013

I Make Games!

Make More Games
Global Game Jam 2013 came and went like a bang.  In the aftermath, however, I gained some insight into what I do.  And what do I do?  I don't make enough games!  What is a Game Designer to do if he doesn't make games?  Well, it's time to fix that!

With a new fervor, I now design a game every day, with thoughts to the distilled premise of the idea, ways to implement the game, and considerations or questions to take into account.  I won't bore you with every idea I come up with, but details of which games I pursue I hope to share with you.

Here's the first game that I've started to play-test.  It is a mod on Chess, where 2 8-sided dice are rolled; one is the row of the Chess board, the other is the column.  Originally, the rules were that the 2 dice were rolled at the start of each player's turn.  Whatever piece was on the tile rolled was removed from the game, regardless of who rolled the dice.

Then, there was carnage -

Game 1 saw the Black King get taken by a die roll at the start of Black's turn.  Game 2 had White put Black in checkmate because of a roll.

At this point, a modification was made to state that if an enemy King was put in check by a roll, that King could not immediately be taken that turn.  In addition, there was a suggestion made to include 1-8 and A-H indicators on the side of the Chess board to better assist in determining which tile was rolled.

Game 3 had White Queen put Black into check, next turn to be checkmate, but Black's turn rolled the tile of White's King, thereby ending the game in victory for Black.  This move resulted in another modification: rolling the tile that holds a King doesn't remove the King, but just makes it so that the King cannot be moved on the turn it was rolled.

The final game was the first game to effectively end in checkmate.  However, White was utterly decimated nearly every turn by having rolls remove White's pieces one by one.  But, with that, a like/dislike interview was conducted.

Like: There is a great random-chance potential to really alter the strategy of an opposing player by the die rolls.

Dislike: When luck is against a player completely and utterly, the one-sided nature of the imbalance is quite glaring.

Some final thoughts of mine would have to be to mod the game to make it so that a player cannot remove their own piece if a tile they hold is rolled.  Another mod would be to not allow the rolling to be done until either the first piece of the game is taken, or that a King or Queen wouldn't be able to move for a turn if one chose to roll.  Lastly, it was suggested to not allow the Queen to be taken by rolling, which makes the sense to disallow all forms of random-chance regicide.

Well, tell me what you think!  I will likely play this game of Chess again; afterward, there are going to be plenty of other games to make.  Wish me luck, and take care of yourself.



Who makes games?  Who wants to make more and better games?  This guy!

Let me know if I'm on the right track or anything...

Monday, February 4, 2013

1.31.13 - A Fury Void Update



Team Fury is now starting to wrap-up the software additions to Fury Void.  Final features are being implemented, with the three main points of interest being: enemies with AIs; Xbox controller support; and saving.  However, there has been much done in the past few weeks, and those bring Fury Void closer to completion in a very fast way.

Firstly, an energy system has been added to the game to allow for a stricter balancing of what the player can do at any one time.  ‘Energy Balls’ now serve to replenish spent energy if the refresh rate is not adequate enough.  With the new energy system, weapons now have a cost to fire, while the feature leaves open the possibility of abilities such as speed-boosts and shielding.

Since the energy system has been implemented, Team Fury now has a member nearly completely dedicated to finding a balance of weapons.   Damage, firing speed, and energy consumption are all taken into account.  The weapon systems are still undergoing changes daily, but it should be settled upon an increase of QA testing.

In regards to balancing the weapon system of the game, Team Fury has gone in and redone the laser weapon for the player.  Previously, code would only occasionally allow for an object to be harmed by the laser beam.  Now, damage is incurred by the objects the laser effect produces all of the time.

Other changes to weapons include the auto-firing of the in-game flak gun.  It now shoots a stream of bullets, making it so that, when it was first implemented, convinced the entirety of Team Fury to use the ‘bullet hose’ exclusively.  The same code will be implemented with the laser beam, and may alter the missile scripts at a later date, but this new feature now requires extensive balancing.

Lastly, weapons no longer damage the player.  The lead coder on Team Fury discovered an inherently simple, but otherwise unrealized feature of Unity during a local Game Jam event.  The discovery involved placing an object that took collisions and an object that generated other items (that would otherwise collide with the collision taking object), and place them both on the same layer.  That way, through scripting, when a ‘bullet’ would be created, it would not strike either the thing making the bullet, or other bullets that had already been generated.  This is a big break-through for the team, and will be utilized to the fullest.

To clean-up the mess of C# and Javascript code files inside the Unity project folder of Fury Void, the lead programmer on the team has converted nearly all C# scripts into Javascript equivalents.  Though this was not a pressing change, it does lead to better documentation of what certain code does, while also allowing for certain code blocks to be combined.

In making the sweeping switch of C# to Javascript code, explosions now do minor damage to the player.  This is to discourage a too-tight of engagement of the player with objects in-game, while also bestowing a sense of power to the player in the regard that their actions have very intense consequences.  The extent of what is appropriate for this damage is as of yet unclear, as reshaping the play-space is currently undergoing discussion.

To play Fury Void, previous QA sessions came-up with a recurring necessity: the player must know how to use the controls.  Therefore, a control menu was top priority these past few weeks in considering what needed to be done.  Such a menu is now it, and even is prepared to show the controls for an Xbox controller when the code for the controller is finished.

Other menu changes involved the inclusion of a menu for the player to customize their ship and the load-out they take with them into play.  A ship-switch menu has been added, but it takes a long time to load initially.  This load-time is caused by having a roster of ships now added to the library of assets in Fury Void.  Due to the wait the player faces, another screen – a loading screen – is on the list of soon-to-dos for the team.

Further aesthetic change comes in the form of showing the boundaries of play to the player on the in-game minimap.  Prior builds of Fury Void did not show the player if they were reaching the edge of game space visually (aside from a small warning message).  Through testing, a visual cue to let the player know where their play-space was at was deemed necessary for addition.  A consequence of this feature is that it is now shown just how big the play-space is.  Plans are now in motion to reduce the field of play to encourage a faster pace of action.

Finally, there was an issue with some builds of Fury Void in that the menu screen would at times be cut-off at the edges if a player resized their screen or chose a resolution that was not accounted for.  This is now being handled by specifying what resolution the game can be played in through Build Settings provided through the Unity engine.  This likely will lead to fewer headaches from those generous enough to play-test the game.

Team Fury is approaching Beta fast, but there of course is more work to be done.  To get access to the alpha build, please email furyvoidgame@gmail.com, visit Fury Void on Facebook, or talk to one of the Team Fury members.  Any and all input is greatly appreciated!

P.S. On a lighter note, Team Fury ‘discovered’ moons in the game.  Though moon objects had been added and implemented many months ago, that fact was largely overlooked by the entire team.  Just recently, during a reworking of the code due to an SVN loss, Team Fury was made ‘aware’ of their presence again, resulting in a hunt for how/when moons were put in place!

And, a look at next time:


Wednesday, January 9, 2013

Small Team Dynamics in Fury Void



Something to discuss this week is the intimate look into small-team dynamics that Team Fury must face.  No student team could ever be contrived to have the hundreds of souls that work on typical AAA games; heck, breakthrough games have been made on the skills of a single coder!  But in terms of big and small, there are vastly different ways that those team sizes effect game creation.

Fury Void is being worked on, by all accounts, what could be considered a small team.  A 4 man team of part-time game creators leads to many interesting group outcomes; some are good, others could be better.  So, let’s start with areas of improvement.

In the past semester, getting Fury Void worked on (in terms of man-hours) has been a trying affair.  Every person is resigned to work 8 hours a week, with those hours being more or (likely) less during any given week.  However, despite being such a small group, it is my feeling that more quality hours of work have been put into the game past that of other project teams.

That leads me to address the cost of laziness.  I make no exception for myself, and I leave none to the rest of the Fury Void team.  Having a lax day happens; there’s no getting around it.  But, when such an easy-going day arises, harsh impacts are felt on Fury Void’s development.

Even if it isn’t a fact of lethargy, being such a small team, any sickness, travel, or unforeseen situation is murderous to the release schedule.  Entire weeks of work are pushed back in the release window due to events coming-up that ruin work-times.  Though some accommodations and rescheduling is done, it can’t keep up with unforeseen circumstances.  Not even close.

Speaking of schedules, accurate time estimates are the ‘Holy Grails’ of game development.  Fury Void is hampered often enough by either a bug or feature that defies the skills of the 3 programmers on the team (and every forum post on the net).  These issues frequently lead to complete a reimagining of what is to come for Team Fury to develop.

The last ‘negative’ comes more from the structure of the academic course, but the consequences are extreme for the team itself.  This namely deals with the ability to ‘hire’ and ‘fire’ assets for the team.  Therefore, if additional work is needed to be brought in, the course makes it difficult to recruit new developers.  If a person needs to be let go, either from their skills not being needed any longer or that they have become a detriment to the team, they must remain on.  This, more than anything else, has been the largest hamper on both Team Fury and groups that I’ve worked in previously.

But now, some good things of having a small team!  With only a few individuals, getting meeting and work times together is a breeze.    Only 4 schedules are needed to be worked around; in contrast to 10- or 12-person teams that rarely see a true stability to their schedule.

With the regard to being easily brought together to meet, it is very easy to get to know a small team.  As a project lead, I’ve come to know the strengths, weaknesses, mannerisms, and work-ethics Team Fury provides; every person working on Fury Void knows what everyone else is able/looking to do.

Furthermore, if someone has an idea to add to Fury Void’s development process, pitching that idea to 3 others at one time versus a half-dozen others at various meetings is a whole lot easier.  This fact engenders a lot more investment on the part of the team into the project.  Every feature worked on has been developed, in part, by every person in the group.

Finally, having such a short-coming of personnel for Fury Void has helped reign-in scope very early.  Fury Void was originally pitched with a ‘doable limit’ in mind, but only 4 people working on it was never considered.  Therefore, with our numbers as justification, scope has always been taken into account before anything is carried out in Team Fury.  That has and will serve Team Fury very well throughout the coming months.

Small teams have some nasty, terrible qualities, but they also have some great advantages to larger groups.  In this experiment of numbers going against time, Fury Void will likely be better because of having such a low unit cap.  Team Fury is full of surprises, where I’m sure to learn a lot in how to make games.