Help With Time Bandits; Level Hack, Video, Thought


aapje89 posted on Mar 2 2005 at 06:11 PM said:
wow, and this is only 1 level...


It is actually only a level to select levels :)

I had an Amiga at the time this was out and was always jealous of the ST as they had this game and the Amiga didn't. I always wished they would port it. eventually they did years later but by then I was on to other games. Maybe now is the time to try it :)
 
Last edited by a moderator:
Woo, toxibunny rules :) Thats a pile of work and I thank you :) Even just getting all the levels scrteenshotted, and then trying to work out the maps for them would be slick. I'm wondering if it comes down to it and all other options are exhausted, I wonder if I could write a job that woudl analyze things pixel by pixel and determine which tiles are in each square. It seams likely since each tile is identical and unblurred (as opposed to OCR).

Hmmm..

Its cool to see a few peopl ehelping out; its what I always love most about GP32 scene.. people will help :)

jeff
 
here's another one :) (an easy one this time :p )

SHADOWLAND1A.png


19x22

wwwwwwwwwwwwwwwwwww
w11111111w11111111w
wsww1www1w1www1wwsw
w1ww1www1w1www1ww1w
w11111111111111111w
w1ww1w1wwwww1w1ww1w
wwww1www1w1www1wwww
000w1w1111111w1w000
wwww1w1wuuuw1w1wwww
wl00111w000w11100rw
wwww1w1wwwww1w1wwww
000w1w1111111w1w000
wwww1w1wwwww1w1wwww
w11111111w11111111w
w1ww1www1w1www1ww1w
ws1w11111111111w1sw
ww1w1w1wwwww1w1w1ww
w1111w111w111w1111w
w1wwwwww1w1wwwwww1w
w11111111111111111w
wwwwwwwwwwwwwwwwwww




phew!
 

Attachments

  • SHADOWLAND1A.png
    SHADOWLAND1A.png
    13.9 KB · Views: 198
*Awesome*

Keep it up if you can :) One of the "starship" looking levels would be wicked :) (theyr'e multifloor now that I think about it)

I can push them right into Zot :)

jeff
 
Messed around with that ripper tool; its very similar to something I made back probably 7 or 8 years ago for finding out wherre the artwori was stored in arcade roms (centipede and such at the time I was workgin on I think). Cool stuff.

Its ST-mode does make it not too bad to find the artwork.. so I lcoated it in Time Bandits pretty fast, then spent a couple hours trying to get it "right", but the tool didn't quite have it. Its better suited to Amiga art than ST art. (ie: I was able to lcoate the tiles, but all the tiles were shift funny as bit and its shift options just woudlnt' pull it together right, though I coudl fiddle more.) In the end, I could rip most of the art myself form screenshots easier ;) But we'll see.

The level layout is the harder part..

jeff
 
i'm busy doing the ground floor of the starship level now. should I put stuff like the key/lock/ladder in the text map, or just the actual scene you walk around?

edit: all the pics are set up on a 32x32pixel grid, for easy 'snap to grid' rectangle selecting...
 
stuff like keys, locks, gems etc .. really, those are sprites, but put them in there I guess and I'll take care of changing all that into game objects and all that.

Get me a couple levels of the straahip and I'll get you a copy of them running on your gp32 real soon :)

(The latest zot build is having memory issues on the gp32 for some reason, so got some debugging ahead. The script engine must be compiling oddly ..)

jeff
 
arg! it's boggling my brain. I keep making mistakes... i'll finish it tomorrow.

3123124134231213423123122312413423124134231
3123124134231213423123122312413423124134231
312312413423121342312acbbcbbbcbccbbbbcbbd31
3123124abbbbcbd34231eopzrzzzzqzzzzrzzzzte31
31423acgzzzzzzzhbd123ifzzzzzrzzzrzzzzzrze24
2342agzzzzzfqzzzzid321iccfzabcbbbbcbbcbbg24

starship1.png
 

Attachments

  • starship1.png
    starship1.png
    60.7 KB · Views: 179
There's got to be an easier way than doing this by hand ...

And google points me towards Mappy .. http://www.tilemap.co.uk/mappy.php

It allows you to load a graphic into a map, cut it into defined tiles, remove duplicate tiles.

This is what a couple of clicks comes up with...
Code:
const short starship_map[23][44] = {
{ 1, 2, 3, 1, 2, 3, 4, 2, 1, 4, 3, 1, 2, 3, 4, 2, 
1, 4, 3, 1, 2, 3, 1, 2, 3, 3, 1, 2, 3, 4, 2, 1, 
4, 3, 1, 2, 3, 4, 2, 1, 4, 3, 1, 2 },
{ 5, 2, 3, 1, 2, 3, 4, 2, 1, 4, 3, 1, 2, 3, 4, 2, 
1, 4, 3, 1, 2, 6, 7, 8, 6, 6, 7, 8, 6, 9, 8, 7, 
9, 6, 7, 8, 6, 9, 8, 7, 9, 10, 5, 2 },
{ 11, 2, 3, 5, 2, 3, 4, 8, 7, 9, 6, 7, 8, 6, 9, 12, 
1, 11, 13, 1, 14, 15, 16, 17, 18, 19, 20, 18, 20, 20, 21, 20, 
22, 23, 24, 25, 24, 24, 23, 24, 26, 27, 11, 2 },
{ 1, 28, 3, 11, 2, 7, 9, 29, 30, 31, 30, 30, 32, 30, 31, 33, 
6, 34, 2, 3, 4, 35, 36, 37, 38, 39, 38, 38, 40, 38, 41, 38, 
40, 38, 38, 39, 38, 38, 40, 38, 42, 43, 1, 28 },
{ 3, 1, 44, 1, 8, 29, 30, 45, 38, 38, 38, 46, 38, 38, 38, 47, 
31, 33, 12, 3, 4, 48, 49, 50, 50, 46, 38, 50, 51, 50, 50, 50, 
51, 50, 50, 50, 50, 50, 51, 50, 52, 43, 3, 1 },
{ 44, 53, 4, 6, 29, 45, 38, 38, 50, 50, 50, 54, 55, 46, 38, 38, 
38, 56, 33, 10, 4, 1, 57, 58, 59, 60, 38, 15, 61, 62, 58, 61, 
63, 64, 65, 66, 67, 65, 64, 67, 66, 68, 44, 53 },
{ 69, 28, 11, 70, 45, 38, 50, 50, 70, 31, 71, 72, 31, 54, 50, 46, 
38, 38, 47, 73, 69, 5, 28, 3, 69, 74, 38, 75, 5, 69, 3, 5, 
3, 3, 69, 28, 5, 69, 3, 5, 28, 3, 69, 28 },
{ 28, 3, 6, 76, 38, 38, 70, 31, 77, 38, 78, 79, 38, 47, 32, 54, 
46, 38, 38, 80, 8, 9, 6, 7, 8, 81, 38, 35, 9, 8, 7, 9, 
7, 34, 28, 3, 69, 28, 5, 69, 3, 5, 28, 3 },
{ 3, 5, 70, 45, 38, 50, 82, 38, 83, 84, 38, 38, 50, 46, 38, 47, 
73, 38, 38, 47, 70, 85, 18, 20, 20, 86, 38, 87, 18, 21, 15, 18, 
88, 89, 10, 5, 28, 3, 69, 28, 5, 69, 3, 5 },
{ 1, 11, 82, 38, 38, 70, 77, 38, 90, 79, 38, 38, 56, 73, 38, 91, 
92, 38, 46, 38, 93, 94, 38, 38, 46, 38, 40, 38, 46, 38, 95, 96, 
38, 97, 89, 9, 10, 1, 14, 13, 11, 14, 1, 11 },
{ 3, 53, 98, 99, 38, 74, 38, 38, 60, 38, 38, 83, 84, 100, 38, 38, 
101, 38, 73, 38, 101, 38, 38, 38, 60, 38, 39, 38, 60, 38, 102, 103, 
38, 38, 97, 24, 104, 3, 4, 2, 1, 4, 3, 53 },
{ 1, 2, 75, 105, 38, 98, 38, 38, 106, 38, 38, 107, 37, 108, 38, 38, 
46, 38, 109, 38, 46, 38, 38, 38, 106, 38, 110, 38, 111, 38, 112, 96, 
38, 38, 50, 113, 114, 13, 11, 14, 1, 11, 1, 2 },
{ 5, 2, 98, 38, 38, 115, 46, 38, 116, 84, 38, 38, 50, 117, 38, 38, 
73, 38, 118, 38, 119, 38, 38, 38, 120, 38, 39, 38, 118, 38, 15, 121, 
38, 50, 122, 64, 123, 2, 1, 4, 13, 1, 5, 2 },
{ 11, 2, 95, 46, 38, 87, 60, 38, 107, 37, 38, 38, 87, 86, 38, 124, 
125, 38, 126, 50, 35, 50, 50, 50, 50, 46, 38, 50, 50, 50, 127, 50, 
50, 128, 129, 13, 1, 14, 3, 11, 2, 1, 11, 2 },
{ 1, 28, 57, 130, 38, 38, 35, 50, 46, 131, 83, 84, 38, 50, 50, 132, 
86, 38, 133, 15, 58, 134, 135, 136, 62, 73, 38, 70, 137, 138, 139, 140, 
141, 142, 69, 28, 5, 69, 3, 5, 28, 3, 1, 28 },
{ 3, 1, 28, 115, 46, 38, 87, 18, 49, 143, 144, 145, 50, 132, 146, 86, 
38, 38, 147, 75, 44, 148, 149, 44, 11, 150, 38, 100, 11, 28, 53, 11, 
44, 53, 28, 44, 11, 28, 53, 11, 44, 53, 3, 1 },
{ 44, 53, 44, 48, 49, 46, 38, 38, 87, 21, 20, 151, 21, 86, 38, 38, 
38, 50, 152, 153, 154, 155, 156, 9, 6, 117, 38, 127, 6, 7, 8, 6, 
9, 8, 7, 9, 6, 7, 8, 6, 9, 12, 44, 53 },
{ 69, 28, 4, 3, 157, 158, 50, 46, 38, 38, 38, 118, 41, 38, 38, 50, 
50, 159, 160, 161, 162, 163, 15, 21, 20, 45, 38, 47, 164, 32, 30, 165, 
166, 167, 168, 167, 165, 168, 167, 165, 167, 169, 69, 28 },
{ 28, 3, 11, 44, 1, 157, 170, 158, 50, 50, 50, 50, 50, 50, 50, 132, 
171, 172, 28, 173, 174, 175, 176, 38, 38, 40, 38, 38, 39, 38, 38, 38, 
39, 38, 38, 40, 38, 38, 177, 38, 178, 179, 28, 3 },
{ 3, 5, 1, 11, 13, 1, 14, 57, 134, 59, 61, 59, 58, 171, 180, 181, 
69, 28, 5, 182, 183, 184, 185, 38, 38, 51, 50, 50, 50, 50, 186, 50, 
50, 50, 50, 51, 50, 50, 50, 50, 187, 188, 3, 5 },
{ 1, 11, 44, 1, 28, 13, 11, 14, 53, 11, 44, 11, 44, 11, 44, 1, 
28, 13, 11, 189, 190, 191, 192, 193, 194, 195, 196, 197, 137, 139, 198, 199, 
200, 201, 199, 200, 202, 202, 141, 140, 203, 204, 1, 11 },
{ 3, 1, 205, 206, 207, 208, 206, 209, 208, 210, 211, 1, 205, 1, 205, 206, 
207, 208, 206, 212, 205, 206, 207, 208, 206, 209, 208, 212, 205, 206, 207, 208, 
213, 205, 214, 1, 3, 1, 3, 11, 2, 1, 3, 1 },
{ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
};
I'm sure you'll notice that there are alot of blocks in there (200+?)
I've checked the image data and there are a lot of very dark shades in almost duplicate tiles :rolleyes:


Hope this helps and speeds up your work :)
 
Mappy automatically figured out the tiles? Thats slick, I was going to write a tool for that :p However, if I write one, I was going to add one thing in... tile estimation. Sounds like its doing it literallyt, and thus hundreds of tiles; the game does palette rotation to get some basic flicking and animation on the tileset without any real work, so I wonder if thats creating different tiles all over the place. Otherwise it shoudn't.. not really too many which is why doing it by hand seams good, but too much work.

I did start work on a mappy handler to load up mappy files, but mappy is more limited than Zot so I didn't want to work too hard there.

This is fricking cool stuff though.

(Seams like the original game keeps its maps compressed, and decompresses them as needed into a small buffer, I think. I need to locate all the source data and figure out the compression alg, perhaps just RLE, sometime. But how they encode all the map changes and such as leels increase.. hmm.)

jeff
 
Ah! Now I see the joins :p That explains why there were loads of really dark background tiles!
The screenshot is also double sized, making it single sized will help you to line everything up.


@Skeezix: Mappy generates 'C' arrays -- does Zot parse them?
 
Mappys output really isn't terribly useful; ie: It assumes things like you have a single image with the tiles all in order on it, on tile boundaries.. no spacing, no offset into the images, no image transformations, and a single image. If Mappy spit out a struct saying heres the image and various values about it, and defined the tiles, it'd be better.

So I created a little 20 line tool that reads mappy output of various kidns and formats it into a useful zot description file.

ie: In zot, you could have any number of images as a source library, and use some or all of images as tiles with variable size tiles and all sorts of razyness.. much more flexible.

ie:

Mappy says tile 10, so you have to look up the image width and work out that if tiles are 16 big (it doesn't say, either) then tile 10 is 160 or 144 in; if thats more than the image, you have to go down by height and across by module tile width and theres your tile. But if you ever add to the image, god help you.

But if it can auto-figure out tiles, then that saves me writing that, and I can just use my mappy->zot conversion tool, if the screenshots were lined up just right.

At the same time, its still better to encode it yourself, since you need the flexibility.. ie: a key is not a special tile, its a floor tile with a key sprite on it. Stuff like that you have to do by hand anyway.

Source for Mappy is available of course, so I did briefly consider making a version that can emit Zot-configs for a map, but other people are working on editors so I didn't want to step on their toes, and it'd be easy for me to just make an on-device map editor in Zot itself (using Zotscript even ;)

jeff
 
gp32rich .. mind you, this is allg ood stuff, and why I asked for help, and all of your ideas have been very good, so keep them coming :)

If the screenies can be lined up just-so and mappy can auto-make the tile levels, that coudl be prety darned handy.. it'd save a lot of the work, then one just has to go back over and redo the tiles with "stuff" in them. (like the Pacman-like level set woudlon't be doable with mappy at all, since it'd make tiles of the items with pellets in them, when really they should be floor + sprite. At the same time, I did think about doing them as tiles, since then it'd run a lot faster, and just change the tile as the player passes.. decisions decisions :)

jeff

I need to fiddle with that rip tool a bit more; it nearly was able to capture the artwork, but was a pixel or two off in every case; theres got to be a way to fix it up, or maybe I'll install allegro and alter the tool. ITs Amiga-oriented, but its pretty darned close..
 
the reason the map pic was a little bit off is because steem sometimes inserts another line or 2 when you hover the mouse over th screenshot button too long. I'll have another go at stitching some stuff together tomorrow (at normal size.)

I'll also do 2 versions - one with the sprite stuff edited out, and one with them left in. still won't help the colour-cycliung issue though...

as for tonight- paper mario 2 beckons ;)
 
*g* I'm debating doing some CaSTaway work, or perhaps some Zot work, or maybe for once relax a little .. do some retro.. maybe play a text adventure, or play Metal Warriors on SNES, or try and fire up some ROMS into my flash cart for SNES to try some random games out... or play something on the PS2...

So many options, so little time.. :p

jeff
 
Update for caStaway? HMMmm... That is you best idea :D While you are poking around in there maybe try to throw in Cyclone and see what happens :p Do you have the cyclone that Reesy fixed some bugs in? That may work better than before, or not.
 
DaveC posted on Mar 5 2005 at 06:21 AM said:
Update for caStaway? HMMmm... That is you best idea :D While you are poking around in there maybe try to throw in Cyclone and see what happens :p Do you have the cyclone that Reesy fixed some bugs in? That may work better than before, or not.

He wasn`t joking either. :p

http://www.gp32x.de/board/index.php?showtopic=17662&hl=

Trooper
 
Last edited by a moderator:
Back
Top