Easter Run Last Builds before Easter

Won’t be able to make changes this weekend so I uploaded the last builds for Easter Run.  Fixed some resolution problems, added an app icon and label, can’t remember what other changes I made.  Oh right, I made a last revision of the title screen sprite.


APK : http://www.mediafire.com/?w57say16b5lbmh3
JAR : http://www.mediafire.com/?z6z2zrq2x7gfxvj
Source@Github : https://github.com/westernarc/easterrun

Gameplay: Collect eggs and travel as far as you can to get the highest score possible.  You can unlock a pair of boots, a color-receptive basket, and a stopwatch.  Boots intrinsically increase maximum movement speed, the basket will amplify the score bonus for eggs collected that are the same color as the basket, and the stopwatch will slow time momentarily and is activated with a swipe-down motion.

easterrun19Played Ib and Antichamber lately.  I’d recommend both, just saying.


Unlock States, New Terrain, Bugs

Took care of handling unlocking the unlockables.  Last update they were just available by magic, but now you just have to pass score thresholds in order to obtain them.  Easy

I figured out how to align BitmapFont text to the right and center, finally.  It took faaaaarrrrrrrrrrrrrr  too long, but at long last I’ve figured it out.  It might sound minor but to me this was a major breakthrough lol.  Silly right?  In my past LibGDX projects, I would calculate the length of the string, then multiply that by the BitmapFont.getSpaceWidth() value, then use that to offset the text.  Of course, that didn’t work properly because much to my chagrin, not all characters are as wide as a space.  I thought the solution was to make the bitmap and .fnt file so that all of the characters took the same amount of space.  I’ve never tried anything like that so I opened up the .fnt files and saw a bunch of coordinates and thought for a moment that I should edit the bitmap to fit into a grid and then edit the .fnt file accordingly, by hand.  Thank god I didn’t do that.  I looked at hiero.jar and AngelCode’s bitmap font generator, then I looked at LibGDX’s Label class, then at last I went to look at BitmapFont’s getGlyphBounds() or something like that method.  That’s… what I was looking for this whole time.  You just give the method the string you’re looking to draw, and it’ll give you the bounds of the string.  I was looking specifically for the width so I used that.  By the gods, I felt good learning about that today.  Which made me think… I’m learning really, really slowly.

Right, so bugs.  Ummm, the speed and invulnerability particles aren’t being updated correctly.  Their position needs to be updated constantly, not just when they’re visible, so that they don’t get shown out of position for a split second right when they become visible.  At least, I THINK that’s the problem.  Another problem I just found on my phone, the egg shadows still show and the boots texture didn’t show.  I wanted to remove the shadows because in the alternate ground model I have planned, the ground is brown, not green.  It just seems easier to get rid of the shadows, which look kind of nasty when they’re flying around anyway.

What else is there.  What did I forget… No, I think that’s all I’m thinking about dealing with for now.  Easter is coming soon too.  About a week left.

Trying to get into C# and .NET dev, but I can’t even install SQL Server correctly.  That’s a big part of what I wanted to learn, linking .NET stuff to a MS SQL database, and it’s giving me a migraine trying and failing when it looks like it should just plainly work.

Can’t stop watching Pyrion Flax.  I really wish I had a British accent of my own.

Finished Implementing Unlockable Stuff

So the boots, stopwatch, and basket are ‘done,’ at least as done as I care to do them.  Wow.. did I do them in two or one day? I don’t even remember now, and I’m too apathetic to care.  At least, when it comes to figuring that specific fact out.


For the boots, it was a simple switch for ‘did you unlock the boots? if yes, switch the texture that covers the bottom legs with more brown texture.  Otherwise use the regular one.’  And for all of the maximum speeds, it’s just replaced with another constant that’s for top speed with boots.  Just as planned.


Basket was the one that was probably dumbed down the most.  Instead of the original plan, I just made the basket sprite and it will pick 1 of the 3 colors of regular eggs, red, blue, or yellow.  If you get an egg of the same color, then you get 80 points instead of the regular 10 points.  It counts up to 20, and then when you get the 20th color matching egg, it switches to a random color.  That’s it.


The stopwatch was pretty fun to make, if not kind of simple.  I just reduced the time-per-frame variable that updates most things, and set the landscape to a grayscale texture.


Just a few more details then I’m all set to … not work on this anymore.  Unrelated topic, it’s my Github account’s 1st birthday, tremendous.

Added Invulnerability Power Up and Turn Signals During Corners

Progress is a lot slower… and I think I’m going to take back all those additions I said I was going to make.  I really do want to finish making at least 2 unlockable objects though.


There’s a powerup that makes you invincible and go 2x maximum speed for 5 seconds.  There’s also X’s and O’s to signal where you should be for an upcoming turn.

Just had an idea.  I was worrying about how I’d display the unlockable items on the character model.  What I’ll do is just have them all modeled on the character, and the vertices are always there for all the items.  I’ll just swap the textures so that if the item isn’t unlocked, the texture will make the item transparent or otherwise not visible.  It’s a lot better than the other idea I had in mind.  Don’t ask what the other idea I had in mind was.

Still planning on boots (Higher maximum speed), a decorated basket (Multiplier on score for certain egg colors.  The multiplied color will change periodically and grant a sizeable boost in score.  How it’ll work is, you’ll need to collect 20 or so of a color within a time limit, and if you do, you get bonus points.  If you fail, maybe a small penalty.  Either way, when the time limit ends, the needed color changes), and a stopwatch that goes on a 10 second cooldown and makes everything move slower for 4 seconds, making everything grayscale.