[CS# BUG?] Server crash after team change
Kroytz opened this issue · 4 comments
Seems CS#'s StrVOPrefix schema field is incorrent, tested with almost 3hrs modification, always crash after player's second spawn. but if I comment player.PlayerPawn.Value!.StrVOPrefix
it stopped crash. so to make the plugin stable should we disable vo related functions until it got fix?
Env:
CS# API Version: v213 (1.0.213+dfc9859)
Windows Server 2022 Datacenter 21H2
List of all plugins currently loaded by CounterStrikeSharp: 8 plugins loaded.
[#1:LOADED]: "[CashPay]" (0.0.2) by 7ychu5
Pay your game cash to the other player
[#2:LOADED]: "Connect Info" (v1.0.5) by gleb_khlebov
Information about the player's location when connecting to chat and console
[#3:LOADING]: "Admin" (0.0.6) by schwarper
[#4:LOADED]: "CS2-Tags" (1.0.4c) by daffyy
Add player tags easily in cs2 game
[#5:LOADED]: "InventorySimulator" (1.0.0-beta.20) by Ian Lucas
Inventory Simulator (inventory.cstrike.app)
[#6:LOADED]: "MatchZy" (0.7.0) by WD- (https://github.com/shobhit-pathak/)
A plugin for running and managing CS2 practice/pugs/scrims/matches!
[#7:LOADED]: "Minigames" (1.0.0) by Kroytz
Minigames misc plugin
[#8:LOADED]: "[Custom] No Block" (V. 1.0.1 [Beta]) by Manifest @Road To Glory & WD-
Allows for players to walk through each other without being stopped due to colliding.
Also tested with single InventorySimulator load into my server. Crash still happen.
May be a Windows specific issue. So basically just switching teams crashes it? Can you provide the agents you're using? I'll give it a try when I have time later today.
Thanks.
Also any logs or stdout will be helpful. Now I'm going to sleep.
May be a Windows specific issue. So basically just switching teams crashes it? Can you provide the agents you're using? I'll give it a try when I have time later today.
Thanks.
Sorry for continous issue flooding and thank you for the works <3
This happens to any agent that modified VO by InventorySimulator.
Join server -> To TR/CT -> M -> Switch to opposite team -> Crash
Log in pastebin: https://pastebin.com/wKC7dLf5
Inside log there's only one type of crash, another type of crash tells me sth like Memory in protection
, but no logs saved to cs# log dir. And I can't reproduce this Memory...
like crash again in 5 times test.
I replicated the issue, and yeah it seems the issue is with the "StrVOPrefix" property. I'm really not sure what it could be, its schema type is CUtlString, maybe it have issues on Windows (wild guess with nothing backing it).
For now I have added the condition for checking if it's Windows so that it won't set that. It appears to work ok on Linux, so I'll keep it there. BTW this isn't the ideal solution, the ideal solution requires hooking a function as we did in CSGO in modelch, but since DynamicHooks are broken in both Linux and Windows we have to resort to workarounds.
I published the latest version, let me know if you find any other issue. Thank you!