Ludum Dare #31: My First 48-hour Competition!

I’ve finally gotten round to actually writing about this, despite it taking place way back in December! For those who aren’t that familiar with Ludum Dare, the basic concept is that people from across the world spend 48 hours making a game to a theme that gets voted on by participants beforehand, and people taking part must make all assets and write all code during the 48 hours. There’s also a more lax Jam version, in which participants get an additional 24 hours, can work in teams and can use assets from anywhere. Because I’m an idiot, I chose the competition, not the jam. The theme was ‘Entire Game On One Screen‘, and since I was a little stuck for things to do with this theme (well, technical limitation, not theme), I ripped myself off. A lot. Some of the basics of the art and concept was taken from one of my up-until-now-unseen 2-week challenge games – this game to be precise:

sam-01

This is why I don’t write stories for two-week challenges.

Wow, you’re not dead. What have you been doing since your last post, 58 days ago?

Thanks for asking! Now, cast your mind back to the end of November. Yeah, that’s how useless I’ve been with this blog. The final 2-week challenge for the Warwick Game Design Society was ‘Micro’, which I actually won! That’s possibly because everyone had a lot of work due towards the end of term, but I’m still really glad I came first. The game I made was rather short, and involved a byte called Sam moving around through a (very abstract) computer, collecting powerups that shrink and grow him, and flip gravity. You can take a look at it here. I’ve only included a Windows build for now, but if you’d like me to build it for Mac or Linux, I’d be more than happy to.

Why the heck is this relevant?

Because the theme is so terrible, I was really stuck for ideas. I just needed to put something on the screen to play with, and my Sam sprite made this easy – I could re-draw it in about 10 seconds. Then I started screwing about with gravity, using my gravity pickups from Sam’s Micro World. Then I got portals working on the edges of the screen. Then I added coins, screen shake, sounds and many other cool little things, and it came together in the end – I got my very first Ludum Dare game put together within the time limit, in a surprisingly polished state. Give it a go in its competition state!

ld31-04Forever Falling, one of the most complete games I’ve ever made.

The most helpful thing about having a large platform to deliver this game to is that I got tons of feedback. There were a lot of positives; mainly, people loved the slow-motion level transitions, and the general gravity-bending mechanics. A few people also liked the tension when the timer was nearly zero just as they were at the end of the level. However, pretty much every comment on the game’s page said one thing that I overlooked for the entire competition: “it’d be nice to not restart the game from the beginning when I die“. I’m actually an idiot. If anything, it’s shown me how much I overlook in my own games – since I was playtesting each level individually, I didn’t realise that it was a problem. I didn’t do badly by any means though – I came 266th overall out of about 1300-or-so entries, even on my first try, so I’m very pleased with how I did.

ld31-05

Ahhh, why didn’t I make the player respawn at the start of levels!

It was still a thoroughly enjoyable experience, so much so that I’ll hopefully be doing the next one in April. I managed to get portals working in 2D – something I really wish I could do in 3D, but I have no idea how – and on top of that, the portals redirect gravity according to the direction they’re facing. You can also flip gravity at any point, which leads to pretty awesome, weird platforming. A lot of people liked smashing into walls, as it had a satisfying screen shake and sound effect, plus it gives you points, actively encouraging you to smash into everything at high velocity. I did a bit of work on it after the competition, and got a bit of a leaderboard working, plus a very important feature: you restart each level when you die, rather than the entire game. The first level will probably (definitely) be formatted badly, since it was a quick job with the Unity UI stuff, but give it a go if you’d like.

ld31-03Have another image, free of charge.

A bit sooner in the future, later this month, I’ll hopefully be doing Global Game Jam too. I’m super-psyched for it, hopefully it’ll be a bit more relaxed than LD31 due to it being a jam rather than a competition. I’ll be trying to not neglect this blog like I did at the end of last year (I’m a terrible person, I know), so expect to see a bit more activity over the next 11 and a half months. Oh, and happy late 2015 everyone!

Two-week Competitions: ‘Spooky’ and ‘Growth’

That’s right, today’s going to be a special two-game bonanza! Well, really it’ll just be one game and a pretty cool tech demo, but it’s generous nonetheless. Both the following games were made for two-week competitions for Warwick Game Design society, and made by the same two guys that made this.

Lavender Town, theme: Spooky

As the name suggests, it’s based on Lavender Town from the original Pokemon Red and Blue. The general atmosphere of the town is such a creepy experience, how could we not make a game based on the creepypastas spawned by the games? Obviously we wouldn’t completely rip off a completely-true, legit story such as this, so we did our own spin on it.

town-01

#nostalgia

It’s a relatively short game (it’ll probably take you no more than 5 minutes), but it took a lot of work to pull off. We used a lot of resources for this one, such as a lovely glitch shader for sprites in Unity, plus of course all of the original music and sprites (which, because we’re idiots, we decided to copy out entirely by hand. At least we’re better at pixel art now).

town-03

The really cool glitch shader, mid-glitch.

If you’d like to give it a go, then you’ll find it in various places – either on IndieDB, on my Dropbox, or on the Warwick Game Design website, where you can also see everyone else’s entries.

Fractal Mountain Generator, theme: Growth

This game doesn’t really have much game in it at all, but it is pretty cool – it’s a random generator that subdivides a mesh over a number of iterations, and moves around the vertices a little to produce a fractal mountain. In an attempt to put some actual game inside it, there’s a red cube that spawns in a random place and drops down somewhere on the mountain, and you have to find it.

fract-01

Only the highest quality textures.

There really isn’t much to do, except appreciate the fact that this game might not have existed, had we not found all the hidden bugs in time. Seriously, Tom and I probably crashed Unity more times for this project that we have for everything before this combined. If you want to give it a go, you can go grab it from my Dropbox.

fract-02Actual games are overrated; tech demos are where it’s at.

I’m also working on the next project by myself (although I’ll help Tom when he gets an idea, because I’m obviously such a nice person). The theme is Micro, so my idea is a little guy called Sam who inhabits a computer, and has the ability to change size and gravity to navigate through to the end of a few levels. Here’s a teaser image:

sam-01

*Hop* *Bounce* *Boing*

Hopefully this time it won’t take me forever to get around to posting about the game!

-Daniel

New Hub and Help Text – Project Spikes 01/04

Today’s update has a graphical update for the Hub World. As I’m planning on having the first iteration of a story in the game pretty soon, I’ve re-re-re-done the Hub as a spaceship, which will play a small part in the eventual storyline. In the new Hub World, you’ll find everything is a bit more compact, with a room for each world, containing level selection cubes and secret cubes for each level. The small room you start off in (the cockpit of the spaceship) has a few new decorative items, such as lights, flashing blue accenting for the tops of walls and improved models for TVs and laptops, which were present in older versions of the Hub as decoration. There are also new models for chairs which are a lot like the old ones, but look nicer.

spikes-77

I’ve added a couple new textures, for example the window texture you can see above. There’s also a decorative texture for a solar panel, which are also visible on the spaceship, and for the spaceship I used a particle pack by Unity I found on their Asset Store, a helpful resource for anything from small particle effects to completed projects. The pack I used can be found here. I used the fire particles from this for the boosters on the wings of the spaceship. On the subject of particles, I’ve also improved the activation particle effect for when you walk into a powerup. I will add these into the game properly soon, in later levels. It’s hard to get a screenshot of a fast-moving object, but I had a (poor) try:

spikes-78

Another helpful addition to the game is text fields, where useful information will pop up on-screen for a few seconds at points where you might need it. You can turn this help off from the options menu if you wish, but in the future this will be replaced by a voiceover system, so at that point the options menu will only disable the subtitles for that person speaking. I’ve not added many hints but I will continue to place them at points where the player might need them, for example at the start of the World 1 boss battle, where it’s probably not obvious immediately what you should do.

I’ve also now finished World 3 Level 1, with a second section of the level at the top of the lift. This second portion introduces a new type of cube – the Alignment Cube –  which never rotates and will stay aligned to the world’s XYZ axes. This makes it very useful for standing on and riding all the way to the top of the level.

spikes-79

The full level looks pretty nice, and I’ll aim to get some of the older levels upto this graphical level in future updates.

spikes-80

That’s all for this update. Unfortunately I wasn’t able to make the player turn round along with the direction of gravity, or make the world turn round either, because quaternions appear to be the bane of my existence. I came pretty damn close, but it wasn’t smooth at all and felt confusing, so I’ll leave that for a future update. It can be played at the usual place here, and if you have any ideas for features or comments on the game, feel free to leave them below. Thanks for reading and have fun playing, tell your friends/family/dog!

Gravity Gun and Improved Laser Gun

First things first, I’ve added a new gun that allows you to switch round the direction of gravity. When you shoot it at an object, the direction of gravity changes sort of towards that object. That doesn’t mean that stuff will fall directly towards that object, but rather in the opposite direction that the face of the object you hit was facing. It’ll be awesome when I can get together some more puzzles that use it, but lately I’ve had lots of work to do, hence the late update.

spikes-74The gun doesn’t yet have any animations, sounds or particles (and as far as I can remember it probably doesn’t take gravits off you either), but I decided rather than wait another week to update, I may as well put something out for you guys to play. The gun is useful in the new level, World 3 Level 1, in which you need to guide a cube past some destruction fields. This level is also unfinished currently, but it should be enough to show you the function of the Gravity Gun.

Every level and every gun can be accessed from the start now too, so that you don’t have to go back and play every level again each time you boot the game up. When I find a way for players to save the game, then I’ll change this back, but for now I think this will be easier for testing. I’ve revisited old levels and added a bit of scenery and new textures, including new scaffolding-like blocks and an alternative blocky texture which looks a bit like small tiles.

spikes-75The layout to a couple levels has changed too, and some new obstacles and puzzles have been added.

The Laser Gun upgrade that was mentioned in my last post has also been added here – it’s just a new model with new textures and animations. The actual laser beam itself is the same as it always has been, but there has been a useful tweak – the crosshairs will move to the point the beam is hitting while in use to help with aiming the gun properly.

spikes-73

The hub world has had a couple changes, notably the cube crusher room and the main level selection area. The cube crusher room is actually empty now, as I decided it adds nothing to the game and uses resources that could be better used elsewhere, and the main level select building is now slightly larger, with an additional floor for world 3, and some more decorations. Each level now has a name too, which floats above the level selection cube. The spawning room also has a few experimental textures and new decoration, and a dispenser for a new type of cube, the bouncy cube, which is purple.

spikes-76

That’s just about it for today’s update, but I do have more plans for the future, in the form of a main storyline and perhaps voice-acting in the form of background dialog. I want to have another protagonist in the game who communicates with you throughout, giving you useful information about what to do next. Also, the facility in which the game is set will probably be made into a space station by next update, and the game as a whole will have a more sci-fi theme around it. Have fun playing!

You can play it using the tab at the top of this page, or here.

Lasers and Why Gravity is Hard to Change

Just to start with, today won’t have an update, just a sneak peak about upcoming features and stuff I want to add, but will be difficult to implement. First of all, the next update will have a vastly better Laser Gun; much like the previous one improved the Force Gun, with a new animation controller, new model, new everything, I’ve now done the same for the Laser Gun.

spikes-73I’ve also been busy adding lots of scenery to each level. So far all of World 1 is complete, and some of World 2 as well. Basically, I’ve added a roof and some scaffolding-type blocks to make the whole place look more facility-like. Along with that I’ve added some decorative textures that light up and look like they’re moving, but you’ll have to wait and see what they’re like.

Gravity is a constant, and it’s really bugging me *lol puns*

But the main reason why this update’s taking a while is because I want to add a new type of gun, one that switches the direction of gravity. Changing gravity for physics object is literally one line’s code worth of work, but I want to be able to turn the character controller round too, which is proving to be much more difficult. I may just make the gun turn gravity for physics objects around for now, but that’s much less fun than being able to drop down onto a faraway ceiling, which is the feature I’m going for here.

The system doesn’t work

Also I’ve been trying to add a timer and score counter for different types of level and game modes (such as a time trial mode), however I’ve run into trouble with how the system will work. Long story short: it doesn’t. I’m not entirely sure how the score should relate to the time, and how timed levels should be, if I implement them. Also I’m unsure whether any actions you take in the game should give the player points, and if so, which actions. Another problem I had was with the display, as the built-in Unity OnGUI stuff is horrible, but I’m unsure of how to implement my own GUI for this. I’ll have a score system eventually, but if you have any ideas on how to go about it, they’d help a lot.

These are some of the many problems I face when adding new features, such as how to add them, how to make sure everything works, but also how fun it ends up being. Things such as lives, which seemed fun to begin with, ended up detracting from the gameplay a lot, stopping the “one more go” approach to solving puzzles. That’s extremely counter-intuitive, when you think about it. I’m also considering getting rid of gravits, as they also seem to make little sense. Feel free to leave our views on where I should take this below.

Guns, Lasers and Powerups – Project Spikes 24/11/13 Update

I swear the game will have a proper name soon enough, but more importantly there’s a new update, and it has lasers in it!

Image

The laser gun, shown above, is used to burn obstacles in front of you, such as these cubes. They will then shrink until you’ve burned them into nothingness and they disappear, with loads of particle effects, and of course a vibrant blue laser! There’s also the new Destruction Gun, which is a one-shot device that will instantly kill the cubes and vapourise them. Even better, these two guns can be used against turrets to destroy them. There are icons for each gun to sit at the bottom of the screen when you’ve found them too. To switch between them, you can use the number keys 1-3, and later I will add scroll-wheel support too. The destruction gun costs 2 gravits per hit, the laser gun 1 gravit per half-second, and the force gun still guzzles 1 gravit every hit.

Image

I’ve also been working on optimisation, taking out as many unnecessary parts of the game as possible so the game should run as fast as it can, even at high graphics settings, which is why I’ve changed the geometry of the levels by switching most of the level from 3D cubes made of 6 sides to 2D squares with only two sides. That still allows me to texture the level in pretty much the same way, but reduces the number of draw calls by about two thirds, so it’s a massive optimisation which will have minimal effect on the actual gameplay.

Image

There are also new powerups, which will be placed in levels so that the player can use their unique abilities to solve new puzzles. This one, for example, gives the player an ‘antigravity jump’ which causes gravity to be reduced greatly, another speeds up time so the whole level moves quicker. They’re all pretty cool effects, which you can try out in a new level, the Testing Area, which you can access through the Start Menu. Talking of the start menu…

Image

…it’s also had a bit of a makeover. It looks a damn sight better than the boring old screen, but does pretty much the same thing. All the information signs in the game have been changed so they are unlit, which means they won’t appear too dark, after feedback I received. Additionally, the field of view changes when the player is running, and a set of crosshairs appears under the player when airborne to show where you’ll land, two more features suggested to me. Also, in the options menu, there are a few more graphical options that disable shadows, in case your computer is extremely slow. You can play this new update by clicking this link.

Have fun playing, I hope you all have some good feedback for me 🙂

Oh yeah, and it’s probably best to avoid World 1 Level 5, it’s not been fixed yet. Just a heads-up.

-Daniel

Fun With Physics – Project Spikes 26/10/13 Update

Play it here!

This update is pretty sweet, it improves greatly on some previous levels, particularly World 1 Level 4, which has been redesigned and textured, and now features a new game mechanic: the Force Gun!

spikes-25This gun can apply forces to certain objects, such as the cubes in the background of this picture, or the spiky death balls introduced in Level 4, when the mouse is clicked. If you left click, it’ll blast the object away from you, and if you right-click, it’ll pull it towards you, both accompanied by a particle effect, an animation and a sound. This paves the way for new puzzles which require moving around crates and other objects, and enables you to shoot away incoming hazards.

spikes-26As part of World 1 Level 4’s revamp, I’ve re-textured the entire level to fit the world’s light blue theme, such as the walls and spike balls. The main new addition in this update really comes into play in this level, as you must use the Force Gun to move wooden crates and enable you to jump over a wall. The small yellow thing is a new pickup that fills the force meter, the yellow bar under the health bar which shows how much power the Force Gun has left. They’re called gravits, after the force of gravity, showcasing how bad I am at naming things, part of the reason I can’t think of a name for the game yet. They have pickup sounds too, a bit like a retro coin pickup sound.

spikes-27

Each world will now have a level that acts as a hub: these levels have a practice area to get to grips with new features, and a cube to transport you to each level in that world. In the future, you will only be able to access the next world after beating all 5 levels, but right now you can simply challenge level 5 in the first world and finish that to advance straight to World 2. The practice area in World 1 gives the player the Force Gun and a few cubes to practice firing them around the place and get used to the gun. In addition, the black cubes at the beginning of each level will return you to the hub, rather than to the previous level.

spikes-28The tutorial screen has been improved too, adding textures, more boards to show you the controls, and a button to take you straight to the newest level in the game (also present on the start screen) – currently, this is World 1 Level 4, and in the future will be used for easier testing of the levels and to simplify getting feedback from people.

spikes-29

Another noteworthy update is the addition of a model and particles for checkpoints, making their presence a little more obvious.

There are even more features listed below. Here is the link to the game, and as always I hope you have fun playing!

NEW FEATURES:
-Redesigned World 4 Level 1, adding the Force Gun and textures.
-Force Gun, left click to blast away objects, right click to pull them in.
-Force meter to show the remaining Force Gun power.
-'Gravits': new pickups to fill the Force meter.
-Sounds added for pickups, menu selections and the Force Gun.
-Hub levels for each world, World 1 Hub has Force Gun practice room.
-Black cubes return player to hub.
-Much better checkpoints - model and particles.
-Textures and test button added to Tutorial screen.
-Spawners that spawn objects in the level - present in World 1 Hub.