snoozbuster

LD28

My ideas and progress so far

I don’t have any screenshots right now because all the interesting stuff is with my modeler, Core43, at the moment.

Anyway, this is my first go at a Ludum Dare. I’ve been meaning to do one for almost a year now, but they kept landing on inconvenient dates. Either way, I’d like to share a bit of what I’ve been doing so far.

I didn’t start coding until around noon on Saturday because of prior engagements, although Core43 was working before that. It’s surprised me a bit how far I’ve gotten and how far I have left to go; the only other game I’ve written from scratch was Accelerated Delivery, an indie game I recently released with friends, and I started work on it over two years ago. Needless to say, my idea of how a program should be set up has drastically changed since then (as proven by three large, separate rewrites of the codebase of Accelerated Delivery over its years of production), and so it was almost like starting from scratch for the first time. Since I’m entering the jam, though, and since I already had a working game, I was able to salvage some of its code for reuse. One of the DLLs I use in my project is actually the engine DLL for Accelerated Delivery, primarily for access to the rendering device I wrote and other miscellaneous odds and ends.

Regarding theme, I knew what I wanted to make almost as soon as the theme came out. The obvious idea is “you only get one life,” but I wanted to take that idea a little further. What if I made a game that used branching paths, with at least two endings, but you could only play through the game once? I wanted it to mirror real life in that regard; you only get one chance at life, and your choices matter. You don’t just get to restart and see where another path takes you. Hopefully this isn’t too daunting a task for a 72-hour timespan, but it’d be cool to see it happen.

Design was another story. I’m not very good at 3D programming, especially animation and riggings. I’m most fluent with XNA, which doesn’t really come pre-packaged with animation support; although it does support animations and riggings you have to write a lot of code yourself. However, Core43 is a modeler, so making a 2D game wouldn’t be fun for him. We settled on a visual style similar to that of Pokemon3D, a first-person, 3D remake of Pokémon Gold and Silver that still used pixel-art textures. As we worked on modeling and texturing, though, we found ourselves trying to make the game not look Minecraft-inspired, because it certainly wasn’t at all; in fact, the only reason the art is pixel-art in the first place is because full textures can be hard to create and/or find.

Gameplay started out as a sort of Skyrim-like idea, but it has since devolved into a first-person adventure game where you also have a laser sword. For beating up robots. Because if I wanted to beat up people I’d have to go into the whole animation thing again. There’s hopefully going to be a storyline with branching paths, as I mentioned before, but I’m honestly not sure how far that idea will come along. It takes much longer than I expected to make things like apartment buildings and skyscrapers. I have an idea of how I want the story to go, but it might be tricky to make it not seem cheesy or really easy. I also am going to have to make AI for the enemy robots, which I’ve never had to do before (although I have done pathfinding for a college project before, most of that isn’t applicable here without hacking at the algorithm to make it fit into my needs).

So, that’s what I’m doing this Ludum Dare. It’s 4:30am right now and I have to get up around 8 tomorrow. Today I wrote a lot of the core engine for the game; most of the remainder in that department is menus. Then it’s putting things together and working out progression; by the end of tomorrow I hope to have a character walking around and able to interact with things.

Progress, I think

I’m pretty sure most of the core functionality is there and the menus work (except the one I haven’t made yet). I guess we’ll see exactly how well it works when I get assets from my friend and start to actually build and connect everything.

Dangit I had too much to do this weekend

I didn’t get to start coding until about 24 hours into the jam because of prior plans, and slacked off a bit in the first 24 hours because I underestimated the project. I thought I’d be able to complete everything, but then I had to spend about three or four hours trying to figure out why the camera didn’t work right, and another few hours fixing some other bug, I don’t remember which. I still hold that the game would have been great had I managed to finish it in time.

Oh well.

LD29

Here’s to a great Ludum Dare!

I’m excited. This is only my second Ludum Dare, and even though the last one didn’t end too well I’m ready to try again! Here’s a link to the GitHub repository I’ll be committing to throughout the weekend, if you want to follow me! https://github.com/snoozbuster/ld29

End of the First Day

At first, I wasn’t sure that I was going to like this theme, but I thought of an idea I had a while back that would fit the theme and I’m excited to finally have a reason to create it! Unfortunately, my personal code library doesn’t really fit well with the idea, so now I have weirdly splintered rendering systems. Oh well.

A gif of a texture being snatched

A texture being ripped and reapplied.

A texture being ripped and reapplied.

The gif is a little choppy and the frames are a little faster than I wanted, but it gets the idea across. I recommend you open the full size! Perhaps I’ll make another, slightly better one later. I’m on IRC as snoozbuster! Previous

 

Ludum Dare 29 Postmortem – “[Work in Progress]”

I’m really glad with how my game turned out! I managed to think of a cool idea and scope it well enough to finish in time, and I’m quite proud of the result. Here’s some screenshots with explanations of game mechanics! There’s minor spoilers ahead (basically just a couple screenshots of the earlier puzzles), so be warned.

Basically, the premise is you’re sucked into your game (in a really cool cutscene), and you have to manipulate objects to get to the end and escape. To this end, you can rip the textures off objects, which modifies their properties, and reapply them to other objects. You use this to solve puzzles to make your way through your broken game (which is itself a work in progress, hence the title).

Trees are button-pushing things too.

All this button is looking for is a model with the “orange” texture applied. That orange has the texture by default, but this nearby tree will work too.

This is an alternate (although not altogether exciting) solution to the first puzzle, which is primarily to introduce the player to the mechanics of putting oranges (yes, the fruit) on button. Why oranges? Well, because it’s a work in progress.

Make anvils float and hop along to the end!

Make anvils float and hop along to the end!

This screenshot is the second puzzle. There’s actually a few different solutions; hopping along floating anvils like originally intended is incredibly hard and if you can do it, you are a god at this game.

Wireframe staircase

Wireframes float and are solid; you can use them to build staircases.

The third puzzle involves a lot of objects just lying around; you have to pick them up, toss them, and remove their texture midair to create a makeshift staircase to scale a vertical wall. This is both easier and harder than it sounds; this is probably the most time-consuming puzzle.

Top view

Staircase as viewed from the top. This is a great accomplishment.

Getting to the top is a great feeling, though.

Various wireframes

All these wireframes, in a sort of staircase. Where do they lead!?

What could this screenshot be about? Is that a door floating on its side? I guess you’ll have to play the game and find out!

All in all, the game is a light-hearted, humorous take on (what could happen beneath the surface of) game development. I’m glad I finally got to use this mechanic I thought up a while back, and I’m really happy it turned out so well. I wish we could have made more puzzles (or just more interesting ones), but unfortunately, as cool as the mechanic is, and as well as it works, it’s really hard to come up with puzzles for it. If I’ve learned one thing this weekend, it’s that I’m rubbish at puzzle design. Other features I included but never used were collision detection as a property of textures (applying certain “ghostly” textures to objects would cause them to become immaterial), and various types of event handlers I never really made full use of. And, of course, underneath all the textures, and the shaders, and the effects, it all comes down to wireframes. They’re what’re “beneath the surface” of all modern 3D video games, whether we notice it or not.

You can play it here: http://www.ludumdare.com/compo/ludum-dare-29/?action=preview&uid=22782 Let me know what you think!