I got off my ass earlier and finally decided to look into how the 03 XX tag object works. I'm gonna be putting visual representations into SonED soon, but for now, here's my notes (admittedly a tad more organised than they originally were ^_~). As a side point, if you have anything that is definately questionable about it, tell me and I'll test it again (or look into it as the case may be). ================== FORMAT EXPLANATION ================== --- 03 XX - Moving Right(To High / To Low / No Effect) - Moving Left(To High / To Low / No Effect) - Moving Up (To High / To Low / No Effect) - Moving Down (To High / To Low / No Effect) - Height / Width XX pixels ($XX) (X tiles) 03 XX: Object Number Moving Right: Which plane is switched to when moving through the tag horizontally rightwards Moving Left: Which plane is switched to when moving through the tag horizontally leftwards Moving Up: Which plane is switched to when moving through the tag vertically upwards Moving Down: Which plane is switched to when moving through the tag vertically downwards HEIGHT / WIDTH: The height is both above and below the object's coordinate. The top pixel is (height) pixels subtracted from the object coordinate, and the bottom pixel is (height - 1) added to the object coordinate. $XX is simply the number of pixels in hex, and X tiles is how many 8x8 tiles this is. --- ==== TAGS ==== --- 03 00 - Moving Right (To Low) - Moving Left (To Low) - Moving Up (No Effect) - Moving Down (No Effect) - Height 32 pixels ($20) (4 tiles) 03 01 - Moving Right (To Low) - Moving Left (To Low) - Moving Up (No Effect) - Moving Down (No Effect) - Height 64 pixels ($40) (8 tiles) 03 02 - Moving Right (To Low) - Moving Left (To Low) - Moving Up (No Effect) - Moving Down (No Effect) - Height 128 pixels ($80) (16 tiles) 03 03 - Moving Right (To Low) - Moving Left (To Low) - Moving Up (No Effect) - Moving Down (No Effect) - Height 256 pixels ($100) (32 tiles) 03 04 - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To Low) - Moving Down (To Low) - Width 32 pixels ($20) (4 tiles) 03 05 - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To Low) - Moving Down (To Low) - Width 64 pixels ($40) (8 tiles) 03 06 - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To Low) - Moving Down (To Low) - Width 128 pixels ($80) (16 tiles) 03 07 - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To Low) - Moving Down (To Low) - Width 256 pixels ($100) (32 tiles) 03 08 - Moving Right (To High) - Moving Left (To Low) - Moving Up (No Effect) - Moving Down (No Effect) - Height 32 pixels ($20) (4 tiles) 03 09 - Moving Right (To High) - Moving Left (To Low) - Moving Up (No Effect) - Moving Down (No Effect) - Height 64 pixels ($40) (8 tiles) 03 0A - Moving Right (To High) - Moving Left (To Low) - Moving Up (No Effect) - Moving Down (No Effect) - Height 128 pixels ($80) (16 tiles) 03 0B - Moving Right (To High) - Moving Left (To Low) - Moving Up (No Effect) - Moving Down (No Effect) - Height 256 pixels ($100) (32 tiles) 03 0C - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To Low) - Moving Down (To High) - Width 32 pixels ($20) (4 tiles) 03 0D - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To Low) - Moving Down (To High) - Width 64 pixels ($40) (8 tiles) 03 0E - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To Low) - Moving Down (To High) - Width 128 pixels ($80) (16 tiles) 03 0F - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To Low) - Moving Down (To High) - Width 256 pixels ($100) (32 tiles) 03 10 - Moving Right (To Low) - Moving Left (To High) - Moving Up (No Effect) - Moving Down (No Effect) - Height 32 pixels ($20) (4 tiles) 03 11 - Moving Right (To Low) - Moving Left (To High) - Moving Up (No Effect) - Moving Down (No Effect) - Height 64 pixels ($40) (8 tiles) 03 12 - Moving Right (To Low) - Moving Left (To High) - Moving Up (No Effect) - Moving Down (No Effect) - Height 128 pixels ($80) (16 tiles) 03 13 - Moving Right (To Low) - Moving Left (To High) - Moving Up (No Effect) - Moving Down (No Effect) - Height 256 pixels ($100) (32 tiles) 03 14 - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To High) - Moving Down (To Low) - Width 32 pixels ($20) (4 tiles) 03 15 - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To High) - Moving Down (To Low) - Width 64 pixels ($40) (8 tiles) 03 16 - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To High) - Moving Down (To Low) - Width 128 pixels ($80) (16 tiles) 03 17 - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To High) - Moving Down (To Low) - Width 256 pixels ($100) (32 tiles) 03 18 - Moving Right (To High) - Moving Left (To High) - Moving Up (No Effect) - Moving Down (No Effect) - Height 32 pixels ($20) (4 tiles) 03 19 - Moving Right (To High) - Moving Left (To High) - Moving Up (No Effect) - Moving Down (No Effect) - Height 64 pixels ($40) (8 tiles) 03 1A - Moving Right (To High) - Moving Left (To High) - Moving Up (No Effect) - Moving Down (No Effect) - Height 128 pixels ($80) (16 tiles) 03 1B - Moving Right (To High) - Moving Left (To High) - Moving Up (No Effect) - Moving Down (No Effect) - Height 256 pixels ($100) (32 tiles) 03 1C - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To High) - Moving Down (To High) - Width 32 pixels ($20) (4 tiles) 03 1D - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To High) - Moving Down (To High) - Width 64 pixels ($40) (8 tiles) 03 1E - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To High) - Moving Down (To High) - Width 128 pixels ($80) (16 tiles) 03 1F - Moving Right (No Effect) - Moving Left (No Effect) - Moving Up (To High) - Moving Down (To High) - Width 256 pixels ($100) (32 tiles) --- =================== MISCELLANEOUS NOTES =================== --- Objects 03 00 - 03 1F are one set. 03 20 - 03 3F have the same properties as far as solidity switch type and orientation are concerned. These sets must be some kind of difference, however, in something I have overlooked. ---
Aren't 03 20 and 03 21 some of the loop solidity switches from ARZ? Since they don't use 03 00 I'd assume that there is some kind of direct difference.
Wow, that's what I've been looking for for a long time. For the longest time, I've been basically BSing my plane triggers in the old hack I was working on, and this information helps a lot. *Motions for the sticky-ing of this thread.*
I make that same assumption for the same reason. Except that mine is based on the tags in CPZ, and how some of plane swapping paths use incremental tags of $20 (03 19, 03 39, 03 59). I spent a while thinking about it however, and I found that I haven't the faintest clue what the difference might be. It certainly doesn't seem to make a huge difference in game anyhow, the loops in EHZ use 03 91 in the original game, but 03 11 works just as well, as does 03 31...
As posted earlier on some other board, I'm posting about it here too. Thanks to Ultima's work, I just determined how the tag works. Here are the explanations about the parameter byte. First, you have to put it into binary form?. Then, just see what each bit does ! HGFE DCBA BA: Size. Put BA in decimal form? before performing the following calculation: Size = 32 * 2 ^ (BA) C: Orientation. Also determines the operating orientation. 0 = Vertical / The object operates from Left To Right and Right to Left 1 = Horizontal / The object operates from Up to Down and Down To Up D: Operation when crossed from Left To Right or Up To Down 0 = Send to Low 1 = Send to High E: Operation when crossed from Right To Left or Down To Up 0 = Send to Low 1 = Send to High Example: For an horizontal object of size 64 that sends to high layer when crossed from up to down and low layer when crossed from down to up, the parameters will be as follows: BA=01, C=1, D=1, E=0. The resulting byte is: 0D.
Maybe they did it for organizational purposes, and it has no actual effect in-game. It would stand to reason that they'd use different numbers to help organize their tags.