The sabbatical

So it’s pretty obvious that the original game idea for simple storm front has since fizzled. Even if life did not get in the way, the idea was not really all that exciting to me. Mostly because I didn’t really have a good idea in the first place. Creativity has always been a struggle for me, and I’d like to be patient and wait till the right game concept comes.

I’ve been spending the past few months reading general game development articles, and picking up tips from more established game designers and developers. There are definitely some new concepts that I plan to take to heart. One of those concepts is that the code is definitely not as important as the game. As a professional software engineer, it’s hard for me to let that sink, but it is a must if I intend to complete anything of value.

During my time away, I did manage to port over my a subset of my sophisticated 3D graphics system from Verto Studio to c++11 (https://github.com/mlfarrell/VGLPP). Hopefully this code might help me when I decide to pick up the stormfront again.

I must say that I did indeed have a new idea over the weekend that I am truly excited about. It’s original, and has a style that I really think I can get behind this time. Time is the key concept, as I am promising myself to take it easy and not actually start this project until sometime next year. When that time comes, and I return, I hope to turn this blog into the primary outlet for all things simplestorm upon my return. Until then, let’s just hope these posts can serve as a historical premonition of something awesome to come.

Rewriting a 2D game in 3D

Game (mac only this time, sorry): http://vertostudio.com/pub/manman3d_latest.zip

Written using modern opengl core profile 3.2 and alot of shader hacks. The game “engine” is the verto core, the core routines I built my 3D editor off of. Surprisingly, the code is not that bad to make a game with. Some parts were downright convenient such as the “duplicate” feature and other editing routines that were never designed to be used on the fly inside of a game. All in all, turned out pretty cool and I wanted to share.

I obsessively worked on this until it was done, took about a week and a half. Hardest part was getting the damn skeletal 3D animations to work right. I cheated alot with the collision detection making everything axis-aligned because I’m lazy.

This definitely re-ignited my spirit for working on 3D games, even though I can never find the time to work on anything that’s an “actual” game-sized project.

The one that got away

Of all the bad games and not good ideas and storylines I’ve ever had, Hospital is the one I really think would have worked. Its crazy how hard I worked on that game engine back in 2005 for almost 2 years. I really put myself into it. It was inspired by my long-term dream and goal of making my own playstation 1 styled RPG game with elements combined from two of my two favorite games from my childhood, FFVII and Resident Evil 2.

Sometimes I wish I could pick it back up, but rewriting that engine is so much work that I’d probably have to abandon it again and this time sooner. Still, I reminisce…

I’m not dead

For anyone still checking back here, I’m not dead.  Just been pulled in 50 different directions lately.

I pulled up my simple storm level editor the other day and really felt proud of it, I’m glad to know it’s there waiting for me when I’m ready to make my next game.  It’s fluid and clean and ready to jump into whichever console I want to develop for next.

Anyways, I’ve made a bunch of video tutorials for those who know absolutely nothing about programming and want to learn how to make games, programming in C.

Here they are

First one:

Most recent one (find others in the related sidebar):

 

Background Noise

Various setbacks over the last two weeks have slowed down my progress on this project.  Finding time to work on it during weekdays is tough.

One thing I notice about me is that my “obsession” with programming seems to come in waves.  Three to four weeks of endless coding followed by a three to four week break when I’m more sociable and “in the real world”.  One thing that’s obvious is that going against the grain doesn’t work out so well.  It’s difficult for me to focus and work on game development when I am in a “social mode”, and I never want to go out and be sociable when I’m in a “introverted programmer mode”.  Most people seem to be permanently in one mode or the other, so I’m happy for both and I’ll go with the flow in the meantime.

I hope to pick things back up soon and post an update next week.  Once I push past the monotonous coding for saving and loading of physics properties, I’ll move onto something more creative such as hashing out the tentative “level 1″ from my previous designs.

Linux stuff

In keeping with the multi-platform spirit, finally did a test build on Linux tonight.  Apart from some major annoyances related to case sensitivity, building wasn’t too bad.  Ubuntu has made it really easy to install all necessary dependencies (clang, xorg-dev, SDL, freetype, etc).

                                                              Test run on linux

 

 

Re(para)laxation

If my soul had a home, I think it’d be on the water.

Two days at the beach gave me some great insight on how to finish my design for tentative “level 1″ and make it work.  I sketched it up in pixelmator using my stylus and I gotta say, designing levels outside of the development process is very fast and I finally see the utiliity in it now.  But I’m not going to post any design sketches just yet.

Awesome progress on the level editor warrants some rest.  I got saving and loading working pretty stable, and finally implemented basic parallax effects.  One of these days I’ll start working on undo as well, as it is annoying that I can’t make any mistakes without having to close and reload the levels.  Also updated the ios code so I can test the levels on my iPad.

Edit:  Inlined animated gif’s on the main page are super annoying.  Click here to see the parallax effect.

New Screens – Editor and Windows

Not much new to say.  Development picked up some pace but still is slow.  I added a properties panel to the editor that allows me to set blending modes among other things.  I also finally implemented basic layering.

I’m still racking my brain on level design and figuring out how to make the main idea behind this game work while remaining fun and easy to play.  Not feeling all that creative today, so I’ll tackle that another day.

A Darkening

This weekend has proven itself to be frustrating and difficult.  Trials and tribulations – I almost need them to remind me why I started making this game in the first place.  Sometimes life takes unexpected turns.. so unexpected that you wonder if you’re dreaming – and if reality is sitting back somewhere waiting for you to wake up.  Sometimes the dream, your current reality, is good.  Other times, it isn’t.  But our own reality, like dreams, can change as quickly as the weather.. and I think that’s what this game is going to be about.

Development progress has been slow, however I have reached a small milestone in that I can finally load XML level files back into the editor for the most part.  This is a crucial piece of development, so that I can lay ideas down in the form of levels and revisit them later.  Even with the help of tinyxml2, this is proving to be more complicated than I initially thought.  I’m more used to working with binary or JSON file file formats instead, but I’m taking advantage of this opportunity to learn XML.

There is still much to be done, including the ability to edit the background and foreground layers.  I’m intentionally leaving the default background color hardcoded to an ugly color, to force me to implement placing game objects on it sooner than later.

I also downloaded Pixelmator (sorry gimp) for the bamboo stylus and retina support so that I can start making more mock assets for the game.  My artwork is still looking pretty ugly, but I’m hoping to improve over the next couple months.