664a9904390ad

664a9904395d7
1 Guest is here.
 

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

664a990439d74RoSoDude

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

664a99043a076goosefromtopgun

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

664a99043a1e7ZylonBane

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

664a99043a60eRoSoDude

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

664a99043a864goosefromtopgun

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

664a99043ac77goosefromtopgun

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

664a99043b01bsarge945

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

664a99043b10aZylonBane

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

664a99043b2ffgoosefromtopgun

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

664a99043b41eRoSoDude

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

664a99043b586voodoo47

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

664a99043b785RoSoDude

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

664a99043b877voodoo47

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

664a99043b99dRoSoDude

664a99043b9e9
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.
Oh she'll never stop living stories. But the pages blind her view
Contact SMF 2.0.19 | SMF © 2016, Simple Machines | Terms and Policies
FEEP
664a99043bae9