A brand new game
for Windows, Linux, Mac, HTML5, 3DS Homebrew and more
16th December, 2008
A sigh of relief, as the game is finally in an upload worthy state.
I'm sure there's plenty of bugs, mounds of forgotten features, and odd little untweaked things that aren't quite right, but what's here is plenty enough to be counted as Release 1.
Download Alien Deathmatch 2 3Mb!!!
The game, in it's current Release 1 state has quite a few new features from those in AD1.
Of course, the Breeds are more pronounced. Faster breeds, exploding breeds, and even breeds that drop pickups are all strewn around the world, ready to be blasted away..
Teleporters are in, and fun to run through! Step on a Green tile to be flung to another Green tile, randomly on the level! (Assuming they're there, of course!)
Once used, all teleporters are disabled for a short while, so use them wisely.
Highlighted levels, (once you upload your highscores!) will display today's newest level, along with yesterday's, and the day before's.. My guess is, if anyone's going to playing a level, it'd be one of those!!
And, of course, the greatest new feature of them all..
And there's an Editor!!!
Draw the level, fiddle with the sliders, Hit B (or click the joystick icon) to test it out, make sure you give it a name, and then save..
Next time you upload your latest highscores, the game will magically upload any new levels you have, too.. (one at a time, of course, we don't want the server exploding!!)
Share the .lev file with a mate, and you can both play peacefully.. Or, give it time, and it'll pop up on the daily download list, for everyone else..
The new stuff might be fun, but I'm sure there's plenty more..
If you have ANY ideas, pop 'em into the comments, and I'll see what I can do.
This is only Release 1!
15th December, 2008
A more accurate title would be "Just like Windows Vista, here's a list of things I told you I'd be putting in, but haven't yet bothered to, so will be missing when I release the game.."
Except I'm one person, and have spent four weeks doing this.. Not 100 people working for 4 years...
*sigh* Vista sucks..
1. Achievements, Good, bad, Pwnage, Suckage, any and all.
I just haven't gotten around to adding these yet.
There's a gap on the titlescreen, that's where they go, but they aren't quite there yet!
2. Extra Weapons.
Like it or not, the old weapons are pretty much the current ones!
Although each weapon's had a few tweaks here or there, they're all pretty much as they were..
FFS, I still haven't put a pause button in. This should really be #1 on the list!!
4. Delete Levels
If you don't like a level, you can remove it from your directory. Nice and simply, the level will vanish, and you won't be bugged by it again.
That is, unless the day's downloadable level IS that level, and then it'll pop right back up again, over and over, until it's filtered from the list...
Still, that's progress for ya!
What I haven't done yet, is allow certain levels to be disabled server side.. So, I can't really kill off levels entirely. Should be easy enough to do, but like the other things in this list, I just haven't gotten around to it yet.
There's also an "Updated Edition" thing that I really oughta add before I upload the first proper release.. Releasing without it would only complicate things later on, when folk have all kinds of different versions.
All of the above might yet miraculously appear, but we've got some guys fitting us some new windows tomorrow, so I probably won't get around to popping them in at the last minute.
Hopefully the new windows aren't Vista..
Additionally, I really hate Sorting things! I'm not sure why, but every time I code a sort routine, it never works first time around.. By this point I really should know how to do this, and am always amazed when it doesn't work again!! The Level Sorter is currently stuck in an infinite loop, apparently swapping two levels around, over and over again. Bloody thing.. That needs fixed, and I'm off to go do that now.
Literally Hours away!!
14th December, 2008
Sometimes Copy and Paste works..
Having finally put the nice simple swooshy spawning sound back into the game, and got a couple of nice test levels up and running, and inside the scoreboard, and then got the whole "Nth position on the online scoreboard" display going, I decided to move onto more pressing matters.
I already copy and pasted most of the control scheme stuff early on in the project, so to help give the game a little consistency, and so as not to have to recode the whole thing, today I copy and pasted the visable control scheme settings on the main menu. It worked fine before, so there was no need to "fix" it...
Sometimes Copy and Paste doesn't work at all..
And then I loaded in a test level, and wandered around, shooting the aliens with a Joypad.
Or, at least I would've, had the player been shooting!
I quickly flicked through the available control schemes, only to discover that by some inexplicable bit of messing up, the player could no longer fire his weapon... ARGH!!!
I checked the code..
Looked at the code..
Wondered what was wrong.
Randomly tweaked some more.
Started to panic..
But usually Copy and Paste does actually work..
And then, about half an hour later, I realised that the level I was testing on was a "Pacifism" style level, and that I hadn't included any weapons on it..
I need to shove a reminder on the screen somewhere for that!!
So, the control schemes are all nicely working as they should.
The menu now has highscores working properly, and even a couple of nice shiny buttons to set off the Highscore Updates, and switch over to Editor mode.
Everything's coming along great.
We're nearly there!!
13th December, 2008
In the old game you could create levels simply by making little 64x64 pixel .png images. The game would load them as it found them, and convert them to levels on the fly.
This was handy, but it didn't let you control all the possibilities of spawning, weapon types, and things like that..
This new one does!
But what if you really liked your old levels?
It's an extremely complicated procedure, so I've put together this step by step guide to help folk import their old levels into the new game.
12th December, 2008
Now I remember why the original Alien Deathmatch did this, too!
If I check a directory for files (level directory!) to compile my list of levels, and then add a level in there (Downloaded) and then recheck the directory to make a new list of levels, Blitz has managed to keep a cache of the directory, and so refuses to show up any new ones.
The only option is to close the game, and reload.
I'll have to create my own list of files, and update it as I go..
Still, the upload and download is now working!
I can make a level in the editor, play it in the editor, save it, then the next time I update my highscores, up it goes!!
Everything looks nice and secure, too so I think I'm ready for a release come Tuesday.
Meanwhile, though, I've plenty of bugs to tweak, and I have some sounds that I forgot to add (The enemy spawn for one!!) Silly me..
A few more days to go, and you can all be playing a proper version!
11th December, 2008
That there's the first official online highscore!
o/ YEAY! o/
But, boo that I had to manually copy and paste bits of text to get the level into the database in the first place!!
I'm now working on getting the whole upload/download thing working again. Shouldn't take too long, but I think I'll have to discard the whole "Bag" idea.
As much fun as it is to have a constant supply of new levels, it means you won't be able to design a level, give a copy to your mate, and then both play that level to beat each other's highscores.. (because, the level being in the bag would mean it's not keeping a highscore table.)
The other option, then, is to upload all the levels into the big-ass table, and then randomly pick levels each day. Have a record of the last 5 random levels, and download those downloaded and pointed out to the player, in order that there's a nice list of highlighted levels on display.
Not too sure how well that'll work out, though.
I might need to keep further track of picked levels, so that it doesn't repeat until it absolutely needs to...
Plenty more work to be done!!!
10th December, 2008
I'm not ignoring it!!!
I woke up late, today, and time seemed to slip away fairly rapidly.. I spent about an hour browsing online shops, buying a cheap copy of Sonic Unleashed for only £20 (Gamestation) and an el'cheapo Digital Photoframe (£30 Aria.co.uk), and then surprisingly it was time to settle down, eat, and then go to work.
Where my time went, I don't know!!
Still, I did post the demo yesterday, so that's ok.
Meanwhile I think I've figured out what my NEXT larger project will be.
I sat for about 10 mins today, and drew up a nice sprite for a remake of the Amstrad/Commodore/Spectrum classic "Turbo the Tortoise"
(New on the left, original on the right, ? to symbolise "I should probably redo this!!")
I'm not 100% sure if that'll be the game that I do next, but if it is, Turbo would probably be a wee bit chunkier to fit his older sprite better. ...
Well, it's an idea, anyway.
Either that or I do JNKPlat 09, but it feels a bit too soon to be doing that.
9th December, 2008
I didn't get time to fix this up properly last night, or this morning, either.. Blame Alien Deathmatch!
So, this week's game is exactly as it was yesterday, when posted over at Socoder.
Wednesday Workshop #180 asked us to create a Darts game, so here's a quickly made one.
A target is written on the scoreboard, and with your three darts, you have to try to get as close to that target as you can.
Nice and simple.
But not very good!
You can download it here if you can be bothered!
Otherwise, you can download this demo of Alien Deathmatch 2 instead..
8th December, 2008
Folk who previously visited my DSBrew site will now find themselves plonked into this site.
This is AGameAWeek, and here I write a game a week! Just as it says!
I opened up my own little DSBrew site a while back, and started cataloguing DS games, but soon realised that keeping a DS Homebrew catalogue + writing a game a week didn't really work that well together, so DSBrew got left behind.
Up until today I've left it be, rotting away in an unused corner of the internet..
But.. There have been 4 new members join the site in the past couple of days!
It's a bit weird, considering no-one's joined there in the past 3 or 4 months.. The total is now 14!
And, really, I'm not sure if they're spambots or not.
I'm not taking the chance of spambots infecting my otherwise clean server, so.. Off it goes.
DSBrew's now an officially dead website. What was is no more..
For the regulars, normal Alien Deathmatch blog stuff is inside..
7th December, 2008
Today I started on the online highscore stuff.
Having sat playing AD2 for a while, again, last night, I figured I'd better get a move on and finish the basics off.
So, into the database we go, and I've set up the tables. I implimented the basic checksums to ensure each level is unique enough to qualify, and I additionally added a secondary "Bag" table, that can hold new levels until they're ready to be downloadable. Always something new, ready and raring to be sent!
Next up, work on the script that handles it all. Should be fun!!
I might also add some kind of web-based system, too, so you can check out the online highscores from your browser. Although I'm not too sure how that'd work, what with there being an unlimited number of levels, and all!!
For reference, this is the previous game's Online Highscore thing. It's not all that fancy, but it's good for checking out the latest scores!
Might be fun to turn that into an RSS feed this time..
5th December, 2008
Today I did a few fiddly little menu based things..
1. The menu->Level switch now plays the "Beeeoooo-weeeee!" sound as the level starts.
2. There's a progress bar whenever a level is being rendered. ('cos it takes a teensy bit longer than it should! 160x160 tiles over a 5120x5120 pixel area!!)
3. When you die, you now go splatter, as opposed to the game just stopping, and unceremoniously dumping you back at the menu again.
4. The screen fades to red, then black when you die, and then waits for your name if you've got a local highscore..
All those things should be expected, but weren't in the game until this morning.
But now they are, so the game's a little closer.
I've also been tweaking some other ingame things..
1. I was still not sure about the AI, but a bit more tweaking this morning left me a little less alive, more often!
2. The Green and Red splodge weapon was never that great, so instead of being a slow moving blob of blobs, it's now a slow moving blob of Kabloowee... It leaves the same blast wave as the little red bombas do, making it a much more powerful weapon.
3. Upping the power of the Blue Swirly Laser thing because once you got up to the really tough alien, it was hardly doing anything.. And what's the point of a "Super" weapon if it's not doing anything?
4. FINALLY getting rid of that silly mousepointer, ingame, and replacing it with the crosshair.
Meanwhile, I've still not added any online components, whatsoever, but I am at least considering some nice new elements for the game itself, which should be easily doable.
4th December, 2008
It's getting there! Slowly but surely.
I got the levels to doodle themselves, and everything swooshes around quite nicely (if a little blocky!)
I've had to implement a menu buffer image to keep the speed up (even if it is still a teensy bit slow) but everything's looking good for the menu.
At this point, I'll probably have a "Hold mouse over X object" thing to reveal the scoreboards, or something, because I'm not entirely sure that it'll all fit in the space available.
Still, it's nice to have a menu system, and with that, a working editor, and some nice saving and loading, this game's starting to look more and more like a complete game every day.
Shouldn't be too long, now!!
.. Now to add the 17,000 possible control schemes that were in the last one..
Uhoh!! I see rewrites ahead!!
3rd December, 2008
The main menu of AD2 is still pretty much a blank screen! Albeit a red blank screen, with a couple of white rectangles sliding into place..
So is the addiction of the game at this point, that it's quite easy to click the mouse, and accidentally play for 20-minutes.. whoops!
I have managed to tweak a few ingame things, though. And the Menu -> Game -> Menu transitions are more or less working, except for one small thing.
I'm not sure how to fade in a level, at this point.
The last game started off with the small image of the map, it scrolled to the center of the screen, and then zoomed in to become the real map.
This time, that can't happen.
Unfortunately, the switch from 3D background to 2D background has killed that nice little effect, so I'm going to have to come up with something nice, and fluffy, in a vein attempt to beat it..
I'm not sure what that is, though!
Last time in the main menu, you had lots of little maps to flick through. This helped you choose which map to play at a glance. Unfortunately, this time, that probably isn't going to work, since each map can be 160x160 pixels.. Unless of course, I only show a couple of maps onscreen at once.. Which I'd rather not end up doing..
I'm currently considering an on-the-fly map doodler.
The player clicks a level name on the left, the previous map slides out, and the new map slides in..
This way, not only do I limit how much is onscreen at once, but I can also redraw over the same map image, over and over again.. That's SO much easier to do, since we're not holding every single map in memory, all the time!!! (yikes!)
Also, I'm thinking that I might leave the map in memory.. I haven't added any real changes to the level at this point.. So, a level layout is always the same, even if you splatter it with blood!
What this means is, if you start the same level again, I can quickly get it going without then having to sit and re-render the whole map each and every time.
Obviously, picking a different map will require the re-render, but I'll probably be able to do that during the map doodler thing, and keep everything up to speed..
Either way, it'll mean you can restart the same level quicker this time, which is always handy.
Now, less of the typing.. time to get back to that menu.. again!
(Oh, and the editor now loads and saves without any issues.. I've been playing 3 or 4 different levels )
2nd December, 2008
Another week working on Alien Deathmatch means another week that I've not done AGameAWeek, so it's back into the big bag of failures to see if we can dig anything new out.
But, the lack of anything new, and finished, doesn't always mean nothing on this Blog.. Let's bring back the old "Experimental" tag from way back when, and show off a few random bits of unfinished garbage.
30th November, 2008
Today, I really need to buckle down, and pad out the menu a teensy bit.
As you can see, it's... a little bit empty right now!
I'm still not sure how everything's going to fit onto the screen, but I found a nice font last night so it shouldn't be too hard to get everything nice and padded out, whilst still being jam packed with menu-style goodness.
After that, I really should start to add some kind of scores into the game! I haven't yet bothered to do that, what with all the testing and stuff, so it's about time it went in there.
Menu, scoring, multipliers, super-weapons. That's the main 4.
Once those are in, it's time to throw up a small demo edition for people to try out. With any luck, the game should work!!
Then I'll carry on building the editor, finish off the online highscores, and get everything neatly packaged for a proper release.
I'd say it should take no more than about a week, but then I also have to be 100% sure that the game's "DONE" before I upload it with the highscore system attached.
There's nothing worse than finding a stupid silly bug that people can score millions of points on, just after the thing's been uploaded!!
30th November, 2008
Yesterday was my long work day, and since I didn't get up until about an hour before I was meant to go, I didn't really get much work done!
Still, no matter, today's a longer day..
Unfortunately, most of today was spent playing GTAIV
... Note to those who are getting used to my "Play it, now make it!!" habit... I'm not going to make a GTA game!! That would be nuts!
So, there's nothing to report today, other than the fact that I'm enjoying GTAIV.
I'll get back to work tomorrow!
28th November, 2008
With the editor in, pretty much, full swing, I'm heading back to playing with the bugs again..
Having been undecided for a while, I eventually decided that the green bad guys should explode with a nice little puff of green smoke..
This is what happens when you turn off the death routine, fill the screen with Greenies, and then touch a Bomba..
Obviously that won't happen in the real game, because the Greenie's would've killed you minutes before this situation arises, but even still, the framerate's holding on at 37fps.. That might not seem a lot, but this is running on my rubbish "Let's check it works AT ALL!" Celeron system, whilst Winamp's playing the Sonic R soundtrack in the background...! (Winamp takes a lot out of a Celeron, these days!!)
So, I'm pretty happy that the game will keep on ticking.. Nice to know!
More to come!
28th November, 2008
I'm quite happy with the level compression, now. Things are nice and trim, and everything's fitting into a small enough area.
So, today I'm thinking about how the server should work.. Note, I've not added the server yet, but I'm definitely getting prepared! What I've decided to do is implement an Author name and Level name directly into the checksum.
This way, when the server checks your game for new levels, it can automatically dig out the new stuff, and it'll know what it's meant to be doing. You also won't be able to rename a filename, and have your own silly highscore, because you renamed someone elses level to "My Copy for My Highscore.lev!" or something.. The original name's kept at all times, so everything should be good.
As with AD1, whenever the game does find a new level, it'll nick it from you, and pop it onto the server. AD1 would send you two new levels every time you've played every other level, so long as there's any levels left on the server.
It'd be a bit quiet about this, though, so this time I'll make a bit more of a song and dance about it.
It'll tell you when it's stealing your levels. It'll stuff it into a great big bag of random levels, and then .. perhaps daily, it'd send you a new one. I'll get the server to pick a level at random, each day, and then send that out to everyone that plays. The level will of course be saved to your system, but it'll only ever be sent out once. If you miss it, you've missed it.... No going back!
My hope is, that if everyone gets the same level on a certain day, it'll lead to more competitive highscores. Whether or not that'll work, we'll have to wait and see.
Meanwhile, it'll keep track of the random bag of levels, and probably let you know how many are left.
I'm thinking that, maybe, if the bag gets below about 14 or so levels, that it could switch to a weekly level instead.. That way the game would last a little longer, depending on how many people are building and uploading their levels. Keep the flow going!
And that's a lot of work that still needs to be done.
Still, it's good to get these things written down, and the thought processes churning on.
Meanwhile, I have to come up with a nice menu system that's not as "Obviously just a big menu" as the last one. I say that, but there's still a whole lot of stuff to show onscreen, anyway!! If there's lots of levels, it'd probably be a good idea to shrink the text size down a bit so I can fit more onscreen. And then there's the achievements to fit in, and the online highscores, and message of the day, and a whole big bunch of other stuff, too. Whew!
I might nick the NXE idea of having levels above one another, highscores if you scroll right..
That'd be nice.. And since the PC doesn't have a really really really shit DPad, it'd mean you could scroll left and right without accidentally ending up in a completely different section, because you accidentally hit up.. .. Oops, seem to have whinged about the Xbox a wee bit there.. Still, this whole game's appearing because GW2's so damn blurry, so I might as well moan about other things, too
More to come.. (game making, and possibly whinging, too!)
27th November, 2008
To stop my head from exploding from all the compression stuff, I decided to play with the theme tune, today.
First off, I tried something different.
It was rubbish.
Next up, I tried the old theme, but rejigged.
It's not terrible..
But it's a shame that it's not better.
I'll be tweaking it along the way, and seeing what else I can come up with.
I'm not sure what'll happen ingame, right now. The last game didn't really need it, so I don't think this one will, either, but if I feel it does I'll probably head over to the ModArchive forum, and request whatever bits and pieces folk there can send me. It's either that or you have to put up with even more of my rubbish music!
Aw well, enough playing with music.. Time to get back to the real work!
26th November, 2008
Today's work has been mostly of the external variety.
First off, compressing a level..
I'm taking 160x160 pixels, each one being around about 16 different colors (give or take, depending on what walls/floors/etc I bother to add.) and trying to bundle them up into a teensy tiny bit of data.
To me, compression's a fun time, where you get to play with lots of fiddly numbers, and chaotic maths, just to get large things down to size.
Today, however, .png is annoying me.
Because my 160x160 is down to about 3716 bytes and png's is 1007..
But at least my version is a neatly formatted string, and not a nasty mess of binary data, which means I'll be able to upload and download these things in a relatively easy manner.
I'm still working on the compression, mind, so I'll probably get it down a teensy bit further still.
Meanwhile I'm starting to think about the uploaded highscores, and how I'll be able to keep track of them. You might be aware that I've already created a nice highscore system for basic games, so I'll be nicking parts of that code. The checksums, the user handling, and things of that nature will be grabbed and used in this game, since they work well enough.
I'm also going to use shorter checksum values to check each level between the player and the scoreboard server. It'll help relieve the strain that the last one took. (The previous one used the whole level as a checksum, so entire chunks of data kept being sent back and forth each time you updated your highscores!!! Hey, it worked, stop moaning!!)
Hopefully I won't end up with any nastily clashing levels, and if there are any clashes, I'll implement some kind of double checking system to be sure of which one's which. (!)
With all this input/output/overthenetput work, there's not much to show off, really. But rest assured that the game's coming together little by little..
Even if it's not actually loading the saved levels, or doing anything over the internet, yet!!