New Game Creator

The place for codemasters or beginners to talk about programming any language for the Spectrum.
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

New Game Creator

Post by pgregory »

Hi All,

Not sure if this is the right place to post, my apologies if not, can someone point me to a more appropriate place?

I've started work on a new piece of PC software to make it easier for non-programmers to create games for a Spectrum, 16/48/128 initially, with Next on the roadmap.

It's very early days, but I've started recording some videos of the progress and would welcome any thoughts and suggestions.

https://www.youtube.com/playlist?list=P ... 5pU24T5BLL




For reference, if anyone's interested at all, I have some background in this, having created the 3D Construction Kit back in the day at Incentive, and worked on more tools and technology stacks at game studios since than I can remember.

Paul
User avatar
Daveysloan
Manic Miner
Posts: 373
Joined: Tue Jun 08, 2021 12:57 pm
Contact:

Re: New Game Creator

Post by Daveysloan »

This looks fantastic! Really intuitive.

I'm especially excited by the prospect of having a Next game creator in the pipeline!
User avatar
clebin
Manic Miner
Posts: 989
Joined: Thu Jun 25, 2020 1:06 pm
Location: Vale of Glamorgan
Contact:

Re: New Game Creator

Post by clebin »

Agreed, this looks great! I'm also pleased to see it's cross-platform. Mac support is always the first thing I check, as so many tools are Windows-only (eg. MPAGD), or sort-of-working-with-Mono (eg. #CSpect). I'll definitely be trying this.
pgregory wrote: Mon Apr 15, 2024 5:28 pm For reference, if anyone's interested at all, I have some background in this, having created the 3D Construction Kit back in the day at Incentive
Wowzers! I remember watching the VHS and building my house in 3DCK. That was really great software. It was Amiga version I had - not sure if you worked on that?
User avatar
cmal
Manic Miner
Posts: 632
Joined: Fri Jun 05, 2020 1:05 am
Location: California

Re: New Game Creator

Post by cmal »

Great work so far! It looks awesome! I like the look of the drag and drop interface that you created. Also nice is that you have an integrated emulator for testing.
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

clebin wrote: Mon Apr 15, 2024 6:27 pm Agreed, this looks great! I'm also pleased to see it's cross-platform. Mac support is always the first thing I check, as so many tools are Windows-only (eg. MPAGD), or sort-of-working-with-Mono (eg. #CSpect). I'll definitely be trying this.



Wowzers! I remember watching the VHS and building my house in 3DCK. That was really great software. It was Amiga version I had - not sure if you worked on that?
Yes, it'll be fully cross platform, it's built with Godot, I might even make it web based as well, although that would require making the z88dk available on the web too.

Yes, I did the Amiga, Atari ST and PC versions of 3DCK too.
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

cmal wrote: Mon Apr 15, 2024 8:18 pm Great work so far! It looks awesome! I like the look of the drag and drop interface that you created. Also nice is that you have an integrated emulator for testing.
It doesn't have an integrated emulator, not at this point. The tools simulate the display density of the target platform, in as much as they are artificially constrained to the correct resolution and in the case of the map editor, constrained to 8x8 pixel blocks. But the emulator you see in the videos is Zesarux.
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

Video showing the latest status of the project.

User avatar
Cheez26
Microbot
Posts: 101
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Re: New Game Creator

Post by Cheez26 »

Wait...this is made with Godot? Can it work with models earlier than Next? Because I really need something other than AGD. Also, while we're talking Speccy tools for Linux, will this work on a Raspberry Pi 400 or even the latest model that is 5?

I'm still surprised that this is make with Godot. Good work! :ugeek:
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
AndyC
Dynamite Dan
Posts: 1432
Joined: Mon Nov 13, 2017 5:12 am

Re: New Game Creator

Post by AndyC »

pgregory wrote: Mon Apr 15, 2024 5:28 pm For reference, if anyone's interested at all, I have some background in this, having created the 3D Construction Kit back in the day at Incentive, and worked on more tools and technology stacks at game studios since than I can remember.
Wow, that's certainly a claim to fame. I remember using it back in the day and having lots of fun with it. Not that I ever made anything that exciting, but it was certainly cool.

Great to hear you've carried on that tradition of building dev tools too and will have to give this a whirl at some point.
User avatar
Lee Bee
Dynamite Dan
Posts: 1396
Joined: Sat Nov 16, 2019 11:01 pm
Location: Devon, England
Contact:

Re: New Game Creator

Post by Lee Bee »

Absolutely fantastic! Thanks so much for doing this! AGD is great, but when making a game it's good to have options, to fit your style or project. I'd like to take the plunge someday and make a game, so it will be interesting to see what the options are.

I'm not sure if AGD can do 'big' sprites but it's something I've never seen and wonder if it has a built-in limit. Also, sprite motion always seems very crude with AGD (no inertia or acceleration), though I'm not sure whether that's due to imposed limitations or just user choices.

My only other suggestion for your software would be the ability to have AY sound effects. I've spoken to Mr Cauldwell about this and he is satisfied with AGD having beeper sound effects only, since, as he points out, very few classic games used AY sound effects. Though as an AY fan, I'd love to be able to interrupt a channel of AY music with AY sound effects. Alternatively, you could have native support for Arkos music/SFX modules which I'm told are more performance-efficient than standard .pt3 modules.

By the way, back in the day, I was mad about 3D Construction Kit. Admittedly, there wasn't enough power to really create much, but I always loved the user-friendly interface.
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

Cheez26 wrote: Sat May 04, 2024 10:24 pm Wait...this is made with Godot? Can it work with models earlier than Next? Because I really need something other than AGD. Also, while we're talking Speccy tools for Linux, will this work on a Raspberry Pi 400 or even the latest model that is 5?

I'm still surprised that this is make with Godot. Good work! :ugeek:
It is currently exclusively "original" Spectrum, there is no Next specific stuff in there, yet. I do plan to make it cross platform in the future, and it has been engineered to support that, including Next.

It should be feasible to work on a Pi, it's not really pushing the limits of Godot at all, in fact, one of the possible distribution mechanisms I'm considering is making it a web app.
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

Lee Bee wrote: Sun May 05, 2024 1:52 am Absolutely fantastic! Thanks so much for doing this! AGD is great, but when making a game it's good to have options, to fit your style or project. I'd like to take the plunge someday and make a game, so it will be interesting to see what the options are.

I'm not sure if AGD can do 'big' sprites but it's something I've never seen and wonder if it has a built-in limit. Also, sprite motion always seems very crude with AGD (no inertia or acceleration), though I'm not sure whether that's due to imposed limitations or just user choices.
It currently exports to the Z88DK compiler and the SP1 sprite library, so has very few limitations on sprite size in theory. Right now, the UI is fixed at 16x16, but that's just a matter of adding more tools and controls to implement multiple sprite sheets of different sizes, and definitely on the roadmap.
Lee Bee wrote: Sun May 05, 2024 1:52 am My only other suggestion for your software would be the ability to have AY sound effects. I've spoken to Mr Cauldwell about this and he is satisfied with AGD having beeper sound effects only, since, as he points out, very few classic games used AY sound effects. Though as an AY fan, I'd love to be able to interrupt a channel of AY music with AY sound effects. Alternatively, you could have native support for Arkos music/SFX modules which I'm told are more performance-efficient than standard .pt3 modules.
I do plan to include both beeper and AY sound and music creation tools in the longer term, it's a one-person hobby project at the moment, so not likely to happen quickly, but definitely planned.
Lee Bee wrote: Sun May 05, 2024 1:52 am By the way, back in the day, I was mad about 3D Construction Kit. Admittedly, there wasn't enough power to really create much, but I always loved the user-friendly interface.
Thanks, I have to say, I'm pretty proud of the 3DCK, it was a labour of love at Incentive, and I feel the interface still stands up now, as you say, given the platform limitations.
User avatar
Lee Bee
Dynamite Dan
Posts: 1396
Joined: Sat Nov 16, 2019 11:01 pm
Location: Devon, England
Contact:

Re: New Game Creator

Post by Lee Bee »

One thing I loved about your vid is how you can edit sprites and see the room update in real time. This strongly appeals to me. I like an "immediate" interface where there are no barriers slowing down the creative process.

In fact, I like the idea of building the game graphically from within its own environment (3DCK style). So I'd have the game screen always visible, and when I make a sprite, it appears in the current room by default, ready to position. That would make the editor seem very approachable as you'd be able to make a working "game" in seconds, and it would only be a matter of building and improving. That's the kind of thing that appeals to me as I'm lazy and like instant results :lol:
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

Another short update:

User avatar
Cheez26
Microbot
Posts: 101
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Re: New Game Creator

Post by Cheez26 »

@pgregory Holy cripes, you probably have enough for an open beta. Especially with an undo button and an exporter. Nice.
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

Cheez26 wrote: Fri May 10, 2024 8:53 pm @pgregory Holy cripes, you probably have enough for an open beta. Especially with an undo button and an exporter. Nice.
Thanks, I don't think it's at the beta stage yet, quite a few missing features, you couldn't really create much of a game with what's there at the moment. It is getting there though, and I do plan to sit down at some point and work out, among my long list of features still to be implemented, where would be a good point to engage with creators in some testing and feedback. Not quite sure how to go about that right now, but I'll look into it as and when.

I might consider something like a Patreon, never tried that, but it might be a good way to engage with seriously interested individuals who would be willing to do some testing early on.
User avatar
Cheez26
Microbot
Posts: 101
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Re: New Game Creator

Post by Cheez26 »

@pgregory Well, what are you waiting for? Start funding.
Though, I would prefer Ko-fi for hobbyist projects like this.
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

Cheez26 wrote: Sat May 11, 2024 9:53 am @pgregory Well, what are you waiting for? Start funding.
Though, I would prefer Ko-fi for hobbyist projects like this.
Never heard of Ko-Fi before, looking into it now.
User avatar
Cheez26
Microbot
Posts: 101
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Re: New Game Creator

Post by Cheez26 »

I really hope @pgregory is still working on this when he finds the spare time to do so. :dance
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
User avatar
Lee Bee
Dynamite Dan
Posts: 1396
Joined: Sat Nov 16, 2019 11:01 pm
Location: Devon, England
Contact:

Re: New Game Creator

Post by Lee Bee »

Cheez26 wrote: Thu May 16, 2024 6:00 am I really hope @pgregory is still working on this…
He only posted an update a few days ago! LOL
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

Cheez26 wrote: Sat May 11, 2024 9:53 am @pgregory Well, what are you waiting for? Start funding.
Though, I would prefer Ko-fi for hobbyist projects like this.
Thanks for the pointer to Ko-Fi, I've setup on there now, seems more appropriate than Patreon. It's against the rules to post commercial links on here, so I won't, but thanks again for the pointer. 👍
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

Cheez26 wrote: Thu May 16, 2024 6:00 am I really hope @pgregory is still working on this when he finds the spare time to do so. :dance
Definitely still working on it, in fact, spending more and more time on it now that I know there is some level of interest. It's still a side-project, alongside real work, but I try to spend at least a few hours a week on it, often more because I'm enjoying it.
pgregory
Drutt
Posts: 13
Joined: Mon Apr 15, 2024 5:18 pm

Re: New Game Creator

Post by pgregory »

Another update, this time with COLOUR!

User avatar
Cheez26
Microbot
Posts: 101
Joined: Sat May 04, 2024 2:36 am
Location: Midwestern United States
Contact:

Re: New Game Creator

Post by Cheez26 »

Hella. :dance
Chelsea E., a Speccy fan from the U.S.
Also a musician and a beginning games developer.
User avatar
Lee Bee
Dynamite Dan
Posts: 1396
Joined: Sat Nov 16, 2019 11:01 pm
Location: Devon, England
Contact:

Re: New Game Creator

Post by Lee Bee »

Hello Paul, and thanks for the awesome video update!

This is looking fantastic and I'm getting very excited about this program. Love its simplicity. There's no technical jargon which I don't understand, and everything is nice and graphical and immediate. Fantastic. (I really like you as well!) :-)

Just FYI, my own professional background is graphic design for print, but I have a passion for (and a degree in) interface design. If you needed any help with icon design I might be able to assist perhaps, just throwing that out there.

So I've now watched through a few of your videos because I wanted to try and get an understanding of how your program works. I've got a few points of feedback/suggestions which I'll offer below. But first, a big disclaimer that these suggestions are offered humbly, and in some cases I may be misunderstanding how the program works, or what you've got planned. Not to mention that I have almost zero technical understanding or experience of making Speccy games. In other words, please just ignore anything stupid, naive or irrelevant on my part below!

Suggestions

1. Fill tool
You mentioned you're planning to add more sprite drawing tools including 'fill'. Yes, fill will be particularly essential, so you can make the outside of a sprite transparent with a single click.

2. Location of the 'add' button
There's currently an inconsistency to the location of the "add button" - generally it appears below the window it applies to, but this is different for the tiles and sprites windows, which have the 'add' button within the items list. Then, I believe the main sprite window has both styles in one. I think consistency is important to quickly understanding how the interface works. My own instinct says that an add button should affect the window BELOW it, but I do like the neatness of it being below the window and can very quickly adapt to that, so long as it's consistent.

3. Do we need a separate 'Sprites' tab?
Given that sprites are a sub-property of objects and aren't used for anything else, I'd feel less confused by the interface if there were no 'sprites' tab but the sprites editor was integrated into the objects tab. In the Objects window, on the right, you have two tabs saying 'Animation' and 'Logic'. How about you add a third tab on the left of these called 'Sprite editor'? For me, that would be more logical.

4. Confusing windows
If I'm understanding this correctly, the map screen seems to contain TWO different versions of the rooms and objects windows - each having a 'text list' version, plus a graphical version at the bottom. This "two versions of each thing" may be a little confusing at first, especially due to the absence of headings for the two lower graphical windows.

I would recommend adding headings to the lower windows. Or, better still, make it so you have the 'rooms' across the top and 'objects' at the bottom, in each case, with the text list on the left and the graphical view on the right. This brings connected windows together.

Alternatively - would it be possible to simply combine the 'text' and 'graphical' windows into a single window? So you would have a 'rooms' column on the left and an 'objects' column on the right, each has a vertical list of text, with each item having a square graphical icon on its left.

6. Do we need a separate 'Map' tab?
The main "rooms" window seems very similar to the 'Map' window. Do they really need to be two separate things? Aren't you basically just 'zooming out' a bit? How about losing the dedicated 'Map' tab, changing the name of the 'Rooms' tab to 'Map', then on the right, below the big room window, add a magnifying glass icon which toggles between zooms out to the full map and back in to the last viewed room. Double clicking any room on the list of rooms will zoom into it, as will double clicking the room on the map.

7. Default paper colour
I also think you should be able to set the default global paper colour (black by default), plus every room should allow an optional room default paper colour. So, for example, if you're making a forest game which normally has a green background, you can make the universal paper colour green. But for a room where you go in a house, you can set this room's default paper colour to white.

8. Colour mapping system
OK I've left the most controversial one for last. Bearing in mind I have NO experience of making Speccy games, so take this very humbly with a pinch of salt - I feel that the decision to store colour independently of tiles is a bad idea. Yes, it allows colour variations, but surely the majority of the tiles in any game will be the same colour in most cases?

Instead, I would strongly suggest having colour being directly assigned to tiles. You'd still want to keep the ability to freely draw custom colours onto any room, but that would be something you'd do on more rare occasions.

I believe that assigning colours directly to tiles would have four huge benefits:
  1. Saves you having to draw out the colour in every single room.
  2. Saves data, since you don't need to store maps of colour data.
  3. Lets you instantly edit the colour of tiles all over the entire game map - important when you're gradually developing your game's graphics, adding new tiles and seeing how they all look together.
  4. Makes drawing maps much faster because when you glance at the tiles window to pick a tile, you will quickly and clearly be able to see what's part of a tree and what's part of a wall, because they're green and red. But in black and white it's harder to quickly see that and will create a barrier to the workflow.
As for alternative tile colours, I believe it would be better to have a feature called 'colour variants'. So, with a tile selected, you click a button at the bottom to "add colour variant" which adds another tile directly after the current one in the list but with a little "+" or something overlayed in the corner, indicating it's an "instance" using the graphics of the tile before it. You can then edit its colour independently.

As for controls - you could keep the exact same colour controls you've already added there on the room screen. But when you have a tile selected, its ink and paper colour would be highlighted on the palette, which you can change by left- and right- clicking on the palette.

Also, add a "transparent" swatch to the palette. You can assign this to a tile's paper colour, which will mean that ONLY its ink will show on the map and the paper will use the default paper colour.
Post Reply