Important information: this site is currently scheduled to go offline indefinitely by end of the year.
Spotlight: Señor Casaroja's Noesis
-
- Moderator
- Posts: 1007
- Joined: Mon Mar 23, 2009 2:57 am
- Has thanked: 44 times
- Been thanked: 505 times
Re: Señor Casaroja's Noesis
Anim data is harder to guess at by looking at binary. Did any versions of yaz0r's viewer ever support FF12 anims? The only one I found just crashed on them. Disassembling his viewer to figure out the format would be much more convenient than using my shitty pcsx2+IDA hybrid debugging solution.
I just made "material expressions" up, because they're expressions, and you attach them to materials.
I just made "material expressions" up, because they're expressions, and you attach them to materials.
-
- Moderator
- Posts: 1007
- Joined: Mon Mar 23, 2009 2:57 am
- Has thanked: 44 times
- Been thanked: 505 times
Re: Señor Casaroja's Noesis
There's a new build up (4.01) that has some FF12 fixes. Lots of the models weren't matching the CLUTs and textures correctly and/or had some missing mesh pieces, that's fixed now.
That's a shame, I won't be able to get to animations for FF12 for a while then. I've been doing all of my work from my laptop, and it's a much bigger pain in the ass to do PS2 debugging there than it is on my desktop. But I'm rarely on my desktop these days.LUBDAR wrote:too my knowledge yaz0r's tools didn't support animations...
-
- Moderator
- Posts: 1007
- Joined: Mon Mar 23, 2009 2:57 am
- Has thanked: 44 times
- Been thanked: 505 times
Re: Señor Casaroja's Noesis
I made a surprising amount of progress on FF12 anims without having to actually disassemble anything.
I just need to finish properly decoding the delta streams now. Which is the hard part in terms of guessing at what shit does. I wish I had a good remote debugging setup for this kind of thing. Maybe I'll finish it by next week after all.
I just need to finish properly decoding the delta streams now. Which is the hard part in terms of guessing at what shit does. I wish I had a good remote debugging setup for this kind of thing. Maybe I'll finish it by next week after all.
-
- Moderator
- Posts: 1007
- Joined: Mon Mar 23, 2009 2:57 am
- Has thanked: 44 times
- Been thanked: 505 times
Re: Señor Casaroja's Noesis
4.02 is up. But at some point my Xentax login got destroyed, so I can't upload the build there. You'll have to get it using the in-program auto-update, or from my personal site:
http://www.richwhitehouse.com/index.php ... hp#prjmp91
Edit: Oh, and here's a quick script I wrote to dump the PRS files from Chu Chu Rocket for the Dreamcast:
It would probably be better-suited to being a tool script that scans the folder for PRS files and decompresses them to a central location, but I was lazy.
http://www.richwhitehouse.com/index.php ... hp#prjmp91
The auto-reload thing was added because WRS wanted it, but it's disabled by default because most users won't need/want it, and I didn't want to impose the overhead of a filesystem hook when it's not needed.-4.02 - Partial FF12 animation support. (still don't have channel deltas working correctly, so you only get sequence base frames)
-4.02 - Added rapi.decompPRS and rapi.getPRSSize, to handle PRS compression which is used in a variety of Sega games.
-4.02 - Added an "Auto-reload scripts" option under Persistent settings->Other. Plugins must be reloaded for changes to the setting to take effect. If enabled, Python scripts are automatically reloaded when any .py file is changed under the plugins\python directory. Other scripting plugins may also choose to implement this setting.
-4.02 - Corrected an issue with animation hierarchies sometimes not being preserved when fed without models from plugins.
-4.02 - When script load errors occur, if the debug log is open and script auto-reloading is enabled, the error will not pop up as a messagebox and will instead only print to the debug log.
Edit: Oh, and here's a quick script I wrote to dump the PRS files from Chu Chu Rocket for the Dreamcast:
Code: Select all
from inc_noesis import *
def registerNoesisTypes():
handle = noesis.register("PRS Data", ".prs")
noesis.setHandlerExtractArc(handle, prsExtractArc)
noesis.logPopup()
return 1
def prsExtractArc(fileName, fileLen, justChecking):
with open(fileName, "rb") as f:
if justChecking:
return 1
compData = f.read(fileLen)
decomp = rapi.decompPRS(compData, rapi.getPRSSize(compData))
fname = rapi.getExtensionlessName(rapi.getLocalFileName(rapi.getLastCheckedName())) + "_decomp.pvm"
print("Writing", fname)
rapi.exportArchiveFile(fname, decomp)
return 1
- Dinoguy1000
- Site Admin
- Posts: 786
- Joined: Mon Sep 13, 2004 1:55 am
- Has thanked: 154 times
- Been thanked: 163 times
-
- ultra-veteran
- Posts: 603
- Joined: Fri Nov 06, 2009 12:13 am
- Has thanked: 74 times
- Been thanked: 137 times
Re: Señor Casaroja's Noesis
Brilliant, thanks! Now I have no excuse not to finish some of my 3D format scripts!MrAdults wrote:The auto-reload thing was added because WRS wanted it, but it's disabled by default because most users won't need/want it, and I didn't want to impose the overhead of a filesystem hook when it's not needed
Useful tool links: