[aquaria] Patch catchup...

False.Genesis false.genesis at googlemail.com
Sun Nov 20 20:39:24 EST 2011


Thanks Ryan! :)
As an additional thank you here are 9 more patches:

#1 fixes an oversight in one of the win32 patches, my bad.

#2 removes a float->int->float cast from randVector() and enables the 
formula Andrew suggested there, but corrected (angle*2*PI instead of 
angle*PI). Also, generateEmptyTexture() always allocated memory 4x as 
large as required. It was freed right after, but why not clean this up.

#3 is basically the same "world maps in mods" patch i posted earlier, 
but now with tabs instead of spaces. It didn't require any VFS stuff, 
you misunderstood that. (An old version did, but this one not).

#4 applies cleanly now (requires #3)

#5 applies cleanly now, cleaned up, tabs corrected

#6 ... Can data that were never shipped with the game be considered 
copyrighted? Imho not. =)  (Needed this for modding)

#7 cleans up paths on windows; someone broke saving screenshots on 
windows. Seems this went unnoticed for a long time.

#8 & #9 explain themselves.

If one doesn't apply cleanly, i must have messed up. Verified that 
everything works and tested all of them. (All of this is in my 
experimental repo anyways)


> I didn't apply this because it's massive, marked experimental, and my
> ego thinks you should use PhysicsFS instead. :P
>
> (but I'll definitely apply this if others like it and test it a little
> bit!)

Thanks that you didn't apply it. That patch was never supposed to go in 
- if i mark something as experimental it usually means "touch it and it 
will explode". I might make a new one in some time, as it is required 
for other stuff that is not yet finalized - but no time to work on these 
things right now.

I considered using PhysicsFS, but i had already written my own... and 
yours might not be insane enough to do what i need :P

Like, this (some code from my experimental repo):

#ifdef BBGE_BUILD_MACOSX
     // we assume the working dir is something like 
"/Applications/Aquaria-fg.app",
     // and that the commercial game resides at "/Applications/Aquaria.app".

     // we do NOT mount the whole folder, as it may contain some garbage 
we do not want.
     // (saves messing up, user settings, etc)
     // This is less a problem if mounting in non-overwriting mode, but 
in that case, there is
     // a problem with hot-patching: changes to textures require a game 
restart to be reverted.
     //vfs.MountExternalPath("../Aquaria.app", "", false);

     // Instead, mount only the paths that are needed (but forcing 
overwrite),
     // this prevents the problems described above.
     vfs.MountExternalPath("../Aquaria.app/_mods", "_mods", true);
     vfs.MountExternalPath("../Aquaria.app/data", "data", true);
     vfs.MountExternalPath("../Aquaria.app/gfx", "gfx", true);
     vfs.MountExternalPath("../Aquaria.app/mus", "mus", true);
     //vfs.MountExternalPath("../Aquaria.app/scripts", "", true); // 
this is provided by _hackfixes.lvpa (old scripts are incompatible anyways)
     vfs.MountExternalPath("../Aquaria.app/sfx", "sfx", true);
     vfs.MountExternalPath("../Aquaria.app/vox", "vox", true);
#endif

Plus, i don't consider mine stable yet, but it definitely works well 
enough already to do most of the file handling in my experimental repo, 
and allows some nice tricks which i happily abuse.


> hg changeset 5c8ef070be7a. Blah blah tabstops blah blah.

Got the rant, lesson learned! :)

Keep rockin'!

-- fg
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 1_debuglog.patch
URL: <http://icculus.org/pipermail/aquaria/attachments/20111121/2a0947b0/attachment-0009.diff>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 2_cleanup.patch
URL: <http://icculus.org/pipermail/aquaria/attachments/20111121/2a0947b0/attachment-0010.diff>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 3_modmaps.patch
URL: <http://icculus.org/pipermail/aquaria/attachments/20111121/2a0947b0/attachment-0011.diff>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 4_nodatadir.patch
URL: <http://icculus.org/pipermail/aquaria/attachments/20111121/2a0947b0/attachment-0012.diff>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 5_animedit.patch
URL: <http://icculus.org/pipermail/aquaria/attachments/20111121/2a0947b0/attachment-0013.diff>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 6_tgasave.patch
URL: <http://icculus.org/pipermail/aquaria/attachments/20111121/2a0947b0/attachment-0014.diff>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 7_win32paths.patch
URL: <http://icculus.org/pipermail/aquaria/attachments/20111121/2a0947b0/attachment-0015.diff>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 8_scriptfix.patch
URL: <http://icculus.org/pipermail/aquaria/attachments/20111121/2a0947b0/attachment-0016.diff>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 9_ridingfix.patch
URL: <http://icculus.org/pipermail/aquaria/attachments/20111121/2a0947b0/attachment-0017.diff>


More information about the aquaria mailing list