Fast scrolling game howto, anyone?

Want to talks about games you like, would like to see developed on the Oric, it's here.
User avatar
ibisum
Wing Commander
Posts: 1643
Joined: Fri Apr 03, 2009 8:56 am
Location: Vienna, Austria
Contact:

Re: Fast scrolling game howto, anyone?

Post by ibisum »

Chema - did you read this yet?

http://bizzley.imbahost.com/It's%20Behi ... 20Pape.pdf

It reminds me of your project in some ways .. and maybe there is a little motivation in there for us to get an R-Type clone in the future? :)
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Fast scrolling game howto, anyone?

Post by Chema »

Hi again!

@ibisum I did not read that yet, but I downloaded it for future reading. It is an impressive project and shows how far they went with the speccy.

Not sure if something similar could be done on the Oric, but who knows...

I've spent my little free time this weekend sorting out a couple of bugs, mostly one which I introduced without noticing and that was related to entering a savecode and going directly to a given level. I broke the thing badly several weeks ago, and did not notice it didn't work till Friday :/ Well, at least it is working now (hopefully).

I also introduced a glitch in the sound, and I did not find the bug yet. Seems that sometimes I send an invalid value to an AY register (producing a click sound) but I cannot even reproduce it whenever I want. This one will take longer to solve, I'm afraid.

So basically I have a working alpha version. I'd like to introduce a couple of things more before releasing it to those who asked for it, even if those bits are just temporary. And I have to decide if and where I am going to put a final level somewhere. Currently you can play the game for infinite levels, which is not reasonable. Mostly because I cannot ensure all the levels are solvable and that they do not repeat somehow.

My TODO list is getting smaller, which is good, but my IDEAS list is growing. And that is not so good. I still have over 6K left, but I must stop somewhere!

In fact I'd like to finish this, rest a bit and maybe think on my next project :) Definitely the next one should take benefit of the disk drive unit, now that people have cumulus!

@Godzil did you test it on real hardware? I played it for nearly half an hour this weekend and found one problematic side effect: all this speed and things occurring in a CRT TV gave me a bit of a headache! Maybe I am too close to my TV or I need to balance colour and brightness a bit. As I am red/green colour blind I trend to set them too high.

Also have a look at colour combinations that do not work, please. I find red ink too dark and magenta ink a bit ugly to watch. But maybe it's me :)
Last edited by Chema on Sat Apr 12, 2014 11:33 am, edited 1 time in total.
User avatar
ibisum
Wing Commander
Posts: 1643
Joined: Fri Apr 03, 2009 8:56 am
Location: Vienna, Austria
Contact:

Re: Fast scrolling game howto, anyone?

Post by ibisum »

On the sound glitch - are you sure you're sending an invalid value, and not just hearing the results of the Envelope going too short too suddenly (i.e. trying to play a sound with a long sustain value, then a sound with a fast attack/fast decay..)?
Godzil
Squad Leader
Posts: 774
Joined: Sat May 21, 2011 7:21 pm
Location: Between UK and France
Contact:

Re: Fast scrolling game howto, anyone?

Post by Godzil »

Chema wrote:Hi again!
@Godzil did you test it on real hardware? I played it for nearly half an hour this weekend and found one problematic side effect: all this speed and things occurring in a CRT TV gave me a bit of a headache! Maybe I am too close to my TV or I need to balance colour and brightness a bit. As I am red/green colour blind I trend to set them too high.

Also have a look at colour combinations that do not work, please. I find red ink too dark and magenta ink a bit ugly to watch. But maybe it's me :)
The cyan is a bit harsh on real hardware but it works. Maybe you could use the line trick to light it a bit with odd line cyan, and even line white, or something similar (maybe blue+white?) but you will loose a few columns on the left by doing this..

The only problem I could see it not your fault, but the Oric one, it is sometimes difficult to seen enemies or the player as everything share the same color.

The speed and smooth sensation is really great, I'm sorry not a lot of people try to play your game, they were more interested in more powerful computer, but as I presented the Cumulus, and made a "game demo" they see a bit more from the Oric, but I was able to show it a bit more, and have some discussion about the Oric and recent software, but it wasn't that great :(
Anyway this year it not as joyful as other years, thats why I think.
I should try to come with more than one Oric next time to present more than one stuff at the same time.

I also hope to be able to present some new hardware stuff at that time :)

At least one person take a photo with Oricium on screen :)
Cf: https://www.facebook.com/KeydeeGamerBoy ... =3&theater
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Fast scrolling game howto, anyone?

Post by Chema »

Godzil wrote:The cyan is a bit harsh on real hardware but it works. Maybe you could use the line trick to light it a bit with odd line cyan, and even line white, or something similar (maybe blue+white?) but you will loose a few columns on the left by doing this..
That's weird... I see cyan on black combination as the most relaxing to the eye, whilst green on black is (to me) a bit stressing (as it is magenta on black). Well that is why I ask :)

Alternating scans with different colour cannot be done in text mode, so we're stuck here :(
The only problem I could see it not your fault, but the Oric one, it is sometimes difficult to seen enemies or the player as everything share the same color.
Yep. I think you get used to it, but I agree. I tried to design enemies so they are more visible, but with everything moving around so fast it is a bit tricky. I can (as Dbug suggested) try to increase the mask around enemies, but they are already quite small graphics, so it is sometimes a bit difficult. Anyway I will have a look at that possibility. BTW some enemies have better contrast than others.
The speed and smooth sensation is really great, I'm sorry not a lot of people try to play your game, they were more interested in more powerful computer, but as I presented the Cumulus, and made a "game demo" they see a bit more from the Oric, but I was able to show it a bit more, and have some discussion about the Oric and recent software, but it wasn't that great :(
Anyway this year it not as joyful as other years, thats why I think.
I should try to come with more than one Oric next time to present more than one stuff at the same time.

I also hope to be able to present some new hardware stuff at that time :)

At least one person take a photo with Oricium on screen :)
Cf: https://www.facebook.com/KeydeeGamerBoy ... =3&theater
I am happy to hear that, because I was really worried about the smoothness. Also you can never have high expectations with these conventions. You never know the amount of interest a small machine is going to have.
ibisum wrote:On the sound glitch - are you sure you're sending an invalid value, and not just hearing the results of the Envelope going too short too suddenly (i.e. trying to play a sound with a long sustain value, then a sound with a fast attack/fast decay..)?
Mmmm.. could be. I am quite sure there are glitches due to invalid values, but maybe others are cause by what you state here. Good point!
Godzil
Squad Leader
Posts: 774
Joined: Sat May 21, 2011 7:21 pm
Location: Between UK and France
Contact:

Re: Fast scrolling game howto, anyone?

Post by Godzil »

I don't thinkg that you forgot this trick:

http://defence-force.org/computing/oric ... /index.htm

Image

Code: Select all

 C=1
 FOR I=0 TO 199
    POKE #A000+I*40,C
    POKE #A001+I*40,26
    C=C+1
    IF C=8 THEN C=1
 NEXT I
:)
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Fast scrolling game howto, anyone?

Post by Chema »

Did you read the 'some characters are destroyed'? From half of the screen donwards writting attributes in the hires memory destroys characters, where I put my tiles.

So, can't do it, except for the upper part.
User avatar
Dbug
Site Admin
Posts: 4437
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Fast scrolling game howto, anyone?

Post by Dbug »

@Godzil: Chema is already not having enough characters, I'm not sure he really can afford to miss 20% of what he currently has :)
Godzil
Squad Leader
Posts: 774
Joined: Sat May 21, 2011 7:21 pm
Location: Between UK and France
Contact:

Re: Fast scrolling game howto, anyone?

Post by Godzil »

:oops:
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Fast scrolling game howto, anyone?

Post by Chema »

I worked a bit more this week and introduced a few things I wanted to test. Most of these are just initial tests, so no screenshots or videos until they are more definite.

I also introduced the effect of the last powerup, which freezes the enemies for some time and solved a couple of bugs that were lurking around. What I find surprising is that the occasional glitches in the sound effects have disappeared. I surely had some kind of wrong initialization somewhere, because as soon as I introduced a small music at the menu screen, they vanished. Need some further testing to see if this is indeed the case.

Next bits in my TODO list are implementing the volume setting (which works when setting the variable through the debugger, but still need to code the user interface for that), and adding some more small tunes and the missing sound effects. Coding tunes is a bit lengthy process, with a lot of trial and error. That is what will take most of the time. Once this is in I can release a new alpha version and I can start considering introducing a boss somewhere.

I hope to have something to show you soon, so stay tuned!
User avatar
Dbug
Site Admin
Posts: 4437
Joined: Fri Jan 06, 2006 10:00 pm
Location: Oslo, Norway
Contact:

Re: Fast scrolling game howto, anyone?

Post by Dbug »

Chema wrote:Next bits in my TODO list are implementing the volume setting (which works when setting the variable through the debugger, but still need to code the user interface for that), and adding some more small tunes and the missing sound effects.
Suggestion: Also implement a "pause" key, which could display the option menu, allowing to tweak the volume, difficult, etc...
Way too many Oric games do not have a way to pause the action, so when the phone ring or the pizza arrives, you lose :)
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Fast scrolling game howto, anyone?

Post by Chema »

Nice idea indeed! See? Another one to the list :)
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Fast scrolling game howto, anyone?

Post by Chema »

Pause option has been added, as Dbug suggested. Something rather simple: you press the pause key (by default ESC, but you can redefine it) and action stops until any key is pressed. I thought about the idea of bringing up the main menu, but most some of the actions would not be accessible in pause mode and that complicated things a bit (restoring the character set back and such kind of nasty operations), so I dropped the idea for now.

Setting the volume is also added into the menu. Also quite simple: four discrete levels from high to no sound (with some funny names, you'll see on the game). Should suffice as it did on Space:1999.

I also added some lacking sfx and got rid of a couple of bugs.

Basically I have a fully working alpha version. Still no limit to the number of levels to be played and it needs a couple of tunes and sound effects more, but I think this is quite definite. All but a final boss level if I finally add it. I have over 6K of free space, so it is not impossible. But would certainly need a lot of developing time.

So the end is near... at last! :)
User avatar
peacer
Flight Lieutenant
Posts: 451
Joined: Wed Jun 09, 2010 9:23 pm
Location: Turkey
Contact:

Re: Fast scrolling game howto, anyone?

Post by peacer »

Can't... wait... :)
User avatar
Chema
Game master
Posts: 3013
Joined: Tue Jan 17, 2006 10:55 am
Location: Gijón, SPAIN
Contact:

Re: Fast scrolling game howto, anyone?

Post by Chema »

Okay, I just added Vsync hack support and I am glad to say that it is working nicely, at least on Oricutron. I developed everything with the idea of supporting the hack in mind, so it was a matter of changing a small routine to check for a 1 in CB1 (through $30d). No altering my ISR or anything :)

What I would need now is a way to detect the pressence of the hack. I have a couple of questions regarding this.

First, I guess detection could work just by checking that CB1 is not high all the time, something such as this code, which returns with Carry set if Vsync hack is present:

Code: Select all

	clc
	lda $300
	lda $30D
	and #%00010000 
	beq vsyn_found ; Was zero, so it is working
	
	; Was 1, check if it goes to zero
	lda $300
	lda $30D
	and #%00010000 
	bne vsyn_end ; It is still 1, no VSync hack present

	; Was zero this time so it is working
vsyn_found
	sec 
vsyn_end
	rts
Anyone with experience in this can check if it will work (Dbug)?

The second question, when am I going to detect it? I think the user needs time to plug the Vsync cable after loading the game, so I guess I need to print a message such as "Plug the VSync cable if you have one and press a key". Then, after the keypress, perform the detection. If no Vsync is detected, jump to the calibration screen, else skip it.

I cannot think of a more automatic (or transparent) way, and it will be a bit of an inconvenience to the average user. Any ideas?
Post Reply