English Amiga Board


Go Back   English Amiga Board > Main > Amiga scene

 
 
Thread Tools
Old 01 September 2018, 17:23   #81
mcgeezer
Registered User
 
Join Date: Oct 2017
Location: Sunderland, England
Posts: 2,702
Quote:
Originally Posted by jotd View Post
@mcgeezer out of curiosity: but the "sliding window" technique you're describing needs you to write on a big memory range right?

Doing my calculations, if you need to scroll horizontally a 3200 wide tiled image (10 screens worth) you need 3200/16 = 200 bytes ahead which is very small (but you have 4 or 5 bitplanes so make it 1kb), but is that the same vertically wise? Vertically wise you don't divide by 16. 1 pixel = +40 bytes times the number of bitplanes.
It's not the same for vertical scrolling, the most efficient use of vertical scrolling is using video splitting (i think mentioned above), but it comes at a price of complexity.

My current project will need to do vertical scrolling also, but I'm just going to use two screens to do it and move down to single buffering as not alot happens on the game when vertical scrolling is in progress.

I would approach DD by not having any vertical scrolling at all, only use horizontal scrolling and when you want to move up and down just move the display window accordingly.
mcgeezer is offline  
Old 02 September 2018, 07:49   #82
Dan
Registered User
 
Dan's Avatar
 
Join Date: Nov 2004
Location: Germany
Posts: 629
To do the Scrolling in amos pro, you can use two ways. Either tile based or Image based scrolling.

The image based scrolling would be easier, as all you need to do is to load the stage as an iff image, to setup the screeen display, and to update it whenever you want to scrolling to happen.

The Wonderland game, a mario-alike-game (on the productivity #2 disk, also known as Dithell's Wonderland) uses this techique for its levels.

The commands that you need are

1. Either LoadIff or ScreenOpen for the level setup
2.Screen Display for setting up the screen size and place
3. In game loop: ScreenOffset to do the scrolling.

For tilebased scrolling i guess it's best to use the TOME extension (i guess that the version 4 is the latest).
It has its own tile-based maps. There are examples which shows you how to do the scrolling.

The TOME extension would be faster (in my oppinion) than your own routines (amos code) for tilebased scrolling.

Last edited by Dan; 02 September 2018 at 08:18.
Dan is offline  
Old 02 September 2018, 08:34   #83
Samurai_Crow
Total Chaos forever!
 
Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
I would agree except that TOME uses blitter scrolling and could be faster without.
Samurai_Crow is offline  
Old 02 September 2018, 09:47   #84
Dan
Registered User
 
Dan's Avatar
 
Join Date: Nov 2004
Location: Germany
Posts: 629
Here is a picture of the 2 horizontal tile scrolling methods, as i'v understood it.

What i have left out is the complete redrawing of the tiles method.

The only thing to consider is, which one produces less jittery scrolling on the target machine.

Explanation of the bottom part, as the picture does not clearly show's it:

First you open a screen of, lets say, 656x250, and set the displaying screen to 640,250. Tile width=16. (640+16=656)

Then you copy the part of your displayed screen. Starting point is your h-scroll value to the end of the screen (the one with width of 656).
Repeat that until you reach the point when you are able to draw new tiles (at least after 15th pixel of scrolling)

Of course this it's slower method.
Attached Thumbnails
Click image for larger version

Name:	Scrolling methods.png
Views:	266
Size:	3.7 KB
ID:	59630  

Last edited by Dan; 02 September 2018 at 10:41.
Dan is offline  
Old 02 September 2018, 10:29   #85
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773
Large images only work up to 1024 and software scrolling is slow never use screen copy only use hardware scrolling.

And Tome is not fast it's faster without it.
Retro1234 is offline  
Old 02 September 2018, 10:40   #86
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773
Sorry guys I won't post anymore but if you look at how Amiga games were made on this forum you don't use large Bitmaps, you don't turn a large Tiled map into a IFF?

It doesn't matter what language you use the scrolling methods are the same you don't software scroll like on the ST

This is how games are made if you come up with crazy scrolling ideas and not stick to the know formula it goes nowhere.

And why o why do we have this sillyness of" no don't work" in 2018, if something works remember instead of going through this again and again.
Retro1234 is offline  
Old 02 September 2018, 10:53   #87
Dan
Registered User
 
Dan's Avatar
 
Join Date: Nov 2004
Location: Germany
Posts: 629
Retro1234, please give us, at least, code with which we can WORK with, and which works in the AMOS pro language, since Brick Nash is working with it.

I'v just found the "Def Scroll" and "Scroll" commands in the Amos Pro help. So looking at my attached picture, instead of using copy, use "Scroll".
It is probably faster, but someone need's to test it.

Last edited by Dan; 02 September 2018 at 10:59.
Dan is offline  
Old 02 September 2018, 10:58   #88
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773
I suggest looking at idrougge's examples this includes both methods of scrolling.
Retro1234 is offline  
Old 02 September 2018, 15:11   #89
Dan
Registered User
 
Dan's Avatar
 
Join Date: Nov 2004
Location: Germany
Posts: 629
Yeah saw it, and by my understanding i draw a short animation of how the process can be done horizontally:



So the advantage of this method is having 2 tiles pasted occasionally, to fill up the map. And it would not impact the speed of the game at all.

Of course this is only for the one way scroll, just like Double Dragon game is.
Attached Thumbnails
Click image for larger version

Name:	ScrollingAnimationTechnique.gif
Views:	1403
Size:	80.2 KB
ID:	59635  
Dan is offline  
Old 02 September 2018, 15:46   #90
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773


Just paste your 2 tiles every 1 pixel you scroll


Theres an even easier way for horizontal but that is a good way.

Your notice if you scroll past the full width of the screen what happeneds you see the beginning of our image (it's wrapped round like a Zoetrope)but it's risen by 1 pixel so we only need to realign our Tiles every screen width by 1 Y pixel.

But on Amos you will get Bob clipping at the end of the screen width I just Moved the Bob to the new position but adrazar found a way to disable Bob clipping if this works with Corkscrew scrolling this is a brilliantly simple scrolling method for a game like this
http://eab.abime.net/showthread.php?t=87636
On Blitz apparently you need to disable the Debuger.

Both methods can be adapted to scroll 2ways.

If you can, can you do a similar small animation for corkscrew scrolling this would be a good reference

Last edited by Retro1234; 02 September 2018 at 16:33. Reason: Risen not sunk
Retro1234 is offline  
Old 02 September 2018, 17:04   #91
dlfrsilver
CaptainM68K-SPS France
 
dlfrsilver's Avatar
 
Join Date: Dec 2004
Location: Melun nearby Paris/France
Age: 46
Posts: 10,413
Send a message via MSN to dlfrsilver
excellent idea ! By the look of it, it's exactly how the CPS-1 system is doing for a game like Cadillac and Dinosaurs, and many others.
dlfrsilver is offline  
Old 02 September 2018, 17:17   #92
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773
I always used the method described by Dan until MrsBeanBag told me about the easier corkscrew for horizontal, I assumed that scrolling past the end of the screen like this was considered wrong or something.
Retro1234 is offline  
Old 03 September 2018, 06:02   #93
Samurai_Crow
Total Chaos forever!
 
Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
Quote:
Originally Posted by Retro1234 View Post
I always used the method described by Dan until MrsBeanBag told me about the easier corkscrew for horizontal, I assumed that scrolling past the end of the screen like this was considered wrong or something.
It is. It might not work on future versions of AmosPro but maybe in an extension.
Samurai_Crow is offline  
Old 03 September 2018, 09:04   #94
Retro1234
Phone Homer
 
Retro1234's Avatar
 
Join Date: Jun 2006
Location: 5150
Posts: 5,773
Quote:
Originally Posted by Samurai_Crow View Post
It is. It might not work on future versions of AmosPro but maybe in an extension.
Future versions your going to write in 2065 stop your stupidness.
Retro1234 is offline  
Old 03 September 2018, 17:28   #95
Samurai_Crow
Total Chaos forever!
 
Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
Quote:
Originally Posted by Retro1234 View Post
Future versions your going to write in 2065 stop your stupidness.
What year it comes out I don't know but I'm going to keep working on it as long as I have an Amiga to keep tinkering with. Also, I'm not the only one working on AmosPro so it appears there's enough stupidity to go around.
Samurai_Crow is offline  
Old 04 September 2018, 03:45   #96
redblade
Zone Friend
 
redblade's Avatar
 
Join Date: Mar 2004
Location: Middle Earth
Age: 40
Posts: 2,127
Quote:
Originally Posted by Brick Nash View Post
Been tinkering about with this again.

Tried to get the palette down to 32 shared colours which makes it more washed out but not terrible (Billy's golden locks have taken a hit). Creating compatible palettes for all the Bobs and all the level backgrounds is continuing to be a bitch though.

Interestingly, the original Amiga DD's Level 1 background seems to have 64 colours when run through an analyser. Who knew.



Hi. How much RAM does the character sprite use up? Are you using sprites? What happens if player 2 joins in? Do you re-colour the blue to red or do you have another copy of the player sprites in RED? I wonder how he did double dragon II?

How much RAM do the map tiles take up? Looks real nice, well done with the graphics conversion
redblade is offline  
Old 04 September 2018, 12:09   #97
Epo
Users Awaiting Email Confirmation
 
Join Date: Aug 2018
Location: Country
Posts: 38
Quote:
Originally Posted by Samurai_Crow View Post
What year it comes out I don't know but I'm going to keep working on it as long as I have an Amiga to keep tinkering with. Also, I'm not the only one working on AmosPro so it appears there's enough stupidity to go around.
Thank you Samurai_Crow for your dedication and to the rest of the team. Please do not stop working on it, there is a lot of people using this great programming language also looking for an update. Speaking of... Did you guys fix the compiler bug with Val() instruction? It is so annoying. It converts negative values to positive, but only after compilation - in the editor everything works fine. If so, I would embrace a quick release just for this bug only.
Epo is offline  
Old 04 September 2018, 17:49   #98
Samurai_Crow
Total Chaos forever!
 
Samurai_Crow's Avatar
 
Join Date: Aug 2007
Location: Waterville, MN, USA
Age: 49
Posts: 2,186
@Epo
The compiler hasn't been touched. The next release is focusing on bugs in the installer and interpreter.

@thread
Any additional questions about future releases of AmosPro should be posted in a dedicated thread in the AMOS development category.
Samurai_Crow is offline  
Old 06 September 2018, 12:44   #99
Codetapper
2 contact me: email only!
 
Codetapper's Avatar
 
Join Date: May 2001
Location: Auckland / New Zealand
Posts: 3,182
Quote:
Originally Posted by Brick Nash View Post
Interestingly, the original Amiga DD's Level 1 background seems to have 64 colours when run through an analyser. Who knew.
Actually it's 32 colours not 64. The tiles are 16x16 interleaved.
Codetapper is offline  
Old 29 March 2019, 09:06   #100
Brick Nash
Prototron
 
Brick Nash's Avatar
 
Join Date: Mar 2015
Location: Glasgow, Scotland
Posts: 411
Hey folks, sorry about the horribly rude lack of replies but I've been busy with other stuff.

I had all but given up on this conversion as I was just hitting too many brick walls, plus I've been working on a Double Dragon sequel for the PC using Game Maker which I released a demo for a few months back.

I'm getting the itch to go back and try something with this Amiga port but truth be told I'd probably need to collaborate with someone a bit more experienced to get things moving and provide some proper motivation. However I also realise that it's a big ask of anyone's time and I'm assuming that like me, we're all post 40 in years and free hours are rare.

If anyone is interested I can maybe make a download pack to all the resources and the most recent Amos project file and maybe we could set up some sort of pass-around system where different people can "have a go" as it were. Given the lack of decent beat 'em ups on the Amiga it'd be nice to get even a one level demo made, and I'm not precious about sharing credit or any ego stuff like that. I just want a cool brawler for the Miggy.

I haven't looked at Amos in a while either so I'm unaware of any updates or new extensions which might help that weren't there before, so by all means fill me in.

Cheers!
Brick Nash is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Double Dragon Bug ? bbsteal support.Games 6 03 July 2011 23:07
A remake/sequel of Moonstone is in the progress! Ironclaw Amiga scene 13 22 July 2008 18:17
Double Dragon 2 The Master project.WHDLoad 2 04 June 2006 19:20
Trick Or Treat Remake - Work in Progress ant512 Amiga scene 15 16 November 2004 17:25

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 08:06.

Top

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Page generated in 0.10074 seconds with 14 queries