Game Development Software: Unity Free

I’ve decided to do more in-depth reviews of the software I use. I’ll start by detailing the various features in one of my favourite pieces of software I’ve used so far, Unity 4 Free.

unity-logo

What is Unity?

I’d be surprised if you haven’t heard of this already – just a quick Google search for “free game engine” will return it as the top result. Unity is a 3D game engine that’s designed to speed up and streamline the development process, while providing all the powerful features you’ll find in similar products. While some features are restricted to Pro (such as realtime lighting and post-processing effects, I’ll be talking about these later), the free package contains most of the features you’ll need. So don’t be put off by the fact that a Pro licence costs $1500 in one payment or $75 a month, just go download the free version to see if you like it.

The Unity Editor

unity-editor

The Unity editor, your window to making the games of your dreams.

The editor itself was designed with customisation and workflow in mind. You can see a load of windows in this screenshot, each of which can be freely docked on any side of the screen, or even pulled into a separate window if need be. Each window has a specific function:

-On the left is the hierarchy pane, which lists all the GameObjects (this is what Unity calls any old object you lob into the level, which are called scenes). GameObjects can be stacked (or ‘parented’) onto other GameObjects, in a hierarchical manner, hence the name of this window.

-On the right is the Inspector view, which frees up all of the variables and components attached to the active GameObject so they can be changed easily without having to delve into the source code and change variables directly.

-On the bottom is the Project pane, which lists all the assets available for your game, which can be dragged and dropped straight into the level.

-Most importantly, in the centre is the Scene view, where all the action happens – this is where you’ll be moving around all the GameObjects in the scene to build up your level. Here you can see the currently selected object, my player, and the gizmos that represent some of the components on the player, for example the blue sphere is an audio component, and the white cone is the main camera’s field of view. Once you’ve finished building the level the way you want, you’ll want to test the level –  in Unity, this is a breeze, as all you have to do is click the play button at the top-middle of the screen, no waiting screens, no lengthy compiling required, just an instant transition from the Scene view to Game view, where you’ll play the game as if it were a proper build of your game.

Scripting with Unity

Unity provides the functionality to program with your choice of three programming languages, C#, Javascript and Boo, and a script in one of these languages can communicate seamlessly with a script written in either of the other two. A plethora of classes are available for manipulation from the start, giving you complete control over any GameObject and all the components attached to it, the physics engine, the inputs used in your game, everything. Unity provides comprehensive documentation on all aspects of scripting with Unity, just take a look at the Unity manual and look at all the classes along the left-hand side to see just how much of the engine is under your control. And if you’re completely stumped at how to start programming with Unity, there’s a whole playlist of tutorials on Unity’s official YouTube channel, plus Unity provides Live Training on its website every so often, the archive of which can be found on their YouTube page too. Unity ships with MonoDevelop, an IDE (Integrated Development Environment), which is very handy as it’ll error-check and auto-fill everything that’s specific to development with Unity. Also, it’s important to note that the Javascript used in Unity is a slightly modified version called Unityscript, although it functions much the same as conventional Javascript.

unity-mono-develop

This is MonoDevelop, the IDE that’s provided with Unity.

If you don’t like MonoDevelop, or just prefer another IDE, then you can set another default program by going to Edit->Preferences->External Tools, then change the external scripting editor by browsing for its location on your computer.

The Asset Store

Having trouble modelling a character? Need a few more ambient sounds for a dark alley in your level? Completely stuck and need a completed level to use as a starting point? Then someone’s bound to have done it already on the Asset Store, an online marketplace foe everything you’ll ever need in Unity. From editor extensions to particle effects, models, animations, textures and even complete projects available on the store, you’ll be hard-pressed to find something that’s not on here.

unity-asset-store

The Asset Store will be your go-to place if you’re looking for something to use with Unity.

There’s plenty of stuff that’s completely free, plus there’s occasional sales, giving you a lot for a reasonable price. If you’re going to be developing with Unity, then a good free package to start with is the Sample Assets package provided by Unity Technologies themselves, which gives you a fully rigged and animated character controller called Ethan, multiple vehicles, and many other assets to help you out at the start.

In-game lighting and lightmapping with Beast

Unity has built-in support for the Beast lightmapper, a powerful tool that will bake static shadows onto your level, cutting down on the realtime impact of calculating shadows every frame. You can set how detailed and how strong the shadows are, which lights will be casting shadows and which objects will receive these static shadows, then click bake and Beast will automatically create very detailed lightmaps for you in a relatively speedy process. Back in the editor, there are four different types of light – point lights are like light bulbs and provide light emanating from a point in space which falls off with distance, directional lights act like the Sun and provide uniform light in one direction across the whole level, spotlights are self-explanatory and provide a cone of light from a point which falls off with distance like the point light, and area lights which are Pro-only, so I have no idea how they work. One massive drawback to Unity Free is the lack of realtime shadows – only one directional light is allowed to produce realtime shadows in Free, but no point lights or spotlights will cast realtime shadows, a truly disappointing omission, but not one that’s so huge as to prevent you making a good game with Unity Free.

unity-lightmapping

This is the sort of result you’ll get after creating lightmaps. These are the plastered on top of your game geometry to simulate lighting.

Nvidia’s PhysX Physics Engine

Unity uses the PhysX physics engine developed by Nvidia. It’s a very comprehensively constructed engine, handling collisions between objects, applying forces and gravity to them, and moving objects realistically due to the acceleration produced by these forces, all while allowing complete realtime modification through scripting. I use this functionality a lot while developing with Unity, so having so many functions available is helpful. Not only can forces be applied to objects in one direction, but explosion forces can be applied from a point in space to all nearby rigidbodies (physics-affected objects have a Rigidbody component applied), object’s masses or drag can be modified directly to affect motion, and collisions can be used to initiate events in-game. The physics engine supports the use of joints too, such as hinges or springs, and it works in both 2D and 3D, with dedicated components and functions available for both.

unity-physics-explosions

Explosions, just one of the effects you can achieve with the physics engine. And yes, this is my game, which you should be following by now.

Shuriken Particle Systems

Particles are important for applying a final touch to a game. Whether the particle effects are just debris from a gunshot or something much larger like a collapsing bridge, they add a lot to any game. Unity uses its own particle system, Shuriken, to handle particle effects. This is completely customisable as with everything else in Unity, allowing you to modify the speed, direction, rotation and size of individual particles, and change these over time too. Then you can change the force applied over time, the colour, transparency and lifetime too, as well as the particle texture which can be a spritesheet as opposed to a single texture, allowing a lot of room for creating the effect you desire. The particle themselves can simply be billboard textures, so they always face the camera, or a mesh, so physical 3D objects are emitted by the system, and they can even handle collisions, with different levels of quality to preserve performance if needed and the option for collision callback messages to be sent to scripts, so you can make events occur when a particle hits a surface. If you don’t have the time or resources for this, there’s plenty of particle systems on the Asset Store.

unity-shuriken

These are some of the many variables you can choose from when making a particle system. The grey bars can be expanded to give even more variables and many can be disabled if not needed.

Terrains

Unity also has a terrain generation feature. A terrain is simply a large mesh that will make up the majority of the ground of your level, with a terrain collider attached to it and the ability to add multiple textures to the surface to represent realistic ground. To create a terrain, you can go to GameObject->Create other->Terrain, then you’ll need to select its size and height. If you select something a little too big then that’s not a problem, you’ll just have to improvise and construct your world so some areas are blocked off, but make sure it’s not too small or you’ll have problems, because it’s a bad idea to resize a terrain you’ve already shaped and textured (something I’ve found out the hard way multiple times in the past). Initially, you can carve out the shape of your terrain using the raise, lower and smooth terrain brushes, which have options for the opacity and size of the brush, then you can paint the terrain with multiple, blend-able textures. It’s an easy-to-use but powerful feature, and is highly optimised so it should even work well for mobile projects. You then have the ability to add static meshes to the environment, such as trees, rocks or grass, which will be ‘batched together’ for increased performance. If that wasn’t enough, Unity has a very detailed tree editor, allowing for the randomisation of trees so a variety of shapes and sizes will be distributed across the environment.

unity-terrain

This terrain is from an old, abandoned project of mine. The trees are very slightly different from one another to mimic natural deviations in tree shapes and sizes.

Speed of development

Unity really shines when it comes down to speed. The instant playtesting feature is so useful when you’re prototyping and squashing bugs, or when you’re trying to find the best amount for, say, an enemy’s attack stat – just tweak the variable in the editor using the Inspector view, instantly play the game, then tweak it a bit more, even while the game is still running, so you can see the result straight away. Unity also has a genius Prefab system, whereby you can create one item for your game with a load of components and variables associated with it, or even child objects too, then you can turn this item into a prefab, which can then be dragged and dropped into the game as a perfect copy of the first item. Plus any changes to the source prefab will then affect any GameObject that’s associated with it, so it saves having to edit tens or hundreds of individual objects in your scene. This makes creating your game world easy and efficient.

Exporting to many platforms, plus your toaster

Unity supports publishing to so many platforms with little to no tweaks needed to your code it’s ridiculous – the same project cam be published to, hold your breath – PC, Mac, Linux, iOS, Android, Windows Phone 8, Blackberry 10, all major web browsers, and even Xbox 360, all recent PlayStation consoles and both Wii and Wii U. Of course, the consoles require licences from the respective companies, and publishing to iOS requires an add-on (which costs $1500, but a hit game on iOS is well worth the initial cost), but this is still a massive array of publishing options. The Unity Web Player itself is a fantastic platform, as you can deliver your game on all major web browsers with a few clicks, while the game itself will be so highly compressed that the user won’t need to download gigabytes of data to play it, allowing for instantaneous streaming of your game. The number of available platforms grows over time too, so you’ll never be short of a prospective audience.

unity-multiplatform

All. These. Platforms.

What’s missing in Unity Free?

A few major features are missing from Free but present in Pro. Firstly, as mentioned before, there’s only one realtime shadow in Free from one directional light, but in Pro you can have as many realtime shadows as you want, which can sometimes be the difference between an alright game and a fully immersive experience. Plus Pro gives you area lights, but I still have no idea what they are. Pro also utilises occlusion culling to increase performance, whereby objects that are obscured by another won’t be rendered at all. This isn’t to be confused with ambient occlusion. Think of a wall, with a small cube behind it. In both versions of Unity, the back face of the cube and wall, and perhaps some side faces depending on what angle you’re looking at them from, won’t be rendered as they’re facing the other way, but with Pro’s occlusion culling, the cube won’t be rendered at all because it’s obscured (or, occluded) by the wall. This saves your GPU lots of work with minimal CPU overhead.

Pro also gives you the ‘render to texture’ feature, which allows you to take a camera’s view and make it into a texture for use in, say, a TV screen, or to take screenshots. It can also be used for mirrors, or reflective water surfaces, so it’s a very powerful feature when put to good use. Pro also has a profiler bundles with it, which shows you where resources are being used in your game, for the detection of bottlenecks. It’s a helpful tool for increasing the performance of your game.

While Unity Free has a pathfinding tool built-in, Pro expands upon it massively, allowing more control over where characters using the pathfinder can move, and how they transition from area to area.

Another large feature missing from Free is post-processing effects. The ability to take a frame then add effects such as anti-aliasing, glow, bloom, motion blur and colour correction enhances your game graphically. This sort of feature is present in the free versions of other game engines, so it’s a feature I’d like to see in Unity Free. Also, games published with Unity Pro don’t have the Unity watermark when started up.

Summary

Unity Free is a very powerful, giving you a feature-set that will allow you to make very complex games. The sheer amount of help online from Unity is astounding, plus the comprehensive Unity manual, which can be viewed offline, explains every part of Unity very clearly. The community is extremely helpful too, with forums accessible for those with questions on any part of Unity, and for people to show off their work, completed or in-progress. The speed of development of games with Unity is above that of most other engines, and the sheer number of platforms you can export to means that your possible audience is as big as possible. There are many built-in features provided to aid you in making all genres of game, such as terrains, particles, physics, lighting and lightmapping, and even pathfinding. With Unity 5 just around the corner, now is an exciting time to be a game developer with Unity. However, the free version suffers from some missing features, such as realtime shadows, post-processing effects, the profiler tool and render-to-texture, some of which are found for free in similar game engines such as Unreal Development Kit or Source. If you’re an indie developer and you’re looking for a fast but powerful tool to fuel your game, then this is a brilliant place to start. Unity is a game engine you won’t regret downloading.

If you have any opinions on Unity, then I’d quite like to hear them. Maybe you also have some other great engines you’ve used that you’d like to suggest to people starting out with game development too? I hope you’ve had fun reading, and have fun with Unity if you choose to have a go at it!

The Future of Project Spikes

Firstly, thanks for the support I’ve gotten from everyone so far in the development of Project Spikes. It’s really helped me through to this point, all your help and feedback has been excellent, and I’m truly grateful for all the support. From what I can tell, you guys like the individual mechanics that are in place right now, and most of the feedback is for “more levels”. So I thought it would be useful to detail my plans for the game

The immediate future

From now until about the end of June, it’s very unlikely you’ll see anything playable. That’s not because I’m giving up, but I have A-levels coming up very shortly (and they’re pretty important, they largely determine my future), so I’m going to be taking a bit of a backseat with the game for now, at least in terms of getting updates out. In the background, I’ll still be doing work on the game, but slowly, as I have rather a lot of exams to prepare for (15, that’ll teach me for being optimistic back in September, and choosing to resit a couple modules). Sorry to disappoint, but most likely, no new content until they’re over.

The ‘exciting plans’ bit

Now for the part where I tell you the super-awesome plans I have! I’ve mentioned a few times now about making a proper plot for the game. This is what I’ll be spending a bit of time doing over the next few weeks – taking the stuff in my brain and putting it on paper, in story form. That’ll give me a rough idea of what I need to work to, and what to concentrate on each update.

I’m also working on re-doing the models and textures for the physics guns. They’re okaaaaaay, but I want them to stand out and have an immediate impact, I want them to really define themselves amongst the multitude of other famous videogame guns. I will consider what other types of gun I can add in the future, but the Force Gun, Shotgun, Laser Gun and Gravity Gun should all work extremely well together, regardless of whether or not I decide to add any other guns.

Then I need to consider enemies for the game. It feels extremely lonely at the moment, and the existing turrets are very outdated, so I need to replace them with newer alternatives and more lively enemies.I have many ideas, which will link in heavily with the storylines I have for the game so far.

Then will come the level design work. I’m pretty bad at this at the moment, partially because I’m not a pro at Blender so I’m not very good at making interesting level models so I rely on modular geometry in Unity (that’s just a technical way of saying “I use loads of tiny panels for the floors and walls rather than make a model of the whole level”). That has its advantages, as I can quickly change things around, but it’s very slow to process and render, so I need a quicker option. Hence the next paragraph!

Probably ditching Unity for UDK

Yup, I’ve been tinkering around a bit with UDK (Unreal Development Kit) for the past few days, and while I adore Unity for its ease of use, UDK is just so much more powerful compared to the free version of Unity. It doesn’t steal away all the nice features like Unity. On the other hand, the Unity community and official support from Unity Technologies itself is amazing, and there’s no end of help for beginners and advanced users alike. I’ve found similar sort of help from Epic Games for UDK, and I’m sure their community will help me get to grips with the technology, but it is daunting at first due to its raw power.

I can see an immediate improvement in the way games feel in UDK as opposed to in Unity, mostly in terms of presentation. So expect to see nicer scenery when I get a new update out (or don’t, less pressure for me!).

You can take this as a 99% confirmation that I’ll be switching to UDK at some point, so I look forward to taking all the progress I’ve made so far and doing it all over again in an unfamiliar environment. Such fun! But who doesn’t love a challenge? Plus I’ll have a longer-than-usual summer to work on the game, so it’s also a convenient time for me to hone my skills and push my game development skills further.

Releasing tutorials and test levels separate from the actual game

I want to keep the story and plot for the game a surprise to players so that when they play the full game for the first time, they don’t know what to expect from the plot and characters in the game. To do that and still be able to show players new features and how the game will look, I’ll release a separate test level and tutorial package that will replace the current Web Player builds I’ve been putting out, which will have sample levels representative of the ones you’ll find in the full game. That way, I’ll still be able to gather feedback on what features work and which ones need work. The full release has an open-ended development window right now, as I don’t want to rush it purely to get a game out there, rather I want to perfect it as much as I can before letting people loose on the completed product.

If you’ve read upto here, have a virtual cookie!

Seriously, cookies are amazing, go buy one now. That’s it for my little chat here, but if you have any questions regarding the game’s future, feel free to leave a comment below. I wish I had some nice screenshots of how things are going in UDK, but all I have so far is a few broken concepts hashed together. I’ll get better though! In the meantime, I’ll keep you updated, so good luck in your own projects.

More Lasers, Explosions and Better Options – 22/04/14 Update

I’ve been working on something I’ve wanted to add to the game for a long while now – lasers that reflect off certain surfaces. In proper levels, these surfaces will have proper textures so that they can be distinguished from other walls and floors, but I’ve had tons of work to do lately so I’ve only been able to implement the lasers themselves, in the form of an improved Laser Gun, as well as new player-operated laser turrets.

spikes-86

Just walk upto these turrets and press “e”, and it will face the direction you’re looking in. When the beam collides with a reflective surface (in this update, the walls and floors of the room with the laser turret in act reflective), the beam will rebound off the surface. These surfaces will be used in levels to direct laser rays around obstacles and into laser receivers. This can produce loads of hectic-looking scenes, such as the one in the header image above, and could also lead to alternative objects that simply fire a laser in a fixed direction, as obstacles the player needs to avoid. The laser itself is a little bit wavy now, and collision points light up with a small particle effect.

Another thing I’ve been working on, as promised, is the new version of the Destruction Gun (which sucked), which will eventually become a shotgun/grenade launcher combo. It’s in a prototype phase so far, as in the actual mechanisms for the gun are there, but it’s using a recycled older model for guns right now, and on the whole, it lacks visual effects or sound, but the base mechanics work. To shoot the shotgun, left-click, and to shoot a ‘grenade’, right-click. The shotgun can destroy windows, and will blast away cubes and other physics objects, while the grenade will do the same, with a fairly large explosion radius, but this can hurt you too if you’re standing too close.

I’ve been working on a newer options menu too. The old system had presets for the visual quality of the game, which gives the player some choice but also restricts it in other ways. Now, you can change individual settings.

spikes-88

One of the options – aniso level – doesn’t really do anything right now; it stands for anisotropic filtering level and is redundant as it doesn’t work for pixel-y tectures like the ones in my game. If you raise the shadow distance too much, then you’ll see visible dark banding on some surfaces. But the rest of the options are pretty cool, and allow for a greater level of customisation, plus the colour scheme works much better now.

The “advance cubes”, as I’ve called them in previous updates, have been replaced with teleporters, complete with a smoother transition between levels (plus the darkening of the screen while pausing is smoother, too). The teleporters have cool particle effects too. They work much better than the old cubes, and eventually I’ll change the backwards cubes to new teleporters too.

spikes-89

Future Updates

Now, I have most of the gameplay features in place that I wish to be in the final game. I will add more and improve old ones as time goes on, but the current features are largely the ones that will stay in the game. Much of the work from now on will probably be on the game’s story, which I’m in the process of writing, and modelling new levels, as well as eventually trying to implement voice acting for proper characters in-game, which I’ve mentioned before.

From now, on, I’ll be releasing the game updates in a different kind of way. As the game’s going to be getting a proper storyline, which I don’t want to spoil too much by releasing updates every week or two, I will be releasing a separate build when a new game feature’s been added to see how you, my loyal players, react to it. That won’t be limited to just a gameplay feature, it could also be a layout for a level or a test level, or maybe even new textures. Then, when the time comes, the actual game, plot and all, will be released in a really really large update, although at this point I have no idea how much it will cost (if anything) or what the final product will take shape as. For now, you can play it here like always, and I look forward to hearing any feedback you may have. Have fun playing!

Saving, Loading, Texturing, Awesomeness – Project Spikes 08/04

spikes-84

Saving and Loading

The big feature for this week’s update is saving and loading. Along with this comes a standalone version of the game, as the Web Player doesn’t allow for files to be saved to disk on the user’s system. The standalone versions for Windows, Mac and Linux can be found on my IndieDB page dedicated to the game, and as always you can play the Web Player version in the usual place, however this won’t be able to save your progress and might be phased out in later updates. It’ll stay here for a while, as it’s a quick and easy way to test the game. Right now, the levels you’ve completed and the secret cubes you’ve collected will be saved, but as I make progress with the game, more stuff will inevitably need to be saved. The .dat file is saved in what Unity calls the ‘persistent data path’ – on Windows, that’s “Users/[user]/AppData/LocalLow/danielthenerdyguy/Project Spikes”. To save, there’s a button on the pause menu, it’s as easy as that. Plus on the standalone version’s start menu, there’s now a quit button that shuts down the game window. I watched a Unity live tutorial for the saving and loading stuff, and if you’re looking for a way to save stuff to disk on your game, I strongly recommend you watch it too.

spikes-81

New Textures and models

Also, this update I’ve added many new textures, just to make the game feel a bit fresher.

spikes-82

Not all of them are really in the game fully yet, but they will be added at some point. All except the top-left and top-center are present somewhere in the hub world, so look around for them. I used the two with loads of lines crossed all over it in a section of the hub ship to look like parts of the wall have been torn off, and you can pick up the tiles on the floor next to it in the same way as you’d pick up a cube. Which brings me to another point: you can now rotate stuff you’re holding with the force gun. I struggled to find a nice control scheme for this, but I settled on ijkl in the end, so in a similar fashion to wasd, i/k will rotate the cube up/down, and j/l will rotate it left/right. The particle effect for activating a powerup is much better now too – it’s basically the same thing, but more in-your-face. And there’s now a new triangular type of wall that solves some issues I was having with stairs, which I’ll be rolling out to other levels soon.

spikes-83

General other stuff

The Hub World is pretty much complete on the whole, albeit without a new skybox, which I’m planning to make by next update to match the new space/sci-fi theme for the hub. There hasn’t been much progress with actual levels recently, but I’ll get back to properly doing them in the near future hopefully. I’ve also experimented with new types of cube – you’ll find a few new red cubes in the level selection corridor, to the right of the door. These cube spin on one axis, so in future puzzles, they can be used for swing bridges that spin when cubes fall on them.

spikes-85

The future!

I’ve been working on a brand new gun that fires explosive bullets, and it’s working so well right now. The actual concept is in place, and soon I’ll be making the actual model for the gun. Along with this, I’ll implement an animation system for the gravity gun. The new gun will be an enhancement and replacement for the vapourising/destruction gun, as it doesn’t really have many uses.

That’s it for the latest update. On IndieDB I’ve created a forum where you can post your ideas and feedback, as well as report bugs and ask for help. Have fun playing!

The Massive “Yes-I’ve-Been-Gone-For-Ages-But-Now-I’m-Back” Update!

Why I’m a bad person

Okay. So, firstly, it’s been 38 days since the last post on here, and 53 days since the last actual update, which all makes me a terrible person. However, first there was Christmas and all the stuff that comes with that, like getting presents for people and seeing relatives, then new year, then suddenly I had every piece of work ever in the history of the universe to do for school. BUT, and this is a huge but, I’ve been working on the game through all of that and the main reason for not updating until now hasn’t been all these massive drains on my time (though they helped), but rather I wanted to do something huge for this update, so prepare yourselves for the Yes-I’ve-Been-Gone-For-Ages-But-Now-I’m-Back Update!

Development Hell

I’m a bit like a goldfish sometimes, in that I’ll look at something, think it’s amazing, then see something else and ditch the first thing. That’s exactly me while developing this update; I kept putting in all of my half-baked ideas and nothing got done fully. I meant well, I swear, but it delayed the update quite a bit. But, I’ve put in a new texturing system which should make the whole texturing process a lot easier and quicker for me, AND save on performance, I’ve expanded and improved a couple levels, and the biggest thing is, I’ve added a boss battle! And we all know everyone loves boss battles! So read on and be amaaaaazed *dramatic voice*!!!

Updated, improved and removed levels

spikes-51This, as you might recognise, is the hub level. However, it’s had a facelift, and a big one at that. It now serves as the hub for the entire game, rather than having separate hubs for each world. The blue building from before is for World 1, and upstairs is World 2, then as more worlds are added, you’ll be able to access more areas to find new levels. Also, due to loads of changes I’ve made to the level geometry and the texturing (I made a script that handles all of the texture sizes for me), everything should run smoother and I’ll be able to put more decoration in the levels. In short: it’s better, more shiny things.

In the hub now, you’ll find the levels 1-5 near your spawn area, a practice room (ie, the large room that was there before), and upstairs you’ll find the cube to go to the boss battle; however, that’ll only appear after you’ve beaten levels 1-5. Also, you won’t have all three guns unlocked straight away, but you’ll find them scattered in certain levels. The laser gun is needed to access World 2, which is way above the rest of the level, so it’s found after you beat the boss. There’s also a trophy room to view all the gold cubes you’ve found, as well as an incinerator which is there for decoration and because destroying thing is really cool.

spikes-49I’ve re-modeled the vapour gun too, so it’s not exactly the same as the other two. I tried getting all the animations and sounds to go with it too, but for some reason Unity’s animation thingy hates me and keeps giving me really horrific results, so no animations. Sad face. The force gun has had improvements too; right-clicking now holds an object in front of you, and then left-clicking will shoot it as normal, but you can only hold things for 5 seconds, and it’ll drain your gravit meter, and the object will then disappear 5 seconds later, although I want to tweak this system a bit, such as only certain objects obliterating themselves when they’re dropped.

No more lives!

Another thing to note: no more lives. I decided that they don’t really add anything to the game, and it’s much more fun to try a really hard part indefinitely rather than being limited to 5 tries. Because infinite fail is funny. I’ve added a load of stuff to the tutorial level too (well, I’ve completely redone it, the old one was pretty bad, this it less bad), and it covers stuff the old one didn’t.

spikes-52In addition to the texturing stuff mentioned earlier, I’ve added some sort of moving textures, like neon signs, kinda. They’re dotted around the place as decoration, and to provide directions and other information. They’re used as decoration in the super-sexy new start menu, which is vastly improved on the old one, and you can see an image at the top of this post.

And finally, the boss battle!

Yes, it’s the part you’ve all been waiting for: a boss battle! He’s called Squoid (because it sounded nice, no other deep meaning), and he’s basically a big blue cube thing that launches himself at you and fires spiky balls of death at you in a fight to the death in his lair.

spikes-50He might not look like much, but he’ll wreck you. The idea is to use the force gun in some way to bring him down, but I’ll let you figure out the details, because I don’t want to spoil the fun of finding out for yourself how the battle works. His lair is absolutely magnificent though, and you should have fun having a look around it.

spikes-54There’s so many other little additions that I can’t list them all here, I can’t remember them all. Little things such as the gun icons in the corner being animated and zooming in when you run along with everything else, a range of new billboards, and small changes to the positioning of items in some levels to make it more convenient. However, through all of this, I haven’t been able to update all the levels, such as the Testing Area, and the promised World 2 Level 2, which I started to develop after the last update, but before updating the texturing system, hence these levels will appear as a blur of pinkness and glitches.

Also something I just noticed, the WebPlayer build for my game has only just broke a megabyte in size! It’s massively compressed, evidently. That’s technology for you. And if you don’t like external links or if you just think my Dropbox public folder is icky, there’s a new Project Spikes page at the top of this very website! Now you don’t even have to leave! Although, to be honest, it’s better playing through the link at the bottom of the page (same as always, why haven’t you bookmarked it yet?), as the page on this site is a bit broken. WordPress hates Unity, obviously. But, have fun heeeeeeeeeeeeeeeeeeere!

 

 

 

 

 

 

 

The Half-Finished Update

It’s been ages since I did an update, but lately I’ve had loads of work piled on me, so I haven’t had much chance to work on it, so there won’t be an update quite yet. However, I’ll use this as an opportunity to ask you guys what you want to see in the game, what improvements you can suggest, and what’s broken horribly (which I’m guessing is loads). I also have a couple new additions that will be in the next update to show you!

Slightly improved graphic-y stuff!

spikes-44I’ve made the signs at the beginning of each level a bit more detailed, and I think they look better with a darker theme. The old ones are on the top, the new ones on the bottom. As you can see, there’s now a sign for World 2 Level 2 which means…

…Super-Horrible Maze Level!

spikes-46I went a bit crazy with World 2 Level 2 so far, and it’s a bit mental. There’s dead ends everywhere and loads of traps (which I’ve yet to put in). Good luck with that one, it’s rather horrible.

Nicer GUI Things

spikes-47This new GUI is shinier and GUI-ier than the old one, and generally functions better than the old one, as it doesn’t use Unity’s native GUI classes, which are pretty slow. I’ll have this update out in the near future, although I’m not sure how long it’ll take as I’m not sure how long I’ll have to work on it.

Anyway, have a good Christmas (if I’m not done with the update by then), and I hope you have feedback, any would help!

 

 

 

Space and Actually Fixed Levels – Project Spikes 01/12/13 Update

I’ve actually fixed stuff this week, and now it’s update time again!

spikes-40The Testing Area level from last update has magically transformed into a space level, complete with loads of particle effects for the thrusters. I’ve made another performance improvement by having differently-sized level geometry and textures. You won’t see any visual change on your end, but it does shift a lot of work from the CPU to the GPU and hence gives a better framerate, at least for me. This level has all the powerups and guns from the old testing level, but is laid out differently and looks better, with a new space skybox and windows, which you can actually smash with the destruction gun or by flinging cubes at them with the force gun.

spikes-41

 

I like the texture of these, and the transparentness of them (I’m pretty sure that sentence makes no sense, but that’s why I don’t study English). This level’s gravity is a tiny bit decreased too, so stuff will fall to the ground slower. This level will probably be used in the future to provide access to bonus levels, but currently it’s just there for you to play around with powerups and guns.

spikes-42This is the new-improved-shiny-awesome World 1 Level 5! It’s so much better than the original, but keeps all the basic concepts from the level, such as the switch platforms and radial platforms. It also adds in a small maze part, and some turrets, as well as a high jump powerup. Along with that I’ve improved World 2 Level 1.

spikes-43The new version of this level adds a second floor and is generally better than the original in most ways. I’ve also modified the pause menu so you can access the options straight from there, and when you try to return to the main menu it’ll ask you if you’re sure, just in case you click it by accident. That’s basically it for this update, which you can play here. I hope you have fun playing!

-Daniel