feat: modpack-bundled sorting rules + B41/B42 build pair

- data/modpack_rules/helldrinx.txt: bundled rules for HellDrinx FULL/LITE
- app.py auto-injects modpack rules when a trigger wsid is in input;
  user-supplied rules are appended after and override on conflict
- MANUAL_BUILD_PAIRS: betterLockpicking (B41) ↔ NFsBetterLockpicking (B42)
- mlos_sort.py: minor adjustments (kept in lockstep across api/worker)
This commit is contained in:
2026-05-04 15:58:39 +00:00
parent b73325882e
commit cee433f47e
4 changed files with 242 additions and 25 deletions

View File

@@ -0,0 +1,71 @@
; HellDrinx modpack — bundled sorting_rules.txt
; Triggers: HellDrinx FULL (3672556207), HellDrinx LITE (3662909244).
; Auto-injected by app.py:_modpack_rules_for() when either trigger wsid is in
; the user's input. User-supplied rules are appended afterward and override
; these on conflicting keys.
;
; Source: HellDrinx FULL/LITE — keep this file in sync with the modpack's
; upstream sorting_rules.txt when it updates.
[PROJECTRVInterior42]
loadFirst=on
[TombBody]
loadAfter=SPNCC,SPNCCDetails,SPNCCDetailsHD,SpnHairAPI,SpnCloth,SpnOpenCloth,SPNCCFaces,SpnHair,FH,KATTAJ1_ClothesCore,KATTAJ1_Military,[J&G] Black Multicam Uniform,[J&G] British DPM Uniform,[J&G] Caution Pack,[J&G] Firefighter Uniform,[J&G] Neon Vandals Uniform,[J&G] SWAT Uniform,[J&G] Trauma Responder Uniform,[J&G] Umbrella Corp Uniform,[J&G] Alpine Multicam Uniform,[J&G] Desert Multicam Uniform,[J&G] Flecktarn Uniform,[J&G] Forest Multicam Uniform,[J&G] Jordan's Tailoring Buff,[J&G] MARPAT Camo Uniform,[J&G] XKU Uniform,AliceGear,CamisetasSeleccion,CerberusPack,DarkWpnSlings,EFTBP,GanydeBielovzki's Frockin Shirts n Ties,GanydeBielovzki's Frockin Splendor!,GanydeBielovzki's Frockin Splendor! Vol.2,GanydeBielovzki's Frockin Splendor! Vol.3,GanydeBielovzki's Frockin Splendor! Vol.4,GanydeBielovzki's Frockin Splendor! Vol.5,GanydeBielovzki's Frockin Wiseguys,H_E_C_U,HardwoodsTurnoutGear,KITTYOWO,LynxPack,MilitaryPonchosRELOADED,newclothesmodels,TwoWeaponsB,VanillaGearExpanded,zReApoPonchosB42,zReArmorPackBYKB42,ArmoredVests,ArmoredVestsPatch
loadLast=on
[TombBodyCustom]
loadAfter=TombBody
loadLast=on
[TombBodyTexDOLL]
loadAfter=TombBodyCustom
incompatibleMods=TombBodyTexNUDE,TombBodyTex
loadLast=on
[TombGothTexDOLL]
loadAfter=TombBodyTexDOLL
incompatibleMods=TombGothTexNUDE,TombBodyTexNUDE,TombBodyTex
loadLast=on
[TombGothHair]
loadAfter=TombBody,FH
[TombBodyCompat]
loadAfter=TombBody
loadLast=on
[TombWardrobeALT]
loadAfter=TombBody
loadLast=on
[Optimal]
loadLast=on
[Performance]
loadLast=on
[ProjectSummerCar]
loadAfter=VehicleRepairOverhaul,VehicleSalvageOverhaulB42
incompatibleMods=Ivmakk_RestoreEngineQuality
loadLast=on
category=undefined
[ItemretexturePSC]
loadLast=on
category=undefined
[VehicleRepairOverhaul]
loadBefore=ProjectSummerCar,Ivmakk_RestoreEngineQuality
incompatibleMods=SimpleAutoParts
loadLast=on
[VehicleSalvageOverhaulB42]
loadBefore=ProjectSummerCar,Ivmakk_RestoreEngineQuality
loadLast=on
[MoreDescriptionForTraits4213]
loadBefore=FIX_DetailedDescriptionsForOccupationsAndTraits
[HellDrinxJSONFix]
loadAfter=ItemretexturePSC,TombBodyCompat
loadLast=on
[HellDrinxTranslations]
loadAfter=ItemretexturePSC
loadLast=on
[HellDrinxBugFixes]
loadAfter=ItemretexturePSC,TombBodyCompat,TombWardrobeALT,HellDrinxStrangers,SpnCloth
loadLast=on
[HellDrinxEssentials]
loadLast=on
[HellDrinxBugFixesFirst]
loadFirst=on
[TACPDM2]
loadLast=on
[damnlib]
loadFirst=on