673f364c24da2

673f364c25aba
1 Guest is here.
 

Topic: SS2 Inventory Fumbler (SCP Minimod) Read 8902 times  

673f364c26224RoSoDude

673f364c26295
System Shock 2 - Inventory Fumbler (SCP Minimod) v1.00
by RoSoDude https://rosodudemods.wordpress.com/

This mod introduces new and old inventory micromanagement annoyances to System Shock 2:
-Hybrid Shotguns must be manually unloaded of their single slug round as in vanilla
-Recharging stations only charge items dragged one at a time from the inventory (frob distance is increased to accommodate)
-Med Bed keys, ICE picks, Auto-Repair Units, and French-Epstein Devices no longer stack in the inventory
-Game cartridges must be dragged onto the MFD game player to install them

Requires SCP Beta 4 (and hopefully supports future versions), install above it in Blue Mod Manager. Compatible with Rebalanced Skills and Disciplines 1.08, which re-enables device stacking if the player acquires the Pack Rat O/S Upgrade.

673f364c26502goosefromtopgun

673f364c2654e
Nice work as usual. I am quite interested in this in concept, however the idea of all the hybrid shotguns floating around again because I want that one round from downed hybrids is also immersion breaking. Perhaps a version that does all of the above, minus manually unloading of the single slug would be good? I mean you still have to bring up the inventory screen to get the thing.

673f364c26660ZylonBane

673f364c266ae
You're basically asking for a mod that was created to be annoying to be less annoying. That's like someone asking for a mod that was created to be ugly to be less ugly.

673f364c26a17RoSoDude

673f364c26a7c
Nice work as usual. I am quite interested in this in concept, however the idea of all the hybrid shotguns floating around again because I want that one round from downed hybrids is also immersion breaking. Perhaps a version that does all of the above, minus manually unloading of the single slug would be good? I mean you still have to bring up the inventory screen to get the thing.

It's straightforward to remove any feature you don't like. Just go into DMM\SCP-Inventory-Fumbler_X.XX\shockscp.gam.dml and remove or comment out (syntax // for an individual line or /* [...] */ for a block comment) the parts you don't want. In this case, just remove the following code block:

Code: [Select]
////Forces the player to manually loot Hybrid Shotguns again
//Add one slug back to Hybrid Shotguns
+ObjProp -4073 "GunState" //Hybrid_Shotgun
{
    "Ammo" 1
}
//Remove "NVGuaranteedLoot0="OneRifledSlug";" from OG-Shotgun
+ObjProp -175 ObjList = "NVRelayTrap2On="BeginScript"; NVRelayTrap2Off="Null"; NVRelayTrap2TDest="[Me]"; NVRelayTrap2TOn="Init"; NVRelayTrap2OnDelay=500; NVRelayTrap2TCount=1; NVCreateAndLinkOn="Init"; NVCreateAndLinkCount=1; NVCreateAndLinkCreate="og-shot flash"; NVCreateAndLinkLinkType="~DetailAttachement"; NVCreateAndLinkLinkData1Field="Type"; NVCreateAndLinkLinkData1Value="2"; NVCreateAndLinkLinkData2Field="vhot/sub #"; NVCreateAndLinkLinkData2Value="0"; NVCreateAndLinkLinkData3Field="joint"; NVCreateAndLinkLinkData3Value="12"; NVCreateAndLinkLinkData4Field="rel pos"; NVCreateAndLinkLinkData4Value="0, -1.5, 0"; NVCreateAndLinkLinkData5Field="rel rot"; NVCreateAndLinkLinkData5Value="270"; NVCreateAndLink2On="Init"; NVCreateAndLink2Count=1; NVCreateAndLink2Create="og-shot eject"; NVCreateAndLink2LinkType="~DetailAttachement"; NVCreateAndLink2LinkData1Field="Type"; NVCreateAndLink2LinkData1Value="2"; NVCreateAndLink2LinkData2Field="vhot/sub #"; NVCreateAndLink2LinkData2Value="0"; NVCreateAndLink2LinkData3Field="joint"; NVCreateAndLink2LinkData3Value="10"; NVCreateAndLink2LinkData4Field="rel pos"; NVCreateAndLink2LinkData4Value="0, -1, 0"; NVCreateAndLink2LinkData5Field="rel rot"; NVCreateAndLink2LinkData5Value="180"; NVRelayTrapTDest="&~DetailAttachement"; NVRelayTrapOn="EffectFire"; NVRelayTrapTOn="TurnOn";" //OG-Shotgun

673f364c26c45goosefromtopgun

673f364c26ca8
ZylonBane My intention was to gently critique rather than complain or to ask for a personalized mod.

673f364c27006goosefromtopgun

673f364c27065
RoSoDudeInteresting. Will try. Keep up the nice work mate.

673f364c273b7sarge945

673f364c2740c
You're basically asking for a mod that was created to be annoying to be less annoying. That's like someone asking for a mod that was created to be ugly to be less ugly.

This literally happened to the migraine cyberspace mod. People wanted the env map removed.

673f364c274b5ZylonBane

673f364c27502
Yes Sarge, it's like I picked that example for a reason. Gold star.

673f364c276c4goosefromtopgun

673f364c27723
ZylonBaneI'll keep that in mind when commenting in the future and try to be more thoughtful with my opinions. Genuinely was trying to offer what I thought may have been useful feedback like I have done so with his Deus Ex mods.

673f364c277f3RoSoDude

673f364c27841
I discovered that Inventory Fumbler has a compatibility issue with RealSG, since both overwrite the ObjList on OG-Shotgun (-175). I guess the only way to fix it on my end is to produce a distinct RealSG version of Inventory Fumbler?

EDIT: Or I could use DML fingerprinting to check for RealSG stuff, I suppose. Will look into that.
« Last Edit: 13. January 2022, 02:10:00 by RoSoDude »

673f364c2796cvoodoo47

673f364c279c4
if you want compatibility, you'll probably have to create a RealSG version that will replicate the RealSG code in your ObjList. hmm.. maybe moving your ObjList to a metaprop and slapping it onto -175 could work?

673f364c27b92RoSoDude

673f364c27be9
The problem is I need to remove a param from the -175 ObjList, be it SCP's or RealSG's. I managed to fix compatibility by DML fingerprinting for the ObjList property on -1377 which RealSG adds (and I can think of little reason any other mod would need), then applying the merged ObjList there.

In dbmods\realsgfix.dml:

Code: [Select]
DML1

//RealSG edits the same OG-Shotgun (-175) ObjList as we do
//So we'll just check for RealSG's added Objlist property to Broken Shotgun (-1377)
FINGERPRINT
{
   PROP -1377 ObjList
}

//and then change the ObjList to match RealSG but without the OneRifledSlug loot
+ObjProp -175 ObjList = "NVRelayTrap2On="BeginScript"; NVRelayTrap2Off="Null"; NVRelayTrap2TDest="[Me]"; NVRelayTrap2TOn="Init"; NVRelayTrap2OnDelay=500; NVRelayTrap2TCount=1; NVCreateAndLinkOn="Init"; NVCreateAndLinkCount=1; NVCreateAndLinkCreate="og-shot flash"; NVCreateAndLinkLinkType="~DetailAttachement"; NVCreateAndLinkLinkData1Field="Type"; NVCreateAndLinkLinkData1Value="2"; NVCreateAndLinkLinkData2Field="vhot/sub #"; NVCreateAndLinkLinkData2Value="0"; NVCreateAndLinkLinkData3Field="joint"; NVCreateAndLinkLinkData3Value="12"; NVCreateAndLinkLinkData4Field="rel pos"; NVCreateAndLinkLinkData4Value="0.12, -1.6, 0"; NVCreateAndLinkLinkData5Field="rel rot"; NVCreateAndLinkLinkData5Value="274"; NVCreateAndLink2On="Init"; NVCreateAndLink2Count=1; NVCreateAndLink2Create="og-shot eject"; NVCreateAndLink2LinkType="~DetailAttachement"; NVCreateAndLink2LinkData1Field="Type"; NVCreateAndLink2LinkData1Value="2"; NVCreateAndLink2LinkData2Field="vhot/sub #"; NVCreateAndLink2LinkData2Value="0"; NVCreateAndLink2LinkData3Field="joint"; NVCreateAndLink2LinkData3Value="10"; NVCreateAndLink2LinkData4Field="rel pos"; NVCreateAndLink2LinkData4Value="0, -1, 0"; NVCreateAndLink2LinkData5Field="rel rot"; NVCreateAndLink2LinkData5Value="180"; NVRelayTrapTDest="&~DetailAttachement"; NVRelayTrapOn="EffectFire"; NVRelayTrapTOn="TurnOn"; NVRelayTrap3On="Slain"; NVRelayTrap3Off="null"; NVRelayTrap3TDest="&Contains"; NVRelayTrap3TOn="shotlink"; NVRelayTrap3OnDelay=10; NVRelayTrap4On="shotfrob"; NVRelayTrap4Off="null"; NVRelayTrap4TDest="&~DetailAttachement"; NVRelayTrap4TOn="shotkill";" //OG-Shotgun


If you think it's good to go I'll update to 1.01 with this.

673f364c27ca6voodoo47

673f364c27cfe
yeah, that sounds good, and should work, assuming the -1377 prop is processed before your mod does the check. dbmod.log should be explored to verify.

673f364c27df6RoSoDude

673f364c27e49
Unfortunately fingerprinting happens before application of any DML patch, so this doesn't work. When I said "I fixed compatibility" I actually meant "I forgot I already turned off Inventory Fumbler in the mod manager while attempting to test compatibility".

However, there's a cleaner solution I overlooked -- I can merely remove "NVGuaranteedLoot" from Once-Grunts (-396) so that ObjList param on -175 never executes. As long as another mod doesn't add it back it works just fine.

Your name:
This box must be left blank:

Name the main villain of the System Shock series:
1 Guest is here.
free yourself from this golden threads
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
673f364c2ae31