Sometimes gamedev
Obsesses over projects
Not great at doing either
Current focus is Psychonauts


Psychonauts reverse engineering/modding blog
jillcrungus.com/projects/psychonauts/blog/
Mastodon, slightly less seldom used
mastodon.gamedev.place/@jill

posts from @JillCrungus tagged #OpenISACT

also:

Oh god how do I keep track of all these open files and tabs

Work continues on OpenISACT, my source port/decompilation of Creative Labs ISACT. I wanted to write a bit about the tools at hand and my process and plans thus far.

I'll also be writing a second post today, after this one, about something I came across that was initially perplexing where I found answers in a very unexpected place. That was originally gonna be part of this post as well but it was unrelated enough that I thought it best to just keep it seperate.



The name's tentative, but unlikely to change...

So, Creative Labs ISACT. This is a now very old audio middleware built by Creative Labs and used by only a handful of games. So far it's been spotted in Mass Effect, a custom patch for UT2004, Mage Knight: Apocalypse, Vanguard: Saga of Heroes, and of course, Psychonauts.

ISACT is... kinda cool, actually. There are some INCREDIBLY ANNOYING QUIRKS WITH IT which I have suffered through but those aren't generally a fault of the software itself and more an artifact of how obscure and old and completely fucking lost it once was. (There is one problem I've had with it that is fault of the software but I'd get way off track if I talked about that again here)

I like ISACT a lot. We finally got hold of a basic version of the original SDK some time ago which includes C headers, libraries to link against and ISACT Production Studio, a tool which finally allowed us to edit and create ISACT's content and sample banks.

ISACT's quite easy to implement and use. It uses OpenAL and supports fancy EAX effects and in the modern day you can drag in OpenAL-soft for various benefits.

Unfortunately, what we have does not include any of the actual code for the libraries even though some version of the SDK with said code did exist at some point as evidenced by the code in the Linux port of Psychonauts. Unfortunately unless someone who works or worked at Creative who still has that code comes out and releases it (or perhaps someone who worked on a game which used that version of ISACT) it is lost media.

But I really do like ISACT. So that's why I want to rebuild it from the ground up.