Alundra port/clone

Does anyone know how to go about extracting the assets and data from the binary surixurient's talking about? Any pointers to would be most helpful, looks like the "DATAS.bin" has pretty much all the good stuff in it, and from the looks of it, surixurient's the only one who was able to decode it (I've looked around quite a bit). And now he's gone and left their legacy inaccessible.
 
unfortunatly @surixurient has disappeared :( he did impressive job with this Alundra port/clone
He had analyzed/decoded moste alundra event.
 
Even the screenshots attached in posts from 2014 are now lost. All this work being in "Schrödinger's cat state" is really a pity.
@surixurient, please return back, everyone here love you :)
 
I was able to scavenge most of the screenshots using Wayback Machine.

frmAlundra.png


frmAlundra-events.png


frmAlundra.png


saturn-renderer.png


They're now in Microsoft's safe hands, as I uploaded them to one of my github repos.
 


 
Hi again,
I have uploaded the files but I think they are not the latest I had. Unfortunately I was transferring stuff between work computer and home back then and I might have archived the wrong ones, also I was developing other stuff for my brothers game that i was going to port to saturn and some tools for Magic carpet and super mario brothers 3 on top of the Alundra project codebase, which was dumb, so I might have some stuff commented out that is important. surixurient/alundra its mostly here though, i'll have to kind of relearn where I left off to continue.
 
Hello, surixurient thank you for replying to my email and uploading the files, we really appreciate your effort, and if you need any help getting back into the game then don't hesitate to join #saturndev for help on the Segaxtreme discord.
 
Hi again,
I have uploaded the files but I think they are not the latest I had. Unfortunately I was transferring stuff between work computer and home back then and I might have archived the wrong ones, also I was developing other stuff for my brothers game that i was going to port to saturn and some tools for Magic carpet and super mario brothers 3 on top of the Alundra project codebase, which was dumb, so I might have some stuff commented out that is important. surixurient/alundra its mostly here though, i'll have to kind of relearn where I left off to continue.
wow @surixurient congrats and thanks for sharing your files. i remember good old time on irc. you even had found some developer of alundra
 
I found some significant new information about how the game logic/events work so documenting it here.

first some context.
In alundra there are entities (npcs, monsters, jars, chests, dummies, anything pretty much) and these entities are the main data structure in the game, lots of state data.

entities can have attached event programs, which are created with the alundra scripting language. much of my work has been implementing function handlers for the various event commands. an entity has 6 event program slots, (load,map,tick,touch,unload,interact). so an entity can possibly have an event program in each of these slots, and it's run everytime the condition for that slot is met.

what i discovered now is there is a second set of 6 slots(load,map,tick,touch,unload,interact), but the event programs in these slots are not made up from the alundra scripting language, its like a separate event system that run code handler functions directly, not scripts.

what handler functions will run in these slots are determined by an entity's "blueprint" which is a small record that mostly just defines what kind of entity it is going to be, the sprite for that entity, and some other basic information about its dimensions and physics properties. but also there was some unknown data on there that i now know determines what is run in its second set of event slots.

so basically there is a large second event system that i didnt know about previously, and that has perhaps 100+ additional functions to implement.
fun.
 
I was working on audio for a bit and made some good progress identifying and parsing the soundeffects and music.
some of the sound effects data is actually embedded in the executable instead of in datafiles, there is a array of records for each sound effect in the executable that has all the metadata need to play the sound . What is in the sound.bin data file needs headers that are in the executable in order to access the various midi and soundbank files.

There are global soundeffects that are always cached and ready to play and map sound effects that load with the map. music is loaded from disk as its requested, replacing the previous music. it uses the standard playstation api midi format and soundbanks. there will be a problem with audio fitting in memory on the saturn so i will have to deal with that eventually. i have been playing it as 8bit pcm, on playstation it is 4bit compressed adpcm.

I'm taking a break from audio and am now working on the dialogbox system, reversing those code functions.
 

Attachments

  • soundboard.png
    soundboard.png
    167.9 KB · Views: 204
How about framebuffer effects on the PS1? It will hardly be possible to repeat them on Saturn. We'll have to replace it with some other effects.
 
How about framebuffer effects on the PS1? It will hardly be possible to repeat them on Saturn. We'll have to replace it with some other effects.
Yes that is probably right, the fullscreen effects like warping in/out of a dream or the shimmering borders of a dream I haven’t looked into yet.
 
Hello Surixurient,
Thanks for sharing.
I am motivated to take up your project to port Alundra to PC (not saturn) with monogame (I already started).

I saw that you created a game engine with XNA to run Alundra. Do you still have the source code ?
 
Hello Surixurient,
Thanks for sharing.
I am motivated to take up your project to port Alundra to PC (not saturn) with monogame (I already started).

I saw that you created a game engine with XNA to run Alundra. Do you still have the source code ?
well, if you can, share your improvements on github, good luck.
it's great you are motivated to continue this great project
 
Back
Top