Monday, August 22, 2011

The Collapse - A Ludum Dare Entry

I was participating at the Ludum Dare Game Compo this weekend.
I started on a basic prototype idea on Saturday afternoon, pondering about a concept. After a few lines of code i had a random generated maze out of differently sized cubes, and some enemy entities with a basic homing ai.

Very unspectacular
I kinda liked the physics based movent around the obstacles, but getting decently playable levels out of random generation is quite the effort, and i wasn't sure of success. So my decision was to develop an editor that is capable of designing custom levels.
While i was at it, ideas kept flowing in: different types of geometry properties like bouncyness or stickyness, moving platforms, and some more i didn't want to consider at that point. It is only an 48 hours compo after all.

So i started on the basics, having the ability to move and scale cubes to form a level, and advanced on editing features like rescaling or translating specific objects to not start over on a misplaced object.
Most of the work went into the editor, as the gameplay features were pretty simple and quick to implement.



In the end i am fairly satisfied with the result. I was able to implement all the features i planned for it, got a catchy tune, some ok'ish sound effects, and the graphic effects (apart some minor issues).

However there seem to be a few bugs in the engine, as i received some messages that it won't work, or crash on startup. I need to look into that.

Anyways, heres the gameplay video of the submitted version



While developing this i came to like the concept pretty much and i have a couple of ideas that can be implemented to have a more versatile gameplay; depending on the feedback i will consider making a full game out of it.

So yeah, thats all for now. If you  have questions, or if something doesn't work, please let me know in the comments or on twittor.

Download:
You can download the Ludum Dare release here.

I made a small fix that might cause a crash on startup depending on your systems localization. Also improving the Physics/game update, resulting in a better gameplay performance, and fixing the issue about not loading levels for some, also showing the goal model. I strongly suggest you download it instead the official ludum dare release!
Download the fixed version from Dropbox.

You need the .net 4.0 framework or better to run this.

Wednesday, August 17, 2011

Lullaby beta 0.9 release

Summary:
Lullaby is a portable minimalist lightweight (buzzword alert) Shutdown and Alarm timer for Windows.



It is pretty much feature complete and working, but only tested on my own machine. So if you encounter any problems, please let me know in the comments.

Features:
Alarm
Shutdown
Reboot
Hibernate
Sleep

Installation:
Not required. Extract into a folder and go!


Usage:
Select your time by typing in the respective boundaries (Hours:Minutes:Seconds), or hold the mousebutton down in either and drag up and down. Select your action from the drop down menu and press start.
 
You can replace the Alarm.wav file with a wave file of your choice, but don't rename or remove it, as it might crash Lullaby.


Download:
You must have the Microsoft .net Framework 2.0 or greater installed to use Lullaby.


Lullaby.exe

Monday, August 15, 2011

LameR beta 0.9 release

Summary:
LameR is a GUI for utilizing the LAME encoder for quick and easy access. It is lightweight and portable (though it needs to be set up for shell extensions). It features the most basic settings you need to convert wave files to mp3 format.

It is pretty much feature complete and working, but only tested on my own machine. So if you encounter any obstacles, let me know in the comments.

Features:
Lightweight
Portable
Latest artist, title, and bit rate are saved in a config file for quick re-encodings.

Installation:
Having the LAME binaries is mandatory to use the LameR.

Place the LameR.exe in the same folder as the lame.exe. (not necessary if you downloaded the bundled version)
Execute LameR.exe and press install. This will setup the Shell extensions in the registry.



Usage:
Double-click a .wav file to open LameR.
Enter Artist and Title and press Encode.

Alternatively you can right-click the .wav file and choose Open with, and navigate to LameR.exe to open the program.






Download:
You must have the Microsoft .net Framework 2.0 or greater installed to use LameR.


LameR.exe
LameR bundled (includes the LAME 3.98.4 binaries and is ready to go)

Thursday, August 4, 2011

Decisions

I just guess that's how life works.
You work on something, you enjoy it, you're looking forward to it.
Then you get distracted, you loose your focus and you get annoyed by it.

In my case it was a shift in priorities. I had to focus on earning money to pay the month's rent, and i resumed to play Minecraft which was a horrible time-waste in itself.

So yeah, now i am stuck with thoughts about what my next step would be. Working on the existing prototype, with no clear goal, or rather thinking up some concrete, fast-to-realize Projects, or even doing something entirely different.

Developing a game is a long journey and no matter how easy it seems in your mind, there will always be some hurdles you haven't anticipated, be it of algorithmical, logical or conceptual origin, or even interventions from the outside. And it doesn't help if you are good at distracting yourself with forms of entertainment, be it games, TV shows, and virtually anything that momentarily seems like a better alternative than being stuck on that one problem that just appeared.

While pondering what to write, and with the hope to come up with a solution to my uncertainty, i went through my different ideas and concepts and thought about how much time and man-power each would take, and how complex the realization would be.

What i think seems most realistic in terms of the most soon'ish implementation is a space shmup. Yeah we have a bunch of those already, i know. But there are people who enjoy those, and are looking forward to more and different kinds of them.
Furthermore it is easy, fast and straightforward to prototype and i can play with a lot of different shader effects. I reckon there is not much to be done in terms of research for technical or logical problems.

I still need to think it through, and sleep over it, talk to people and stuff, but i think that is the best bet i can come up with currently.

Saturday, June 11, 2011

Getting more interesting

As all so often there's a lot of things on my todo and i can't manage to focus on getting one thing done before starting the next, thus i am jumping around a lot of different construction sites.

So what i'm going to show you today is something i worked on a few weeks ago.
Behold inverse kinematics walking animation:



There are still a bunch of issues, like the elbows being all over the place, and the legs crossing at some points when turning around, but it works fairly stable

This prototype is pretty simple in itself as it only works on a flat surface yet. Eventually the model should be able to climb stairs and slopes similar to how a person would to it.

So why am i doing this?
Obviously because it's pretty darn cool. The other point is having realistic animations which are adjusting to the environment, without the need to have the animator design a bunch of animations for specific cases.
Another reason is the immersive aspect (as much as this word is misused nowadays, i think it fits at this point): Nothing tips me more off in game as terrible animations, starting at simple things like syncronising the movespeed with the walking animation cycle, or a simple waving the hand to interact with objects, instead of grabbing the doorknob to open the door for instance. It just looks like a poor puppetplay.

I realize that in the past it was not easily possible to implement it any differently due to performance restrictions and some other barriers. But we arrived at a time where graphics will only improve slightly, so to increase the realism(for lack of a better word) in games we need to focus on things other than the polygon count. Many studios realized that already and came up with a bunch of nifty features, such as Assassins Creed's climbing and user interaction animations, or LA Noire's captured facial and body animation.

This is currently a work in progress proof of concept. This attempt holds a lot of mathematical barriers to me, implementing restrictions for joints, finding the correct pathes to move for the limbs, reacting to outside forces and a bunch of more stuff. So i take this as an iterative process. I will improve it step by step to get a good approximation of what i have in mind eventually.

Friday, May 27, 2011

Not a changelog

No updates last week or this? Whats the matter, getting lazy?

Well, not lazy, but having different priorities. On the weekend two weeks ago i sat down with a friend, who is a concept artist, and knows a fair deal about game design, to discuss some game concept issues. The outcome was, that i had to get rid of my current concept, as is, for several reasons. One being over-ambitious (as always), and another one being the heavy competition in that genre.

So i sat down for a few days and thought about what i can come up with for an entertaining concept, and i think i got a pretty decent idea. There is not a lot of details worked out yet, but i could imagine it being quite fun to play.

Another thing that happened was Terraria. It is a cute little 8bit inspired platform game that takes off where minecraft is stuck currently.
In my experience, Minecraft was a fun game, but it was very very repetitive. Exploration was interesting, until you've seen any biome, or gathered each resource. Caves were all grey in grey, leaving you with an eyesore after a while, and all you got from it was a handful of diamonds to build another pick that would enable you to explore(or dig) even more caves. I really enjoyed playing it, but it got so boring that eventually i don't even consider playing it at this point.
This is where Terraria comes in. Despite it being in 2d, it adds a lot of depths to the gameplay. There is more exploring, less mindless digging, better rewards, more enemies, more ways to navigate through the map. And frigging bosses.
To be fair, after i found most of the items, and crafted the stuff i was interested in trying out, i put the game aside, but it still has some potential to replay. I think, i will wait for some updates, and try me some multiplayer.

Oh yeah, also we decided to make another demo for the evoke 2011 demo party in cologne, germany in mid August. So that's what i am actually working on currently. Can't show anything yet, because secret! You'll have to be patient and watch it on the bigscreen on the party, or afterwards on pouet. That means i can test the engine a little further, but i won't have as much time to work on a game concept, or prototype. I have to see how i will arrange my priorities, or rather see, how well we'll progress with the demo, and adjust the schedule accordingly.

Friday, May 13, 2011

Changelog 003

I mostly finished the work necessary for porting to OpenGL >3.
The model class got rewritten to use VBO's instead of immediate mode, and the imported collada vertices were changed to fit into the VBO's vertex structure. In retrospect, it was a straight forward process, even though there were some minor hiccups. There is still much to do, converting the actual existing code that is still using deprecated functions, but the worst part is done.

After mog mentioned he wants to code a 2d rotating ribbon effect, i thought about how i would realise it and today i was playing around with the shader realtime editor and built that oldschool 2d ribbon/twister effect, which is common in older demos.


I ended up playing around with the same code in the shadertoy and it ended up in a textured more dynamically moving twister thing (paste to the default Deform shader code and hit the compile button (or Alt-Enter)). You might need to manually enable WebGL in your FireFox about:config or use Chrome.