Game Engine Ideas

Propose new game/software design concepts or new game/software ideas. They can be as whimsical as you like, just be careful you don't ask someone to make it for you...
Post Reply
User avatar
Joefish
Rick Dangerous
Posts: 2054
Joined: Tue Nov 14, 2017 10:26 am

Game Engine Ideas

Post by Joefish »

As a spin-off of this thread:
viewtopic.php?f=9&t=1987

Are there any potential developers who'd like to see a particular type of game engine made available?
I'm thinking along the lines of something where you edit screens, sprites etc. either on an emulated spectrum on in a PC-based editor, maybe write some simple scripted actions in a text file, then have a utility that pulls it all together and spits out a playable .TAP file.

Or although BASIC is fairly slow, some graphics engine that can be set up from BASIC then have the whole screen rendered in a single operation. This would have to be something simple, maybe static screens or a small number of moving objects.

There have been a few suggestions of game dev that have never gone anywhere. It would have to be quite generic without too many specific features to tie it to any one game.

But I don't want to get just random fanciful suggestions - what I'm interested in is the ideas of people who'd genuinely like to use such a tool.
User avatar
djnzx48
Manic Miner
Posts: 730
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Game Engine Ideas

Post by djnzx48 »

Sounds like a good idea. If I ever got my RPG project off the ground, I was intending to create some sort of PC-based editor program to use for editing the game data.

I think if a generic game engine were to be created, all the specifications would need to be decided on and set in stone beforehand. Things like whether it's going to be character scrolling, pixel scrolling, or flick screen. Otherwise there would be a risk of feature creep and having to constantly redesign stuff.

I also considered making a PC prototype of a game beforehand, to allow for more rapid development and testing ideas. The prototype would be built with the Spectrum's limitations in mind, including the attribute-based screen layout. Then when it's in an acceptable state, it could be ported over to the Spectrum. A PC-based game editor would work well for this purpose.
User avatar
PROSM
Manic Miner
Posts: 476
Joined: Fri Nov 17, 2017 7:18 pm
Location: Sunderland, England
Contact:

Re: Game Engine Ideas

Post by PROSM »

Joefish wrote: Mon Nov 04, 2019 5:55 pm ...

Or although BASIC is fairly slow, some graphics engine that can be set up from BASIC then have the whole screen rendered in a single operation. This would have to be something simple, maybe static screens or a small number of moving objects.

...
I don't want to hijack the thread, but I could help in this department. If there's enough interest, it wouldn't take too much effort to rip the graphics code out of ZAD and distribute it as a standalone, character-based, full-screen animation package that could be interfaced with BASIC. You could alter the positions of the sprites and such with POKEs, and then render the entire screen with depth-sorted objects and all.

Obviously it's not too close to the full-engine idea that is being discussed, but it could be useful.
All software to-date
Working on something, as always.
User avatar
Joefish
Rick Dangerous
Posts: 2054
Joined: Tue Nov 14, 2017 10:26 am

Re: Game Engine Ideas

Post by Joefish »

I wouldn't change what you were doing with that - it looks pretty interesting!

I was thinking, for a self-contained system, something like CGD for a basic flip-screen object-based RPG. Although the presentation could be line-and-fill drawn rather than character-drawn. Or maybe multicolour tiles. And certain places you can stand have scripted game logic that can check you have an associated object, then change part of the screen.

If there are enemies they could just patrol randomly or on vertical / horizontal lines. Ys and Fairune have an example of a very simple combat system you could have. You simply walk into an enemy and you bounce apart, with damage dictated by your current 'level' relative to the monster. e.g. you can kill a monster of equal level and take 1 damage, and gain 1 XP. Lower levels you kill instantly with no damage or XP. One higher you can kill but take double damage, and gain 2 XP. Any higher level monsters you take damage but the monster is unharmed. And after a number of kills of equal or +1 level monsters, you gain enough XP to level up. You could factor in a shield or weapon boost, but there'd be no need for a specific 'attack' button.

Or just a basic 'Hypercard' type visual system, with inter-linked static images and only a cursor to control on-screen.

Anything for a more complex or action-based game would most likely be just a graphics engine, and require a lot more programming from the user.
Last edited by Joefish on Tue Nov 05, 2019 2:16 am, edited 2 times in total.
User avatar
djnzx48
Manic Miner
Posts: 730
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Game Engine Ideas

Post by djnzx48 »

That idea could work. I haven't used the tool myself, but what you're describing sounds something along the lines of Dizzy Scripting Engine. (EDIT: I didn't see your edit about having a combat system)

My personal vision for a game engine is something a little more complex, closer to a traditional RPG than an adventure game or quest. It would ideally have disk support to allow for more text and a larger map, and possibly have character scrolling. That may be too ambitious for a game engine tool though.
User avatar
Joefish
Rick Dangerous
Posts: 2054
Joined: Tue Nov 14, 2017 10:26 am

Re: Game Engine Ideas

Post by Joefish »

I like the 16-bit Zelda style of having 'rooms' and 'fields' larger than the screen that scroll, but still having flip-screen entrances and exits to these areas. Although this is a little more complex than I was planning.

That simple combat system is just another way of keeping the player out of certain areas until later in the game.
Ralf
Rick Dangerous
Posts: 2282
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: Game Engine Ideas

Post by Ralf »

I was thinking, for a self-contained system, something like CGD for a basic flip-screen object-based RPG
I'm not sure what kind of engine you mean.
What would be the view? Would it be 3D like Eye of the Beholder? Side view like Heroes of the Lance? Top view like Ultima?
User avatar
Joefish
Rick Dangerous
Posts: 2054
Joined: Tue Nov 14, 2017 10:26 am

Re: Game Engine Ideas

Post by Joefish »

CGD: https://spectrumcomputing.co.uk/index.p ... 6&id=30004

Top view, or a sort of top/side view so when you move left-right the sprites are side-on. When you move up/down you see front/back of your character. If you think about it, a maze game like Sabre Wulf is just a platform game like Underwurlde with the gravity turned off. You could maybe even have a gravity control so some rooms could be maze and other platform. Link's Awakening does this quite well on the GameBoy, with mostly a top-down maze/object RPG, with underground tunnels played out like a blocky platformer. Finders Keepers is similar.

I'm thinking maybe 24x24 pixel characters and 32x32 map cells on a Speccy, with character movement, which would allow for more colour. That doesn't allow much on screen, but I think would be fine for a graphic adventure. Or more traditionally everything 16x16 pixels. But then I think people would expect smoother movement, and it starts to look like a lot of other game tools.

I guess the feature set could be expanded (like H.U.R.G.) to let the player fire a directed shot, but then we're straying into arcade games rather than just an RPG / graphic adventure.

But this is again my own ideas and influence taking over. I want to get suggestions from people who would like such a tool for building games.
Ralf
Rick Dangerous
Posts: 2282
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: Game Engine Ideas

Post by Ralf »

But this is again my own ideas and influence taking over. I want to get suggestions from people who would like such a tool for building games.
Looks like you have some quite detailed idea what you would like to do ;)
If so, just do it. Bur don't stop with the engine. Do a full, complete game which would show the engine features ;)
hikoki
Manic Miner
Posts: 576
Joined: Thu Nov 16, 2017 10:54 am

Re: Game Engine Ideas

Post by hikoki »

An expanded version of CGD? which is open source, with larger sprites, scroll and more logic blocks (shooting, rpg and more lego-like bricks). Start off easy, it'd be appealing just to have larger sprites and some more powerful logic blocks.
An editor for game&watch games? that sort of games can be fast on the spectrum so a complex editor might allow for fast arcade games with lots of fake hidden sprites "moving" at the same time.
catmeows
Manic Miner
Posts: 716
Joined: Tue May 28, 2019 12:02 pm
Location: Prague

Re: Game Engine Ideas

Post by catmeows »

Dizzy/Magic Knight arcade adventure editor
-screen editor using blocks + rle/lz compressor
-object managament: take, drop, use, examine
-message editor with pair encoding compressor
-simple dialog editor
-movement style: dizzy / attic attack
-npcs+foes: simple movement pattern
-shooting on/off

And put it on github so community can help.
Proud owner of Didaktik M
User avatar
djnzx48
Manic Miner
Posts: 730
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Game Engine Ideas

Post by djnzx48 »

I'm in favour of starting a community project, as there are too few of those for the Spectrum nowadays. And I would try to contribute to the project myself. The key difficulty seems to be reconciling peoples' ideas on the overall project design.
User avatar
Alessandro
Dynamite Dan
Posts: 1910
Joined: Wed Nov 15, 2017 11:10 am
Location: Messina, Italy
Contact:

Re: Game Engine Ideas

Post by Alessandro »

hikoki wrote: Tue Nov 05, 2019 8:06 pm An expanded version of CGD? which is open source, with larger sprites, scroll and more logic blocks (shooting, rpg and more lego-like bricks). Start off easy, it'd be appealing just to have larger sprites and some more powerful logic blocks.
Isn't there AGD for such tasks already, except scrolling? Even the source code is available (in MPAGD). Or maybe you have something in mind similar to Los Amores De Brunilda? The source for that game is also available and could be a good starting point.
catmeows wrote: Tue Nov 05, 2019 9:01 pm Dizzy/Magic Knight arcade adventure editor
I loved the Magic Knight series back in the day, much more than Dizzy. A Magic Knight-like game designer would be welcome to me. The project could benefit from their disassembly.
Ralf
Rick Dangerous
Posts: 2282
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: Game Engine Ideas

Post by Ralf »

Editor for Dizzy already exists. Don't reinvent the wheel, people:

http://dizzyse.ru/index_eng.html
User avatar
Joefish
Rick Dangerous
Posts: 2054
Joined: Tue Nov 14, 2017 10:26 am

Re: Game Engine Ideas

Post by Joefish »

djnzx48 wrote: Wed Nov 06, 2019 5:44 am I'm in favour of starting a community project, as there are too few of those for the Spectrum nowadays. And I would try to contribute to the project myself. The key difficulty seems to be reconciling peoples' ideas on the overall project design.
As a community project, it would be a lot of fun to try and build a working version of that old YS April Fool, 'Arcade Dream'. It'd require some generic graphic editing tools and a common way of storing sprites and background blocks. Then a variety of plug-in game engines that can utilise those formats. The game engines would then need some sort of configuration script to tell the editor how big and how many sprites it needs, how it needs its backgrounds edited and stored, and what options to offer the player, so the editor can adjust itself around them. But that's a hell of a big job. It makes it even harder for the developer of the game engine, in order to make it easier for the game designer to use!

Anyway, not looking to clone Dizzy, or replicate AGD (which requires some programming). Make something that's all multi-choice options. If there is to be programmable logic for triggering events, it should be icon-based like LEGO's kid's programming tools or lightbot.
catmeows
Manic Miner
Posts: 716
Joined: Tue May 28, 2019 12:02 pm
Location: Prague

Re: Game Engine Ideas

Post by catmeows »

Ralf wrote: Wed Nov 06, 2019 9:44 am Editor for Dizzy already exists. Don't reinvent the wheel, people:

http://dizzyse.ru/index_eng.html
With very unclear legal status and very limited capabilities. I was talking about 2d Action adventure editor not about exact clone od Dizzy.
Proud owner of Didaktik M
Ralf
Rick Dangerous
Posts: 2282
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: Game Engine Ideas

Post by Ralf »

With very unclear legal status and very limited capabilities. I was talking about 2d Action adventure editor not about exact clone od Dizzy.
The author of this tool mentioned that it could be used not only for Dizzy games. Actually he gave an example of even using it for an action game:

https://zx-pk.ru/threads/30151-dizzy-sc ... ost1017887
Image

As for legal matters I believe it's 100% original code. Of course it has some graphics from original Dizzy games included as assets but if your morality forbids you to use them then you don't have to use them and may include your own.

As for capabilites I didn't test it but I guess you didn't too. So why you say it's very limited?
User avatar
R-Tape
Site Admin
Posts: 6393
Joined: Thu Nov 09, 2017 11:46 am

Re: Game Engine Ideas

Post by R-Tape »

hikoki wrote: Tue Nov 05, 2019 8:06 pm An expanded version of CGD?
Whether it was a UDG engine like CGD, or a bigger sprite engine as Joefish has in mind, I remember RWAC gave some excellent feedback on how to build on the the multichoice way of handling events.

CGD has a single IF THEN:

IF FLAG 1 <>0
SET FLAG 2

RWAC suggestion being able to stack multiple events (chosen from a list), so somewhere between the very restricted CGD and very free approach of AGD.

IF FLAG 1<>0
SET FLAG 2
IF FLAG 2 ZERO
COMPLETE GAME
...etc
User avatar
djnzx48
Manic Miner
Posts: 730
Joined: Wed Dec 06, 2017 2:13 am
Location: New Zealand

Re: Game Engine Ideas

Post by djnzx48 »

I agree that we shouldn't try to remake existing Dizzy editors. The Magic Knight games are along similar lines, so Dizzy possibly has that covered already. (Btw, does anyone know what became of the Finders Keepers+ thing that David Jones was working on?)

Looking at the Arcade Dream preview, it mentions support for the following game archetypes:
Spoiler
Airwolf
Alien 8
Daley Thompson's Supertest
Dun Darach
JSW
Pole Position
Sabre Wulf
Street Hawk
Tomahawk
View To A Kill
Way of the Exploding Fist
Of these, Airwolf and Sabre Wulf seem pretty doable with AGD. JSW has a ton of mods made for it already. 3D Game Maker isn't exactly the same thing, but could fulfill an Alien 8 gametype.

Daley Thompson's Supertest could be interesting, with scripting to define the behaviour of individual events. For Pole Position most of the work would be in writing a racing game engine. Are there are already racing games out there with track editors?

I don't even know how a Tomahawk game designer would work. Again, all the effort would be in writing a 3D flight simulator.

A View to a Kill is really three games in one, though from the 'soft walls' feature they were probably talking about the first part, which is a driving game set in a 3D maze. I'm not sure if that's interesting enough to warrant an editor.

There are two different versions of Street Hawk, but they're both scrolling games. There aren't many existing game designers that feature scrolling, so that's an area that could be explored further.

Way of the Exploding Fist - I don't have much experience with the genre, but a game designer for fighting games sounds feasible.

IMO Dun Darach has potential compared to some of the other games on that list. A graphic adventure with large sprites and scrolling. It could even be done based around character blocks, and using Savage style graphics.
User avatar
4thRock
Manic Miner
Posts: 415
Joined: Thu Nov 09, 2017 9:35 am
Location: Portugal

Re: Game Engine Ideas

Post by 4thRock »

For me the most interesting would be a beat-em-up engine.
Renegade comes into mind, and that plays well even by modern standards.
It's something the Spectrum can handle well and there are lots of games to draw inspiration from (thinking about the Double Dragon remake...)

For platforms we already have editors and creators. Just my 2cents as they say :D
User avatar
Juan F. Ramirez
Bugaboo
Posts: 5133
Joined: Tue Nov 14, 2017 6:55 am
Location: Málaga, Spain

Re: Game Engine Ideas

Post by Juan F. Ramirez »

Not a developer, I've always thought about a game with the same Skool Daze concept (a building with that 'sideways' perspective) but using with different plots. For instance, a sort of 'stealth' game: enemy guards patrolling on every floor, a safe to broke to steal the plans etc

I presume it's not very difficult for the code guys here to 'disembowel' the game and partially change it.
presh
Manic Miner
Posts: 237
Joined: Tue Feb 25, 2020 8:52 pm
Location: York, UK

Re: Game Engine Ideas

Post by presh »

Joefish wrote: Mon Nov 04, 2019 5:55 pm Or although BASIC is fairly slow, some graphics engine that can be set up from BASIC then have the whole screen rendered in a single operation. This would have to be something simple, maybe static screens or a small number of moving objects.
All of the games I finished making were written in BASIC and compiled using ZIP compiler (after it appeared on the Your Sinclair covertape, Christmas 1993 - best Christmas EVER!!!)

This was fine for single-screen games, but ultimately I ended up creating Z80 routines for screen drawing, scrolling, and drawing bitmasked sprites for later projects... all sadly unfinished and lost on cassettes in an attic somewhere.

Nevertheless, even in BASIC these were playable to some extent - and the compiled versions require pointless "do nothing" loops inserted into them to lower the frame rate (particularly as I didn't know about interrupts back then!)

So, I'm new here & delving back into the Z80 after a long haitus... I know I'm nowhere near competent enough to write a game in pure Z80 code, but I'm currently working on ideas for a collision map, and sprite printing routines with screen edge cropping (rather than "only show it if it's fully on screen"). It's all gonna be 8x8 block based at the moment because... baby steps! I can work my way towards pixel-based stuff later... ;)

Long story short - the collision engine I'm designing can have a map of arbitrary size (up to 256 x 256), so could be useful for multiple game formats. One of the first milestones will be testing it on a fixed-height horizontal scroller, with the collision map being twice the width of the screen - the idea being that enemy sprites who've disappeared off screen can still interact with their surroundings, even though you can't see them; so they could still bounce off a wall and re-enter the screen, or if you are following them you could catch them up again. It also solves the issue of sprites suddenly appearing when they're in full view, rather than scrolling into view gracefully (hence the need for the sprite cropping routine!)

So there you go - this thread piqued my interest because my proposed routines sound like something that would fit your "graphics engine run from BASIC" scenario. Let me know if you want to know further info on what I've planned for its internal workings :D
Ralf
Rick Dangerous
Posts: 2282
Joined: Mon Nov 13, 2017 11:59 am
Location: Poland

Re: Game Engine Ideas

Post by Ralf »

So, I'm new here & delving back into the Z80 after a long haitus... I know I'm nowhere near competent enough to write a game in pure Z80 code, but I'm currently working on ideas for a collision map, and sprite printing routines with screen edge cropping
Making a scrolling game in Basic is close to impossible.

If you succeeed at making your game engine in Z80 what else would be left to do? Game menu, some intro? Of course there will be a lot of graphics and level design to do but it's not strictly programming.

Everyone was afraid once to move from Basic to assembler. But once when you do it, you will never want to go back to Basic :)
presh
Manic Miner
Posts: 237
Joined: Tue Feb 25, 2020 8:52 pm
Location: York, UK

Re: Game Engine Ideas

Post by presh »

Ralf wrote: Fri Feb 28, 2020 10:07 am Making a scrolling game in Basic is close to impossible.
Indeed, I'd still be using a compiler (e.g. HiSoft BASIC) - this was always the plan.
If you succeeed at making your game engine in Z80 what else would be left to do? Game menu, some intro? Of course there will be a lot of graphics and level design to do but it's not strictly programming.

Everyone was afraid once to move from Basic to assembler. But once when you do it, you will never want to go back to Basic :)
Well as it's been years since I touched Z80, I'm taking an incremental approach. There's plenty I've forgotten, so taking care of some of the higher-level routines in compiled BASIC seems sensible - at least in the beginning. Once my confidence grows, I can gradually convert more of it into pure Z80.

Also I'm far less likely to bail on a project which consists of a few relatively small, manageable chunks, as opposed to contemplating a seemingly monolithic task such as "make a game!" - that's just too daunting, vague... where to even start? Much better to get a simple proof-of-concept working, then build it up from there... "mighty oaks from little acorns grow!"

I'd also stress that this definitely isn't a "game engine" - merely tools to print the map & sprites, and provide info for preventing/handling collisions. None of these are particularly difficult in themselves, particularly when restricted to 8x8 level rendering / collision. There's no built-in enemy logic, player movement, etc. (although the collision map can provide the info to help build such logic)

I'm aware it's nothing that hasn't been done before... but it is something I have never done before :)
Dr beep
Manic Miner
Posts: 380
Joined: Mon Oct 01, 2018 8:53 pm

Re: Game Engine Ideas

Post by Dr beep »

Still have my unfinished cardgame engine somewhere....

An engine where you define the deck and places where you place cards and define rules per positions thus making the game.
Additional idea is to define playing rules thes combined in orders make you define a game with AI.

A.C.E.S
All Cardgames Emulated (on) Spectrum

So far deck defined, all cards can be placed, selecred and moved.
https://www.youtube.com/watch?v=uFAN4XwU-vg
Post Reply