664adac2b33a5

664adac2b3813
1 Guest is here.
 

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

664adac2b3efdRoSoDude

664adac2b3f5f
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.

664adac2b419fgoosefromtopgun

664adac2b41f2
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.

664adac2b42feZylonBane

664adac2b434c
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.

664adac2b4792RoSoDude

664adac2b47f4
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

664adac2b4a30goosefromtopgun

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

664adac2b4e73goosefromtopgun

664adac2b4ecc
RoSoDudeInteresting. Will try. Keep up the nice work mate.

664adac2b5218sarge945

664adac2b5274
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.

664adac2b5317ZylonBane

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

664adac2b55b4goosefromtopgun

664adac2b560e
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.

664adac2b5707RoSoDude

664adac2b5760
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 »

664adac2b58dcvoodoo47

664adac2b5935
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?

664adac2b5b69RoSoDude

664adac2b5bc3
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.

664adac2b5ca2voodoo47

664adac2b5cf9
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.

664adac2b5e14RoSoDude

664adac2b5e6b
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 default melee weapon in System Shock:
1 Guest is here.
I might come across very disillusioned but I do crossword searches all night.
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
664adac2b5fcb