Then Suddenly You Think You’ve Accomplished Something

This past week I’ve been lazy and complacent but mostly lazy. I set out to add more content to the game, mostly new types of enemies. I’ve had this idea of “compound enemies” where you basically form one bigger enemy from other enemies. Then you could make traditional end-of-level-monsters, which would have several different weapons to be destroyed piece-by-piece quite easily. And so, adding playable content led me into tweaking the functionality as well. We’ll see this Friday what I’ve managed to come up with.

At TIGforums there’s one brave individual who’s determined to make one game a day throughout October. Since I don’t currently feel that I fail often enough, this has given me a similar idea. I’d spend November, not just failing at growing a beard, but also making one new enemy per day!

Before that, I really really really have to get the functionality to a level that I didn’t need to spend time working on it.

Marketing Is Not Optional

Last Saturday I published Goldwingu v. 0.20 without even remembering to make a post about it. The reason was that I wanted to make a post on Reddits /r/gamedev subreddits Screenshot Saturday thread and was busy making everything pretty. Subsequently my post was buried under the pile of awesomeness of other fine Indie games. I did manage to make a video, and even upload it to YouTube, action which removed practically all detail from the video.

“Marketing is not optional” goes the old Indie wisdom and I can hardly do any worse from here.

Next iteration will focus more on adding playable content. I will try and see what the current platform can accomplish. Adding content (such as different types of enemies) always leads to ideas to add to the platform as well. I guess what you can learn from this is that if you ever get stuck in your game development with not knowing what you should focus on next, try honing the game side of it. Add something new, change the balancing or reach out and acquire outside feedback.

On the other side of things worth mentioning, I found out I have a copy of Garage Band in my old MacBook, which might prove useful in crafting some music, although I didn’t manage to get dirty enough guitar out of it. ZZ Tops Ninja Shack opening chords dirty that is.

Maybe I should just do some GIF-animations of different explosions.

Limbo is Awesome and I Hate It.

I went ahead and bought the 9th Humble (Indie) Bundle as a belated birthday present for myself. HB9 carries some heavy-weight names such as Fez, Bastion, Limbo and Mark of the Ninja (among others). It would be easy to make the claim that Indie Gaming is rapidly turning into a superstar fueled business where those already well-known games getting more attention.

I am sure the truth has more shades of gray than this, partly because I’m at the bottom rang of that Indie Game barrell. I’ve got nothing to show for myself but my game, with no industry connections, with practically no skills whatsoever. Outcome looking grim. Better step on the gas.

Then there was re-factoring. I have been pounding my head to the desk, trying to get my label system working as I want it to. Labels are practically just text imposed on the screen, what I’ve been doing about them is very low level and nasty. These labels have or are planned to have the following characteristics:

  1. Labels can be combined together to make new labels (e.g. Component name + it’s condition shown in the Tactical Display)
  2. They are read from the disk and transformed into an array of Atoms, that can be chugged for my existing drawing routine without major changes.
  3. Some effects are applied, where necessary.
  4. Should be dynamic, i.e. the Label describing a component name + it’s condition can be changed easily.

#4 has been the headache inducer for me. Where should the combining and updating of Labels be handled? As I write this I get a feeling that Labels should be immutable but their appearance should change as needed. You’d have them stashed in your Model, with a reference in your View. Should be easy to update all the player related stuff (namely TD) as well as other GUI stuff. You’d have static helper class for some manipulation stuff (such as combining labels together).

All I need is at this stage is one way of doing it that you can beautify and trim later on. I hate being stuck in a rut like this.

Making Your Solutions Beautiful

The benefit of being a total amateur is the amount of learning and finding out how to do stuff in a better way. This week I’ve been re-factoring my god-awhul mess of a drawing routine and it’s slightly less ugly now.

Naturally when you touch software somewhere, it almost invariable allows or demands changes elsewhere as well. In these occasions I’ve noticed that usually doing things The Right Way forces you to do things The Right Way elsewhere as well.

My main nemesis this week has been OpenGL and my inability to get Alpha blending to work with GL_POINTS with using glBlendColor. This is such a minor detail, but as is probably familiar to most devs, it drives me crazy because it should work the other way (with glColor4x) too!

Making changes to my drawing routines has caused changes in some of the datatypes I’ve made and it will probably cause an overhaul on a number of GUI elements I’ve made. I should have plenty of time to take it apart and put the pieces back again, better this time, before 27th, which is the release date for the next version.

Happy Birthday! You’re Welcome!

A less than week ago I had a small party celebrating a pre-alpha launch of Goldwingu. Of course the time when a software hits an alpha stage is left to anyones guessing but I think it was nice to have a certain date set for you. Progress has been rather slow and sometimes you just need to drudge on to see where you should go next.

I also thought about my definition of “Done” and I came to the decision that I consider this game to be ready when its in sale in Steam (or suitable alternative), after which the Launch Party proper can be held. I also decided to give some pledges, to maybe help myself get there sooner:

  1. No alcohol after 14th of September (you have to celebrate a bit…) until it’s Done.
  2. One climbing session more each week until it’s 5 per week until it’s Done.
  3. I will write once a week on my blog about my shenanigans in the world of indie game development.

I was almost certain I thought of more, but thats it for now.

Today I released a new version of Goldwingu, to celebrate my birthday. Unfortunately sound support had to be dropped because the samples I was using didn’t allow re-distribution (even though they were otherwise royalty-free). Most changes are under the hood, but do have a go and see for yourself.

EDIT: Added third pledge.

Release: Goldwingu 2: Episode 1; Means to End v.0.17

Back at the lathe! Enjoy the new version of Goldwingu 2: Episode 1; Means to End v.0.17 [3.82MB] is very much out!

In this version:

  • Upgrading weaponry now much easier. Speed, quantity and power of shots can be upgraded by earning medals. Powershots are upgraded by receiving the same medal 5 times.
  • Dash-function added. Hold down the quick-change key (shift by default) to gain a boost for your speed and weapon re-loading.
  • Added an enemy wave to demonstrate compound enemies. Compound enemies are waves where individual enemies are tied together through parent-relation.


Release: Goldwingu 2: Episode 1; Means to End v.0.15

Just in time for your weekend: Goldwingu 2: Episode 1; Means to End v.0.15 (3.81 MB) is ready for your entertainment.

In this version:

  • Added Drone to the arsenal. Drone better.
  • Tweaks:
    • Movement speed
    • Choose-your-own-scenario now allowed without completing Scenario 1.
    • Completing Scenario 1 gives you Drone.
  • Some bug fixes: all keys now allowed for action binding (previously e.g. SPACE wasn’t allowed) and players ship is now shown orbiting the right planet.