English Amiga Board


Go Back   English Amiga Board > abime.net - Hosted Projects > project.Sprites

 
 
Thread Tools
Old 30 September 2015, 15:42   #1
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
Help ripping Roketz sprites

Hi,

I'm a programmer wanting to build a modern port of Roketz in Unity. I originally wanted to create a new game inspired by Roketz, but as I have been unable to find an artist to work with. I decided I would do a fan-port of the original instead. I've a lot of experience with modern games development but unfortunately I'm not experienced with the Amiga.

So far I've tried ripping the artwork myself using Maptapper but am having some trouble with figuring this out - is there someone here who is experienced that can help me out?

So far I've managed to locate the map backgrounds (though I can't seem to figure out how many bitplanes it should be and the bitplane order and so I get garbled colours - though I can rip these using screenshots anyhow). More importantly I'd like to be able to rip out the ship sprites as I can't easily reproduce those.

Any ideas?

Edit: What would be useful actually is for someone to check that the sprites etc. are in 'usual' format for an Amiga game. If so then pointing me at a good tutorial so I can understand this would be help enough! If not then perhaps some explanation of how the artwork is arranged in this game from someone experienced?

Edit 2: I think I might have located some ship sprites, check out the image:
https://dl.dropboxusercontent.com/u/...per_screen.png
I think they're the tiles in the lower half of the preview; Anyone spot what magic needs to happen to get these un-garbled?

Last edited by AdamB; 30 September 2015 at 17:00. Reason: Added pic
AdamB is offline  
AdSense AdSense  
Old 30 September 2015, 19:08   #2
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
If anyone is interested in this here's the save state I'm using
https://dl.dropboxusercontent.com/u/...z_refinery.rar


New, smaller save states are here:
https://dl.dropboxusercontent.com/u/...Savestates.rar

Last edited by AdamB; 01 October 2015 at 09:30. Reason: new save states
AdamB is offline  
Old 30 September 2015, 23:36   #3
CodyJarrett
Global Moderator

CodyJarrett's Avatar
 
Join Date: Mar 2001
Location: UK
Age: 40
Posts: 5,742
I haven't worked out how to rip the sprites yet but in the meantime I've uploaded the level maps to the Zone.

Your 143Mb savestate is quite large. It would be easier to work with in Maptapper if it was smaller.
CodyJarrett is offline  
Old 01 October 2015, 07:57   #4
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
You, Sir, are a true gentleman.

It has begun:
https://dl.dropboxusercontent.com/u/...nery_unity.png

So far I've only managed to rip the teleport sprite, and I had to manually fix the colours haha.

Still trying to figure out how to extract everything else. What settings did you use to do that rip, or was that from screenshots?

I'll upload a smaller uss - I think it's big because I threw a tonne of memory at the emulator. I'll do smaller ones (I'll do two - so that all 4 ship variants are in there as I would imagine it only keeps in RAM the 2 ships currently in play).

Edit: Here's the new save states - the names indicate which ships are in-game.
https://dl.dropboxusercontent.com/u/...Savestates.rar

Last edited by AdamB; 01 October 2015 at 08:16. Reason: new save states
AdamB is offline  
Old 02 October 2015, 16:03   #5
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
OK So I've still had no luck ripping the ships using Maptapper. So instead I've been trying to rip them using screenshots.

It's not going well!

I've spent about 5 hours so far trying to rip this one ship (the Platform B). Because of the nature of the control system in the game, it's near impossible to capture all of the frames through screenshots - I've ended up just flying about spamming the screenshot key, and then having to sift through the screenshots, pulling out the ship from each one, and then sticking it into a tilesheet. However, a) it's turned into a giant game of spot the difference to tell if that frame is already in the tilesheet (especially as I don't know how many frames there are in total...) and b) figuring out which frame goes where is a horrendous jigsaw with hundreds of pieces that all look really similar.

This is what I got so far, though I'm pretty sure a lot of the frames are in the wrong places.


Anyone got some ideas on a better technique?
AdamB is offline  
Old 02 October 2015, 21:12   #6
Codetapper
2 contact me: email only!

Codetapper's Avatar
 
Join Date: May 2001
Location: Auckland / New Zealand
Posts: 3,135
I've had a quick look and found the sprites but looks like Maptapper needs an adjustment/custom to skip the rubbish in each frame. Give me a day or so and I'll see if I can save them for you.
Codetapper is offline  
Old 02 October 2015, 21:29   #7
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
Ah, awesome. That would be a massive help to me!

I'll get these damn sprites one way or another!

In the mean time I've been continuing my adventures in Maptapper anyhow, for my own education if nothing else. So; I'd figured by now something was not quite normal about the way the data is arranged as you say; It seems most of the time there's 4 images (4 bitplanes that make up the final image I'm assuming) in groups, but after the first few groups there's an extra image I'm assuming is a mask for some purpose - collision data perhaps? I can't quite figure out why some have the mask and some don't. Crazy.

https://dl.dropboxusercontent.com/u/...ga_ripping.png

The following image is the best I've managed to get, the first 4 frames appear to line up but after that there's some junk between the frames I can't seem to get past with simply skipping bytes, so your solution sounds like it would do the trick!

https://dl.dropboxusercontent.com/u/..._ripping_2.png

Obviously there's still some pallette issues there, too.

-Adam
AdamB is offline  
Old 04 October 2015, 14:15   #8
Codetapper
2 contact me: email only!

Codetapper's Avatar
 
Join Date: May 2001
Location: Auckland / New Zealand
Posts: 3,135
Try these. All frames are 16x17 in the picture, perhaps the bottom line of each can be cut off. I don't know anything about the game so hopefully you can work out if there are still frames missing or not.
Attached Thumbnails
Click image for larger version

Name:	Rocketz_1.png
Views:	170
Size:	23.8 KB
ID:	45701   Click image for larger version

Name:	Rocketz_2.png
Views:	152
Size:	18.0 KB
ID:	45702  
Codetapper is offline  
Old 04 October 2015, 17:19   #9
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
Thats amazing, thanks.

I'll look at integrating these two with my project today and in doing so figure out if there's any issues with them (missing frames or what not).

Certainly seems a more promising lead for me though!
AdamB is offline  
Old 04 October 2015, 21:11   #10
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
OK I've integrated the blue ship so far. It appears to work fine - tomorrow I will spend some time doing an A/B comparison with the amiga game so that I can say it's fine with more confidence.

I'll continue with integrating the second ship tomorrow. Hopefully that will go well, too! I'm also hoping to have an early webGL version up for people to check out tomorrow.
AdamB is offline  
Old 05 October 2015, 20:04   #11
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
Yep, it's the same as the amiga version, so all is well.

Codetapper; Could you provide me with the other 2 ships, or alternatively some direction on how to go about replicating your fine work?

I've uploaded a webGL build of what I've got so far of my Unity port; you can check it out here:
Roketz WebGL Alpha

Controls are Space to thrust, left/right arrow to rotate, up to shoot.

Not much to do except fly about and shoot at walls, but it's a start!

Cheers,
-Adam

Last edited by AdamB; 05 October 2015 at 20:08. Reason: typo
AdamB is offline  
Old 06 October 2015, 08:25   #12
clenched
Registered User

 
Join Date: Sep 2008
Location: Gainesville U.S.A.
Posts: 587
Here is a way to rip the sprites without too much trouble. Use stock A1200 setup and Hrtmon to enter the little program. Search for a huge table of numbers that resemble the hex dump.The first longword in each row points to a sprite.The actual addresses may have to be adapted if the game loads to a different address.
Type in and run the program. Make savestate and load in Maptapper.
Code:
 
m 22428
00022428 001D 47E8 0011 0002 8010 0044 0008 0008  ..G........D....
00022438 001D 4878 0011 0002 8010 0044 0008 0008  ..Hx.......D....
00022448 001D 4908 0011 0002 8010 0044 0008 0008  ..I........D....
00022458 001D 4998 0011 0002 8010 0044 0008 0008  ..I........D....
00022468 001D 06B8 0011 0002 8010 0044 0008 0008  ...........D....
00022478 001D 4A28 0011 0002 8010 0044 0008 0008  ..J(.......D....
00022488 001D 4AB8 0011 0002 8010 0044 0008 0008  ..J........D....
00022498 001D 4B48 0011 0002 8010 0044 0008 0008  ..KH.......D....
000224A8 001D 0748 0011 0002 8010 0044 0008 0008  ...H.......D....
000224B8 001D 4BD8 0011 0002 8010 0044 0008 0008  ..K........D....
000224C8 001D 4C68 0011 0002 8010 0044 0008 0008  ..Lh.......D....
000224D8 001D 07D8 0011 0002 8010 0044 0008 0008  ...........D....
000224E8 001D 4CF8 0011 0002 8010 0044 0008 0008  ..L........D....
000224F8 001D 4D88 0011 0002 8010 0044 0008 0008  ..M........D....
00022508 001D 4E18 0011 0002 8010 0044 0008 0008  ..N........D....
00022518 001D 0868 0011 0002 8010 0044 0008 0008  ...h.......D....
00022528 001D 4EA8 0011 0002 8010 0044 0008 0008  ..N........D....
00022538 001D 4F38 0011 0002 8010 0044 0008 0008  ..O8.......D....
00022548 001D 08F8 0011 0002 8010 0044 0008 0008  ...........D....
00022558 001D 4FC8 0011 0002 8010 0044 0008 0008  ..O........D....
         ^^^^^^^^^ pointers to sprites
 
    org       $200
    lea       $22428,a0    ; start of pointers to sprite
    move.w    #540-1,d1    ; number of sprites to rip
    lea       $1e8000,a1   ; destination of copied sprites
.1  move.l    (a0),a2      ; load pointer
    adda.l    #16,a0       ; skip to next pointer
    move.w    #68*2-1,d0   ; copy sprite
.2  move.b    (a2)+,(a1)+
    dbf       d0,.2
    dbf       d1,.1        ; next sprite
.3  bra      .3            ; stall game and make savestate for Maptapper
Attached Thumbnails
Click image for larger version

Name:	MTSprite.PNG
Views:	126
Size:	95.0 KB
ID:	45718   Click image for larger version

Name:	sprites.png
Views:	127
Size:	37.0 KB
ID:	45719  
clenched is offline  
Old 06 October 2015, 10:09   #13
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
OK, cheers for that!

I've never used HRTMon before so it's a learning experience for me - I have experience with assembler but it's been a while!

So far I've managed to crash WinUAE by trying to load the HRTMon cartridge that it comes with (v2.3) - hitting page up to interrupt the program causes the emulator to lock up.

But I'll persevere and see where I get to! First thing I'll try is updating my emulator/roms to whatever is latest.

I'll let you know how I get on!
AdamB is offline  
Old 06 October 2015, 11:05   #14
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
OK Updated to latest WinUAE (I was running some ancient version) and HRTMon now appears to function.

I'll play with this today and see where I get to, currently I've got as far as using 'm' to skip through memory looking for something interesting!
AdamB is offline  
Old 06 October 2015, 12:40   #15
clenched
Registered User

 
Join Date: Sep 2008
Location: Gainesville U.S.A.
Posts: 587
I only said Hrtmon because it is built in to WinUAE. The actual assembler I used was VASM. So typing that verbatim wouldn't work anyway. Maybe easier to use WinUAE debugger END+F12, right click in third big pane from the top and enter 200. Overwrite the first three lines then g 200 to run.

Code:
00000200 41F9 0002 2428 323C 021B 43F9 001E 8000  A...$(2<..C.....
00000210 2450 41E8 0010 303C 0087 12DA 51C8 FFFC  $PA...0<....Q...
00000220 51C9 FFEE 60FE 1908 00F8 1908 00F8 1908  Q...`...........
clenched is offline  
Old 06 October 2015, 13:53   #16
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
OK I've managed to do it, managed to rip this using your instructions;


I'll continue with this and try getting hold of as much as I can - pretty much everything other than the ships can be done with screen grabs but this seems like a much quicker method!

Thanks a lot for the help - it's gonna take me a long way to finishing this port!
AdamB is offline  
Old 06 October 2015, 16:08   #17
AdamB
Registered User

 
Join Date: Sep 2015
Location: UK
Posts: 33
Had a lot of success today with ripping down the ships, many thanks!

I've a newer build up if anyone is interested;
Roketz WebGL Alpha_06_10_2015

Not much has changed other than testing out the other 2 ships and you can now fly the second ship (using W/S/A/D and left shift). The camera also tries to keep both players in view rather than split screen - though I will probably have to ditch this as some levels are too large (airduct for example).
AdamB is offline  
AdSense AdSense  
 


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

Similar Threads
Thread Thread Starter Forum Replies Last Post
Help ripping sprites from Battle Chess Angel project.Sprites 11 31 July 2013 08:14
Ripping Sprites help.... Louk project.Sprites 13 09 July 2013 00:25
Ripping Sprites - Technique... method project.Sprites 23 14 June 2011 19:31
Roketz Asle HOL data problems 5 22 December 2008 22:03
ripping various sprites gifgit project.Sprites 4 26 April 2006 19:50

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 04:19.


Powered by vBulletin® Version 3.8.8 Beta 1
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Page generated in 0.36762 seconds with 13 queries