Jump to content

Online Install Order List - for modders/maintainers collaboration


AL|EN

Recommended Posts

6 hours ago, AL|EN said:

Putting "BEFORE bg1npc" rule inside bgqe.ini and putting the same rule inside github.com/RuleBasedInstallOrder/rules-for-BG2EE.txt is the same amount of work.

Yes and no. Putting it into the mod's ini is done on the by while updating the mod. Having to edit the list is two/three extra steps - and such needed modder collaborations never worked in the past... I am thinking long scale here: doing it once is no problem. Doing it every update because something changed, for example will eventually cease, and info in that list will become outdated. Plus: i know it sounds silly, but sometimes this happens because people forget about it after making changes to their mods. For example I wasn't aware of the BWPFixpack every time I made updates to my own mods, although I was very interested in incorporating its fixes.

 

6 hours ago, AL|EN said:

The later is much more helpful for other modders to discover mod relationship.

Definitely true, and that is why one list makes much sense, not only for players. But info might be outdated at some point, that is my fear, so we should check whether e.g. creation of such list from mod.ini info might be possible or even feasible thing. Probably not, as not every mod can list all others it should be installed after / before...

Link to comment

This is a prototype mod ordering I made for Project Infinity and EET, assembled today.  (I didn't expect choosing components to take over an hour, nor that hitting Refresh would clear ALL items already selected with no prompt!)

I say 'prototype' since I'm still learning how to use PI enough to install it.  It hasn't yet been tested, but it was heavily inspired by subtledoctor's aforementioned list.  To my present understanding, it follows the general format of other BG mod lists.

Link to comment

@Endarire Thank you for your efforts! But: please remove inofficial mod versions from the list:

iylos_eet:0:Iylos NPC for EET: this is an inoffficial version of Iylos. The official one at SHS is EET compatible since a while now.

arath_eet:0:Arath NPC for EET: this is an inoffficial version of Arath. The official one at SHS is EET compatible since a while now. 

dace_eet:0:Dace Linton NPC Mod for EET: this is an inoffficial version of Dace. The official one at SHS is EET compatible since a while now. 

 

The list does not list all components, e.g. for DSptSC comp 1 and 2 are missing. Same for components from c#sodtweaks.

More comments:

c#greythedog:0:Grey The Dog NPC : should be installed after all other NPC mods that add interjections in BG1.

ajantisbg2:43:Speed: 15 minutes real time minimum between Dialogues : this is not the default option but one choice (not the recommended one)

 

mods that are missing:

-Gavin BG1

-Imoen4Ever

-ImoenDies

-ImoenIsStone

-Reunion

-Brage's Redemption

-EBG1 (v2 will have the EET bug fixed)

 

Link to comment

@Arthas Because the official mods do not have _EET in their name (Arath, Dace, Iylos) or no ToB content (Amber).

13 minutes ago, Arthas said:

For Arath, I would release a topic claiming about the compatibility, so people do not use unofficial versions.

Working on it, as well as uploading the mods to official SHS GitHub site.

Link to comment
9 hours ago, jastey said:

Yes and no. Putting it into the mod's ini is done on the by while updating the mod. Having to edit the list is two/three extra steps - and such needed modder collaborations never worked in the past... I am thinking long scale here: doing it once is no problem. Doing it every update because something changed, for example will eventually cease, and info in that list will become outdated. Plus: i know it sounds silly, but sometimes this happens because people forget about it after making changes to their mods. For example I wasn't aware of the BWPFixpack every time I made updates to my own mods, although I was very interested in incorporating its fixes.

But does such request for collaboration was ever requested? I don't remember anything similar to the idea which I proposed. Can you point me to some discussions etc? Maybe it's already a lost cause.

9 hours ago, jastey said:

Definitely true, and that is why one list makes much sense, not only for players. But info might be outdated at some point, that is my fear, so we should check whether e.g. creation of such list from mod.ini info might be possible or even feasible thing. Probably not, as not every mod can list all others it should be installed after / before...

Reading dynamic rules from mods ini require much more work. It only make sense to implement such thing when the support from modders/mod maintainers would be overwhelmingly positive.

Link to comment

just crazy idea - (for "old" bws, requires hard reverse enginering what&how mods do their install), order and possible conflicts is calculated on files&rules dependies, all info in separate *.ini

jimfix.ini:

[Mod]
MenuModName="Corrections"  (0,1,100)
Menu="Graphic, Portrait, Interface and Sound/Combat Log" (201,202,203,204,205,300,600)
Menu="Artificial Intelligence/Swoard Coast Stratagems/Fixes & Updates" (0,2,400,400,700)
Menu="BG2 Tactical Encounters/Ascension/Fixes & Updates" (3,4,5)
MenuModName="Cheats" (500)
MenuModName="All Mods" (*)
[Config]
//    D:  Depend On, install after
//    C:  Conflict with
//    I:  Ignore conflict
//    P:  Force Priority = END, FIRST, BEFOREFIXPACK
//    P<: Force Install Before
//    P>: Force Install After
//    G:  Game compatible
G:(*):TOB|BGT // bgee, bg2ee, eet, iwd, iwd2, iwdee, pst, pstee
//D:(400):stratagems(6030|6031|6032|6033)    // prevent silent prebuffs (Stratagems Smarter Mages) tweak
D:(1):TobEx(100)                // "enable TobEx Sequencers/Triggers tweak" needs TobEx
//D:(2):stratagems(1910)            // "Make Protection from Normal Missiles affect some magical projectiles" Stratagems fix
//D:(3):Ascension(1)&stratagems(6830)        // Smarter Abazigal fix needs both components
//D:(4):Ascension(1)&stratagems(6840)        // Smarter Irenicus at the Throne fix
//D:(5):Ascension(0)&stratagems(6530|6531)    // remove entourage from Ascension Fallen Solars fix
//D:(700):stratagems(6030)
//C:(1,2):stratagems(*)
//P:(100,201,202,203,204,205,500):END
//P<:(100):stratagems(*)
//P>:(100):stratagems(*)
//D:(*):TobEx(100)

//    U:                Always update
//    U_IF|U_IFEXIST|UPDATE_IF_EXIST:    Update if exist
//    U_N|U_IFNEED|UPDATE_IF_NEED    Update if needed
//    C:                Create
//    D:                Depend on file
//    M#0-99:                Mark group if exist
//    !M#0-99:            Mark group if not exist
//    U#0-99:                Update if market
//    U_IF#0-99:           
//    C#0-99:                Create if marked
//      BGEE:                Prefix game type

[Files(0)]
U: spwi523.spl
    "ALTER_EFFECT(opcode=12, power)"

U_IF: dw#0w523.spl
    "ALTER_EFFECT(opcode=12, power)"

[Files(1)]
U: contingx.2da

[Files(2)]
D: dw#pro_NM.mrk
U: shld24.itm

[Files(3)]
D: (dw#ascension_abazigal.mrk abazdg02.cre)
U: dragblue.cre
    "ALTER_CLASSSCRIPT"
U: dragblue.bcs

[Files(4)]
D: (dw#ascension_sendai_irenicus.mrk finiren.cre)
U: finiren.bcs

[Files(5)]
D: (dw#celestial.mrk finsolar.cre)
U: finsol04.bcs

[Files(100)]
U_N: *.spl
    "ALTER_ANIMATION"

[Files(400)]
D: dw#mage.mrk
U: (dw#sw102.spl dw#sw408.spl dw#sw319.spl dw#sw606.spl dw#sw512.spl dw#sw517.spl dw#sw320.spl)

[Files(201,202,203,204,205)]
U: *.spl

[Files(300)]
U_IF: SPPR412.spl
    "ALTER_EFFECT(opcode=141, duration)"
U_IF:(
      SPPR109.spl SPPR110.spl SPPR111.spl SPPR206.spl SPPR213.spl SPPR214.spl SPPR412.spl SPPR416.spl SPPR505.spl SPPR513.spl
      SPPR515.spl SPPR603.spl SPPR613.spl SPPR698.spl SPPR701.spl SPPR725.spl SPPR730.spl SPWI102.spl SPWI107.spl SPWI114.spl
      SPWI120.spl SPWI201.spl SPWI212.spl SPWI219.spl SPWI222.spl SPWI317.spl SPWI318.spl SPWI403.spl SPWI406.spl SPWI416.spl
      SPWI418.spl SPWI505.spl SPWI511.spl SPWI518.spl SPWI519.spl SPWI522.spl SPWI590.spl SPWI591.spl SPWI592.spl SPWI593.spl
      SPWI594.spl SPWI595.spl SPWI596.spl SPWI597.spl SPWI602.spl SPWI603.spl SPWI607.spl SPWI609.spl SPWI611.spl SPWI618.spl
      SPWI701.spl SPWI703.spl SPWI708.spl SPWI723.spl SPWI804.spl SPWI808.spl SPWI902.spl SPWI907.spl SPWI915.spl SPWI916.spl
      SPIN103.spl SPCL232.spl SPCL721.spl SPCL731.spl SPCL732.spl SPCL741.spl)
U:   (SPCL152.spl SPCL321.spl SPCL423.spl SPCL521.spl SPCL522.spl SPCL904.spl SPCL907.spl SPCL913.spl SPCL914.spl SPCL917.spl )
U_IF: (
      SPPR101.spl SPPR107.spl SPPR108.spl SPPR201.spl
      SPPR202.spl SPPR210.spl SPPR306.spl SPPR312.spl SPPR403.spl SPPR407.spl SPPR408.spl SPPR409.spl SPPR413.spl SPPR507.spl
      SPPR508.spl SPPR509.spl SPPR711.spl SPWI108.spl SPWI113.spl SPWI209.spl SPWI210.spl SPWI214.spl SPWI305.spl SPWI311.spl
      SPWI319.spl SPWI320.spl SPWI405.spl SPWI414.spl SPWI512.spl SPWI517.spl SPWI613.spl SPWI606.spl SPWI702.spl SPWI721.spl
      SPWI803.spl SPCL213.spl)
U:    (SPWI921.SPL DW#QALAC.SPL SPPR203D.spl)
U_IF:(
      dw#sp101.spl dw#sp108.spl dw#sp110.spl dw#sp111.spl dw#sp202.spl dw#sp206.spl dw#sp214.spl
      dw#sp306.spl dw#sp403.spl dw#sp406.spl dw#sp409.spl dw#sp412.spl dw#sp501.spl dw#sp506.spl
      dw#sp508.spl dw#sp509.spl dw#sp513.spl dw#sp603.spl dw#sp613.spl dw#sp701.spl dw#sp711.spl
      dw#sp725.spl dw#sp703.spl dw#sw102.spl dw#sw114.spl dw#sw206.spl dw#sw212.spl dw#sw305.spl
      dw#sw311.spl dw#sw317.spl dw#sw318.spl dw#sw319.spl dw#sw320.spl dw#sw403.spl dw#sw405.spl
      dw#sw406.spl dw#sw418.spl dw#sw505.spl dw#sw512.spl dw#sw517.spl dw#sw518.spl dw#sw519.spl
      dw#sw522.spl dw#sw590.spl dw#sw592.spl dw#sw602.spl dw#sw606.spl dw#sw613.spl dw#sw618.spl
      dw#sw701.spl dw#sw702.spl dw#sw902.spl MELSPL01.spl MELSPL03.spl)
     
U:   (RR#THL02.spl RR#THL03.spl RR#WDIS.spl  RR#BHL05.spl RR#BHL06.spl SPWI909.SPL SPCL912B.SPL)
U_IF:(SPWISH17.SPL DW#WISH3.SPL)

[Files(500)]
U_N:  *.are
    "ALTER_DOOR_FLAGS"

[Files(600)]
U_IF: (
    POTN02.itm POTN03.itm POTN04.itm POTN05.itm POTN06.itm POTN07.itm POTN09.itm
    POTN11.itm POTN12.itm POTN14.itm POTN15.itm POTN16.itm POTN18.itm POTN19.itm
    POTN21.itm POTN22.itm POTN24.itm POTN28.itm POTN29.itm POTN30.itm POTN31.itm
    POTN33.itm POTN34.itm POTN35.itm POTN36.itm POTN37.itm POTN38.itm POTN39.itm
    POTN41.itm POTN42.itm POTN43.itm POTN44.itm POTN45.itm POTN46.itm POTN56.itm
    AMUL15.itm AMUL17.itm BRAC16.itm
    DW#PTN02.itm DW#PTN03.itm DW#PTN04.itm DW#PTN05.itm DW#PTN06.itm DW#PTN07.itm DW#PTN09.itm
    DW#PTN11.itm DW#PTN12.itm DW#PTN14.itm DW#PTN15.itm DW#PTN16.itm DW#PTN18.itm DW#PTN19.itm
    DW#PTN21.itm DW#PTN22.itm DW#PTN24.itm DW#PTN28.itm DW#PTN29.itm DW#PTN30.itm DW#PTN31.itm
    DW#PTN33.itm DW#PTN34.itm DW#PTN35.itm DW#PTN36.itm DW#PTN37.itm DW#PTN38.itm DW#PTN39.itm
    DW#PTN41.itm DW#PTN42.itm DW#PTN43.itm DW#PTN44.itm DW#PTN45.itm DW#PTN46.itm DW#PTN56.itm
    SCRL03.itm SCRL04.itm SCRL05.itm SCRL06.itm SCRL07.itm SCRL08.itm SCRL09.itm SCRL15.itm)

[Files(700)]
D: (DW#WISH1.SPL, SPWI513C.SPL)
C: (JF#WISHA.SPL, JF#WISHB.SPL)
U: (DW#WISH1.SPL SPWISH26.SPL SPWISH38.SPL)
    "DELETE_EFFECT(opcode=*)"
U: (SPWI519.SPL DW#0W519.SPL DW#SW519.SPL)

M#0: DW#SOLDI.SPL
C#0: (JF#DISJB.SPL JF#DISJA.SPL)
U#0: DW#SOLDI.SPL   
    "DELETE_EFFECT(opcode=*)"
U#0: (SPWI519.SPL DW#0W519.SPL DW#SW519.SPL)

[WeiDU-EN]
0=Fix Sunfire power levels
1=Enable Spell Immunity in Sequencers/Triggers
2=Shield of Reflection works on Stratagems Flame Arrows
3=Fix Ascension with Stratagems Smarter Abazigal
4=Fix Ascension with Stratagems Smarter Irenicus
5=Fix Ascension with Stratagems Smarter Celestials
100=Fix incorrect spell animations
201=Add spell school notifications -> All spells with a casting time greater than 1
202=Add spell school notifications -> All spells with a casting time greater than 2
203=Add spell school notifications -> All spells with a casting time greater than 3
204=Add spell school notifications -> All spells with a casting time greater than 4
205=Add spell school notifications -> All spells with a casting time greater than 5
300=Add expiration notifications for buffs
400=Prevent silent prebuffing by Stratagems Smarter Mages
500=Reveal all hidden doors
600=Add expiration notifications for item buffs
700=Allow Spell Shield to block Wish Breach and Mordenkainen's Disjunction
Tra=0

 

Link to comment

I tried a BGT megamod on a Project Infinity by following the old install order from last version of BWS.

First problem I saw was that music either doesn't play or doesn't play the right one.

example: Friendly Arm Inn music playing in the neighboring temple, and music barely playing in the other.

What should I supplement my current install order with to avoid such errors?

installorderfull.txt

Link to comment

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...