stigrv

LD20

New guy cometh

Hi there.

This will be my first try at a Ludum Dare competition. I did a small entry for the last MiniLD, but now I am getting ready for the real deal… I will be working from Norway, which makes the timeframe of the competition a little less than optimal. I will be getting up at 4 in the morning at saturday to join in at the beginning. I also got monday off at work so that I can sleep out. To make matters even worse, I will be attending some meetings during saturday. Hopefully these obstacles will not stop me from making a good game during the weekend.

My weapon of choice will be as follows:

  • Language: JavaScript
  • IDE: Eclipse
  • Framework: ImpactJS
  • Graphics: Photoshop
  • Sound: SFXR / Audacity

Best of luck to you all !

The techs behind LD #20

Out of curiosity I started making a spreadsheet listing the technologies the participants has announced that they are intending to use for the upcoming Ludum Dare #20. I wanted to see what programming language most people were using as well as what tools were popular. I thought I might as well share it here, as it might be that others would be interested in these statistics as well. Please note that this document is not intended to be a perfect list.

https://spreadsheets.google.com/ccc?key=0Aqy7UlRVC35zdHlLRUJBejNfUll0VnZIa1J3OWJ5cXc&hl=no&authkey=CO_itvIL

I read through a lot of posts to make this list, and it made me be even more geared up to this weekend.

Nitro Racer game idea

My game will be called “Nitro Racer”. This will be a post-apocalyptic racer with a twist. Not only do you have to win each race to progress, but you will also need to keep close to your opponents during the race, or you’ll die. “Keep your friends close, and your enemies closer”.

Here’s a teaser story-card:

Story card for post-apocalyptic racer

As you can see from this image, I’m not an artist. I will try to aim for a comic graphics style. Now on to make some tiles for the tracks..

Nitro Racer update

Note to self: try out the tools you are going to use next time. I’ve spent more time than neccessary trying to learn new libraries and tools for this game, but I am finally getting somewhere. Now to get some dinner.

Post-apocalyptic particles

Shiny particles. I’ve finally nailed the gameplay mechanics, and the game is finishable logically. The two lines drawn here links to the other two cars, and show the status of your connection with your opponents. When you are too far from your opponents, you start to loose health. I will start to work on glue between levels and see if I can cook up a few more levels.

Finished

My game Nitro Racer is finally ready. Or at least as ready as it will be for this competition. The local internet provider is going to shut down internet around here for the next hours, so I’m signing off now.

Mini LD #26: Gold Down under

Gold Down Under mockup

Name: Gold Down Under
Description: Bejeweled clone where you dig down into the earth by combining similarly colored tokens. Clearing the top row will allow you to take a step down into the dirt, where you might find gold if you are lucky.
Themes: Descend, Demolish, Destroy, Detonate, Dig, Dirt, Drill, Dynamite
Done:

  • At least three levels
  • Player wins when the predefined number of rows has been cleared
  • Player loses when the timer goes out
  • 100% less blocky graphics than the mockup
  • Some eyecandy

 

LD21

Global Warfare

I’m doing some progress on my little game for this MiniLD. The game is still a little bit rough around the edges, and there isn’t much gameplay there yet. You can try the game as it currently stands here:

http://www.vangen.org/javascript/global-warfare-compo/

I will work more on it tomorrow, adding some polish and sound effects. I would also like to add more gameplay elements into the game, but I don’t think I will get the time to do that within the timeframe of this competition. What this game needs is more weapon types and a research tree in order to give it a bit of tactical gameplay.

Submitted Global Warfare

Please note that I wrote “submitted”, not “finished”. This is how far real life allows me to take this entry:

http://www.ludumdare.com/compo/minild-28/?action=preview&uid=3796

I don’t really like how the interface turned out, but it stands as it is. If I find time between my other projects I might work some more on this game in the coming weeks in order to make it more into a fully fleshed out game.

 

 

 

I’m in for LD21

This will be my second fullblown dare, and I really look forward to it.

As I’ve done earlier, I will be writing my entry using JavaScript. I will most likely be using ImpactJS or Three.js for my entry depending on the theme and what game I will be making. I’ve learned from my earlier mistakes, and will not try to learn a new library for this compo. I will also be using Paint.NET for graphics, possibly Blender if I go 3D. For sound I will be using the awesome BFXR. Music will most probably be generated using Wolfram Tunes, simply because I suck at music. If I get to make an explosive game, I will also be using the Explosion Generator. I haven’t used this tool before, but it looks promising.

Good luck to you all !!

Tags: bfxr, blender, explosion generator, impactjs, javascript, paint.net, three.js, wolfram tunes

Escape from Castle Puzzlestein

Escape from Castle Puzzlestein concept

This is a quick mockup of the game idea that I came up with. It’s a mix of the good old Wolfenstein game mixed with some puzzle element. Basically you step through the maze using elements from the palette at the far right. Just left of it you see you current selection. You then execute the sequence of moves in the hope that it will result in your escape from the prison. When you playback this sequence of moves, you’ll see it replayed in the game world on the left side.

Tags: concept, mockup

Puzzlestein first progress

The first few steps are done. Basic renderer works with a randomly generated level.

Tags: progress

Epic Meal Time

Today’s dinner: Bacalao. (Spells differently in Norwegian and English)

Puzzlestein end of day 1

End of day 1 progress update. The gameplay foundations are working. It is possible to drag operations from the palette at the right into the queue next to it. The idea is to avoid the guards in the maze and find the exit. Not sure if I will implement fighting back, or if it should be just a sneak-em-up.

Tags: progress

Puzzlestein progress update #3

Enemy AI. CHECK. Multiple levels. CHECK. Sound / music. CHECK.
I want more gameplay elements in there, and is therefore adding pushable crates. Will hopefully be able to finish that before the deadline.

Tags: update

Puzzlestein Postmortem

This was my second Dare, and it was just as fun as the last one. I learn a lot from this process, and I am proud of being part of this incredible welcoming community.

The concept
The game is based on an idea I got a few months ago. I’ve wanted to try out this idea for a while, just to see if it would turn in to an enjoyable game. After seeing the end result of the voting rounds, I immediately thought that this would be a good opportunity to try to implement this game.

The premise of the game is simple: Wolfenstein converted into a turnbased puzzle game.

What went right

1. The engine
An engine like the one used in Wolfenstein is quite easy to implement using the technology that exists today. Back in the days you had to implement it all in software on hardware that merely were fast enough to draw graphics at that speed. I went for a really easy approach where I simply put a lot of textures cubes on the screen. This works fine as long as the maps arean’t big enough. Using this method, it was easy to implement a simple tilemap loader that put the cubes at the correct position in the world with the right texture.

2. Known library
Unlike my first Dare, I used a library I’ve used before. I used the same library as I used for my entry for Mini-LD #28, Three.js. This turned out well, as I could be productive from minute one.

3. Level editor
In the middle of the implementation process I figured out I needed some way to define the levels. I figured I did not have time to write something myself, so I checked out a few tilemap editors I already knew, but none of them would export to a javascript-compatible file out of the box. Some of the editors support writing custom exporters, but I didn’t feel like brushing up on my Lua experience. I therefore went for an easy middleway where I used Mappy to build the levels. I then exported them to text format, and copied part of the text over to a custom made fileformat using json. This solved my problem completely, and worked well for my use.

4. Browser standards
For this entry I used some of the latest HTML5 technologies. It’s suprising how well the standards are defined for both WebGL and HTML5 Audio. When I’ve implemented the engines using Chrome, and then tested it using Firefox, it seemed to work with almost no changes. The only change I had to do, was some error checking for loading audio for Firefox.

What went wrong

1. Postponing sound
Once again I postponed the sound and sound implementation to the last minute. Sound creation went fast as always with the mighty powerful BFXR. Earlier I’ve used a sound library that uses Flash for sound playback for maximum browser support. But I figures as I’m using WebGL, I could as well use HTML5 sound, even though it is not that well supported yet. I’m pretty sure that if your browser supports WebGL, it will also support HTML5 sound as well. Problem is, I’ve never used HTML5 audio, so I needed to learn it as well. Turned out that is wasn’t that hard, and within an hour I’ve made a very simple sound engine for my sound and music needs. Before the next Dare I should probably create a sound library that I can use instead of having to struggle with sound once again.

2. Lack of artistic skills
This is a general problem with my entries. I lack the artist gene, and is therefore not able to draw pretty pictures. This is shown in most my entries, where I try to minimize the damage done using as simple as possible drawing. This time I needed to draw a simple character, and it turned out ok, but I think I should stick to mechanical constructs ahead to avoid having to draw organic objects. The same goes for music. I found this really nice tool before the competition that I thought I should be able to use to make simple music with, DrumCircle. When I sat down with it, however, I could not create anything that sounded like music, even though I succeded using it a lot before the competition. I therefore ended up using elevator-music generated from Wolfram Tones.

3. Difficulty level
I really misjudged how hard it would be to play the game without a minimap. I intentionally did not include a minimap just to give the game a little more challenge. After reading comments and seeing friends play the game, it seems like a minimap is a must for this game. It is also har to judge how far you’ll step using a single arrow because of the lack of a visible grid. This was also caused in part by the lack of variation in the wall graphics.

4. Level design
I had no clear idea how I should design the levels, and how I should design their challenges. With that in mind, I ended up using scare-tactics as a gameplay element. The challenge of the game became the avoidance of the guards. I initially intended to add sophisticated shooting-mechanics into the mix, but it turned out that running away from guards was enough.

5. Rough introduction
There was no tutorial in this game. You was thrown right into the frying pan, causing all kind of confusion because the player had no idea on how to play it. This could be solved by having a more sandbox-like first level with some popups appearing when the player walks over given points. As it is now, the player is greeted with a wall of text at startup, and you cannot really play the game without knowing the bare basics given there.

6. Irritating UI
I implemented the UI using JQuery and JQuery UI. These libraries aren’t really made for games, and it shows in this game. I wanted a queue of commands for the pleyer to execute. This queue could become taller than the height of the screen. Instead of allowing full window scrolling I made a smaller area with a scrollbar. It was then possible to rearrange items in the queue by dragging each command up and down. The problem with this approach was that it was possible to scroll past the horizontal and vertical edges of the queue, which made it quite hard to predict what would happen if you dropped an item at times.

The future

If I get the time, I will try to improve on the game, and maybe even add a few features.

1. Minimap
I would like to add a small minimap for the players to easily orient themselves. I’m not sure if I should place enemy markers here. I should at least mark their position if they catch you in case the camera is not in the correct direction. I should probably change the camera angle in any case.

2. Level grid
A visible grid that gives an indication on far you will step if you add one more move action to the queue.

3. Less annoying interface
An execution queue that does not scroll at its own will. I will probably implement this using a canvas where I calculate the position of the individual queue elements myself as well as accepting the input.

4. Speed of execution
Buttons to control the speed of playback. Too often it feels like it takes an eternity to make the player avatar move.

5. Conveyor belts
This is a new gameplay element. I was thinking about adding conveyor belts that you could push crates onto. This would give the possibility to kill enemies by pushing them with the crates. This idea came from reading about the board game Robo Rally.

Tags: postmortem

Comments

12. Sep 2011 · 00:35 UTC
Would you like this post-mortem to show up in indie(Magazine); Issue #15?

Puzzlestein updated

I’ve added an updated version of my entry, fixing some of the problems with the competition version. Please don’t vote based on this version.

These are some of the changes:

  • Added minimap
  • Grid on the floor
  • Rotate avatar towards enemy on collision
  • Change movement speed
  • No more horizontal scrolling in sequence list
  • Added an easier introduction level
  • Added loading bar

Play the updated game here:
http://www.ludumdare.com/compo/ludum-dare-21/?action=preview&uid=3796

Tags: post-compo, update

LD22

I will be there

Back from the dark I will give this competition an another go. Unfortunately I have other obligations at saturday evening, but hopefully that will not have too much of an impact.

And now on to the tools, all depending on what theme is chosen and what ideas it will give me:

Language: JavaScript / Java
Framework: ImpactJS / MelonJS / PlayN
IDE: Komodo Edit / Eclipse
Art: Paint.NET / GraphicsGale
Sound: BFXR / Audacity
Banished: All bugs

LD23

Last minute addition

I’m in!!

The tools of the trade is as follows:

Language: JavaScript
Framework: Impact, MelonJS, ThreeJS
IDE: Komodo Edit
Graphics: Paint.NET
Sound: Audacity, BFXR
Music: AutoTracker

This list might change depending of the final theme.