Notes |
|
(0010165)
|
Dusk
|
2014-08-10 16:35
|
|
It's a desync, the client is left in the dark about the ammo capacity after the map change. |
|
|
(0010168)
|
Dusk
|
2014-08-10 17:32
|
|
I'm baffled as to why this happens. I cannot find the reason the client resets the variable.. I cannot use 'watch' in gdb without an instance of the variable and I also cannot use 'break' because MaxAmount is a public member and not a function like it should be.
How do I go about figuring out why this happens? ZDoom is a horrible tangled mess and I am most definitely not going to try find the solution by examining all of the code... |
|
|
(0011247)
|
Torr Samaho
|
2015-01-03 19:29
(edited on: 2015-01-03 19:32) |
|
Quote from Dusk How do I go about figuring out why this happens?
I'd start with a full text search (Match case + whole words only) for MaxAmount to identify the places where the value is potentially changed. If you are lucky, you can get away using "MaxAmount = " as string. Otherwise use some RegEx to allow arbitrary types and amount of white space before and after the equality sign.
Quote from Dusk ZDoom is a horrible tangled mess and I am most definitely not going to try find the solution by examining all of the code...
If you are not willing to venture through large parts of the code, you most likely won't be able to fix this bug or many others. I can't even count how often I had to do something like this over the years. 0001588 is just a very recent example.
|
|
|
(0013189)
|
Ivan
|
2015-08-10 12:01
|
|
What are the chances of this being fixed? I've tried many hacks and workarounds but none of them seem to be working at all. I've even tried to force the ammo capacity changes through clientside scripts, but something is just overriding it. |
|
|
(0013203)
|
Edward-san
|
2015-08-10 16:19
(edited on: 2015-08-10 16:20) |
|
I believe the issue is partially caused by SERVER_ResetInventory , as the players are asked to destroy their inventory, then they receive it without the updated MaxAmount.
I say partially, because I tried to fix it by changing SERVERCOMMANDS_GiveInventory and SERVERCOMMANDS_GiveInventoryNotOverwritingAmount by taking MaxAmount into account, but it partially fixed the issue. Some ammo capabilities are still reset, no idea why.
|
|
|
|
Should be fixed now in 2.2. Please test. |
|
|
(0013846)
|
cobalt
|
2015-11-18 19:27
|
|
|
|
|
|