News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu

Dropzone type of game in the works. A demo

Started by AHack, 15:28, 01 May 19

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

AHack

I thought I would tease a mockup shot of what a game like this would look like on the Amstrad. I used the C64 graphics and re-paletted to Amstrad colours. The screen size is 42x29 chars which makes it better than what a C64 or Atari could do.


Those of you that follow the programming section may of read some of my posts about things that I am working on. So far I've been implementing the technical code to get a game like this to work. The game will always run at 50fps with a multi-speed horizontal scroll that can scroll 1,2,3,4 screen mode 0 pixels or a max speed of 8 screen mode 1 pixels.


Graphically the Amstard can do much better than the C64 and eventually I will ask for art help from this community. In the mean time I will do a demo using the C64 art to flesh out a proof of concept - that should be easy as I've worked out all the technical issues. Also, I will need music in the future as well.


I don't want to strictly do Dropezone and want to lean it back to more Defender type of game play.


And last but not least I want to keep the game pure in the spirit of the 80s. This will work on 64K machines because publishers back then only wanted 64K games. I will also enhance the game for 128K machines, and also the plus range and use the extra features. It would be nice to evenyually do a cartridge for plus machines as well as that Amstrad console. Also a tape and disc release in a good collectors package would be nice... but that is a dream for the time been.


I'm actually quite shocked, when I re-started programming the Amstrad again (I've been making games for over 30 years now) as it was the machine I learnt to code Z80, that with all the new techniques that were discovered long after it's commercial use was over, the CPC is a real power horse and has the potential to be the best 8bit computer. The sad thing is a game like this could of been done in 1984 if people knew about all the CRTC tricks from the word go. Any way here is that tease mockup:

AHack

#1
After watching the game reveal of Vespertino by the Batman Group, maybe I should change tack on memory requirements.

The original challenge for me was to do something impressive that runs at 50fps always within the 64KB restriction... the 64K limit is set by me because back in the day publishers only wanted 64KB games. What I'm doing is a trade off of memory and speed programming but what I have is certainly impressive for a humble 64K machine. Because the game will be based on Dropzone/Defender the wow factor along with the multi-speed scroll will be the particle explosions/effects as well as lots of moving sprites. I have lots of raster time to do that

If I used 128K of memory I could do full screen overscan (I am overscanning the display but it's not quite full screen), speed up the scroll edge update by dropping the map compression which will give more cpu time for more particles. And I could probably add a 3D paralax effect on each scan line of the planet.

A 128KB is sure temping but keeping the game pure and doing something impressive within the limits of 64K is a challenge in itself. I just feel after watching the Vespertino reveal that people will now expect more from future CPC releases. What are peoples thoughts on this?

ervin

#2
I now have the exact same dilemma with the program I am working on, having seen Vespertino!
My program would benefit enormously from the extra RAM of the 6128, as I am decompressing compiled sprite code in real-time during screen updates.
The extra RAM would allow me to decompress all the frames of a sprite and leave it in RAM until that part of a level is passed, and of course that would result in a nice speed-up.
It's a tough decision!

AHack

Quote from: ervin on 06:49, 07 May 19
I now have the exact same dilemma with the program I am working on, having seen Vespertino!
My program would benefit enormously from the extra RAM of the 6128, as I am decompressing compiled sprite code in real-time during screen updates.
The extra RAM would allow me to decompress all the frames of a sprite and leave it in RAM until that part of a level is passed, and of course that would result in a nice speed-up.
It's a tough decision!


Yep, it's a tough decision. I think what I will do is get my proof of concept working and release a little demo... I need to do this anyway because I need people to check to see if it is compatiable with all the different CRTC types as I've only have the one CPC. And from there see what peoples reactions are to it.

Arnaud

#4
@ervin, @AHack,
honestly, if your game is better with 128k use 128k. The goal is to make the best game possible  :D
And if you really want, after, make a 64k version.

A good reason to make a 64k game is to participate to the cpcretrodev (but i hope one day there will be a 128k category).

PS : Is new 64k extension currently sold (and affordable) for 464 (like gotek to replace disk drive) ?

AHack

Quote from: Arnaud on 18:04, 07 May 19
@ervin, @AHack,
honestly, if your game is better with 128k use 128k. The goal is to make the best game possible  :D
And if you really want, after, make a 64k version.

A good reason to make a 64k game is to participate to the cpcretrodev (but i hope one day there will be a 128k category).

PS : Is new 64k extension currently sold (and affordable) for 464 (like gotek to replace disk drive) ?


For me I need to get my little demo done and from the reaction I will guage things from there. From what I have now it's miles better than most 64KB games. I do have plans to enhance it with extra memory but, first, I want to see how far you can take a 64KB machine before I consider how to expand it.

AHack

A piss poor video showing what I have so far running on a CRT screen.



https://www.youtube.com/watch?v=umsoeA89K5s


Anyway it gives an idea :)

JayBlood

Good scrolling! Ah, if we have in 80's some great coders like now! Some old games look better. Good job! ;)
Jay

ervin

That looks fantastic!
Is it a hardware scroll?
Or is it stack-abuse based, with only the bottom portion being drawn to simulate a scroll?

AHack

Quote from: ervin on 13:48, 16 May 19
That looks fantastic!
Is it a hardware scroll?
Or is it stack-abuse based, with only the bottom portion being drawn to simulate a scroll?


It's using the harware scroll and rupture tricks the achieve the effect. I basically split the memory in 2 and gave 32KB to the code and storage and 32KB to the screen. The 32KB for the screens gets composited together by the ruptures. It can scroll at 1,2,3,4 mode 0 pixels and I don't use register 3 of the CRTC to shift the monitor h sync - I thought it was not best to use this trick because of the issues it carries and it actually complicates the scroll edge update.

AHack

Here's a new video of the demo so far working on the Retro Virtual Machine. It's much better, of course, on real hardware and CRTs. The next time I do a video I will do proper video capture from the computer instaed of my phone.


https://www.youtube.com/watch?v=3MmFlfzOE_o&feature=youtu.be

AHack

#11
Just a video capture test from the emulator. LCD screens don't do it justice - you definitly need the real hardware to get the true feeling of it. The stars on the CRT leave a glowing trail behind them.



https://www.youtube.com/watch?v=r0LVq8jUUAk


I guess I'm not at the video production values of the Batman Group but hopfully these videos show what this old 8bit computer can do :D

Rhino

If you keep the 50 FPS with all sprites it will be really spectacular!
Btw, in the video it seems that sometimes there are residual tiles in the scroll border, this could be easily fixed by drawing those tiles in the right moment of the frame.

AHack

Quote from: Rhino on 11:01, 18 May 19
If you keep the 50 FPS with all sprites it will be really spectacular!
Btw, in the video it seems that sometimes there are residual tiles in the scroll border, this could be easily fixed by drawing those tiles in the right moment of the frame.


I think the 50fps is possible - that blob in the top right of the screen is a 16 sprites test overlayed over each other. With that I still have three interrupts of time left. The hardest part of all this is because it's a 64KB game I have to do trade offs for speed and memory. So far it's working out and if I did an enhanced 128KB version that memory trade off for speed can be dropped and it will be quicker - which means the enhanced version will have more particle effects.


That scroll update glitch will be fixed... I just need to rearrange the code in my stack abuse kernal but have not been bothered yet.


So far I'm enjoying doing all this... It's reminding me why I started coding games all those years ago.

Ast

Today, TotO gives us the possibility to use 512kb ram with his xmem. More than 300 guys bought it !
So my question is, why don't we use this extra memory ? Why do we sell it ?


Doing some 64kb is a non sense nowadays...  :o :o


It's my opinion.
_____________________

Ast/iMP4CT. "By the power of Grayskull, i've the power"

http://amstradplus.forumforever.com/index.php
http://impdos.wikidot.com/
http://impdraw.wikidot.com/

All friends are welcome !

TotO

At less 128K. Probably DK'Tronics sold more 464/664 64K RAM expansions in the 80s than peoples using a real CPC today.
We are late with cartridge games too, because the mentality was: "do not use the expansions port". Whe have missed amazing things you know.
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

AHack

Quote from: Ast on 17:22, 18 May 19
Today, TotO gives us the possibility to use 512kb ram with his xmem. More than 300 guys bought it !
So my question is, why don't we use this extra memory ? Why do we sell it ?


Doing some 64kb is a non sense nowadays...  :o :o


It's my opinion.


It's more about the challenge for me. When I was a kid in the 80s I did talk to the publishers, trying to sell a game I did on the Amstrad (It was rubbish and was probably not worth publishing back then) and what they wanted was 64KB games that everyone could run. Yes you could enhance them to use extra memory but you were required to make it run on the base model. So I decided to take that requirement for this project for the challenge.


Yes, I will enhance it to use the extra memory to add more effects and such. Also, by doing a base version you can enter competitions and if the game becomes something a C64 or Atari 800 could not even hope to achieve you have grounds to claim it's the best 8bit version of that type of game - I've noticed a lot of C64 users dismiss anything on the Amstrad that uses the extra memory. An example is Pinball Dreams (no other 8bit could ever do that) and yet some C64 users will dismiss it because of the mentioned reasons.


Also, it would be nice to think something like this could of been done in 1984 if people had known about the CRTC tricks.


Bust rest assured once I get the base version done I will enhance it to see how far you can take it in the other direction :)

TotO

Quote from: AHack on 19:51, 18 May 19When I was a kid in the 80s I did talk to the publishers, trying to sell a game I did on the Amstrad and what they wanted was 64KB games that everyone could run.
Because it was for the business... Mainly doing fast Speccy ports for £££. On Amiga, greats developers like Team17 and DMA Design forced the players to buy a 512K expansion for the best. Sadly, no killer game on CPC to encourage peoples to buy a DK'Tronics 64K RAM in 1985... But 256K with Discology, sure! :-\
"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

Fessor

The only reason to expand the RAM (and 6128-ROM) came 1987 with Microprose Pirates.


TotO

"You make one mistake in your life and the internet will never let you live it down" (Keith Goodyer)

AHack


Skunkfish

Looking fantastic, I really thought the CPC couldn't produce a horizontal scroll that smooth....
An expanding array of hardware available at www.cpcstore.co.uk (and issue 4 of CPC Fanzine!)

AHack

Quote from: Skunkfish on 20:00, 27 May 19
Looking fantastic, I really thought the CPC couldn't produce a horizontal scroll that smooth....


It can at 1, 2, 3, 4 mode 0 pixel increments at the cost of memory storage.


I've decided to make this a 128KB game because the benefits are too good to ignore. I've been told, in the modern CPC scene, that most people have memory expansion and with my own self imposed 64KB limit (for reasons that publishers in the 80s wanted that) will make the game on par with what an Atari 800 version could do. And with the extra memory it can go beyond that and will probably be on par with what was in the arcades at the time.


By using the extra memory I can get rid of map compreshion and gain lots of raster time back. In one interrupt (52 scan lines) I can update the scroll edge and update the mini-map for the scanner which leaves 5 interrupts of time for other uses. Also, this extra memory means full overscan is possible for the the screen now.


I've been working on the Sprite Managment system. It's a very interesting problem to solve in the respect of clipping compiled sprites, sprite removal for background restore, and racing the CRT electron gun for flicker free graphics. I seem to be getting there with that now.

Rhino

Quote from: AHack on 04:53, 28 May 19

It can at 1, 2, 3, 4 mode 0 pixel increments at the cost of memory storage.


I've decided to make this a 128KB game because the benefits are too good to ignore. I've been told, in the modern CPC scene, that most people have memory expansion and with my own self imposed 64KB limit (for reasons that publishers in the 80s wanted that) will make the game on par with what an Atari 800 version could do. And with the extra memory it can go beyond that and will probably be on par with what was in the arcades at the time.


By using the extra memory I can get rid of map compreshion and gain lots of raster time back. In one interrupt (52 scan lines) I can update the scroll edge and update the mini-map for the scanner which leaves 5 interrupts of time for other uses. Also, this extra memory means full overscan is possible for the the screen now.


I've been working on the Sprite Managment system. It's a very interesting problem to solve in the respect of clipping compiled sprites, sprite removal for background restore, and racing the CRT electron gun for flicker free graphics. I seem to be getting there with that now.
128kb vs 64kb reminds me of the old Amiga debate (512kb vs 1MB), at first there weren't many games that required 1MB, but in the end any good title needed it and 1MB ended up being the standard.

AHack

Quote from: Rhino on 11:15, 28 May 19
128kb vs 64kb reminds me of the old Amiga debate (512kb vs 1MB), at first there weren't many games that required 1MB, but in the end any good title needed it and 1MB ended up being the standard.


It does make me wonder that if someone had done Pinball Dreams or something like what I am doing back in the 80s... would games like that have sold memory expansion packs and 128KB became the norm? Imagine if you were in the RAM expansion business and you bundled the Amstrad Pinball Dreams version with a RAM expansion pack. I think you would of shifted a lot of units :)


Thinking about all this, I think the Spectrum ports by publishers basically killed the CPC potential as a machine. And all it needed was a killer game, some knowledge of the CTRC tricks from the word go, and the Spectrum would of fallen by the wayside. Alas, it was never meant to be.

Powered by SMFPacks Menu Editor Mod