Nitrado Transfers Fix
Author:
Downloads: 79,069
File Size: 70.5 KB
Created:
Updated:
Mod ID: 1349894
Categories:

Nitrado Transfers Fix

Fixes inventory duplication bug upon map travels on Nitrado servers.

Description

This mod fixes the inventory duplication bug that can occur when travelling to another map on Nitrado servers. A lot of people have been complaining about this bug (including myself), and since after 2 years the issue has not been fixed I decided to make the fix myself.

The project is open source and hosted on GitHub: https://github.com/K07H/nitrado-transfers-fix

If you like this mod please consider donating: https://paypal.me/osubmarin


News

Version 20 is available!
This is a big rework of the mod, so if you had problems with the previous version you should definitely try this one. List of changes below:

  • Added ini setting AutoStackBeforeTransfer.
  • ReceivingItemsTimespan has been reduced to 45 seconds.
  • The mod does now handle manually split stacks. This is achieved thanks to the override of the servers listing UI, called ClusterListSessions. That's the UI you see when transfering to another server, the one with the "JOIN" button. Overriding this UI allows to perform the "merge stacks" operation automatically on player's inventory before a map transfer. Note that if you are using another mod that also overrides the servers listing UI there might be a conflict. However it is possible to disable the UI override from this mod by setting the AutoStackBeforeTransfer setting to False. If you do so this mod will not override the servers listing UI, but players will need to merge stacks in their inventory (using the "merge stacks" button when inside inventory) before a map transfer to ensure they don't loose any item.
  • Optimized processing (less computations).


Info & Support

Please use the comments section of this mod if you need information and/or support.


Configuration

This mod is correctly configured by default and therefore does not require any changes to the GameUserSettings.ini file.
However, you can modify some settings by adding the following lines to the end of the GameUserSettings.ini file:

[NitradoTransfersFix]
FixTransfersDupes=True
AutoStackBeforeTransfer=True
FirstItemReceivedTimespan=60
ReceivingItemsTimespan=45
EnableLogging=False
LogAllEvents=False

Configuration explanations

  • FixTransfersDupes should stay to True, which is the default value. If you want to turn OFF the mod without uninstalling it you can set it to False (set AutoStackBeforeTransfer to False too).
  • AutoStackBeforeTransfer should stay to True, which is the default value. This ensures that player inventory stacks gets merged automatically before a map transfer. If you are using another mod that overrides the servers listing UI (ClusterListSessions) there might be a conflict. However it is possible to disable the UI override from this mod by setting the AutoStackBeforeTransfer setting to False. If you do so this mod will not override the servers listing UI, but players will need to merge stacks in their inventory (using the "merge stacks" button when inside inventory) before a map transfer to ensure they don't loose any item.
  • FirstItemReceivedTimespan is the amount of time in seconds the mod will wait for the first transfered item to be added to player's inventory. You should not modify this value. Default value is 60 seconds, minimum value is 5, maximum value is 180.
  • ReceivingItemsTimespan is the amount of time in seconds the mod will check for duplicates when an item gets added to player's inventory. You should not modify this value. Default value is 45 seconds, minimum value is 5, maximum value is 180.
  • EnableLogging can be set to True if you want the mod to add logging lines in the ShooterGame.log file. Default value is False. If set to True, only few events like "player joined" and "amount of transfered items" will be logged, but more things can be logged if you also set LogAllEvents to True.
  • LogAllEvents can be set to True if you want to add additional logging lines in the ShooterGame.log file. Default value is False. Has no effect if EnableLogging is not set to True. Setting this to True is not recommended unless for testing purposes. This will log all the operations made by the mod when a player receives a transfered item.

About FirstItemReceivedTimespan and ReceivingItemsTimespan :

On a regular Nitrado server you should not modify the values of FirstItemReceivedTimespan and ReceivingItemsTimespan. If some item duplication is still happening with this mod installed, it's probably because your Nitrado server is extremely slow at processing map travels, which is not normal. If your Nitrado server is extremely slow at processing map travels you can try to increase FirstItemReceivedTimespan and ReceivingItemsTimespan values.
You can refer to the following picture if you want to understand how these two settings work. The picture shows what happens when a player spawns (after a map travel): https://i.imgur.com/3iXl8C2.png