Unity Project Kickoff

July 3rd, 2010

Started on a new project working with the Unity 3D framework tonight… we’ll see how far it gets, but it’s worth sharing, or at least documenting this milestone.

So far I’ve invested about 2 hours into learning Unity (I’ve had it sitting on my box for about 1 year) and this is what I’ve got so far:

Unity Test Link

This link was great in getting started: http://www.unitylabs.net/tutorials/character-controllers/third-person-character-controller

See you again soon! Happy 4th of July!

Can you hear me now?

May 11th, 2010

I was watching television with my wife tonight and we muted the sound to hear the kids upstairs. And it dawned on me… television is really boring without the sound! So I woke up and added a sound… yes, 1 single lonely sound clip to Troll Encounter. Kudos to http://www.freesound.org for the sound libraries!

More to come, I’ve been invigorated. Time for some Picross3D then sleep… zZzZzz

Red Clover Regrown!

April 26th, 2010

Red Clover Games is back on-line!

After a brief downtime due to domain registration and finding a new host, the blog is back up and ready to roll. If you get this in your RSS feed, someone do me a favor and post a comment to know you hear me. (I don’t like to be alone in the internet, it scares me).

Oh, and I posted a minor update to Troll Encounter if you care to dabble (again). Hah.

See you all around the web!

Troll Encounter Tutorials

February 23rd, 2010

Forest Troll Encounter has been updated to include a couple rough ideas for tutorials. All in all, this took me about 30 minutes to flesh out, which isn’t bad. The engine supports some high level operations that I can chain together in different ways, so I made a new SuccessObjective and spawned a couple placeholder units (the tree). Maybe I’ll continue to add new encounters like this to teach the player how to play, which I think also adds a certain level of gameplay fun too.

Here’s some code for the curious:
This code spawns the controllable BlockMan
var blockMan:BlockManRed = new BlockManRed();
blockMan.Abilities = [];
blockMan.SetAnimationState(AnimationName.IDLE_NORTHEAST);
SpawnUnit(blockMan, new Point(160, 485));

This code creates the tree unit that becomes the Target to touch in the new objective
var tree1:Tree1 = new Tree1();
SpawnUnit(tree1, new Point(511, 228));
ObjectivesForSuccess.push(new SuccessObjectivePlayerReachTarget(tree1));

And the code for the SuccessObjective? Kinda simple, but cool to object-orient it this way.
public class SuccessObjectivePlayerReachTarget extends DungeonEncounterObjective
{
public function SuccessObjectivePlayerReachTarget(targetUnit:Unit)
{
_target = targetUnit;
}

private var _target:Unit = null;

override public function EvaluateObjective(encounter:DungeonEncounter):Boolean
{
for each (var unit:Unit in encounter.Units)
{
if (unit.NPC || unit.Neutral)
continue;

// A playable unit has reached the _target unit's hit shape
if (_target.HitShape.hitTestObject(unit.HitShape))
return true;
}

return false;
}
}

If I put more effort into this, I think it would come together a lot faster, but I’ve lost some steam.

Also in serious need of syntax highlighting if I’m going to be posting code…Alex help?

Defrag from NoDiceRequired

February 8th, 2010

Ever actually wonder what defragmenting a hard drive does?
Ever have the urge to actually defragment a hard drive?
Think you can defragment better than your computer?

My good friend Alex over at NoDiceRequired just published his Defrag game to Kongregate.  It’s a fun little journey through the mind of your computer, filled with commentary trying to defragment a hard drive.

Give it a go on Kongregate and give it an honest vote!
5/5 for me.  Nice job Alex.

The Learning Curve

January 27th, 2010

I’ve been reading, and thinking, and evaluating feedback from people about Encounter so far and I wanted to express my thoughts on a particular topic that I think can be generalized to most Flash games.  In fact, I think many flash game developers deploy this tactic to keep people interested, but I haven’t invested the time in Encounter to deploy it.

The aspect I’m talking about is the Learning Curve.

Too flat and people stop playing because quite frankly, they’ve seen it all done before.  There’s nothing new.  Too steep and people are confused and quit because it just doesn’t make sense or they didn’t know how to play.

I’ve read this in several blogs, but in the flash game community, players are very quick to close the window, down-rate a game, or find something else if they are not immediately captivated.  There must be some form of motivation to keep them enthralled and keep them playing.

There are several things with Encounter that I’ve noticed or been told:

  • Only 1 player (aside from myself) played through Endurance Trials to the finish and achieved a high score. (that’s 1/700 plays)
  • The controls are hard to understand.
  • Watching people play, they don’t use abilities.
  • I broke the number 1 rule and reason why I usually close complicated flash apps.  Big. Wall. Of. Text for instructions!

Now, I have a lot of ideas to resolve some of these major issues, and I’ve had some of them planned from the beginning but in the interest of time, I pushed releases without them, so it’s time to start looking at them.

Teaching Players How To Play
So how do we teach a new player how to play a game?

As I mentioned before, one of the biggest peeves I have with flash games, is getting hit with huge amount of text that I have to read to learn how to play.  I am a hands on learner, so I like to play with things I’m trying to learn.  I also think pictures are worth 1000 words (to be cliche), so providing a visual cue would be much more beneficial to me than a wall of text that I may choose not to read.

Point #1: If you have to use text to explain the game mechanics, keep them brief or use visuals instead.

So referring back to the learning curve, the current learning curve of the released Encounters is so steep it’s like walking into a brick wall, instead of climbing a small hill.  The player is immediately thrown into a scramble where they have to learn the controls,  learn the  mechanics, and survive the encounter at the same time.  Now my initial concept was this:  Let the player keep trying over and over again until they defeat the encounter.  Poor design choice.  This translates to frustration and immediately giving up, which you cannot afford in the flash community.  The only place in gaming that this holds merit are for hardcore, dedicated fans that are familiar with the mechanics already.  Consider being thrown into a new MMO with a max level character and told to survive.  You know nothing about the abilities, the mechanics, or the controls for the given game, so it’s going to be very frustrating.  It takes a very dedicated person to really learn all of this, just to play the game.  This is simply unacceptable in the casual game community.

Point #2: Introduce concepts gradually.

So instead, a slow progression should be used to ease the curve, introducing new concepts, controls, or mechanics slowly, 1 at a time.  This sounds easy, but I think the key to making this work, is to make it fun.  Learning should be a fun part of the game, not a boring book to read, just to be able to play the game.

So one of the future goals for the next Encounter is to do this.  Teach the player how to play the game in a fun way.  Fortunately, the architecture of the game will easily support this.  At this point, it’s a design problem where I have to create fun, isolated encounters to teach the player how to play the game, preparing them for the final challenge.

Point #3: Make learning fun.

I think I have a few more points to discuss, but the cold I have is slowing me down and I’m growing tired.  Look for some of these new concepts to be implemented in the next release of Troll Encounter.

Visual Progress

January 19th, 2010

One of the biggest things I enjoy about developing my own game is the artistic aspect. I love playing with Blender and even though I’m certainly not a pro, I have fun modeling simple objects. I’m also quite partial to the Cell-Shaded style of graphics, if that wasn’t apparent by previous images.

Anyway, tonight I made some progress on the visuals of the encounter design. Check out this side by side comparison of concept sketch to current implementation! We’re getting there!

Concept Art Coming to Life

Concept Art Coming to Life

Troll Encounter Sketch

January 11th, 2010

Enough roots…here’s a new conceptual sketch of the troll encounter I’m designing for the next Encounter. Check back for a playable demo!

ForestTrollSketch

Roots

December 27th, 2009

Over the holiday break, I’ve been thinking of several game designs, capturing a few of them in google docs, updating some old ones, and I thought of one that I think might be interesting. I have to work out lots of the details, but I put together a visual to drive my creativity and design.

More to come on this design later, but for now, enjoy the visual.

Roots Screen 1

Encounter is live!

December 21st, 2009

Well, I didn’t get all of the features I would like to have in the first game in the Encounter series, but it’s live in time for Kongregate’s Stride Long Lasting Game Challenge. If nothing else, this will give me some feedback to churn on for the next game.

Everyone check out the game here: Encounter: Endurance Trials on Kongregate
Make a Kongregate account, log in and give it an honest review!

A huge thanks out to Alex at NoDiceRequired for play-testing and providing great usability feedback.

Cheers to everyone following this blog… this is just the beginning!

- Josh