I'm going to be entering a submission for the competition - its called ZXombies: Dead Flesh, and its a flick-screen action survival horror inspired by The Walking Dead.
The game sees you as the lone soldier left from your squad in a city swarming with undead, after the zombie apocalypse. You'll have to escort the few remaining survivors between safe-houses, to reach safety east of the city.
Its an original title, so I'll get no points for conversion quality hehe.. but that's ok!
I'm targetting the 48k speccy at 50hz, and with 128k music. Still very much work in progress, but here's an early screenshot.
I had a blast with ZXDev15, so its great to be back (wasn't sure if I'd have time)... it's great to see some familiar faces here, and the quality of your games is already immense!
Last Edit: Aug 26, 2017 23:13:16 GMT by catweazle: added a subtitle to the name, to avoid confusion with an recent BASIC Jam game
Woot! Zombies! The party is never complete until we get zombies Seems like an original idea in an old subject for videogames, so very intrigued to see how it will be, although I am sure it will be a good game as Descending Dungeons was really interesting and very well executed title. Welcome back to the ZX Dev!
Hey, thanks everyone! I will keep progress updates coming, and am enjoying the other devblogs! I have just added a subtitle to the game name, as I noticed that someone has already written a ZXombies in a gamejam in the time since I first started development .. So the game is now "ZXombies : Dead Flesh" (see what i did there?)
Yes I'm using SDCC & ASM again, but this time a lot more assembler! The big problem I had with Descending Dungeons, was the size of compiled code - even on very high size-optimisation settings it ended up being twice the size of hand-written ASM. Also it ran kinda slow.
This time I'm being more careful, by avoiding creating too large functions which would have large cyclomatic complexity. The key is to split these up into smaller functions, and also as much as possible to implement these leaf/helper functions in ASM.
All of the performance-critical stuff like screen drawing, and sprites, I've written in ASM of course. The sprites are XOR'd to the screen, and their drawing happens directly after the interrupt to avoid flicker. Prior to that at the end of the previous frame, I've pushed onto the stack a big list of screen lines & sprite data pointers, so after the interrupt I just pop this data off and XOR to the screen.
The great thing about 'classic' zombies of course is that they're slow, so I don't update them all every frame: that would be impossible anyway with up to 16 onscreen at once! A lot of the gameplay so far is about guiding your survivor buddies through the zombie hoarde as they stagger towards you, in true Walking Dead style.. but if you get too close to a zombie Brute - they'll charge at you, so you can't get too complacent!
So basically by the end of the project, I intend to have used SDCC for all the complex logic which I would never want to write in ASM (life's too short!), and have written all the inner-loops and performance-critical stuff in ASM. And if I end up starved for memory again, I will probably need to hand-convert more & more C functions to ASM to claw back a little space. Ditto for performance, if I start seeing any dropped frames as the game logic gets more complicated.
Its coming along really well thanks, and I'm having a lot of fun with it too!
I've got the AY music playing if you load up in 128k (48k/128k are in the same TAP), and have been working most recently on the sound effects (beeper for both machines). Music isn't finished yet, but yeah I'm doing the music & graphics as well as the coding (hopefully they won't look too much like 'programmer graphics' though, hehe).
There are 4 weapons: pistol, machine-gun, shotgun and RPG.. You'll always have a pistol as secondary weapon with unlimited ammo, and can then swap your primary weapon throughout the game (same as Left 4 Dead). You need to be aware of the reloading time for your weapons, as you don't want to be left reloading with a zombie approaching you!
I'm blocking out the map currently, but basically you start in the city and have to lead survivors out the city, through the wilderness, to safety. You can take/leave survivors at safe houses as you wish, so you can gradually shuffle the survivors out of the city. But there's a max of 4 people per safe-house, and you can only have one buddy following you at a time..
If the survivor dies, they'll respawn at the last safe-house visited. Same for the player, but I'm undecided yet whether you'll get a finite number of lives or be able to repeat indefinitely.. maybe the latter, to be more in keeping with modern games.
All that stuff is basically working now, so now I need to make some more progress on the map which has a lot of empty screens currently! There should be 32 screens in all, which isn't a massive amount, but you will get quite familiar with them by having to navigate them multiple times. Once you clear a screen of zombies, it remains clear for a while - giving you a chance to lead the survivors across safely before the next wave begins to spawn.
There's also going to be 2 or 3 special zombie types (diverging a bit from Walking Dead here, into Left4Dead territory).. the Brute who is like a tank, does massive damage and charges when you are close, and a Fatboy who is like the Boomer and shoots toxic slimeballs. I've not got him in the game yet, but don't think he'll be too much problem to code.
Once I'm happier with some of the screens I will take some new screenshots, or try to make a video!
I'm planning to release the source-code & data with the game in case its of interest to anyone wondering how to make a Speccy game with SDCC/ASM (not that it will be a great coding example by any stretch of the imagination hehe, but it might help somebody!).
I will most likely be updating this link for a few further minor revisions before the closing date..
My game is not a conversion of anything, so I realise it will get 0% for that.. and I don't expect it to rank well enough for any prizes, but I do hope that people will find it a fun, challenging and fairly well balanced game. The inspiration was Walking Dead, but it has grown beyond that with the introduction of various different zombie types as the game progresses. I've had a lot of fun making it!
Good luck to everyone in the final couple of weeks of the competition!