6647df14375b1

6647df143827e
1 Guest is here.
 

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

6647df1438ba8RoSoDude

6647df1438c20
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.

6647df1438f08goosefromtopgun

6647df1438f57
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.

6647df143905cZylonBane

6647df14390a9
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.

6647df143944aRoSoDude

6647df14394eb
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

6647df14396f6goosefromtopgun

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

6647df1439b5bgoosefromtopgun

6647df1439bb5
RoSoDudeInteresting. Will try. Keep up the nice work mate.

6647df143a0dbsarge945

6647df143a141
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.

6647df143a1fcZylonBane

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

6647df143a4bdgoosefromtopgun

6647df143a51d
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.

6647df143a5f9RoSoDude

6647df143a646
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 »

6647df143a772voodoo47

6647df143a7bf
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?

6647df143a9bdRoSoDude

6647df143aa15
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.

6647df143aabcvoodoo47

6647df143ab0d
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.

6647df143ac0aRoSoDude

6647df143ac5d
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 AI that appears in both System Shock games:
1 Guest is here.
We all make choices; but in the end, our choices make us.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
6647df143ad85