valheimPlus / ValheimPlus

A HarmonyX Mod aimed at improving the gameplay and quality of life of the game Valheim.
http://valheim.plus
GNU Affero General Public License v3.0
967 stars 237 forks source link

[BUG] Endless Exception spam in log #245

Closed mft-dev closed 3 years ago

mft-dev commented 3 years ago

Describe the bug Endless Log Exception spam.

[Error : Unity Log] NullReferenceException: Object reference not set to an instance of an object Stack trace: ValheimPlus.ModifyPlacingRestrictionOfGhost.Postfix (Player& __instance) (at <7f3756a8cdc342ac98d8e07c307fe758>:0) (wrapper dynamic-method) Player.DMD(Player,bool) Player.LateUpdate () (at :0)

To Reproduce Steps to reproduce the behavior:

INI File:

[AdvancedBuildingMode]
; https://docs.unity3d.com/ScriptReference/KeyCode.html <- a list of keycodes

; Change false to true to enable this section, if you set this to false the mode will not be accesible
enabled=false

; Enter the advanced building mode with this key when building
enterAdvancedBuildingMode=F1

; Exit the advanced building mode with this key when building
exitAdvancedBuildingMode=F3

; Copy the object rotation of the currently selected object in ABM
copyObjectRotation=Keypad7

; Apply the copied object rotation to the currently selected object in ABM
pasteObjectRotation=Keypad8

[AdvancedEditingMode]

; Change false to true to enable this section, if you set this to false the mode will not be accesible
enabled=false

; https://docs.unity3d.com/ScriptReference/KeyCode.html <- a list of keycodes

; Enter the advanced editing mode with this key
enterAdvancedEditingMode=Keypad0

; Reset the object to its original position and rotation
resetAdvancedEditingMode=F7

; Exit the advanced editing mode with this key and reset the object
abortAndExitAdvancedEditingMode=F8

; Confirm the placement of the object and place it
confirmPlacementOfAdvancedEditingMode=KeypadEnter

; Copy the object rotation of the currently selected object in AEM
copyObjectRotation=Keypad7

; Apply the copied object rotation to the currently selected object in AEM
pasteObjectRotation=Keypad8

[Beehive]

; Change false to true to enable this section
enabled=false

; configure the speed at which the bees produce honey in seconds, 1200 seconds are 24 ingame hours
honeyProductionSpeed=1200

; configure the maximum amount of honey in beehives
maximumHoneyPerBeehive=4

[Building]

; Change false to true to enable this section
enabled=true

; Remove some of the Invalid placement messages, most notably provides the ability to place objects into other objects
noInvalidPlacementRestriction=false

; Removes the weather damage from rain
noWeatherDamage=false

; The maximum range that you can place build objects at
maximumPlacementDistance=25

[Camera]

; Change false to true to enable this section
enabled=false

; The maximum zoom distance to your character
cameraMaximumZoomDistance=6

; The maximum zoom distance to your character when in a boat
cameraBoatMaximumZoomDistance=6

; The game camera FOV
cameraFOV=65

[Experience]

; Change false to true to enable this section
enabled=false

; Each of these values represent the increase to experience gained by +/- %
; The value 50 would result in 50% increased experience gained for the respective skill by name.
; The value -50 would result in -50% experience gained for the respective skill by name.
swords=0
knives=0
clubs=0
polearms=0
spears=0
blocking=0
axes=0
bows=0
fireMagic=0
frostMagic=0
unarmed=0
pickaxes=0
woodCutting=0
jump=0
sneak=0
run=0
swim=0

[Fermenter]

; Change false to true to enable this section
enabled=false

; configure the time that the fermenter takes to produce its product, 2400 seconds are 48 ingame hours
fermenterDuration=2400

; configure the total amount of produced items from a fermenter
fermenterItemsProduced=6

; Display the minutes and seconds until the fermenter is done on hover
showFermenterDuration=false

[Fireplace]

; If changed to enabled all fireplaces do not need to be refilled.
enabled=true

; If you enable this option with the previous option to true, only placed torches do not need to be refilled.
; Apply to: wood torches, iron torches, green torches, sconces and brazier
onlyTorches=false

[Food]

; Change false to true to enable this section
enabled=true

; Increase or reduce the time that food lasts by %. The value 50 would cause food to run out 50% slower.
; Allows for - values to shorten food duration.
foodDurationMultiplier=100

[Furnace]

; Change false to true to enable this section
enabled=true

; Maximum amount of ore in a furnace
maximumOre=10

; Maximum amount of coal in a furnace
maximumCoal=20

; The total amount of coal used to produce a single smelted ingot.
coalUsedPerProduct=2

; The time it takes for the furnace to produce a single ingot in seconds.
productionSpeed=30

; Instead of dropping the items, they will be placed inside nearby chests instead.
autoDeposit=true

; The range of the chest detection for the auto deposit feature. (Maximum is 50)
autoDepositRange=10

[Game]

; Change false to true to enable this section
enabled=false

; The games damage multiplier per person nearby in difficultyScaleRange(m) radius.
gameDifficultyDamageScale=0.4

; The games health multiplier per person nearby in difficultyScaleRange(m) radius.
gameDifficultyHealthScale=0.4

; Adds additional players to the difficulty calculation in multiplayer unrelated to the actual amount
extraPlayerCountNearby=0

; Sets the nearby player count always to this value + extraPlayerCountNearby
setFixedPlayerCountTo=0

; The range in meters at which other players count towards nearby players for the difficulty scale
difficultyScaleRange=200

[Hotkeys]
; https://docs.unity3d.com/ScriptReference/KeyCode.html <- a list of keycodes

; Change false to true to enable this section
enabled=false

; Roll forwards on key pressed
rollForwards=F9

; Roll backwards on key pressed
rollBackwards=F10

[Items]

; Change false to true to enable this section
enabled=false

; Enables you to teleport with ores and other usually restricted objects
noTeleportPrevention=false

; Increase or reduce item weight by % percent. The value -50 will reduce item weight of every object by 50%.
baseItemWeightReduction=0

; Increase the size of all item stacks by %. The value 50 would set a usual item stack of 100 to be 150.
itemStackMultiplier=0

; Set duration that dropped items live before despawning. Game default is 3600 seconds.
droppedItemOnGroundDurationInSeconds=3600

[Hud]

; Change false to true to enable this section
enabled=true

; Shows the required amount of items AND the amount of items in your inventory in build mode and while crafting.
showRequiredItems=true

; Shows small notifications about all skill experienced gained in the top left corner.
experienceGainedNotifications=false

; Shows current and max stamina numerically underneath the stamina bar.
displayStaminaValue=false

; Set to true to remove the red screen flash overlay when the player takes damage.
removeDamageFlash=false

[Gathering]

; Change false to true to enable this section
enabled=false

; Each of these values increase or reduce the dropped items from destroyed objects with tools (Stones, Trees, Resource nodes, etc.) by %
; The value 50 will increase the dropped wood from trees from 10 to 15. The value -50 will reduce the amount of dropped wood from 10 to 5.
wood=0
stone=0
fineWood=0
coreWood=0
elderBark=0
ironScrap=0
tinOre=0
copperOre=0
silverOre=0
chitin=0

[Durability]

; Change false to true to enable this section
enabled=false

; Each of these values increase or reduce the durability of the specific item type by %
; The value 50 will increase the durability from 100 to 150. The value -50 will reduce the durability from 100 to 50.
axes=0
pickaxes=0
hammer=0
cultivator=0
hoe=0
weapons=0
armor=0
bows=0
shields=0

[Armor]

; Change false to true to enable this section
enabled=false

; Each of these values increase or reduce the armor of the specific item type by %
; The value 50 will increase the armor from 14 to 28. The value -50 will reduce the durability from 14 to 7.
helmets=0
chests=0
legs=0
capes=0

[Kiln]

; Change false to true to enable this section
enabled=true

; Maximum amount of wood in a Kiln
maximumWood=20

; The time it takes for the Kiln to produce a single piece of coal in seconds.
productionSpeed=30

; Instead of dropping the items, they will be placed inside nearby chests instead.
autoDeposit=true

; The range of the chest detection for the auto deposit feature. (Maximum is 50)
autoDepositRange=10

[Map]

; Change false to true to enable this section
enabled=true

; With this enabled you will receive the same exploration progression as other players on the server
shareMapProgression=false

; The radius of the map that you explore when moving
exploreRadius=200

; Prevents you and other people on the server to turn off their map sharing option
preventPlayerFromTurningOffPublicPosition=false

[Player]

; Change false to true to enable this section
enabled=true

; The base amount of carry weight of your character
baseMaximumWeight=300

; Increase the buff you receive to your carry weight from Megingjord's girdle
baseMegingjordBuff=150

; Increase auto pickup range of all items
baseAutoPickUpRange=2

; Disable all types of camera shake
disableCameraShake=true

; The base unarmed damage multiplied by your skill level.
; 120 will result in a maximum of 12 damage when you have a skill level of 10.
baseUnarmedDamage=120

; When changed to true, you will not be permitted to place a crop within the grow radius of another crop
cropNotifier=true

[Server]

; Change false to true to enable this section
enabled=true

; Modify the amount of players on your Server
maxPlayers=10

; Removes the requirement to have a server password
disableServerPassword=false

; This settings add a version control check to make sure that people that try to join your game or the server you try to join has V+ installed
enforceMod=true

; Changes whether the server will force it's config on clients that connect. Only affects servers.
serverSyncsConfig=true

; The total amount of data that the server and client can send per second in kilobyte
dataRate=60

[Stamina]
; Each of these values allow for - values, 50% will increase the stamina cost by 50, -50 will reduce the stamina cost by 50%
; Change false to true to enable this section
enabled=false

; Changes the amount of stamina cost of using the dodge roll by %
dodgeStaminaUsage=0

; Changes the stamina drain of being overweight by %
encumberedStaminaDrain=0

; Changes the stamina cost of jumping by %
jumpStaminaDrain=0

; Changes the stamina cost of running by %
runStaminaDrain=0

; Changes the stamina drain by sneaking by %
sneakStaminaDrain=0

; Changes the total amount of stamina recovered per second by %
staminaRegen=0

; Changes the delay until stamina regeneration sets in by %
staminaRegenDelay=0

; Changes the stamina drain of swimming by %
swimStaminaDrain=0

[StaminaUsage]
; Change false to true to enable this section
enabled=true
; Each of these values modifies the stamina drain by %.
; The value 50 would result in 50% more stamina cost.
; The value -50 would result in 50% less stamina cost.
axes=0
blocking=0
bows=0
clubs=0
knives=0
pickaxes=0
polearms=0
spears=0
swords=0
unarmed=0
hammer=-100
hoe=-100
cultivator=-100

[StructuralIntegrity]

; Change false to true to enable this section
enabled=false

; Disables the entire structural integrity system and allows for placement in free air, does not prevent building damage.
disableStructuralIntegrity=false

; Each of these values reduce the loss of structural integrity by % less. The value 100 would result in disabled structural integrity and allow placement in free air.
wood=0
stone=0
iron=0
hardWood=0

[Time]

; --- > THIS FEATURE IS STILL IN DEVELOPMENT AND IS RIGHT NOW DISABLED UNTIL FURTHER NOTICE

; Change false to true to enable this section
; enabled=false
; Total amount of time one complete day and night circle takes to complete
; totalDayTimeInSeconds=1800
; Increase the speed at which time passes at night by %. The value 50 would result in a 50% reduced amount of night time. The value 0 would result in a 0% reduced amount (normal amount).
; nightTimeSpeedMultiplier=0

[Ward]

; Change false to true to enable this section
enabled=false

; The range of wards by meters
wardRange=20

[Workbench]
; Change false to true to enable this section
enabled=true

; Set the workbench radius in meters
workbenchRange=50

; Disables the roof and exposure requirement to use a workbench
disableRoofCheck=false

[Wagon]

; Change false to true to enable this section
enabled=false

; Change the base vagon physical mass of the vagon object
wagonBaseMass=20

; This value changes the game physical weight of Vagons by +/- more/less from item weight inside. The value 50 would increase the weight by 50% more. The value -100 would remove the entire extra weight.
wagonExtraMassFromItems=0

[Inventory]

; Change false to true to enable this section
enabled=false

; Player inventory number of rows (inventory is resized up to 6 rows, higher values will add a scrollbar)
; min 4, max 20
playerInventoryRows=15
; Wood chest number of columns
; 5 min, 8 max
woodChestColumns=5
; Wood chest number of rows (more than 4 rows will add a scrollbar)
; min 2, 10 max
woodChestRows=2
; Iron chests already have 8 columns by default but now you can lower it 
; This also affects the cart and boat inventory
; min 6, max 8
ironChestColumns=8
; Iron chest number of rows (more than 4 rows will add a scrollbar)
; This also affects the cart and boat inventory
; min 3, max 20
ironChestRows=3
; By default tools and weapons go into inventories top to bottom and other materials bottom to top. Set to true to make all items go into the inventory top to bottom.
inventoryFillTopToBottom=false

Expected behavior To not spam the log with Exceptions

Troubleshooting Disabled most likely culprits in INI. Did not work.

Screenshots

nxPublic commented 3 years ago

Already reported in #235