Silly Adventure Game

Faust

Well-Known Member
27 September 2021
725
467
63
47
Recently I revisited some very old favourite video games from the ZX Spectrum era, via a handy emulator. They were collectively known as the 'Magic Knight' games, these being Finders Keepers, Spellbound, Knight Tyme, and Stormbringer. Anyway, it's kind of a forgotten style of game these days, being essentially a 2D adventure game with minor platforming elements. They were a precursor to the later point-and-click adventures, from before mouse control was really a thing.

Anyway, it got me to wondering if I could make something similar myself. The graphics would be relatively minimalist to reduce the workload, though with modern technology I can improve on the animation at least, as well as providing some quality-of-life changes, like contextual actions to reduce the reliance on text menus, and removing the annoying 'instant death for making a seemingly innocuous choice' problem that the old games suffered from drastically. (Example: at one point you're walking along on an inhabited asteroid and suddenly, without any kind of warning, you die from deadly gas. At the very least there ought to be a warning sign!)

So I'm currently experimenting with character design and simple Unity 2D animations to see how viable it is.

With this in mind, say hello to Captain Minty Floyd. Constructive criticism is welcomed!
(N.B. the colour scheme isn't the final one, especially the skin tone which - like hair and shirt colour - are intended to be customisable. I have to use these specific colours to make that possible.)
Minty Floyd.png
 
Ooo, minty fresh! I got to say that I do love that design!

I'm not as big on adventure games, having grown up mainly a console gamer, I didn't get exposed to the genre until later, but I do love the charm of many of those games. Heck, I don't even mind the deaths so much.

I'm already getting Space Quest vibes from this guy, have you written any background on him yet? He looks rather tense at the moment.
 
  • Like
Reactions: Bunny Lvr
Got some basic ideas. He’s a cosplayer who gets mistaken for a real captain during a crisis, despite the fact that his insignia is just printed onto his shirt.

I’ve also a vague idea to make him asexual, to subvert the common trope where the captain goes around banging every alien female he can find.

He has other expressions, made by swapping out the eyes and mouth, but he has ‘resting hero face’ so he usually looks like that.

I remember the space quest games too, they were pretty fun!
 
I love the concept, the idea of an unlikely hero getting thrust into a situation well above his station is a fitting one for adventure games and I can't help but giggle at the thought that an okay at best cosplay got him mistaken for a captain.

I don't really have much to criticise about your art, it works well! I would love to see what you have planned for the story and game itself!
 
  • Like
Reactions: Bunny Lvr
I love the concept, the idea of an unlikely hero getting thrust into a situation well above his station is a fitting one for adventure games and I can't help but giggle at the thought that an okay at best cosplay got him mistaken for a captain.
Heh, that's because the only other person left at the beginning of the game is a raw recruit with zero experience in anything. It's a plot point that gets discovered fairly early on, but the remaining crew stick with him anyway because by the time they find out, he's already proven himself moderately capable (or very lucky) and they don't have another option anyway.
 
Heh, that's because the only other person left at the beginning of the game is a raw recruit with zero experience in anything. It's a plot point that gets discovered fairly early on, but the remaining crew stick with him anyway because by the time they find out, he's already proven himself moderately capable (or very lucky) and they don't have another option anyway.
Hehe, fair enough, sounds brilliant!
 
  • Like
Reactions: Bunny Lvr
I support your idea to create a video game. Start small and as simple as possible until you get mechanics to work properly. I've done some programing and some art work for hobby games, and I would highly suggest using a game engine, like unity or unreal, unless you have a lot of time and enjoy the challenge of creating things from scratch.

Good luck!
 
  • Like
Reactions: Bunny Lvr and Faust
I’m using Unity. In spite of its shortcomings, it at least lets me develop for PC on a Mac. I considered Unreal Engine 4 too, but it’s intended for 3D and its 2D animation options are limited.
 
  • Like
Reactions: Bunny Lvr
What sort of "wrinkles"? The animation is looking smooth so far, or is he not controlling quite right?
I've sorted most of them out, but there were a few. I've yet to find out how to add more sprites to the image or change its size without having to redo all the rigging and animation, for example. But the most annoying one is this: Unity has a feature called 'Root Motion'.

The animation works by way of a skeleton which controls the position of the various parts of the image and helps it bend naturally in the right places. This skeleton is attached to a patent object which is then animated using the physics system. When you activate 'Root Motion', it means you can bake animated changes to the skeleton's parent object directly into the animation so that it updates the sprite's position as part of that animation. In other words, you don't have to make the sprite go right and left at the right speed, and the actual speed can vary, making the walk cycle less smooth and more natural-looking.

The problem is though, it overrides the position decided by the physics system. The character can still go up and down with gravity, but side-to-side motion is governed by the animation. If you want to make the character jump, you either have to temporarily turn off root motion, or you have to manually animate the process along with the positions of the character as it flies through the air. This isn't great if, like me, you want to vary the direction and speed of the jump based on player control. You'd have to do one animation for each kind of jump - straight up, standing, running etc. Think of it like the jumping mechanic in rotoscoped games like the original Prince of Persia, Flashback or Another World. I wanted something more floaty, like Super Mario Brothers.

You could turn off root motion while jumping, but if you do that the character resets to their default unanimated position, causing the sprite to move instantly to a completely different part of the screen in the blink of an eye, disabling physics as it does so.

The way around all this isn't difficult to do, but it sure was difficult to find! There's a function you have to override in your base object that would normally apply base motion to the object. Overriding the function stops root motion from working, but you can manually apply it with a single function call. That means you can add some logic to decide when it's needed and when it isn't. So, what I've got is a little bit of code that detects if the player is in the air. If they are, it ignores root motion and operates completely under physics. It's simpler than it sounds, but it's not well-documented and took me ages to find. The animation tutorial I was following didn't seem to know about it, as its sample program only had a straight-upwards jump which works even with root motion on.
 
  • Like
Reactions: Bunny Lvr
I'm loving the sounds of those tools, they've worked a treat! Such a pain that the workaround for the jumping mechanics was tricky to find though.

The system does sound good for the likes of Prince of Persia, "cinematic platformers" that excel with that sort of smooth animation and fixed jumps. Now that you've mentioned Flashback, I kind of want to boot up my Mega Drive now and play that again.

Can't wait to see you apply that art and animation into gameplay! :)
 
  • Love
Reactions: Bunny Lvr
Can't wait to see you apply that art and animation into gameplay! :)
I'm expecting the platforming elements to be fairly light and simple. The 'Magic Knight' games that inspired me for this were pretty much just a horizontally-connected series of flick screens. In my favourite - 'Knight Tyme' - I think there was precisely ONE jumping puzzle in the entire game. The only other times you needed to jump at all were to get onto tables to pick things up, and to get on the teleporter.

Working on some basic background tiles at the moment, then I'll be doing object interaction. You need to be able to pick up, examine, combine and throw objects, but I've not decided on the exact interface for doing this yet. I want it to be fully accessible from a controller.
 
I'm expecting the platforming elements to be fairly light and simple. The 'Magic Knight' games that inspired me for this were pretty much just a horizontally-connected series of flick screens. In my favourite - 'Knight Tyme' - I think there was precisely ONE jumping puzzle in the entire game. The only other times you needed to jump at all were to get onto tables to pick things up, and to get on the teleporter.

Working on some basic background tiles at the moment, then I'll be doing object interaction. You need to be able to pick up, examine, combine and throw objects, but I've not decided on the exact interface for doing this yet. I want it to be fully accessible from a controller.
That's fair. Sounds great!
 
  • Like
Reactions: Bunny Lvr
I love minty! Also it's so cool you bring up ZX spectrum games, that was the console my dad had growing up and he introduced me to the game Starquake (on emulators as we don't have a ZX spectrum). I love it so much, it's one of my favourite video games and it has great little creatures. It's so hard to beat though, I've never done that! It's not like you die immediately though and it's fun regardless. It's possible to get it as an app (Spectaculator) and I think online too.
 
  • Love
Reactions: Bunny Lvr
I love minty! Also it's so cool you bring up ZX spectrum games, that was the console my dad had growing up and he introduced me to the game Starquake (on emulators as we don't have a ZX spectrum). I love it so much, it's one of my favourite video games and it has great little creatures. It's so hard to beat though, I've never done that! It's not like you die immediately though and it's fun regardless. It's possible to get it as an app (Spectaculator) and I think online too.
Aww, I used to love Starquake when I was a kid. I always felt bad having to shoot all the little critters.
 
  • Like
Reactions: Bunny Lvr
Things have moved on a little. Minty can now examine and perform limited interactions with objects on-screen.

To view this content we will need your consent to set third party cookies.
For more detailed information, see our cookies page.
 
Nice! Object physics!

Reminds me of Puggsy for the Mega Drive, that was a platformer that used object interaction and physics in its level design.

Can't wait to see what you do next :)
 
  • Like
Reactions: Bunny Lvr and Faust
Reminds me of Puggsy for the Mega Drive, that was a platformer that used object interaction and physics in its level design.
Now you're making me feel old.

Puggsy was one of the earliest home computer games to make use of a physics simulation. It ran like a pig on my Amiga, to the point that it was pretty much unplayable, but its physics were a big deal in its day.
 
Bit of trivia - the apples are just test objects and probably won't be in the final game, but the half-eaten apple has half the mass of the full apple, so I can test the physics better. Kneeling down to throw also reduces the force of the throw because he's throwing underarm, so really I should have thrown the full apple while standing and the eaten apple while kneeling, but I forgot which hand was which. The UI will eventually have icons to remind you which button to press for which object. You can also manipulate the object in your hand, use it on an object in the background as a tool, or combine it with a second hand-held object, but I've not programmed any test objects that react to these actions yet.

Next up will be making doors that you can open, close and walk through, and an inventory system to store up to five objects (that'll take a while).
 

Users who are viewing this thread