Jump to content


Photo

The 'official' BWP Fixpack thread

BiG World Project Fixpack

  • Please log in to reply
300 replies to this topic

#161 agb1

agb1
  • Member
  • 1623 posts

Posted 27 December 2015 - 03:21 AM

Are there any known problems caused by installing the Resource Fixer on EE games?

BiG World Fixpack (community collection of mod fixes and compatibility patches, with user-friendly cross-platform script)

 

BiG World Setup (tool to automate best-practice installation of Infinity Engine mods on Windows, with conflict analysis)

Latest version:    https://bitbucket.or.../get/master.zip


#162 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 27 December 2015 - 04:13 AM

I remember someone asked me something similar about the lolfixer a few months back - the answer still stands :P A proper EE guru should have a closer look before recommending it for the masses.


"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#163 agb1

agb1
  • Member
  • 1623 posts

Posted 29 December 2015 - 12:24 PM

Lollorian, the BWFixpack folders for item_rev and spell_rev include _copy folders that contain replacement files.  Are these replacements still correct for the new v4 betas of these mods?  If not, can you make the _copy folders conditional on the mod version somehow?  For example, have a _copy_v3 and a _copy_v4 with a versions.txt in each folder listing the applicable versions of the mod.


BiG World Fixpack (community collection of mod fixes and compatibility patches, with user-friendly cross-platform script)

 

BiG World Setup (tool to automate best-practice installation of Infinity Engine mods on Windows, with conflict analysis)

Latest version:    https://bitbucket.or.../get/master.zip


#164 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 29 December 2015 - 06:41 PM

No the fixpack files are not valid for v4 but aren't the v4 mods closed betas?

If you're going to test a mod, I think we can assume a small amount of technical knowhow (aka pause the BWS before the fixpack gets applied and remove the xxx_rev folders)

The fixpack framework doesn't allow for supporting multiple versions of mods unless these mod versions have different folder names

"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#165 agb1

agb1
  • Member
  • 1623 posts

Posted 29 December 2015 - 08:04 PM

OK, for now BWS will delete the Fixpack item_rev and spell_rev folders for EE game types (where the v4 betas are selectable -- the user must still provide the packages, because BWS does not include download links for the beta versions).

BiG World Fixpack (community collection of mod fixes and compatibility patches, with user-friendly cross-platform script)

 

BiG World Setup (tool to automate best-practice installation of Infinity Engine mods on Windows, with conflict analysis)

Latest version:    https://bitbucket.or.../get/master.zip


#166 Fouinto

Fouinto
  • Member
  • 458 posts

Posted 30 December 2015 - 01:50 AM

Here is What I understand of your problem.
AFAIK, Fixpack use diff (or something like diff) to apply the patch.
You have version A (original one), you made version B (the one you with your fix), and diff allow you to extract only the différences between B and A.
But this result (in the fixpack) is only made to be applied on the true version A (not on version A+1).


But, AFAIK, BWS keep a "database" of mods with a checksum for each mod to know if the mod have changed or not... Well, I don't know if it's true anymore, but BWS used to have this database in an ini file.

I know it would be more complex but... may be you could use this to know if you should (or not) install the fixpack on a "per mod" basis...

I guess I am hard to understand, but I hope it will be OK.

Something like this (hope this will be more clear) :

foreach directory in fixpack {
    if (the directory also exist in dirgame) {
        if (mod_installer has the good checksum) {
            Apply the fixpack for this mod/directory
        } else {
            // Nothing to do : the mod is not in the same version as the one the fixpack is based on
        }
    } else {
        // Nothing to do : this mod is not installed
    }
}


Edited by Fouinto, 30 December 2015 - 01:52 AM.


#167 agb1

agb1
  • Member
  • 1623 posts

Posted 30 December 2015 - 05:18 AM

Mostly the fixpack uses patches, and we do not need to worry about different versions for patches.  However the fixpack also has some _copy directories that contain full replacement files (not patches).  BWS does not keep checksums, just the most recently downloaded file size (to check if we need to download again).  We want to avoid needing to update BWS every time a mod version changes.  At this point, we will just not install the fixpack changes for the new betas of item_rev and spell_rev until they are available to everyone and we can remove the old versions of the mods from BWS.


BiG World Fixpack (community collection of mod fixes and compatibility patches, with user-friendly cross-platform script)

 

BiG World Setup (tool to automate best-practice installation of Infinity Engine mods on Windows, with conflict analysis)

Latest version:    https://bitbucket.or.../get/master.zip


#168 Ineth

Ineth
  • Member
  • 35 posts

Posted 15 January 2016 - 10:14 AM

Hey Lollorian,

 

this post of yours made me interested in the BWP Fixpack, and I'm impressed by how clean and simple the "patch database" is structured!

Even though I don't use BWP or BWS, I'll be looking at the BWP Fixpack for patches for any older mods that I install from now on.

 

Of course, as a Linux gamer I have to make additional changes to the TP2s of many mods beside those bugfixes, to make them cross-platform.

And I'm wondering if you'd want me to contribute back those additional patches?

 

Or asking more generally: Would you be willing to let the BWP Fixpack support Linux and Mac in addition to Windows?

 

I'm not talking about making the whole BWP/BWS toolchain cross-platform, because that would be a truly monumental task. Just the BWP Fixpack.

 

To clarify, by "Letting the BWP Fixpack support Linux and Mac" I mean the following two things (which actually don't depend on each other, so you can decide separately whether you want each of them):

 

 

1) Make the BWP Fixpack installer itself cross-platform

 

This would mean adding a Bash or Perl script along-side the Windows-only "BiG World Fixpack.bat" (to do the exact same thing, but for Mac and Linux).

 

I could write this script - though I'll only be able to test it on Linux, and would need some volunteer testers to help me make it work on Mac as well.

 

 

 

2) Accept patches which make mods cross-platform, into the patch database

 

This basically means adding patches which convert old-fashioned Windows-only TP2+BAT code to use modern cross-platform weidu features like HANDLE_AUDIO and HANDLE_TILESETS. (Which is a good idea anyway, but it's up to you whether this belongs in the fixpack.)

 

To give an example, the WhiteQueen mod does the following in its TP2 in order to install audio files:

//////////AUDIO

COPY ~WhiteQueen/Audio~ ~Override~
//////////////////////////////////AUDIO INSTALLATION

COPY   ~WhiteQueen/WQxIA.bat~          ~WQxIA.bat~
COPY   ~WhiteQueen/WQxUA.bat~          ~WQxUA.bat~
    
AT_INTERACTIVE_EXIT ~WQxIA.bat~
AT_UNINSTALL        ~WQxUA.bat~

To make it compatible with Linux, those lines need to be removed and replaced with the following:

//////////AUDIO

LAF HANDLE_AUDIO END

(The two BAT files could then be deleted as they serve no other purpose.)

 

As an added bonus, this change would also benefit BG2:EE players on Windows, because the HANDLE_AUDIO macro knows that the EE accepts OGG files without the need to convert them to WAV, so installation will become a little faster and use a little less disk space for those players.

 

---

 

What do you say?



#169 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 15 January 2016 - 10:35 AM

Yes :D PM'd


"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#170 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 16 January 2016 - 07:17 AM

As for the second part of your request :P BWPFixpack'd the CoI mods with HANDLE_AUDIO (because I love them :wub:)

 

I can add more stuff as reported (which reminds me... the Imp had already asked for something similar - gotta check the PMs again :lol:)


"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#171 Nightfarer

Nightfarer
  • Member
  • 480 posts

Posted 16 January 2016 - 07:26 AM

Hi Lollorian.

 

As you asked me about Vanim in Micbaldur's topic. I replied you there but also replying here (to make sure :P )

 

Beside german and english, Vanim has a russian translation (via BWP Textpack RUSSIAN).



#172 Nightfarer

Nightfarer
  • Member
  • 480 posts

Posted 16 January 2016 - 10:20 PM

Lollorian, btw... did you ask for help for Rukrakia worldmap patching? Just asking.

 

Me, I think I'll buy a new case too before re-assembling my pc.



#173 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 16 January 2016 - 10:21 PM

Omg yes! (it kinda got buried over the past few weeks sorry) Still need help yes :)


"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#174 Nightfarer

Nightfarer
  • Member
  • 480 posts

Posted 16 January 2016 - 10:27 PM

I meant, if you tried asking for help to WISP or someone else :) Just asking because I don't know how much time it will take me to re-assemble everything as I have to order the new case :) So, before I will be able to look into it, it might take me a while :)

 

Vanim: I added that entry to russian wsetup.tra and submitted to Leonardo :cheers:



#175 Ineth

Ineth
  • Member
  • 35 posts

Posted 17 January 2016 - 09:17 AM

@Lollorian

Stuff of the Magi v4 is another mod which has been confirmed to work on EE after adding HANDLE_CHARSETS and iconv: https://forums.beamd...#Comment_701546

 

---

 

Btw, planarspheremod also needs to bundle iconv - I forgot to mention that because for me on Linux it is not needed, but on Windows the HANDLE_CHARSETS macro won't work without it.

 

---

 

In fact, a lot of the mods in the BWP Fixpack will need to be patched to use HANDLE_CHARSETS and bundle iconv, in order to become EE compatible. Currently, the fixpack adds iconv to 4 mods (mur'neth, wildmage, jklhel, huple_npc) using the _copy folder mechanism. If that is going to be repeated for all the mods that need it, that will mean a lot of duplication, and will significantly blow up the download size of the fixpack.


So maybe the fixpack installer should get a special mechanism for that instead? I.e. the fixpack would only contain a single copy of iconv, and when running the installer it would automatically copy it to each mod whose patch folder contains an _iconv file. The content of this _iconv file would be a single line specifying the path where to put it (relative to the mod folder), for example language/iconv or translations/iconv. Does that sound sensible?



#176 agb1

agb1
  • Member
  • 1623 posts

Posted 17 January 2016 - 09:28 AM

Another option: http://superuser.com...-alias-shortcut

Use Windows mklink to create cross-platform symbolic links to iconv in each _copy folder.

BiG World Fixpack (community collection of mod fixes and compatibility patches, with user-friendly cross-platform script)

 

BiG World Setup (tool to automate best-practice installation of Infinity Engine mods on Windows, with conflict analysis)

Latest version:    https://bitbucket.or.../get/master.zip


#177 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 17 January 2016 - 09:47 AM

Or we could, ya know, make all dem mods point to the iconv inside the BWPFixpack yo! :D Dem HANDLE_CHARSETSs takes dem parameters called iconv_path :lol:

Multiple iconvs should theoretically not increase the BWPFixpack's packed size because they would be compressed to take up a small amount of space :P

 

Compatibility patches from my side will have to wait however - I'll be on temporary hiatus for a couple of weeks now so if anyone makes a branch of the BWPFixpack repo with updated stuff, please make sure the BWS links to it instead of the master :)


Edited by Lollorian, 17 January 2016 - 09:49 AM.

"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#178 agb1

agb1
  • Member
  • 1623 posts

Posted 17 January 2016 - 10:14 AM

Lollorian, could you add me to the contributors list for the Fixpack project on GitHub?  Also a link to Leonardo's patcher studio tool that you use to build the patches would be appreciated!


BiG World Fixpack (community collection of mod fixes and compatibility patches, with user-friendly cross-platform script)

 

BiG World Setup (tool to automate best-practice installation of Infinity Engine mods on Windows, with conflict analysis)

Latest version:    https://bitbucket.or.../get/master.zip


#179 Lollorian

Lollorian

    smiley addict

  • Member
  • 4150 posts

Posted 17 January 2016 - 10:34 AM

Done :) As for the patchstudio - you should have a PM coming your way soon.

 

The master link has changed because I created an organization for this... please update.


Edited by Lollorian, 17 January 2016 - 10:34 AM.

"I am the smiley addict, yellow and round, this is my grin :D when I'm usually around :P.
When there's trouble brewing, see me post, cuz it's usually a wall o' yellow and your eyes are toast!!!"

BWP GUIDE - BWP FIXES - impFAQ - NPC LIST - KIT LIST - AREA LIST

GitHub Links : BWP Fixpack | Lolfixer | BWP Trimpack | RezMod


#180 agb1

agb1
  • Member
  • 1623 posts

Posted 17 January 2016 - 10:42 AM

The master link has changed because I created an organization for this... please update.

Done.


BiG World Fixpack (community collection of mod fixes and compatibility patches, with user-friendly cross-platform script)

 

BiG World Setup (tool to automate best-practice installation of Infinity Engine mods on Windows, with conflict analysis)

Latest version:    https://bitbucket.or.../get/master.zip