Jump to content

spinout

Member
  • Posts

    343
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by spinout

  1. Find me a simple animation format and I will write converters to and from that format and zelda animations.
  2. In this regard, at least in my case, it is my lack of knowledge of how to program an AI (regardless of the game). I have complete control over the AI, I just don't know what to do with it. I could make it go in a circle, I suppose. I need to check out collision stuff next, I guess.
  3. I made the head and the leg sections in sketchup, exported them all individually at the origin, converted them (with a slight modification to my converter so it recycled textures), merged them, built a hierarchy/bone setup, wrote an animation editor, animated and previewed, then harnessed the blank animated actor to put it in OoT. Now it needs more animations and an AI. animation editor (i don't expect anyone to understand how to use it, sorry guys!): http://spinout182.com/src/animrender.py object: http://spinout182.com/bin/octo.zobj Your thoughts?
  4. #3039 should give you a hand on understanding it. Next limbs are the ones that are straight below, child limbs are ones which branch to the right.
  5. All the tables. In your case, it was probably an issue with map pointers (in the scene) or something.
  6. Yeah, the scenes and maps need to be in the filetable. My converter doesn't do that, and there still isn't a program out there that fixes all the offsets and crap. Maybe I'll make that tonight's project.
  7. iirc costis or casm (from #n64dev on efnet), maybe someone else, is modifying mupen64plus to work with 64DD stuff. So far he has time and a couple of other simple things working, but he can't really progress it since he doesn't have anything to work with (hardware, dumps, etc).
  8. b is the age that someone acts, given a, their true age, and e, their ego (0-100): ... or something
  9. Not at all, really. You'd just have to have something which would enable a c-button press whenever there is the equivalent d-pad press. Work around the system
  10. >1302453913 Does this mean Shaders? >1299791017Over those 2,662,896 seconds xdaniel changed his mind and his code. It was DirectX (through SlimDX), and now it is OpenGL (through OpenTK). Regardless, I believe both OpenGL and DirectX support shaders. What purpose they would have in a GBC emulator is beyond me.
  11. I think it is somewhat of a myth that Nemu 64 "ignores errors". The fact is that it runs much more closely to a real N64, whereas PJ64 has game-specific hacks which seem to "break" ROMs which are modified in certain ways. Because of this, people tend to think that the ROM is broken but it still runs in Nemu. The only difference between running "broken" ROMs in PJ64 or Nemu 64 is that Nemu will run it even if the CRC doesn't match up. For example, my LZO Debug ROM hack does not run in PJ64 1.6. However, it has run, without hitches, in Nemu 64 and on real hardware. If you need an accurate, fast emulator with a debugger, Nemu 64 is the way to go. That being said, I would recommend you try Mupen64Plus. The latest versions are command-line only unless you find a GUI, however. And if you can set up 1964, I would recommend it. I personally have never had success with 1964, I haven't run Windows since it became active again and Wine doesn't run it well enough to boot games. As for GS codes in Nemu 64, a quick script usually takes care of the issue. i=0 for line in """80123456 0000 80123458 0001 ...""".split('\n'): print "CheatName8Code%i=%s"%(i,line) i+=1 print "CheatName8Count=%i"%(i)
  12. Conceptually, the game sees which button(s) was(were) activated since the last clock, and after figuring out and deciding which one was pressed, it: Checks if the item is disabled, probably with a lookup table somewhere in 'code'. Item lockout is still a mystery to me. Puts away any other item link already has out. If it can be used, run the routine for that item, probably as defined in some sort of jump table within link's actor. Decrement the item just used, if applicable. Most of these things are dependent on animation timing. What do you want to know for? This question is so broad that thousands of lines of assembly would have to be understood to completely answer it.
  13. What specifically are you looking for? A collected item? An item amount? An item increment/decrement-er? I'm sure whatever you are looking for exists, but I don't know specifically what it is you are looking for.
  14. Emulators Nemu 64 mupen64plus (modified as needed) Compilers, disassemblers, and debuggers gcc mips-gcc valgrind gdb gedit make zovldis Modeling and designing SketchUp Blender zappy z64obj Miscellaneous rominsert n64crc bytewrite hexe python ozmav/zsaten
  15. One thousand years from now there will be no guys and no girls, just wankers. My hill.
  16. I made the background and a few others, you can see them here
  17. The "Zelda Community" as a whole is like somebody constantly trying to continuously be best and commit suicide at the same time. That being said, everything seems alright at the moment, there aren't forums which are aligned against eachother. GCN, glitchkill, and Z64 are all at peace and many people, including admins from all of these forums, cross post at the other forums. There will always be people who want fame. There are always "arms races" as Arcaith cleverly put it. However, if people learn to not be secretive and take a more open stance about things, the drama will be cut down much more. I have seen far too much "I have something, not gonna share more than a screenshot " create drama. I personally publicize all my work which I judge as useful. On the contrary, one must learn to criticize and to be criticized. Misinterpreted criticism leads to far too much drama. Sorry, but I'm going to have to disagree with you. I've gone through quite a bit of 'e-drama' but when I get up from the computer, get that call, go to bed, whatever, it's off my mind. Even the night my site was hacked, I deleted everything and went off to dinner without a worry in the world.
  18. inb4 "DBL POST BAN PLS"; I'm adding something. libn64tool now supports MM Debug and OoT 1.0 US. z64tree has a cleaner (though UTF-8) output. spinout@supernova:~/Desktop$ ./z64tree 0x10 ~/ROMS/mm_debug.z64 object 16 ââ€Å“ââ€â‚¬ ROM offset: 0x01344000 ââ€Å“ââ€â‚¬ size: 0x0000d890 bytes ââ€Å“ââ€â‚¬ number of skeletons: 1 ââ€Å“ââ€â‚¬ type of skeleton(s): link ââ€â€Ã¢â€â‚¬ skeleton 0: ââ€Å“ââ€â‚¬ offset: 0x0600D878 ââ€â€Ã¢â€â‚¬ 21 bones ââ€â€Ã¢â€â‚¬ Limb 0 {-57, 3377, 0} 0x00000000, 0x00000000 ââ€Å“ââ€â‚¬ Limb 1 {0, 0, 0} 0x060049E0, 0x060049E0 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 2 {945, 0, 0} 0x00000000, 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 3 {-399, 69, -249} 0x06004C50, 0x06004C50 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 4 {1306, 0, 0} 0x06004F48, 0x06004F48 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 5 {1256, 5, 11} 0x06005190, 0x06005190 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 6 {-396, 76, 264} 0x060052A0, 0x060052A0 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 7 {1304, 0, 0} 0x060055D0, 0x060055D0 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 8 {1257, 6, 3} 0x06005818, 0x06005818 ââ€â€Ã¢â€â‚¬ Limb 9 {0, 21, -7} 0x00000000, 0x00000000 ââ€Å“ââ€â‚¬ Limb 10 {1392, -259, 0} 0x06005A78, 0x06005A78 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 11 {-298, -700, 0} 0x06005928, 0x06005928 ââ€Å“ââ€â‚¬ Limb 12 {0, 0, 0} 0x06008100, 0x06008100 ââ€Å“ââ€â‚¬ Limb 13 {1039, -172, 680} 0x06006A58, 0x06006A58 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 14 {919, 0, 0} 0x06006C38, 0x06006C38 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 15 {754, 0, 0} 0x06006EB8, 0x06006EB8 ââ€Å“ââ€â‚¬ Limb 16 {1039, -173, -680} 0x06006410, 0x06006410 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 17 {919, 0, 0} 0x060065E0, 0x060065E0 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 18 {754, 0, 0} 0x060067D8, 0x060067D8 ââ€Å“ââ€â‚¬ Limb 19 {978, -692, 342} 0x06008100, 0x06008100 ââ€â€Ã¢â€â‚¬ Limb 20 {0, 0, 0} 0x06006148, 0x06006148 spinout@supernova:~/Desktop$ ./z64tree 0x6 ~/ROMS/ZELOOTMA.z64 object 6 ââ€Å“ââ€â‚¬ ROM offset: 0x01047000 ââ€Å“ââ€â‚¬ size: 0x00013180 bytes ââ€Å“ââ€â‚¬ number of skeletons: 1 ââ€Å“ââ€â‚¬ type of skeleton(s): alpha ââ€â€Ã¢â€â‚¬ skeleton 0: ââ€Å“ââ€â‚¬ offset: 0x06011FC8 ââ€â€Ã¢â€â‚¬ 42 bones ââ€Å“ââ€â‚¬ Limb 0 {0, 3451, 40} {0.0°, 0.0°, 0.0°} 0x00000000 ââ€Å“ââ€â‚¬ Limb 40 {0, 0, 0} {0.0°, 90.0°, 0.0°} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 39 {0, 0, 0} {0.0°, 90.0°, 0.0°} 0x00000000 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 35 {266, -534, 5} {0.0°, 90.0°, 0.0°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 33 {-266, -534, 5} {45.0°, 90.0°, 45.0°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 31 {0, 0, 0} {0.0°, 0.0°, 269.8°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 25 {1148, 0, 0} {0.0°, 0.0°, 0.3°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 19 {1440, 0, 0} {0.0°, 0.0°, 270.0°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 13 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600C528 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 12 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600C020 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 30 {0, 0, 0} {0.0°, 0.0°, 269.8°} 0x00000000 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 24 {1148, 0, 0} {0.0°, 0.0°, 0.3°} 0x00000000 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 18 {1440, 0, 0} {0.0°, 0.0°, 270.0°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 11 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600B9F0 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 10 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600B498 ââ€â€š ââ€Å“ââ€â‚¬ Limb 38 {0, 0, 0} {0.0°, 0.0°, 90.0°} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 37 {1320, 0, 0} {0.0°, 0.0°, 90.0°} 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 36 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600C8C0 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 34 {852, 54, -603} {10.9°, 0.0°, 270.0°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 32 {852, 54, 603} {349.1°, 0.0°, 270.0°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 29 {0, 0, 0} {0.0°, 0.0°, 269.3°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 23 {846, 0, 0} {0.0°, 0.0°, 357.6°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 9 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600B050 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 17 {718, 0, 0} {0.0°, 25.0°, 359.9°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 8 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600B298 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 7 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600B760 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 28 {0, 0, 0} {0.0°, 0.0°, 269.3°} 0x00000000 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 22 {846, 0, 0} {0.0°, 0.0°, 357.6°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 6 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600BC08 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 16 {718, 0, 0} {0.0°, 335.0°, 359.9°} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 5 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600BE30 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 4 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600C2C8 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 27 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600D510 ââ€â€š ââ€Å“ââ€â‚¬ Limb 26 {858, 0, 0} {0.0°, 0.0°, 0.0°} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 21 {-1222, -54, 0} {180.0°, 180.0°, 0.0°} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 15 {0, 0, 0} {0.0°, 0.0°, 275.4°} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 3 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600CDD8 ââ€Å“ââ€â‚¬ Limb 20 {0, 0, 0} {0.0°, 0.0°, 270.0°} 0x00000000 ââ€Å“ââ€â‚¬ Limb 14 {567, 0, 0} {0.0°, 0.0°, 0.0°} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 2 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600E228 ââ€â€Ã¢â€â‚¬ Limb 1 {0, 0, 0} {0.0°, 0.0°, 0.0°} 0x0600E490 spinout@supernova:~/Desktop$ ./z64tree 0x1a ~/ROMS/ZELOOTMA.z64 object 26 ââ€Å“ââ€â‚¬ ROM offset: 0x010db000 ââ€Å“ââ€â‚¬ size: 0x0000df10 bytes ââ€Å“ââ€â‚¬ number of skeletons: 2 ââ€Å“ââ€â‚¬ type of skeleton(s): horse ââ€Å“ââ€â‚¬ skeleton 0: ââ€â€š ââ€Å“ââ€â‚¬ offset: 0x06000868 ââ€â€Ã¢â€â‚¬ 14 bones ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 0 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 1 0x060004C0 ââ€â€š ââ€Å“ââ€â‚¬ Limb 2 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 3 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 4 0x06000580 ââ€â€š ââ€Å“ââ€â‚¬ Limb 5 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 6 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 7 0x06000620 ââ€â€š ââ€Å“ââ€â‚¬ Limb 8 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 9 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 10 0x060006C0 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 11 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 12 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 13 0x06000760 ââ€â€Ã¢â€â‚¬ skeleton 1: ââ€Å“ââ€â‚¬ offset: 0x06009D74 ââ€â€Ã¢â€â‚¬ 47 bones ââ€â€Ã¢â€â‚¬ Limb 0 {0, 4820, -1965} 0x00000000 ââ€Å“ââ€â‚¬ Limb 1 {0, 505, -1338} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 2 {0, 0, 0} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 3 {1217, 0, 0} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 4 {2387, 0, 0} 0x00000000 ââ€Å“ââ€â‚¬ Limb 5 {-3, 171, 1984} 0x060099BC ââ€Å“ââ€â‚¬ Limb 6 {0, 68, 710} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 7 {0, 0, 0} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 8 {1681, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 9 {2122, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 10 {1406, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 11 {1304, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 12 {1979, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 13 {0, 0, 0} 0x0600AC20 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 14 {1338, 341, 756} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 15 {0, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 16 {605, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 17 {2419, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 18 {1459, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 19 {660, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 20 {0, 0, 0} 0x060009B0 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 21 {0, 0, 0} 0x06000BB0 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 22 {1338, 341, -756} 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 23 {0, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 24 {605, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 25 {2419, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 26 {1459, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 27 {660, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 28 {0, 0, 0} 0x06000DA0 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 29 {0, 0, 0} 0x06000FA0 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 30 {0, 0, 0} 0x0600B5E0 ââ€Å“ââ€â‚¬ Limb 31 {655, -151, -593} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 32 {0, 0, 0} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 33 {1123, 0, 0} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 34 {2330, 0, 0} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 35 {1573, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 36 {598, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 37 {0, 0, 0} 0x06001170 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 38 {0, 0, 0} 0x06001370 ââ€â€Ã¢â€â‚¬ Limb 39 {-655, -151, -593} 0x00000000 ââ€â€Ã¢â€â‚¬ Limb 40 {0, 0, 0} 0x00000000 ââ€â€Ã¢â€â‚¬ Limb 41 {1123, 0, 0} 0x00000000 ââ€â€Ã¢â€â‚¬ Limb 42 {2330, 0, 0} 0x00000000 ââ€Å“ââ€â‚¬ Limb 43 {1573, 0, 0} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 44 {598, 0, 0} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 45 {0, 0, 0} 0x06001540 ââ€â€Ã¢â€â‚¬ Limb 46 {0, 0, 0} 0x06001740 spinout@supernova:~/Desktop$ ./z64tree 0xa ~/ROMS/mm_debug.z64 object 10 ââ€Å“ââ€â‚¬ ROM offset: 0x01411000 ââ€Å“ââ€â‚¬ size: 0x00009940 bytes ââ€Å“ââ€â‚¬ number of skeletons: 1 ââ€Å“ââ€â‚¬ type of skeleton(s): common ââ€â€Ã¢â€â‚¬ skeleton 0: ââ€Å“ââ€â‚¬ offset: 0x06008318 ââ€â€Ã¢â€â‚¬ 30 bones ââ€â€Ã¢â€â‚¬ Limb 0 {0, 1012, 0} 0x00000000 ââ€Å“ââ€â‚¬ Limb 1 {0, 0, 0} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 2 {0, 0, 0} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 3 {124, 254, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 4 {0, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 5 {0, 0, 0} 0x06006FD8 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 6 {0, 0, 0} 0x06006D88 ââ€â€Ã¢â€â‚¬ Limb 7 {0, 0, 0} 0x00000000 ââ€â€Ã¢â€â‚¬ Limb 8 {0, 0, 0} 0x00000000 ââ€Å“ââ€â‚¬ Limb 9 {1514, 0, 0} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 10 {1291, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 11 {1189, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 12 {0, 0, 0} 0x06006CA8 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 13 {0, 0, 0} 0x06006BA8 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 14 {0, 0, 0} 0x06006AA0 ââ€Å“ââ€â‚¬ Limb 15 {0, 0, 0} 0x06006960 ââ€Å“ââ€â‚¬ Limb 16 {722, 136, 412} 0x00000000 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 17 {0, 0, 0} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 18 {1500, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€Å“ââ€â‚¬ Limb 19 {1672, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 20 {0, 0, 0} 0x06006640 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 21 {0, 0, 0} 0x06006750 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 22 {0, 0, 0} 0x06006860 ââ€â€Ã¢â€â‚¬ Limb 23 {722, 136, -412} 0x00000000 ââ€â€Ã¢â€â‚¬ Limb 24 {0, 0, 0} 0x00000000 ââ€Å“ââ€â‚¬ Limb 25 {1500, 0, 0} 0x00000000 ââ€â€š ââ€Å“ââ€â‚¬ Limb 26 {1672, 0, 0} 0x00000000 ââ€â€š ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 27 {0, 0, 0} 0x060073A8 ââ€â€š ââ€â€Ã¢â€â‚¬ Limb 28 {0, 0, 0} 0x06007298 ââ€â€Ã¢â€â‚¬ Limb 29 {0, 0, 0} 0x06007198
  19. Pretty sure something the player sees in the final game is intended to be there, and thus not beta. If it's text, keep in mind that it was likely translated a couple of months before OoT was released, and thus, it wouldn't differ much from what the game was supposed to be. I don't see a valid argument. The "gate to higher" or whatever simply references the unreachable doors which are -get this - above the waterline.
  20. I cleaned up the output a little. spinout@supernova:~/Desktop$ ./z64tree 25 ~/ROMS/ZELOOTMA.z64 object 25 |--ROM offset: 0x010aa000 |--size: 0x00030ce0 bytes |--skeletons: 1 |-+skeleton 0: | |--offset: 0x0601B310 | |-+48 bones | | --+ {0, 7561, 0} 0x00000000 | | |-+ {0, 0, 0} 0x00000000 | | | --+ {0, 0, 0} 0x00000000 | | | |-+ {930, 1358, 0} 0x00000000 | | | | --+ {0, 0, 0} 0x00000000 | | | | --- {0, 0, 0} 0x06015630 | | | --- {0, 0, 0} 0x06014A30 | | --+ {0, 0, 0} 0x00000000 | | --+ {0, 0, 0} 0x00000000 | | |-+ {7167, 0, 0} 0x00000000 | | | |-+ {5559, 0, 0} 0x00000000 | | | | |-+ {7679, 0, 0} 0x00000000 | | | | | |-+ {3881, 0, 0} 0x00000000 | | | | | | |-+ {2989, 0, 0} 0x00000000 | | | | | | | --- {0, 0, 0} 0x06014100 | | | | | | --- {0, 0, 0} 0x06013EF8 | | | | | --- {0, 0, 0} 0x06013C20 | | | | |-+ {2876, 642, 3981} 0x00000000 | | | | | --+ {0, 0, 0} 0x00000000 | | | | | |-+ {5617, 0, 0} 0x00000000 | | | | | | |-+ {6493, 0, 0} 0x00000000 | | | | | | | --- {0, 0, 0} 0x0600F310 | | | | | | --- {0, 0, 0} 0x0600FAC0 | | | | | --- {0, 0, 0} 0x0600F6C0 | | | | |-+ {2876, 642, -3981} 0x00000000 | | | | | --+ {0, 0, 0} 0x00000000 | | | | | |-+ {5617, 0, 0} 0x00000000 | | | | | | |-+ {6493, 0, 0} 0x00000000 | | | | | | | --- {0, 0, 0} 0x06010BE0 | | | | | | --- {0, 0, 0} 0x06011390 | | | | | --- {0, 0, 0} 0x06010F90 | | | | --- {0, 0, 0} 0x060137B0 | | | --- {0, 0, 0} 0x06012F28 | | |-+ {3563, 1722, -5096} 0x00000000 | | | --+ {0, 0, 0} 0x00000000 | | | |-+ {8319, 0, 0} 0x00000000 | | | | |-+ {6336, 0, 0} 0x00000000 | | | | | --- {0, 0, 0} 0x06011838 | | | | --- {0, 0, 0} 0x06012148 | | | --- {0, 0, 0} 0x06011C60 | | |-+ {3563, 1722, 5096} 0x00000000 | | | --+ {0, 0, 0} 0x00000000 | | | |-+ {8319, 0, 0} 0x00000000 | | | | |-+ {6336, 0, 0} 0x00000000 | | | | | --- {0, 0, 0} 0x0600FF68 | | | | --- {0, 0, 0} 0x06010878 | | | --- {0, 0, 0} 0x06010390 | | --- {0, 0, 0} 0x060127D0 I also added code to support reading and printing of other kinds of hierarchies, so this tool is almost ready once I make my library able to scan for other kinds of skeletons. EDIT: - Moved some code to libn64tool - Worked on code in z64tree and libn64tool Result? Now works with normal, link, horse (both) and alpha bone structures. spinout@supernova:~/Desktop$ ./z64tree 26 ~/ROMS/ZELOOTMA.z64 object 26 |--ROM offset: 0x010db000 |--size: 0x0000df10 bytes |--number of skeletons: 2 |--type of skeleton(s): horse |-+skeleton 0: | |--offset: 0x06000868 | |-+14 bones | --+ 0x00000000 | |-- 0x060004C0 | |-+ 0x00000000 | | --+ 0x00000000 | | --- 0x06000580 | |-+ 0x00000000 | | --+ 0x00000000 | | --- 0x06000620 | |-+ 0x00000000 | | --+ 0x00000000 | | --- 0x060006C0 | --+ 0x00000000 | --+ 0x00000000 | --- 0x06000760 |-+skeleton 1: |--offset: 0x06009D74 |-+47 bones --+ {0, 4820, -1965} 0x00000000 |-+ {0, 505, -1338} 0x00000000 | --+ {0, 0, 0} 0x00000000 | --+ {1217, 0, 0} 0x00000000 | --- {2387, 0, 0} 0x00000000 |-- {-3, 171, 1984} 0x060099BC |-+ {0, 68, 710} 0x00000000 | --+ {0, 0, 0} 0x00000000 | |-+ {1681, 0, 0} 0x00000000 | | |-+ {2122, 0, 0} 0x00000000 | | | --+ {1406, 0, 0} 0x00000000 | | | --+ {1304, 0, 0} 0x00000000 | | | |-- {1979, 0, 0} 0x00000000 | | | --- {0, 0, 0} 0x0600AC20 | | |-+ {1338, 341, 756} 0x00000000 | | | --+ {0, 0, 0} 0x00000000 | | | --+ {605, 0, 0} 0x00000000 | | | --+ {2419, 0, 0} 0x00000000 | | | |-+ {1459, 0, 0} 0x00000000 | | | | |-- {660, 0, 0} 0x00000000 | | | | --- {0, 0, 0} 0x060009B0 | | | --- {0, 0, 0} 0x06000BB0 | | --+ {1338, 341, -756} 0x00000000 | | --+ {0, 0, 0} 0x00000000 | | --+ {605, 0, 0} 0x00000000 | | --+ {2419, 0, 0} 0x00000000 | | |-+ {1459, 0, 0} 0x00000000 | | | |-- {660, 0, 0} 0x00000000 | | | --- {0, 0, 0} 0x06000DA0 | | --- {0, 0, 0} 0x06000FA0 | --- {0, 0, 0} 0x0600B5E0 |-+ {655, -151, -593} 0x00000000 | --+ {0, 0, 0} 0x00000000 | --+ {1123, 0, 0} 0x00000000 | --+ {2330, 0, 0} 0x00000000 | |-+ {1573, 0, 0} 0x00000000 | | |-- {598, 0, 0} 0x00000000 | | --- {0, 0, 0} 0x06001170 | --- {0, 0, 0} 0x06001370 --+ {-655, -151, -593} 0x00000000 --+ {0, 0, 0} 0x00000000 --+ {1123, 0, 0} 0x00000000 --+ {2330, 0, 0} 0x00000000 |-+ {1573, 0, 0} 0x00000000 | |-- {598, 0, 0} 0x00000000 | --- {0, 0, 0} 0x06001540 --- {0, 0, 0} 0x06001740 spinout@supernova:~/Desktop$ ./z64tree 20 ~/ROMS/ZELOOTMA.z64 object 20 |--ROM offset: 0x00fdc000 |--size: 0x00037800 bytes |--number of skeletons: 1 |--type of skeleton(s): link |-+skeleton 0: |--offset: 0x060377F4 |-+21 bones --+ {-57, 3377, 0} 0x00000000, 0x00000000 |-+ {0, 0, 0} 0x06035330, 0x0602F530 | --+ {945, 0, 0} 0x00000000, 0x00000000 | |-+ {-399, 69, -249} 0x06035678, 0x0602F7A0 | | --+ {1306, 0, 0} 0x060358B0, 0x0602F9B8 | | --- {1256, 5, 11} 0x06035B60, 0x0602FB80 | --+ {-396, 76, 264} 0x06035CB8, 0x0602FCA0 | --+ {1304, 0, 0} 0x06035EF0, 0x0602FEC0 | --- {1257, 6, 3} 0x060361A0, 0x06030088 --+ {0, 21, -7} 0x00000000, 0x00000000 |-+ {1392, -259, 0} 0x060365E8, 0x06030400 | --- {-298, -700, 0} 0x06036D30, 0x060309B0 |-- {0, 0, 0} 0x060362F8, 0x060301A8 |-+ {1039, -172, 680} 0x06037210, 0x06030EF8 | --+ {919, 0, 0} 0x060373D8, 0x060310A0 | --- {754, 0, 0} 0x06021AA8, 0x06026C58 |-+ {1039, -173, -680} 0x06036E58, 0x06030AA0 | --+ {919, 0, 0} 0x06037018, 0x06030C48 | --- {754, 0, 0} 0x06022498, 0x060274F8 |-- {978, -692, 342} 0x06023160, 0x06027F00 --- {0, 0, 0} 0x060363B8, 0x06030250 spinout@supernova:~/Desktop$ ./z64tree 6 ~/ROMS/ZELOOTMA.z64 object 6 |--ROM offset: 0x01047000 |--size: 0x00013180 bytes |--number of skeletons: 1 |--type of skeleton(s): alpha |-+skeleton 0: |--offset: 0x06011FC8 |-+42 bones |-- {0, 3451, 40} {0, 0, 0} 0x00000000 |-+ {0, 0, 0} {0, 16383, 0} 0x00000000 | |-+ {0, 0, 0} {0, 16383, 0} 0x00000000 | | |-+ {266, -534, 5} {0, 16383, 0} 0x00000000 | | | |-- {-266, -534, 5} {8191, 16383, 8191} 0x00000000 | | | |-- {0, 0, 0} {0, 0, -16416} 0x00000000 | | | |-- {1148, 0, 0} {0, 0, 58} 0x00000000 | | | |-+ {1440, 0, 0} {0, 0, -16383} 0x00000000 | | | | --- {0, 0, 0} {0, 0, 0} 0x0600C528 | | | --- {0, 0, 0} {0, 0, 0} 0x0600C020 | | |-- {0, 0, 0} {0, 0, -16416} 0x00000000 | | |-- {1148, 0, 0} {0, 0, 58} 0x00000000 | | |-+ {1440, 0, 0} {0, 0, -16383} 0x00000000 | | | --- {0, 0, 0} {0, 0, 0} 0x0600B9F0 | | --- {0, 0, 0} {0, 0, 0} 0x0600B498 | |-- {0, 0, 0} {0, 0, 16383} 0x00000000 | |-+ {1320, 0, 0} {0, 0, 16383} 0x00000000 | | --+ {0, 0, 0} {0, 0, 0} 0x0600C8C0 | | |-+ {852, 54, -603} {1981, 0, -16383} 0x00000000 | | | |-- {852, 54, 603} {-1981, 0, -16383} 0x00000000 | | | |-- {0, 0, 0} {0, 0, -16515} 0x00000000 | | | |-+ {846, 0, 0} {0, 0, -438} 0x00000000 | | | | --- {0, 0, 0} {0, 0, 0} 0x0600B050 | | | |-+ {718, 0, 0} {0, 4550, -25} 0x00000000 | | | | --- {0, 0, 0} {0, 0, 0} 0x0600B298 | | | --- {0, 0, 0} {0, 0, 0} 0x0600B760 | | |-- {0, 0, 0} {0, 0, -16516} 0x00000000 | | |-+ {846, 0, 0} {0, 0, -438} 0x00000000 | | | --- {0, 0, 0} {0, 0, 0} 0x0600BC08 | | |-+ {718, 0, 0} {0, -4550, -25} 0x00000000 | | | --- {0, 0, 0} {0, 0, 0} 0x0600BE30 | | --- {0, 0, 0} {0, 0, 0} 0x0600C2C8 | --+ {0, 0, 0} {0, 0, 0} 0x0600D510 | |-- {858, 0, 0} {0, 0, 0} 0x00000000 | |-- {-1222, -54, 0} {-32767, -32767, 0} 0x00000000 | |-- {0, 0, 0} {0, 0, -15396} 0x00000000 | --- {0, 0, 0} {0, 0, 0} 0x0600CDD8 |-- {0, 0, 0} {0, 0, -16383} 0x00000000 |-+ {567, 0, 0} {0, 0, 0} 0x00000000 | --- {0, 0, 0} {0, 0, 0} 0x0600E228 --- {0, 0, 0} {0, 0, 0} 0x0600E490 spinout@supernova:~/Desktop$ ./z64tree 262 ~/ROMS/ZELOOTMA.z64 object 262 |--ROM offset: 0x016e1000 |--size: 0x000205d0 bytes |--number of skeletons: 2 |--type of skeleton(s): common |-+skeleton 0: | |--offset: 0x0601E178 | |-+29 bones | --+ {13, 3511, -100} 0x00000000 | |-+ {0, 928, 0} 0x0601C7B8 | | |-+ {928, 0, -438} 0x0601CEE0 | | | --+ {1903, 0, 0} 0x0601CB58 | | | --- {1304, 0, 0} 0x0601CCA0 | | --+ {928, 0, 438} 0x0601D638 | | --+ {1903, 0, 0} 0x0601D2B0 | | --- {1304, 0, 0} 0x0601D3F8 | --+ {0, 0, 0} 0x00000000 | |-+ {0, 0, 0} 0x00000000 | | |-+ {2100, -200, 0} 0x00000000 | | | |-- {0, 0, 0} 0x060154E0 | | | --- {0, 0, 0} 0x06015B00 | | |-+ {1562, -100, -1089} 0x0601C130 | | | --+ {799, 0, 0} 0x0601BE98 | | | --+ {1079, 0, 0} 0x00000000 | | | |-- {0, 0, 0} 0x06015840 | | | --- {0, 0, 0} 0x06016118 | | |-+ {1562, -100, 1089} 0x0601C550 | | | --+ {807, 0, 0} 0x0601C2B8 | | | --- {1071, 0, 0} 0x06016340 | | |-- {2035, 0, 851} 0x06016658 | | |-- {1900, 0, 1184} 0x060164A0 | | |-- {2035, 0, -851} 0x06016568 | | |-- {1900, 0, -1184} 0x06016278 | | |-- {0, 0, 0} 0x060151F0 | | |-- {0, 0, 0} 0x06015380 | | --- {0, 0, 0} 0x0601BA78 | --- {0, 0, 0} 0x0601C6D8 |-+skeleton 1: |--offset: 0x060205C0 |-+29 bones --+ {0, 3540, 0} 0x00000000 |-+ {0, 928, 0} 0x0601C7B8 | |-+ {928, 0, -438} 0x0601CEE0 | | --+ {1903, 0, 0} 0x0601CB58 | | --- {1304, 0, 0} 0x0601CCA0 | --+ {928, 0, 438} 0x0601D638 | --+ {1903, 0, 0} 0x0601D2B0 | --- {1304, 0, 0} 0x0601D3F8 --+ {0, 0, 0} 0x00000000 |-+ {0, 0, 0} 0x00000000 | |-+ {2100, -200, 0} 0x00000000 | | |-- {0, 0, 0} 0x06015B00 | | --- {0, 0, 0} 0x060154E0 | |-+ {1562, -100, -1089} 0x0601C130 | | --+ {799, 0, 0} 0x0601BE98 | | --+ {1079, 0, 0} 0x00000000 | | |-- {0, 0, 0} 0x06015840 | | --- {0, 0, 0} 0x06016118 | |-+ {1562, -100, 1089} 0x0601C550 | | --+ {807, 0, 0} 0x0601C2B8 | | --- {1071, 0, 0} 0x06016340 | |-- {2035, 0, 851} 0x06016658 | |-- {1900, 0, 1184} 0x060164A0 | |-- {2035, 0, -851} 0x06016568 | |-- {1900, 0, -1184} 0x06016278 | |-- {0, 0, 0} 0x060151F0 | |-- {0, 0, 0} 0x06015380 | --- {0, 0, 0} 0x0601BA78 --- {0, 0, 0} 0x0601C6D8
  21. Here is a small tool I wrote to assist those of you that wish to hack objects' hierarchies. z64tree.c To compile, you need to build and install libn64tool, which can be found as a package here, or it can be browsed here. Other than the basic C libraries, you'll probably need glib 2.0 to compile libn64tool. The program does this: spinout@supernova:~/Desktop$ ./z64tree 262 ~/ROMS/ZELOOTMA.z64 object 262 |--ROM offset: 0x016e1000 |--size: 0x000205d0 bytes |--skeletons: 2 |-+skeleton 0: | |--offset: 0x0601E178 | |-+29 bones | | |-+ {13, 3511, -100} 0x00000000 | | | |-+ {0, 928, 0} 0x0601C7B8 | | | | |-+ {928, 0, -438} 0x0601CEE0 | | | | | |-+ {1903, 0, 0} 0x0601CB58 | | | | | | |-- {1304, 0, 0} 0x0601CCA0 | | | | |-+ {928, 0, 438} 0x0601D638 | | | | | |-+ {1903, 0, 0} 0x0601D2B0 | | | | | | |-- {1304, 0, 0} 0x0601D3F8 | | | |-+ {0, 0, 0} 0x00000000 | | | | |-+ {0, 0, 0} 0x00000000 | | | | | |-+ {2100, -200, 0} 0x00000000 | | | | | | |-- {0, 0, 0} 0x060154E0 | | | | | | |-- {0, 0, 0} 0x06015B00 | | | | | |-+ {1562, -100, -1089} 0x0601C130 | | | | | | |-+ {799, 0, 0} 0x0601BE98 | | | | | | | |-+ {1079, 0, 0} 0x00000000 | | | | | | | | |-- {0, 0, 0} 0x06015840 | | | | | | | | |-- {0, 0, 0} 0x06016118 | | | | | |-+ {1562, -100, 1089} 0x0601C550 | | | | | | |-+ {807, 0, 0} 0x0601C2B8 | | | | | | | |-- {1071, 0, 0} 0x06016340 | | | | | |-- {2035, 0, 851} 0x06016658 | | | | | |-- {1900, 0, 1184} 0x060164A0 | | | | | |-- {2035, 0, -851} 0x06016568 | | | | | |-- {1900, 0, -1184} 0x06016278 | | | | | |-- {0, 0, 0} 0x060151F0 | | | | | |-- {0, 0, 0} 0x06015380 | | | | | |-- {0, 0, 0} 0x0601BA78 | | | | |-- {0, 0, 0} 0x0601C6D8 |-+skeleton 1: | |--offset: 0x060205C0 | |-+29 bones | | |-+ {0, 3540, 0} 0x00000000 | | | |-+ {0, 928, 0} 0x0601C7B8 | | | | |-+ {928, 0, -438} 0x0601CEE0 | | | | | |-+ {1903, 0, 0} 0x0601CB58 | | | | | | |-- {1304, 0, 0} 0x0601CCA0 | | | | |-+ {928, 0, 438} 0x0601D638 | | | | | |-+ {1903, 0, 0} 0x0601D2B0 | | | | | | |-- {1304, 0, 0} 0x0601D3F8 | | | |-+ {0, 0, 0} 0x00000000 | | | | |-+ {0, 0, 0} 0x00000000 | | | | | |-+ {2100, -200, 0} 0x00000000 | | | | | | |-- {0, 0, 0} 0x06015B00 | | | | | | |-- {0, 0, 0} 0x060154E0 | | | | | |-+ {1562, -100, -1089} 0x0601C130 | | | | | | |-+ {799, 0, 0} 0x0601BE98 | | | | | | | |-+ {1079, 0, 0} 0x00000000 | | | | | | | | |-- {0, 0, 0} 0x06015840 | | | | | | | | |-- {0, 0, 0} 0x06016118 | | | | | |-+ {1562, -100, 1089} 0x0601C550 | | | | | | |-+ {807, 0, 0} 0x0601C2B8 | | | | | | | |-- {1071, 0, 0} 0x06016340 | | | | | |-- {2035, 0, 851} 0x06016658 | | | | | |-- {1900, 0, 1184} 0x060164A0 | | | | | |-- {2035, 0, -851} 0x06016568 | | | | | |-- {1900, 0, -1184} 0x06016278 | | | | | |-- {0, 0, 0} 0x060151F0 | | | | | |-- {0, 0, 0} 0x06015380 | | | | | |-- {0, 0, 0} 0x0601BA78 | | | | |-- {0, 0, 0} 0x0601C6D8 With a little more documentation, libn64tool will support ROMs other than the Debug ROM.
  22. holy shit use live updates with the comments mind->asplode
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.