Jump to content

UdderlyEvelyn

Member
  • Posts

    19
  • Joined

  • Last visited

Everything posted by UdderlyEvelyn

  1. UdderlyEvelyn

    Farm of Fear

    That mean zombie animals are on the table? I've planned to do zombie cows if you don't, but if you do that'll save me some work. xD Farm stuff looks great!
  2. Still occurs in 41.77.9, I and others have had it 4-5 times tonight, I suspect it is something that is sync'd rather than just a clientside issue.
  3. First noticed this on 41.71 (when I started running a server) and still seeing it on 41.77.9. Would be great if something could be done.
  4. Lua checksum system is not case sensitive with filenames, but OS can be and it causes a mis-targeted "File doesn't exist on the client" for a file that does exist from an unrelated mod. In this case my mod UdderlyRP had a file called BetterFlashlights_Distributions.lua in media/lua/server/items and had other files in media/lua/server/Items (note the capital 'I'), and it reported media/lua/server/Items/CBX_MedBagLootDistributions.lua from ClothesBox Redux (2847911733).. This happens with a Linux server and Windows OR Linux clients. I tried moving the file from items to Items and it still overrides the lua file it was intended to in another mod (UdderlyRP is my server mod that tweaks things), so due to this I was able to surmise the lua system doesn't care about capitalization. I'm not sure of the precise nature of the problem as I did not dig into the Java end, I leave that to you. This is at least one cause of the issue I reported here: Even if you don't fix the lua system's response to this sort of situation, it would be greatly appreciated if you could at least fix the way it reports the error to avoid misleading server operators, players, and modders. Thanks.
  5. This still occurs as of 41.77.4, and yes mods are enabled. The error occurs in vanilla code on the java side, though, so I'm not sure how it could be mod-related - what kind of mod could make the square a zombie is at null? There's reports of this error online as far back as December 2021.. In order to avoid clients being booted to the menu it would be helpful if a check for whether a square is null were in place. Edit: Is this item in the changelog referencing this bug? - Fixed NullPointerException in bThump animation variable when the object isn't loaded.
  6. This does not happen every single time I try this but when it does, it is reproducible back to back without any failure. Nothing changes to make it happen, and nothing changes to make it stop. If I close the client it will work and if I then leave it on and restart the server it will fail. It gives this error message (some previous lines included for context): LOG : General , 1665368097678> 5,344,655,451> <End of map-folders list> LOG : General , 1665368097711> 5,344,655,484> IsoMetaGrid.Create: finished scanning directories in 0.044 seconds LOG : General , 1665368097711> 5,344,655,484> IsoMetaGrid.Create: begin loading LOG : General , 1665368097712> 5,344,655,485> LuaEventManager: adding unknown event "OnPreDistributionMerge" ERROR: General , 1665368097713> 5,344,655,485> GameServer.main> Exception thrown java.lang.NullPointerException: Cannot invoke "se.krka.kahlua.vm.KahluaTable.rawget(Object)" because "zombie.Lua.LuaManager.env" is null at LuaEventManager.AddEvent line:417. Message: Exception Thrown ERROR: General , 1665368097713> 5,344,655,486> DebugLogStream.printException> Stack trace: java.lang.NullPointerException: Cannot invoke "se.krka.kahlua.vm.KahluaTable.rawget(Object)" because "zombie.Lua.LuaManager.env" is null at zombie.Lua.LuaEventManager.AddEvent(LuaEventManager.java:417) at zombie.Lua.LuaEventManager.checkEvent(LuaEventManager.java:47) at zombie.Lua.LuaEventManager.triggerEvent(LuaEventManager.java:60) at zombie.iso.IsoWorld.init(IsoWorld.java:2289) at zombie.network.GameServer.main(GameServer.java:703) LOG : General , 1665368097713> 5,344,655,486> Server Terminated. src/tier1/fileio.cpp (5164) : m_vecRegisteredWriters.Count() == 0 src/tier1/fileio.cpp (5164) : m_vecRegisteredWriters.Count() == 0 I am running many mods, but these mods work fine together and do not stop the server from starting.. unless the client is open on the same machine. It's very odd! I do this because I am a modder and server operator and this is how I test both my mods and other mods in concert with one another before pushing them to live. The mod that is triggering OnPreDistirbutionMerge content I believe is More Loot Settings, but it doesn't really matter because it will do it with whatever event code calls first, probably even unmodded. After not being able to start the server with the client open for an hour or so now I suddenly can - the problem is intermittent and seemingly arbitrary but probably has to do with the state of the client since the server is being freshly started whenever the issue comes up. I think what ends up changing it is at some point I restart the client and then it works fine even if I start the client back up *first*.
  7. Actually doesn't seem to matter about the save at all - I have begun to suspect it is trying to override itself in some weird way?
  8. Found a way to trigger a world dictionary error, this should be the reproduction steps: - Install a mod that adds an item. - Override that item in another mod that changes a few stats on it. - Copy that mod to a new mod ID, and try to load the world with the new mod ID instead of the old one (or I suppose just change the mod ID of the original copy). This was in testing for me on a local dedicated server, so not a huge issue, but this could ruin someone's day/save sometime. For me, today, I'll just make a new world on the test server, though. LOG : General , 1665190404351> 0> WorldDictionary: Checking dictionary... LOG : General , 1665190404370> 0> === Dictionary Item Debug Print === registryID = 5482, fulltype = "Dislaik.UpperLegs_LegBag", modID = "UdderlyRPTesting", existsAsVanilla = false, isModded = true, obsolete = false, removed = false, isModdedOverride = 0, =================================== ERROR: General , 1665190404370> 0> java.lang.RuntimeException: Cannot override modID. ModID=UdderlyRPTesting ERROR: General , 1665190404371> 0> at zombie.scripting.objects.Item.setModID(Item.java:3357) ERROR: General , 1665190404371> 0> at zombie.world.DictionaryDataClient.parseCurrentItemSet(DictionaryDataClient.java:37) ERROR: General , 1665190404371> 0> at zombie.world.WorldDictionary.init(WorldDictionary.java:213) ERROR: General , 1665190404371> 0> at zombie.iso.IsoWorld.init(IsoWorld.java:2430) ERROR: General , 1665190404371> 0> at zombie.gameStates.GameLoadingState$1.runInner(GameLoadingState.java:268) ERROR: General , 1665190404371> 0> at zombie.gameStates.GameLoadingState$1.run(GameLoadingState.java:225) ERROR: General , 1665190404371> 0> at java.base/java.lang.Thread.run(Unknown Source) LOG : General , 1665190404371> 0> WorldDictionary: Warning: error occurred loading dictionary! ERROR: General , 1665190404372> 0> ExceptionLogger.logException> Exception thrown zombie.world.WorldDictionaryException: WorldDictionary: Cannot load world due to WorldDictionary error. at WorldDictionary.init line:255. ERROR: General , 1665190404372> 0> DebugLogStream.printException> Stack trace: zombie.world.WorldDictionaryException: WorldDictionary: Cannot load world due to WorldDictionary error. at zombie.world.WorldDictionary.init(WorldDictionary.java:255) at zombie.iso.IsoWorld.init(IsoWorld.java:2430) at zombie.gameStates.GameLoadingState$1.runInner(GameLoadingState.java:268) at zombie.gameStates.GameLoadingState$1.run(GameLoadingState.java:225) at java.base/java.lang.Thread.run(Unknown Source)
  9. ERROR: General , 1663945464480> 6,878,750,020> ExceptionLogger.logException> Exception thrown java.lang.NullPointerException: Cannot invoke "zombie.iso.IsoGridSquare.getX()" because "this.square" is null at IsoObject.getX line:3023. ERROR: General , 1663945464480> 6,878,750,020> DebugLogStream.printException> Stack trace: java.lang.NullPointerException: Cannot invoke "zombie.iso.IsoGridSquare.getX()" because "this.square" is null at zombie.iso.IsoObject.getX(IsoObject.java:3023) at zombie.characters.IsoZombie.lambda$registerVariableCallbacks$12(IsoZombie.java:565) at zombie.core.skinnedmodel.advancedanimation.AnimationVariableSlotCallback.getValue(AnimationVariableSlotCallback.java:34) at zombie.core.skinnedmodel.advancedanimation.AnimationVariableSlotCallbackBool.getValueString(AnimationVariableSlotCallbackBool.java:49) at zombie.core.skinnedmodel.advancedanimation.AnimationVariableSource.getVariableString(AnimationVariableSource.java:292) at zombie.characters.IsoGameCharacter.getVariableString(IsoGameCharacter.java:13614) at zombie.characters.action.conditions.CharacterVariableCondition.resolveValue(CharacterVariableCondition.java:247) at zombie.characters.action.conditions.CharacterVariableCondition.passes(CharacterVariableCondition.java:279) at zombie.characters.action.ActionTransition.passes(ActionTransition.java:138) at zombie.characters.action.ActionContext.evaluateCurrentStateTransitions(ActionContext.java:157) at zombie.util.lambda.Invokers$Params1$CallbackStackItem.run(Invokers.java:37) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:71) at zombie.core.profiling.AbstractPerformanceProfileProbe.lambda$invokeAndMeasure$0(AbstractPerformanceProfileProbe.java:83) at zombie.util.lambda.Stacks$Params3$CallbackStackItem.invoke(Stacks.java:230) at zombie.util.lambda.Stacks$GenericStack.invokeAndRelease(Stacks.java:26) at zombie.util.Lambda.capture(Lambda.java:130) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:81) at zombie.characters.action.ActionContext.updateInternal(ActionContext.java:78) at zombie.util.lambda.Invokers$Params1$CallbackStackItem.run(Invokers.java:37) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:71) at zombie.core.profiling.AbstractPerformanceProfileProbe.lambda$invokeAndMeasure$0(AbstractPerformanceProfileProbe.java:83) at zombie.util.lambda.Stacks$Params3$CallbackStackItem.invoke(Stacks.java:230) at zombie.util.lambda.Stacks$GenericStack.invokeAndRelease(Stacks.java:26) at zombie.util.Lambda.capture(Lambda.java:130) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:81) at zombie.characters.action.ActionContext.update(ActionContext.java:66) at zombie.characters.IsoGameCharacter.postUpdateInternal(IsoGameCharacter.java:12046) at zombie.util.lambda.Invokers$Params1$CallbackStackItem.run(Invokers.java:37) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:71) at zombie.core.profiling.AbstractPerformanceProfileProbe.lambda$invokeAndMeasure$0(AbstractPerformanceProfileProbe.java:83) at zombie.util.lambda.Stacks$Params3$CallbackStackItem.invoke(Stacks.java:230) at zombie.util.lambda.Stacks$GenericStack.invokeAndRelease(Stacks.java:26) at zombie.util.Lambda.capture(Lambda.java:130) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:81) at zombie.characters.IsoGameCharacter.postupdate(IsoGameCharacter.java:12025) at zombie.characters.IsoZombie.postUpdateInternal(IsoZombie.java:2103) at zombie.util.lambda.Invokers$Params1$CallbackStackItem.run(Invokers.java:37) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:71) at zombie.core.profiling.AbstractPerformanceProfileProbe.lambda$invokeAndMeasure$0(AbstractPerformanceProfileProbe.java:83) at zombie.util.lambda.Stacks$Params3$CallbackStackItem.invoke(Stacks.java:230) at zombie.util.lambda.Stacks$GenericStack.invokeAndRelease(Stacks.java:26) at zombie.util.Lambda.capture(Lambda.java:130) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:81) at zombie.characters.IsoZombie.postupdate(IsoZombie.java:2095) at zombie.MovingObjectUpdateSchedulerUpdateBucket.postupdate(MovingObjectUpdateSchedulerUpdateBucket.java:97) at zombie.MovingObjectUpdateScheduler.postupdate(MovingObjectUpdateScheduler.java:185) at zombie.CollisionManager.resolveContactsInternal(CollisionManager.java:411) at zombie.util.lambda.Invokers$Params1$CallbackStackItem.run(Invokers.java:37) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:71) at zombie.core.profiling.AbstractPerformanceProfileProbe.lambda$invokeAndMeasure$0(AbstractPerformanceProfileProbe.java:83) at zombie.util.lambda.Stacks$Params3$CallbackStackItem.invoke(Stacks.java:230) at zombie.util.lambda.Stacks$GenericStack.invokeAndRelease(Stacks.java:26) at zombie.util.Lambda.capture(Lambda.java:130) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:81) at zombie.CollisionManager.ResolveContacts(CollisionManager.java:236) at zombie.iso.IsoWorld.updateInternal(IsoWorld.java:3482) at zombie.util.lambda.Invokers$Params1$CallbackStackItem.run(Invokers.java:37) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:71) at zombie.core.profiling.AbstractPerformanceProfileProbe.lambda$invokeAndMeasure$0(AbstractPerformanceProfileProbe.java:83) at zombie.util.lambda.Stacks$Params3$CallbackStackItem.invoke(Stacks.java:230) at zombie.util.lambda.Stacks$GenericStack.invokeAndRelease(Stacks.java:26) at zombie.util.Lambda.capture(Lambda.java:130) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:81) at zombie.iso.IsoWorld.update(IsoWorld.java:3407) at zombie.gameStates.IngameState.updateInternal(IngameState.java:1657) at zombie.gameStates.IngameState.update(IngameState.java:1373) at zombie.gameStates.GameStateMachine.update(GameStateMachine.java:101) at zombie.GameWindow.logic(GameWindow.java:297) at zombie.core.profiling.AbstractPerformanceProfileProbe.invokeAndMeasure(AbstractPerformanceProfileProbe.java:71) at zombie.GameWindow.frameStep(GameWindow.java:764) at zombie.GameWindow.run_ez(GameWindow.java:680) at zombie.GameWindow.mainThread(GameWindow.java:494) at java.base/java.lang.Thread.run(Unknown Source) This doesn't happen with any consistency, only at random, but it seems once in a while there's somehow no square for the IsoZombie. I've experienced this on all versions from 41.71 and up - not sure if it ever happened prior but I don't recall it.
  10. This has now occurred to another user who has no such known connectivity issue. They logged out and when they went to log back in it prompted them to make a new character. Another user who was able to get in just fine reported that the first was in their car and that the car would not move. This user's report was a bit inaccurate. They apparently were not seen by the other player to be in a vehicle it just said the seat was occupied, and they apparently logged in with the wrong username. Users, eh? lol.. Can't seem to delete posts so I've striked it through.. The original post is still relevant, that situation was bad and should not occur.
  11. My internet is out right now, and we are using a phone hotspot, so our connection is abnormally unstable and ping spikes to 500ms or 2000ms at random once in a while. One day when I finished playing on my server, I logged out as normal, PZ no longer running. The next day I logged in and was prompted to create a new character. Sometimes losing connection while joining can do this, so I hit back, repeated the attempt, it kept doing this. I looked in players.db and I was dead somehow. I edited players.db and set myself to not be dead, and when I joined I had almost every negative moodle maxed out and low health, and instantly died. At first I was confused, I thought this had something to do with laggy disconnection but thought it was more of a corruption or glitch issue. However, tonight when I quit out I then had a server restart, and I saw the server log reported me disconnecting even though I'd been gone for some half an hour. I looked further up in the log and it never showed me disconnect when I actually did. Not much to show you due to the nature of the problem.
  12. On my server (UdderlyRP) I have an incredibly small test group whom I do not have much control over, so forgive me that I cannot be 100% certain, but I think that the spontaneous reboots on 41.76 servers are caused by players who are still on 41.73 attempting to join. For them it gets stuck "Connecting" or "Contacting" instead of a P2P error sometimes, and then the server restarts after choking on the connection attempt. Attached is a tarball of two SIGSEGVs which I think are from this phenomena. I am in contact with the Valhalla Community staff and they were able to confirm this on their server. I will hand them the URL to this thread so they can add any evidence they have of the phenomena. server-files.tar.gz
  13. Could you expose the Vehicles.DB to Lua in some way, at least to get a list? It is useful to get a list of what vehicles are in a cell beyond what is currently loaded in. It would also be useful to have the accompanying functionality to check if it's loaded in, and force a vehicle to then load in if it is not. I would primarily be using this to get a count of vehicles in a cell and removing vehicles if they have not been interacted with in too long, but this would enable a lot of car-related dynamic features to run faster and be more reliable. I would hope this would be a relatively simple thing to implement that you wouldn't mind adding? I posted this as a separate thread without noticing this thread, so I'll reiterate this one: scripts need a syntax checking pass. I've lost dozens of hours to equals-instead-of-semicolon, missing bracket, and "Item" instead of "item" being overlooked. I'm sure this happens to many others too. When you override a recipe, it only applies to the first recipe with that name. That makes sense.. but how do you affect any further recipes with that name? Perhaps a syntax that lets you affect all recipes with a given name, or filter down by some other property such as ingredient or result would help. At present the only way to do this is to loop through every recipe and check for the name, and if it's the one you want, then do what you want to do to it in a lua script at load-time. If multiple mods do this, imagine how many times all the recipes are being looped through! Another way to fix this would be to give us a lua-exposed function capable of doing what ScriptManager:getRecipe(name) does, but capable of returning a table/array of recipes instead of just one - that way we can act on all of them without looping through everything at all. Further, it would be nice if there were a method to remove a recipe outright after it has been loaded in so that I don't have to set IsHidden to true and NeedToBeLearn to true to effectively remove them (thus at runtime less of code having to run through recipes that are not relevant).
  14. I keep losing hours of my day, every day, to the script system not having syntax checking to alert me of errors. The game hangs or silently misbehaves instead. A simple scan through the file to verify all brackets have corresponding closing brackets, and that ":", ";", ",", and "=" are used in appropriate circumstances, keyword spelling and validity (e.g., did you put "Item" instead of "item") and maybe even if a property/field (whatever term you like) exists on a type (item, recipe, etc.) would save thousands of hours collectively across the modding community per day. Bonus points if it can tell you what line a problem is on and in what file. I'm losing so many hours to this that I might need to just write my own syntax checking tool to pass things through when mystery problems occur.
  15. Yeah I did that, every file exists in both places and is the same size now and yet it still says the first file of the first mod, alphabetically, is missing on the client. I understand something might have a bit flipped or something, it's possible, but I've reinstalled all mods on both ends and it persists. Either way, I'm confident that the file it's pointing to is not an issue as it has the exact same contents and is present on both ends, and then if I remove that mod it points to each one alphabetically down the list. Something in the system that reports what's wrong in this scenario is broken. Edit: It's not alphabetical, the ones it reports are in alphabetical order of one another but it isn't just every mod id alphabetically, trying to determine order. Edit 2: Was a few things, the Boots Expanded mod was triggering this, as well as a mod in my Zomboid\mods folder which started reporting after the boot mod was removed. The game persistently kept telling me random other mods were the problem until I added things bit by bit and narrowed it down to the boot mod. Whatever is preventing the game from telling you the real culprit is the bug I am reporting with this thread, if that is unclear.
  16. I had problems with tsarslib but continue to have issues after fixing that particular issue (retained file on server, it seems steam workshop does not delete files that no longer exist in a mod but PZ cares if it's on the server but not the client). Minimal Display Bars also looks like it stores its settings in lua files in the mod folder which would have course cause mismatches, I reported this to them and removed it. I've tested after dealing with those and it still throws an error pointing at that mechanics sounds mod that is alphabetically first yet present on both ends. I performed an exhaustive diff between client and server workshop folders and after dealing with anything including the aforementioned it still reports that that script is missing on the client, even though every file is present and the same size on both ends. Edit: Still working on this (1 hour after original post, been working on it nonstop for the past 3 days now), some folders display a different size even though contents are identical and each file within is the same size.. That's about the only thing I can find that differs and I'm not sure what it means.
  17. Yep works just fine, no error. Edit: I was starting to wonder if maybe it's just misreporting which mod is an issue, and someone else posted on the PZ Discord (https://discord.com/channels/136501320340209664/919609757168468028/1013190091130278040) about this being the case for them. I'll poke through my mods (which will.. take some time..) but I guess that's one avenue to look at for the problem in the Java - perhaps just misattribution of which file/mod is to blame. Would save many hours if it reports properly if so, hah! By the way, thank you tons for making the map_zone.bin size limit higher. Makes all the difference in the world for my server. <3 Edit 2: Happened to be tsarslib in this case - definitely it reports the wrong mods/files under at least some circumstances.
  18. I'm familiar with this behavior, it's been my assumption that it is intended, personally. It only happens when someone who isn't authorized is in a safehouse with the invisible walls disabled ("allow tresspass"). It's my understanding that this is the security method for the safehouses without preventing entry, and that it'd be better if certain actions were blacklisted instead like opening containers and grabbing and picking tiles up, etc.. I've considered making a mod for this myself with a configurable list of context options that would be disallowed or allowed for mod support. Edit: I believe if you allow "stealing" from safehouses then the context menu is enabled, by the way.
  19. Freshly installed set of mods on a server and a client, verified file exists on both ends. Client joins server, somehow fails to find the file and the server kicks the client because the file can't be found. It reports this for every installed mod in alphabetical order if you remove one it just goes to the next. It always seems to be a script file rather than a lua file, but I'm not sure if that's just due to the order of files loaded - it probably is, but I don't know for sure. I suspect this has to do with the total number of mods installed and hitting some kind of buffer limit somewhere. I took it upon myself to locate it to confirm since the output of the NetChecksum class is relatively minimal, and poked around in a decompile, but I'm not familiar enough with the codebase to locate it and decided it would be more efficient to just report it as-is. I run a lot of mods on my server (326 at present, many are tiny QOL things or fixes, it's not as crazy as it sounds), and we're planning to launch around the end of the month but DoLuaChecksum has had to be off during testing. I wanted to debug it and enable it before release, but it's looking like that isn't possible. I realize my number of mods is probably an extreme case, but less extreme cases seem to run into the issue as well and have to end up removing mods that have no actual issue to resolve, just the game failing to find a script that again, is present. Here's an example case of the log: [26-08-22 22:16:20.243] LOG : General , 1661566580243> 0> NetChecksum: send total checksum. [26-08-22 22:16:20.492] LOG : General , 1661566580492> 0> NetChecksum: total checksum lua=false script=false. [26-08-22 22:16:20.492] LOG : General , 1661566580492> 0> NetChecksum: send group checksums 0-9. [26-08-22 22:16:20.631] LOG : General , 1661566580631> 0> NetChecksum: group checksum 0 match=true. [26-08-22 22:16:20.631] LOG : General , 1661566580631> 0> NetChecksum: send group checksums 10-19. [26-08-22 22:16:20.702] ERROR: General , 1661566580702> 0> IsoMetaGrid$MetaGridLoaderThread.loadCell> duplicate RoomDef.metaID for room at 8705,17649,1. [26-08-22 22:16:20.705] ERROR: General , 1661566580705> 0> IsoMetaGrid$MetaGridLoaderThread.loadCell> duplicate RoomDef.metaID for room at 7723,17134,0. [26-08-22 22:16:20.706] ERROR: General , 1661566580706> 0> IsoMetaGrid$MetaGridLoaderThread.loadCell> duplicate RoomDef.metaID for room at 7719,17127,1. [26-08-22 22:16:20.708] LOG : General , 1661566580708> 0> NetChecksum: group checksum 10 match=true. [26-08-22 22:16:20.708] LOG : General , 1661566580708> 0> NetChecksum: send group checksums 20-29. [26-08-22 22:16:20.808] LOG : General , 1661566580808> 0> NetChecksum: group checksum 23 match=false. [26-08-22 22:16:20.808] LOG : General , 1661566580808> 0> NetChecksum: send file checksums 23. [26-08-22 22:16:20.947] LOG : General , 1661566580947> 0> 1661566580947> znet: Java_zombie_core_raknet_RakNetPeerInterface_disconnect. [26-08-22 22:16:20.947] LOG : General , 1661566580947> 0> RakNetPeerInterface.connectionStateChangedCallback state=Disconnecting message= thread=Thread[GameLoadingThread,5,Workers]. [26-08-22 22:16:20.947] WARN : General , 1661566580947> 0> ConnectionManager.log> Force disconnect [checksum-File doesn't exist on the client: media/scripts/AdminMoreTiles.txt Z:\home\evelyn\.local\share\Steam\steamapps\workshop\content\108600\2711526629\mods\Admin More Tiles\media\scripts\AdminMoreTiles.txt]. That's from the Windows build running on wine but it happens on a native Win11 client as well. In case the space in the path makes you wonder, the next mod that pops up after this one does not have spaces, so that isn't it. Here's the complimentary bit from the server (might not be the same kick I was restarting it and removing things to see what was going on): [27-08-22 01:32:57.853] LOG : General , 1661563977853> 4,497,263,393> User Ducky is trying to connect.. [27-08-22 01:32:57.854] DEBUG: Multiplayer , 1661563977854> 4,497,263,393> GameServer.receiveLogin > User Ducky ping 55 ms. [27-08-22 01:32:58.016] LOG : Network , 1661563978016> 4,497,263,556> Connected new client Ducky ID # 0 and assigned DL port 27176. [27-08-22 01:34:19.656] LOG : General , 1661564059656> 4,497,345,196> NetChecksum: PacketTotalChecksum lua=false script=false. [27-08-22 01:34:19.657] LOG : General , 1661564059657> 4,497,345,196> user Ducky will be kicked because Lua/script checksums do not match. [27-08-22 01:34:20.567] LOG : General , 1661564060567> 4,497,346,107> 1661564060567> znet: Connection closed: reason=1 port=1. [27-08-22 01:34:20.568] LOG : General , 1661564060568> 4,497,346,107> 1661564060568> znet: Disconnecting client #0 SteamID=76561198157362692. [27-08-22 01:34:20.968] LOG : General , 1661564060968> 4,497,346,507> 1661564060968> znet: OnValidateAuthTicketResponse response=6 SteamID=76561198157362692. [27-08-22 01:34:23.572] LOG : General , 1661564063572> 4,497,349,112> 1661564063572> znet: Finally disconnected client 76561198157362692. If I remove "Admin More Tiles" then "AFTAANSNS" becomes the problem, etc.. Again, I must stress that this happens to any/every random mod in the list, and that the file(s) in question are present and identical on both ends.
  20. Version: 41.71 Mode: MP/Dedicated Mods: Many mods, but it doesn't matter which as long as the total number of cells affected by the map mods hits a certain amount, so it's not technically "mod-specific". Old/New Save: Happens with old or new once you cross the line of how many cells. Reproduction: 1. Install lots of map mods, particularly ones that add many cells to make it easier to hit the limit like Slocan Lake, Fort Knox, and Eerie Country along with a bunch more. 2. Run the server (this part works fine). 3. Join with any client, you will be greeted with a blank screen that says "Quit to Desktop" at the bottom on a button (the error has no translation so appears blank). The actual error is that map_zone.bin can't be saved, and the log preceding it tells you it's because the heap has been overflowed. If you check the log on client *or* server it will give you more detail about the error, here's an example of a local dedicated server kicking me for it: ERROR: General , 1658611037615> 2,414,282,505> java.nio.BufferOverflowException ERROR: General , 1658611037615> 2,414,282,505> at java.base/java.nio.Buffer.nextPutIndex(Unknown Source) ERROR: General , 1658611037615> 2,414,282,505> at java.base/java.nio.HeapByteBuffer.putShort(Unknown Source) ERROR: General , 1658611037615> 2,414,282,505> at zombie.iso.IsoMetaGrid.saveZone(IsoMetaGrid.java:1852) ERROR: General , 1658611037615> 2,414,282,505> at zombie.network.GameServer.receiveRequestData(GameServer.java:5385) ERROR: General , 1658611037615> 2,414,282,505> at zombie.network.PacketTypes$PacketType.onServerPacket(PacketTypes.java:1012) ERROR: General , 1658611037615> 2,414,282,505> at zombie.network.GameServer.mainLoopDealWithNetData(GameServer.java:1541) ERROR: General , 1658611037615> 2,414,282,505> at zombie.network.GameServer.main(GameServer.java:816) WARN : General , 1658611037615> 2,414,282,505> GameServer.kick> The player UdderlyEvelyn was kicked. The reason was You have been kicked from this server because map_zone.bin could not be saved., null It would seem to me that if this heap could be increased, or if perhaps the process could be distributed among multiple calls instead of one go, it would fix the issue. I'm also curious if generating the initial files in SP and then transferring them to the dedicated server (not sure if this is a one-time generation or if it's generated every time one joins, etc. - still learning the save format) would allow this to be bypassed, since this does not occur in SP. As a quick way to fix it, perhaps the buffer can be initialized based on the cell count in the maps (I assume it has to do with the number of cells since removing larger maps seems to let you add multiple smaller maps, but this is a guess) rather than a fixed value (I assume it is a fixed value at present)? Since this is one such error, I'd also like to ask why some errors force you to quit to desktop when joining a server - they don't seem the right kind of fatal to need that and it makes troubleshooting/testing take way longer. If possible I'd request that this not occur with such errors on join, but I understand if there's technical reasons I am unaware of for it (I am a programmer myself, but I have not read PZ's code or anything as yet). Edit: Example list of map mods (and required tilesets) that is just shy of the limit, install one or two more and it will cause the issue: Mods=tkTiles_01;DylansTiles;Diederiks Tile Palooza;FantaStreetTiles_01;AdmMTiles;BigZombieMonkeys_tile_pack;SkizotsTiles;GreensTiles;EN_Flags;AquatsarYachtClub;KingsmouthKY;wildberries;RedRacer;hopewell_eng;Trelai_4x4_Steam;NWBlockade;Ashenwood;FortKnoxLinked;FortKnoxRoad;BedfordFalls;BillionaireSafehouse;Blackwood;CONRTF;Chernaville;DeadinHongKong;DeltaCreekMunitions;EdsAutoSalvage;EerieCountry;Elysium_Island;firecamp;Fort Benning;FORTREDSTONE;Fort Waterfront;FrankfortKY;Grapeseed;Greenleaf;InGameMaps;InGameMaps_FortKnoxLinked;InGameMaps_FortKnoxRoad;klin;Laconia;Laconia Expansion;lakeivytownship;Linden;LittleTownship;Militaryairport;MonmouthCounty;MRE;Muldraugh Fire Department;Riverside Fire Department;NewEkron;ParkingLot;EN_Newburbs;Otr;OtrSR;PitstopLegacy;RabbitHashKY;RavenCreek;Refordville;rbr;rbrA;Riverwood;BedfordRoad;pz_rosewoodexp_map;SanctuaryHills;SantuarioMapMod;SaveOurStation_Core;SaveOurStation_KnoxCountry;Seaside;SecretBaseRoadV2;RavenCreekEerieCompatibleSlocanLake;RavenCreekEerieCompatibleSlocanLakeIngameMap;StudioSouthShore;Suvival's Store;TrimbleCountyPowerStation;Tugaland;West Point Fire Department;WestPointTrailerParkAndVhsStore;WesternTown;WesternScrapCarYard;Xonics Mega Mall;ExclusionZone;Chinatown; Map=Chinatown;Northwest Blockade;Klin;Kingsmouth;NewDenver;Rosebery;Silverton;NewDenver_Connection_map;NewDenver_map;Rosebery_map;Silverton_map;li_township;RavenCreek;FortRedstone;CONRTF;Elysium_Island;MREX;militaryairport;BillionaireSafehouse;WestPointTrailerParkAndVhsStore;pz_rosewoodexp_map;NewEkron;Linden;Fort Benning;researchbase;rbr_road;RabbitHashKY;Fort Waterfront;Greenleaf;RedstoneRaceway;TrimbleCountyPowerStation;Over the River - Secondary Route;Otr;Laconia;Laconia Expansion;Trelai_4x4;Dead in Hong Kong;Suvival's Store;LittleTownship;Tugaland;Pitstop;Blackwood;Grapeseed;Bedford road;North;South;West;Near Fort Knox;To Bedford Falls;To Eerie Country;Fort Knox linked to Eerie Country_map;Eerie Country;Eerie A;Eerie B;Eerie C;Eerie D;Fort Knox linked to Eerie Country;From Bedford Falls to Fort Knox;BedfordFalls;From Bedford Falls to Fort Knox_map;Xonics Mega Mall;Xonics Mega Mall Exterior;Xonics Mega Mall Interior;Xonics Mega Mall Roof;MonmouthCounty;InGameMaps_Main;Muldraugh, KY WorkshopItems=2707344076;2392987599;2773732963;2799120190;2671890843;2169435993;2619072426;2646041510;2831252135;2001719506;2744114761;2634426926;2832136889;2503622437;2819655145;2817859141;2800337234;2820363371;2335368829;522891356;2768818690;2536865912;2766626985;2734683361;2730975264;2797636826;2789237738;2485420813;1254546530;2693585128;2595249356;1516836158;2779248414;2582178794;2463499011;2778799110;2756689895;2595785944;2803292383;2434339338;2790749470;2804574707;2821027450;2252982049;2709828723;2542249811;2778676843;2737546323;2804453891;2789097802;2712480036;2789257975;2671414643;926737806;2603239477;2597946327;2815966702;2196102849;2726058465;2807152393;2802298898;2735894249;2718350686;2775803004;2783077891;2398274461;2783179512;2183283602;2461163224;2753396660;2672968796;2802755864;2781180323;2787439893;2721653030;2819565407;2800054149;1713269594;2785623545;2384329562;2599752664;2337452747;2554699200;2711526629;2804428637;2774834715;2740919036;2734679675;2772575623;2478247379;2785549133;2799152995;2719592131;2818847163;2778576730;2618213077;2811383142;2805630347;2469388752;2566953935;2489148104;2516123638;2522173579;2441990998;2443275640;2422681177;2409333430;2642541073;2457212020;2498500781;2273010892;2675429658;2567438952;2282429356;2592358528;2743496289;2811232708;2681635926;2636100523;2792425535;2782258356;1510950729;2771297715;2781895054;2759339330;2732639855;1475243816;2791656602;2064137012;1773965512;2292487242;2734164805;2830343776;2834352171;2694079976;2730158335;2809595776;2808679062;2127583399;2760742937;2241990680;2594865484;2688676019;2711057211;2286124931;1924146603;1988306113;2513537093;2701170568;2798170078;2616986064;2402057349;2714198296;2553593324;2706119869;2434125078;2454293014;2685168362;2075777590;2732804047;1517585848;2657661246;2377867605;2687515849;2142622992;2815560151;1922750845;2704811006;2831590169;2366717227;2688151429;2769706949;1955995443;2809719515;2696083206;1651019937;2629074154;2759895539;2709199201;2780392280;1315313725;2787291513;2507488373;2050264961;2780637194;2801714948;2688737276;2709502667;2422848231;2629286881;2658619264;2766223413;2713921292;2831715402;2048411289;2643606499;2447729538;2463184726;2392709985;710542108;2529746725;2688538916;566115016;2680473910;2688809268;2732594572;2627877543;2464581798;2577243435;2602450182;2582648054;2812890317;2458631365;2710407461;2693227148;2737665235;2237300246;2659216714;2637692469;2714848168;2651349283;2686624983;2762648316;2725378876;2289429759;2713055926;2712632417;2687798127;2752895143;2478768005;2739375743;2734051025;2495778666;2392676812;2268557398;2724151227;2613146550;2802600810;2290690369;2400370190;2401339485;2790397567;2810378872;2790428261;2800412098;2789503316;2802456220;2789839628;2784607980;2699856770;2648152698;2645975408;2801575579;2715579154;2822408566;2372994639;2681257693;2754567348;2786499395;2125659488;2122265954;2667899942;2819367991;1703604612;2445720450;2188496940;2465017864;2487022075;2648779556;2707957711;2831786301;2635550102;2795036124;2497342974; You'll have to forgive me that the workshop items list has way more IDs than necessary for repro, I was able to easily trim the other two lists to just the relevant things but this one has not only other map mods I was adding/removing to try to troubleshoot but a lot of unrelated mod workshop IDs that I excluded from the Mod= list.
  21. I'm no expert on PZ internals, but what appears to be the two errors that caused the disconnects: ERROR: General , 1652993924460> 9,952,611,057> java.lang.NullPointerException: Cannot invoke "fmod.FMODSoundBuffer.pull(long)" because "zombie.core.raknet.VoiceManager.FMODReceiveBuffer" is null ERROR: General , 1652915822116> 9,874,508,713> ExceptionLogger.logException> Exception thrown java.lang.RuntimeException: attempted index: getAllowRandomTint of non-table: null at KahluaThread.tableget line:1689. [6:52 PM] The first error is from console/log_2.txt, the second is from console/log_5.txt in Logs.zip generated by the game. I'd love to post that but the 4MB limit is quite small, I can't even upload the relevant files, so hopefully you'll be OK with a Mediafire link: http://www.mediafire.com/file/94glnp9n7dl8ghk/logs.zip
  22. Creating methods for granular spawn controls for modder use, as well as for dedicated server and sandbox config tie-in, would be really useful for customizing how dense the zombie population is at certain places. Ex. the Crossroads Mall modded map is really packed with zombies when it spawns because they are placed manually on it (if I understand correctly), but once it's cleared out that's that. It's literally empty forever. It'd be nice if we could turn up the spawn rate in those cells to make it always likely to be jammed with zombies. For that matter, it would be nice if the spawn rate of loot or the rarity of loot could be configured in this way too. If that were the case, the mall could be made with a higher spawn rate out of the gate for zombies and for loot, so it would feel more worthwhile to fight through said zombies. Could do the same to other locations for a more custom sandbox or dedicated server experience. Maybe you want military bases crawling with zombies? Maybe you want to remove zombie spawns from an area or turn them down? Maybe you want to make it so that military base loot doesn't respawn as fast as residential? All this would be possible with per-cell spawn rate controls. While I'm on this note, it would also be nice if the rarity of each item (including modded) were configurable, with whitelist and blacklist of containers or zombie types it can spawn in for similar reasons.
×
×
  • Create New...