I have made a number of fixes to ChompDice and I think they improve the game substantially. The difficulty is much lower now and chompie's dice pushing ability been tweaked so it should be much easier to win.

One tip to this game is to train yourself to keep a running count of the dice in your head as you play. It's actually kind of like card counting, I think, with the pressure of trying to total the dice in your head building as you desperately try to move chompie in position. At least that's what it reminds me of, not that I was really ever decent as a card counter.

Another tip is to memorize the sides of the dice, because if you push a die with 5 showing to the left, the new face will match exactly what a real dice would (assuming you are able to get the angle right). If you do this, the game should become really really easy.

So anyway, now you get a star for each game you win in a row. See how many stars you can get. My record so far is 15!

Here is the new link and web site. This is the new permanent home for the game and I will release all new versions to this site.

I've added the Linux builds of DiceMan, there's two flavours, a precompiled x86 binary release, and a source version, to make the source version simple untar change to the directory (DiceManSrc) and run make you can also use make install which will copy the game to /usr/local/games/DiceMan. You may get warning message about the last line of the source files not having carriage returns, dont worry about this, it wont stop the game compiling, and I can't be arsed fixing it, it's not a warning, it's just the compiler being overly pedantic about file format (something that a freeform language like C++ shouldn't even bother about, it's not as if it couldn't read the line).

You can download them here, along with the original windows installer.

This was the third time I entered the 48 hour game dev compo. As before,
I took it somewhat lightly, not taking too much stress about the whole
thing. This time I also voted for the themes both first and second
voting round. For the past two compos I didn't take any part in voting
and didn't even check out the candidates for second round.

I feel that not contributing in voting made it easier to think up an
idea for the final theme to work with. This time I felt it considerably
harder to decide what idea I would concentrate on. I guess this is
because I had already thought up more about ideas for a different
theme from the second voting phase, which wasn't the final chosen one.

Well, after a few hours I finally settled on something I found
interesting to try my hands on. It was an algorithm called "diffusion
limited aggregation", heavily relying on randomness. In fact it is just
bunch of dots moving through random path until they hit something. The
algorithm can be used for generating certain kind of plant looking
images. I read about this from the book "The Computational Beauty of
Nature" (http://mitpress.mit.edu/books/FLAOH/cbnhtml/) and from
a page about the algorithm in Paul Bourke's web site
(http://astronomy.swin.edu.au/~pbourke/fractals/dla/]). As you can see,
since I didn't have an idea which immediately felt good enough, I got
a sufficient idea from spending a little bit of time for research.

Still I started by just implementing the DLA first and spending time
optimizing it and adding graphical effects to it to make it look
better. It took until about half of work for whole entry until I
started concentrating more on game play. I borrowed the excellent
Mersenne Twister pseudo random number generator algorithm from the
net, which I think should be acceptable with the given theme.
I could have used normal rand() as well and you wouldn't see any
difference, but I thought it's better to make a bit of extra effort
to find and use some better algorithm.

I didn't have practically any really bad bugs or problems hindering
development. I just noticed a bit too late how much the game play
would need tuning and trying out different things to make the game
more enjoyable. I think at the end I got it much better than what
it was at some point, but still I know there's room for improvement.

Rough estimate of total amount of actual development time is about
24 hours. Sleeping, eating, etc. are not counted in that.

What went right:

+ Familiar set of libraries (SDL etc).

+ Game design not needing a lot of assets.

+ Picked an idea which was interesting to try how the DLA could be
applied to a game.

What went wrong:

- Too much thinking before compo about other possible themes made
it harder to think ideas for final theme.

- Didn't spend enough time for game play - should have cut some time
from graphical tuning for that.

Postmortem: DiceMan in The DiceMan Cometh

I started this game about 6 hours after the contest officially started,
since I'm in the UK and the contest started at 3am, I was in bed at the
time, fitfully trying to get some sleep, I got up and was ready to
start at 9am BST. That's when I found out the theme was Random, and it
was time to spring into action.

What Went Right:

Having some idea of what I would do for each of the Themes was extremely handy, the only one I didn't have an idea about was 1 button which is why I'm glad it didn't win.

Using SDL. I'd used SDL in my FireTrack remake that's still in
development and knew that I could quickly get something running and
onscreen.

Encapsulating SDL_Surface in a BMP structure, using my own
structure instead of SDL_Surface allowed me to write the Renderer much
faster since I wasn't having to deal with setting and changing
SDL_Rect's all the time.

Spending the time on writing my own font system. I had originally
looked on the net, but couldn't find one that would be easy to use, so
I had to write my own.

Adding little touches to the title screens, like the particles on
actions, or the scrolling letters. The particles started when I added
particles to the name entry screen when you entered a character, and
realised that I could use it elsewhere.

I ended up with a solid SDL framework that I can use to build other games with.

What Went Wrong:

Changing Idea part was through the contest. Although the game
name and graphics didn't change, I realised about 12hrs in the the game
as it stood just wouldn't work (it was a single screen and the dice
rolls added/removed one of 36 platforms on a 6x6 grid), so I redesigned
it as a platform game which opened up the gameplay and allowed me to
start making major progress.

The Font, although it's great on the title and the bigger font,
it just didn't work for the smaller font, I should have used a simpler
font for it, something that's easier to read.

Levels, I really wish I could have designed more levels, I ended
up with 5 (4 + 1 vanity level) I just couldn't make levels that were
either extremely easy, or almost physically impossible. Using Mappy
with .MAP files is a pain since you have to specify the block size and
tileset every time you reload one, so it made changing and testing the
levels harder. Next time I'll concider writing a simple level editor,
it would have made things far simpler.

Afterwards:

Yesterday I spent about an hour porting my game to the PS2 Linux kit,
it ran really slowly, but I've fixed that now, and while not as fast as
the PC version it's still pretty respectable, I'll release a linux
source version soon, and possibly some pre-built versions including a
PS2 linux version.

I'm looking at taking this framework and producing a real game, I've
got an idea for a game and feel that with the code I already have I
could make a really good game.

How I got the idea
Initially I was pretty dissappointed with the theme, seeing how out of the 5 themes the only theme I couldn't really get an idea for was chosen. But I sat down for about an hour, chatted on IRC here and there, and suddenly got this neat idea.

What went right
During the development I think my best decision was to keep the game simple first, and once it was done and playable add more and more elements. This ensured I would have a game ready within the alloted timeframe and hopefully without too much bugs.

What went wrong
I spend too much time trying to make some sounds which I ended up deleting because they broke the rules. (Used drums and stuff which I distorted into explosion and gunshot sounds.) I could have much better spend this time on fixing some bugs.

For the future
Try and get more sleep before the competition, and no organizing any LAN parties afterwards. I was wasted. :D

Extra
I fixed a few bugs in the game after the LAN party, now, I know it wont count for the competition, but for anyone who would like a slightly more debugged version, http://deepflame.deeplyswitched.com/files/games/Tanks.zip should provide just what you're looking for. (It still contains various bugs, like, anything that manipulates it's window in any way will cause the game to freeze and/or crash.)

All in all, I had a really great time writing this game, and playing all the other games. There's some really neat stuff out there! :)

Someone posted a comment in reviewing my entry - that they couldn't run the game.
Could you please make sure you install .NET 1.1 before trying it ?
You can download it from Microsoft
If that doesn't work, then i have no idea - and not knowing who posted the comment, i cant help.
We probably need a way for entrants to respond to judge's comments other than the diary pages.

Of the game itself: I was lazy and made the first thing that came to mind and only put a minimal effort into making it really exciting. Given that it was what I had intended it to be. The basic concept: boring, easy, unoriginal. Spit out a bad guy every frame, shoot a bullet every two frames. Plus special weapons: moderately fun.

Had I been more motivated/inspired: I would have made a 1st-person maze game that tried to creep you out. Or maybe a 2d one...

Of the competition: Good job to most of ya :) There were many good entries this time around.

Overall, this competition went much better than last time. I credit a better understanding of what's possible in 48 hours, and a slightly lower expectation in the graphics department. Tools used:

Pygame (Python & SDL),

Vim for editing the code,

RCS for making sure I had working snapshots along the way,

The GIMP for graphics (I still don't know how to fill a transparent region ;), and

Audacity for recording sound, even though I didn't end up using any of it.

What went wrong
I switched "theme" mid-stream (from zombies to ducks). This allowed me to use better graphics, but also meant that the sounds I'd recorded were useless.

I also spent a large portion of Sunday morning (at least 3 or 4 hours) integrating tile-based map drawing code and debugging it. I really should have started with the tile-based drawing in the first place. If I hadn't lost those hours, I could have added more items to pick up, more objectives or even sound.

In the sound department, I still have a fair bit to learn. When played in the game, the sounds I recorded for the zombies ended up all crackly. I believe that's to do with the sampling rate and the rate the SDL sound mixer wants (it's a bad re-sampler).

What went right
Well, I ended up with a playable game. It was based on a boardgame called "Zombies", but the game I ended up with deviates in many ways from the boardgame.

My adherence to the theme was very strict. There's very little about the game that's not random. I have a ton of ideas about more random stuff to throw in, but alas... :)

In all, I timed the development pretty well - though it was mostly about not spending too much time on any one thing (except that bloody map code ;) and making sure I was "finished" at least a couple of hours before the deadline so I could test packaging and make sure there weren't any problems on Windows.

On a more personal note, the comp reminded me why I got into this programming gig in the first place - sometimes it can be incredibly fun and rewarding.

To remember for next time
Don't choose a game style that relies on hand-drawn art - I simply can't do it :)

I have to haul back on the expectations a little more. If you can get away with having your game on one screen (thus eliminating icky scrolling issues and mini-maps for navigation) then do it. There was really no reason for my entry to have a scrolling map.

Here is the game online if you just want to try it without downloading it. In the future I may continue to update this online version. There's a bunch of things I want to fix in it, including some annoyances that keep the game from being as fun as it could have been.

I must say upon looking back that I learned a ton during this experience. My game creating skills were completely rusty and it was difficult even to remember how to code basic Actionscript. And what a pain in the ass language it is!

Well, I've finished what I can. Unfortunately there's no gameplay. :( The "game" will currently create a random level with semi-intelligent cars that travel a random route.

The intention was for the player to be able to control stoplights at the intersections and try to (a) run a nice, orderly system, or (more likely) (b) cause insane amounts of mayhem (a la The Italian Job). :)

I hope to continue this project so I'll keep you guys updated if a more fully-realized version gets finished.