Psychon 2 is the sequel to an old game I wrote for the Net Yaroze PlayStation hobby system back in 1998. For some reason that game gained a cult following and I’ve always wanted to have another crack at it.
The story is a simple one - a robot army has taken over a large space station and disposed of the inhabitants. It’s your job to go in and clean up the mess. That is, find and destroy the robots before they dice you up like a prize turnip.
The original game was lacking in a few areas - something I hope to address this time. The levels were quite bland. With Defold’s multi-layered tilemapping setup, it’s much easier to create more varied scenery without resorting to multiple variations of the same tile.
So far, I’ve got a few graphics together and built them into a test level. The player can navigate the rooms and corridors and shoot any robots they come accross. The robots currently have only rudimentary AI and don’t attempt to attack the player.
That’s about it so far. I’m not anticipating a long development cycle for this - maybe couple of months.
Short animation
Oh yes, I should have said! Win, Linux, OSX and probably Android. I’d like to release an iOS version too but don’t currently have access to the hardware to test on.
That’s the beauty of Defold - you can easily release on multiple platforms without any major re-writes.
I’ve now sunk quite a few days into developing Psychon 2. A surprising amount of stuff has at least a working implementation. Still lots to do!
Various routines for looking after pick-ups are working. Weapons and ammo management is all done (for now). I’ve added a few sound effects and a rudimentary front-end just to show the state handler is working.
AI is probably the next thing to look at. Right now the enemy robots just mill around and don’t notice the player at all. I’ll likely use a simple state system for them. Sleep/wander around/attack player/run away sort of thing.
The only thing I’m not sure how to do is handling the different levels. I’m putting different levels in their own collections and a main game collection that has all the common stuff. Not sure if that’s going to work - I don’t want to end up duplicating loads of stuff if possible.
Other stuff still to do is ‘the shop’ where you can spend credits collected while playing. And maybe some interactive scenery type functionality - just something else for the player to do whilst taking a break from running and gunning.
I’m finding the particlefx feature of Defold extremely handy.
Regarding levels: You’re doing it right and putting each level in its own collection. Then load and unload levels (collections) using collection proxies from some kind of main/handler collection.
Also, in my levels, I add my common.collection (“Add Collection From File”), so I can easily maintain the things I need for each level: starting position, level script etc.
It’s been another fairly productive few days continuing development on Psychon 2.
The enemy AI has been improved - the little robots now chase after you when they see you. I wrote a line-of-site function using vectors for this before noticing there is functionality already in Defold to cast rays. I’ve not looked at this in detail yet but will modify the code to use physics.ray_cast if it turns out to be suitable.
Sentries have been added and have turned out to be quite formidable enemies. There’s a trick to defeating them though! They work similarly to the robots and have a proximity trigger using a collision object. They’re fixed position but can rotate and shoot laser bolts at the player.
Some other peripheral stuff has been added or improved. The in game OSD has been neatened up and various fades and transitions between the front-end and the game added. These help make it feel more like a cohesive game - though there’s still lots to do.
Next on the list is making the mini-map - something the player will likely need in order to track down the crystal fragments on each level. Even I get lost in there sometimes
I’m putting off re-arranging the various collections to allow different levels to be loaded. I’m not confident yet I know fully what to do. There’s plenty of reading material in the API reference and here on the forum to help though.
I’ve mostly been doing a bunch of small fixes and improvements - nothing worth detailing here.
The main addition to the game is the ‘wayfinder’ device which is similar to a compass and will direct the player to the nearest crystal or to the teleporter once all four crystals have been collected. In a way, this is plan b. Originally the mini-map was going to have various markers but I found dynamically changing a gui texture to remove collected objects was not feasible. Still, the wayfinder is nice and will eventually be an item the player can buy from the game shop.
Another addition to the project is collaborator who is going to help me out building some levels. Fortunately he is OSX based so will be able to provide feedback on the games performance on that platform.
Honestly, I haven’t thought about a price point yet. This will be my first non-free release so I’ll need to do some research before settling on a price.
A long weekend of some quite technical programming has come to an end. I finally bit the bullet and refactored a load of stuff into different collections and collection proxys in order to load and unload different levels. Quite a lot of new stuff to learn but it’s all working smoothly now.
A lot of work has gone into level design - I think in the end more time will be spent on building the levels than actually making the game itself. That says a lot of the speed at which you can get things done with Defold.
New additions include the ability to ‘strafe’. Previously the player spent a lot of time running away from things to get enough distance to turn back and start shooting. Now the player can walk backwards or sideways while still shooting forwards. This should really help the game-play and has made the game somewhat easier to play. This will allow for some nastier enemies to appear and not be too dominant.
Various new tiles have been made to vary the look of the levels further. This does increase the time needed to make each level but I want them to be varied and rich - unlike Psychon 1 which had bland levels that all looked the same.
Next on my list of stuff to add is hidden areas and access cards to open secure rooms containing special items. For some reason, I’ve wanted to add an airlock system to a game for ages so I might attempt that for Psychon 2.
Lots of other bug fixes and improvements have also been made when the need presented itself.
Thank you for the update, enjoyable read as always! I’m amazed by the speed of which you guys here on the forum pick up and build cool things with Defold! Keep up the good work!