MantisBT - Zandronum
View Issue Details
0001090Zandronum[All Projects] Bugpublic2012-10-01 11:092018-09-30 22:04
NotIvan 
Torr Samaho 
highminorhave not tried
closedfixed 
3.0-beta 
3.03.0 
0001090: HoldAndDestroy state in inventories not working in Zandronum
This works properly in Zdoom and Gzdoom svn versions. The reason I request this is because I'm trying to port RoTT TC and it uses this method, mainly:

'http://pastebin.com/Qg20B0Ab [^]'

This works without problems there but somehow the object just disappears on pickup, meaning it doesn't even execute that state. I checked zandronum.pk3 and this state is adressed there so the problem must be in the source or something...

Eitherway, this is really essential in porting the TC.
No tags attached.
related to 0001099closed  Certain actors aren't synced properly between the client and server 
child of 0002172closed Torr Samaho Upgrade GZDoom base to 1.8.6 
? trampoline1.wad (1,354) 2012-10-01 11:47
/tracker/file_download.php?file_id=774&type=bug
png Screenshot_Doom_20121003_052459.png (45,223) 2012-10-03 04:43
/tracker/file_download.php?file_id=778&type=bug
png

? animated_door_01.wad (47,821) 2012-10-03 04:45
/tracker/file_download.php?file_id=779&type=bug
png screenshot.png (22,019) 2012-10-04 02:32
/tracker/file_download.php?file_id=780&type=bug
png

? animated_door_02.wad (50,204) 2012-10-04 13:09
/tracker/file_download.php?file_id=781&type=bug
Issue History
2012-10-01 11:09NotIvanNew Issue
2012-10-01 11:47unknownnaFile Added: trampoline1.wad
2012-10-01 11:48unknownnaNote Added: 0004893
2012-10-01 12:20NotIvanNote Added: 0004894
2012-10-01 13:37NotIvanNote Edited: 0004894bug_revision_view_page.php?bugnote_id=4894#r2658
2012-10-01 15:57NotIvanNote Edited: 0004894bug_revision_view_page.php?bugnote_id=4894#r2659
2012-10-02 08:52NotIvanNote Added: 0004909
2012-10-02 10:54NotIvanNote Edited: 0004909bug_revision_view_page.php?bugnote_id=4909#r2667
2012-10-02 19:49Torr SamahoNote Added: 0004919
2012-10-02 19:55Torr SamahoStatusnew => feedback
2012-10-02 20:05NotIvanNote Added: 0004920
2012-10-02 20:05NotIvanStatusfeedback => new
2012-10-02 20:05NotIvanNote Edited: 0004920bug_revision_view_page.php?bugnote_id=4920#r2675
2012-10-02 20:07NotIvanNote Edited: 0004920bug_revision_view_page.php?bugnote_id=4920#r2676
2012-10-02 22:19NotIvanNote Edited: 0004920bug_revision_view_page.php?bugnote_id=4920#r2677
2012-10-03 04:43unknownnaNote Added: 0004922
2012-10-03 04:43unknownnaFile Added: Screenshot_Doom_20121003_052459.png
2012-10-03 04:45unknownnaFile Added: animated_door_01.wad
2012-10-03 14:51NotIvanNote Added: 0004926
2012-10-03 15:26Torr SamahoNote Added: 0004927
2012-10-03 15:56NotIvanNote Added: 0004929
2012-10-03 16:04Torr SamahoAssigned To => Torr Samaho
2012-10-03 16:04Torr SamahoStatusnew => assigned
2012-10-03 16:41NotIvanNote Added: 0004930
2012-10-03 16:41NotIvanNote Edited: 0004930bug_revision_view_page.php?bugnote_id=4930#r2679
2012-10-03 16:53Torr SamahoNote Added: 0004932
2012-10-03 17:15NotIvanNote Added: 0004934
2012-10-03 17:18NotIvanNote Edited: 0004934bug_revision_view_page.php?bugnote_id=4934#r2683
2012-10-03 18:21Torr SamahoNote Added: 0004936
2012-10-03 18:30NotIvanNote Added: 0004937
2012-10-03 19:06Torr SamahoNote Added: 0004938
2012-10-03 19:19NotIvanNote Added: 0004939
2012-10-03 19:27NotIvanNote Edited: 0004939bug_revision_view_page.php?bugnote_id=4939#r2685
2012-10-03 20:30Torr SamahoNote Added: 0004940
2012-10-03 20:46Torr SamahoNote Edited: 0004940bug_revision_view_page.php?bugnote_id=4940#r2687
2012-10-03 21:55NotIvanNote Added: 0004941
2012-10-03 21:56NotIvanNote Edited: 0004941bug_revision_view_page.php?bugnote_id=4941#r2689
2012-10-04 02:32unknownnaNote Added: 0004942
2012-10-04 02:32unknownnaFile Added: screenshot.png
2012-10-04 07:17NotIvanNote Added: 0004945
2012-10-04 09:01NotIvanNote Edited: 0004945bug_revision_view_page.php?bugnote_id=4945#r2691
2012-10-04 09:01NotIvanNote Edited: 0004945bug_revision_view_page.php?bugnote_id=4945#r2692
2012-10-04 10:04NotIvanNote Edited: 0004945bug_revision_view_page.php?bugnote_id=4945#r2693
2012-10-04 12:23unknownnaNote Added: 0004946
2012-10-04 12:42NotIvanNote Added: 0004947
2012-10-04 13:09unknownnaFile Added: animated_door_02.wad
2012-10-04 13:10unknownnaNote Added: 0004948
2012-10-04 15:01NotIvanNote Added: 0004949
2012-10-04 16:53Edward-sanNote Added: 0004950
2012-10-04 16:57unknownnaNote Added: 0004951
2012-10-04 17:07unknownnaRelationship addedrelated to 0001099
2012-10-04 17:29NotIvanNote Added: 0004952
2012-10-04 18:07NotIvanNote Edited: 0004952bug_revision_view_page.php?bugnote_id=4952#r2695
2012-10-04 19:51Torr SamahoNote Added: 0004953
2012-10-04 20:15NotIvanNote Added: 0004955
2012-10-04 21:14Torr SamahoNote Added: 0004956
2012-10-11 13:14Edward-sanNote Added: 0005085
2012-10-11 13:17Edward-sanNote Edited: 0005085bug_revision_view_page.php?bugnote_id=5085#r2779
2012-10-14 08:18Torr SamahoNote Added: 0005096
2012-10-14 08:19Torr SamahoStatusassigned => acknowledged
2012-10-14 08:19Torr SamahoResolutionopen => backport later
2012-10-14 15:55unknownnaNote Added: 0005108
2012-10-14 16:47Edward-sanNote Added: 0005109
2012-10-14 16:58Torr SamahoNote Added: 0005110
2015-01-15 23:38Edward-sanNote Added: 0011394
2016-02-06 12:32Edward-sanNote Added: 0014357
2016-02-06 12:32Edward-sanStatusacknowledged => needs testing
2016-02-06 12:32Edward-sanResolutionbackport later => open
2016-02-06 12:32Edward-sanProduct Version => 3.0
2016-02-06 12:33Edward-sanProduct Version3.0 =>
2016-02-06 12:33Edward-sanTarget Version => 3.0
2016-02-06 12:45Edward-sanRelationship addedchild of 0002172
2016-04-10 17:03Ru5tK1ngNote Added: 0014691
2016-04-10 17:03Ru5tK1ngStatusneeds testing => resolved
2016-04-10 17:03Ru5tK1ngResolutionopen => fixed
2016-04-10 17:03Ru5tK1ngProduct Version => 3.0-beta
2016-04-10 17:03Ru5tK1ngFixed in Version => 3.0
2018-09-30 22:04Blzut3Statusresolved => closed

Notes
(0004893)
unknownna   
2012-10-01 11:48   
This is caused by sv_itemrespawn. It also works like this in ZDoom 2.6.1 so it's not a Zandronum bug.
(0004894)
NotIvan   
2012-10-01 12:20   
(edited on: 2012-10-01 15:57)
So is there no way to enable this behaviour? Like, forcing it to go to that state instead?

EDIT: This works as intended in the latest Zdoom svn r3875, which is the way I request it to work like in Zandronum.

(0004909)
NotIvan   
2012-10-02 08:52   
(edited on: 2012-10-02 10:54)
I can send you a beta version of my mod that this actually works the way I WANT in Zdoom 2.6.1 and doesn't work properly on Zandronum.

'https://dl.dropbox.com/s/19klsy7xlvbhbh1/RoTTZan.pk3?dl=1 [^]'

Here, download it and run it with Zdoom 2.6.1. I did that just now and once you get to the second area, you should see pink trampolines to the left. They just vanish after thrusting you in Zandronum but on Zdoom they work properly.

There are also two weird issues that aren't apparent on neither Zdoom or Gzdoom. Player movement is somehow restricted, what I mean by this is that I can't accelerate properly and I always get my speed "reduced" when I fall from stairs etc. and the jumping is also weird.

The animated doors do not have locks/open-close sounds whatsoever. (The definitions DO exist in the pk3) I ran Strife just to see if the doors in it worked and they do work. Remind you, these all work on other ports but not on Zandronum for some really odd reason.

(0004919)
Torr Samaho   
2012-10-02 19:49   
Quote from unknownna
This is caused by sv_itemrespawn. It also works like this in ZDoom 2.6.1 so it's not a Zandronum bug.

Quote from NotIvan
I can send you a beta version of my mod that this actually works the way I WANT in Zdoom 2.6.1 and doesn't work properly on Zandronum.

Either one of these statements is wrong or trampoline1.wad uses a different mechanism than your mod. In case trampoline1.wad works identical in Zdoom 2.6.1 and Zandronum, please boil down your mod to a minimal example wad that works in ZDoom but doesn't work in Zandronum.
(0004920)
NotIvan   
2012-10-02 20:05   
(edited on: 2012-10-02 22:19)
Ok update. This doesn't work ONLINE. It works fine offline, but I need it to work both ways :/

Same as my Strife animated door issue. That also doesn't work for me online. (I mean, they don't play their open/close sounds defined in ANIMDEFS ONLINE, but they do this offline)

(0004922)
unknownna   
2012-10-03 04:43   
Quote from NotIvan
There are also two weird issues that aren't apparent on neither Zdoom or Gzdoom. Player movement is somehow restricted, what I mean by this is that I can't accelerate properly and I always get my speed "reduced" when I fall from stairs etc. and the jumping is also weird.

I think that this is caused by Skulltag's custom air movement. Set compat_limited_airmovement to 1 to disable Skulltag's custom air movement.

Quote from NotIvan
I did that just now and once you get to the second area, you should see pink trampolines to the left. They just vanish after thrusting you in Zandronum but on Zdoom they work properly.

Are you talking about the trampolines in the attached screenshot that I uploaded? They only vanish for me in Zandronum/ZDoom if sv_itemrespawn is set to 1. Do the trampolines vanish for you in ZDoom 2.6.1 if sv_itemrespawn is set to 1?

Quote from NotIvan
Same as my Strife animated door issue. That also doesn't work for me online. (I mean, they don't play their open/close sounds defined in ANIMDEFS ONLINE, but they do this offline)

The missing door sound issue is a Zandronum bug. I'll create an example WAD.
(0004926)
NotIvan   
2012-10-03 14:51   
Limited air movement solves it, thanks.

Trampolines disappear if sv_itemrespawn is 1 in Zdoom 2.6.1, yes. Hmm... So I guess this needs to be disabled.
(0004927)
Torr Samaho   
2012-10-03 15:26   
So, Zandronum and ZDoom 2.6.1 behave the same, if used with the right flags?
(0004929)
NotIvan   
2012-10-03 15:56   
Apparently they do, however as unknowna attached, there's a new problem now. The strife animated doors do not play their sounds ONLINE.
(0004930)
NotIvan   
2012-10-03 16:41   
I have one more question. Don't we have locked animated doors? The locks on my animated doors do not work offline/online in Zandronum but they work fine in Zdoom 2.6.1.

(0004932)
Torr Samaho   
2012-10-03 16:53   
If the lock doesn't work in GZDoom 323, then ZDoom added support for this later.
(0004934)
NotIvan   
2012-10-03 17:15   
(edited on: 2012-10-03 17:18)
The lock doesn't work there as well. Would be nice if we had them, since the mod has all locked doors in animated door type...

In addition, I tried disabling item respawn in my server created from IDE, the trampolines still don't work on Zandronum. What am I doing wrong?

(0004936)
Torr Samaho   
2012-10-03 18:21   
This should fix the door sounds online.

Quote from NotIvan
The lock doesn't work there as well. Would be nice if we had them, since the mod has all locked doors in animated door type...
Do you know when ZDoom changed this?

Quote from NotIvan
In addition, I tried disabling item respawn in my server created from IDE, the trampolines still don't work on Zandronum. What am I doing wrong?
unknownna, can you comment on this? I didn't have a look at the wad myself so far.
(0004937)
NotIvan   
2012-10-03 18:30   
Could that be this for locks?'http://zdoom.org/Changelog/2167/files [^]'
(0004938)
Torr Samaho   
2012-10-03 19:06   
Yes, looks like it. 2167 is not that far off. so it's realistic to aim for its inclusion in the next major release of Zandronum. It can't be backported directly though since it relies on some changes that are not in ZDoom 1551.
(0004939)
NotIvan   
2012-10-03 19:19   
(edited on: 2012-10-03 19:27)
Oh god damnit. How long would it take?

Also, help on the item respawn thing is greatly appreciated. I made sure I disabled it and dmflags also reflect this change however they still do not work.

EDIT: The new build works, door sounds play properly.

(0004940)
Torr Samaho   
2012-10-03 20:30   
(edited on: 2012-10-03 20:46)
Quote from NotIvan
Oh god damnit. How long would it take?
The plan is to finish and release 1.1 mainly as bug fix release in a few weeks and then to start the work on the next major version. If there is enough demand for this feature, I may consider backporting it to 1.1 though.
Quote from NotIvan
Also, help on the item respawn thing is greatly appreciated. I made sure I disabled it and dmflags also reflect this change however they still do not work.
I just tested trampoline1.wad on a server started with
zandronum.exe -file trampoline1.wad -host
and it seemed to work just fine. BTW: It may not be sufficient to disable item respawn after loading the map.

(0004941)
NotIvan   
2012-10-03 21:55   
(edited on: 2012-10-03 21:56)
Alright I managed to get the trampolines to work, turns out I was missing the respawntics 1 in my own code, probably erased by accident.

Anyway, there's one little problem with it however. Once I go over it, it plays the respawn item sound and the animation. When I summon it myself, it doesn't do this and behaves correctly. How do I disable the respawn animation/sound on this one particular object?

About the door request, how big of a thing is it to backport? I can probably release this mod in 1.5 months if everything goes well, and it's a big step towards showing what Zandronum can do IMO. (I do realize you _may_ consider it if there's a big demand, however, that thing really makes the mod... such as this one trampoline thing)

(0004942)
unknownna   
2012-10-04 02:32   
Quote from Torr Samaho
This should fix the door sounds online.

That took care of it.

Quote from Torr Samaho
Quote from NotIvan
In addition, I tried disabling item respawn in my server created from IDE, the trampolines still don't work on Zandronum. What am I doing wrong?

unknownna, can you comment on this? I didn't have a look at the wad myself so far.

NotIvan must be doing something wrong. I also use IDE and it works fine for me there. NotIvan, have a look at the attached screenshot.

Quote from NotIvan
Alright I managed to get the trampolines to work, turns out I was missing the respawntics 1 in my own code, probably erased by accident.

Your code didn't have Inventory.RespawnTics at all. I added it there for testing purposes.

Quote from NotIvan
Anyway, there's one little problem with it however. Once I go over it, it plays the respawn item sound and the animation.

sv_itemrespawn is set to 1 if the item respawns and spawns the ItemFog actor after picking it up.

Quote from NotIvan
When I summon it myself, it doesn't do this and behaves correctly.

You're right, but it also works like this in ZDoom 2.6.1 so it's not a Zandronum bug.

And I noticed that if you set sv_itemrespawn to 1 after bumping into the trampoline at least once, the trampoline will not disappear. It also works like this in ZDoom 2.6.1 so it's not a Zandronum bug.
(0004945)
NotIvan   
2012-10-04 07:17   
(edited on: 2012-10-04 10:04)
Oh that explains it, but when I remove respawntics it stops working altogether and only works if I summon it. What difference does an item have if I summon it compared to one put using a map editor?

Also, item respawn is 0 in these tests I made. I still don't get why that thing just disappears for me if it's not summoned by me. It's almost as if it never goes to the HoldAndDestroy state if it's not summoned by me or something like that.

EDIT: Just to make one thing clear, you aren't summoning the actor to test this right? When I run RottZan.pk3 with item respawn disabled, when I go to trampoline area it doesn't work for me.

(0004946)
unknownna   
2012-10-04 12:23   
Quote from NotIvan
Also, item respawn is 0 in these tests I made.

I see. Could you tell us your dmflags, dmflags2, dmflags3, compatflags and compatflags2 values? If you for instance type "dmflags" into the server console it'll print the value. If sv_itemrespawn isn't causing this behavior on your end, we must figure out which potential flag is triggering the behavior.

Quote from NotIvan
Just to make one thing clear, you aren't summoning the actor to test this right?

I'm fully aware of the differences between summoned trampolines and map-spawned trampolines.
(0004947)
NotIvan   
2012-10-04 12:42   
Alright, I've done the checks and they are all 0.

I only wanted to make sure that we weren't doing the same mistake, as I thought it was working in first place by summoning it.
(0004948)
unknownna   
2012-10-04 13:10   
Quote from NotIvan
Alright, I've done the checks and they are all 0.

Hmm, did you test this in a game mode with map resets in it, e.g., survival? In that case, the trampolines seem to disappear when sv_itemrespawn is set to 0.

Quote from Torr Samaho
This should fix the door sounds online.

Like I said earlier, it took care of the door issue, but I noticed that the SoundSequence ACS command doesn't work online. And the Log ACS command only prints the string in the server console. It seems that the Log command has to be called from a CLIENTSIDE script. I created a new example WAD.
(0004949)
NotIvan   
2012-10-04 15:01   
Oh yes, I was using Survival with this. How can I work around this? I intend this project to be compatible with survival too.
(0004950)
Edward-san   
2012-10-04 16:53   
... maybe a MapReset problem?
(0004951)
unknownna   
2012-10-04 16:57   
Quote from NotIvan
Oh yes, I was using Survival with this. How can I work around this? I intend this project to be compatible with survival too.

That's a Zandronum bug/issue. So you were right after all.

I found another issue: The upspikes actors seem to desync online. They don't have any random patterns online. I think I'll create a separate ticket for this to prevent this one from becoming bloated with multiple issues.
(0004952)
NotIvan   
2012-10-04 17:29   
(edited on: 2012-10-04 18:07)
Alright, a name change for this ticket seems appropriate now as I didn't know the cause when I posted this, or a possible relation.

Also, I noticed that too! I thought that randomize flag was there to randomize the times they came out but it turns out they really get broken as you get hurt when the spikes aren't even there! Also notable with the fire jets. I removed the randomize flag as a temporary solution.

(0004953)
Torr Samaho   
2012-10-04 19:51   
FYI, the technical mechanisms that allow items to respawn with "sv_itemrespawn 1" and after a map reset in survival are related. So it's not surprising that Zandronum in survival behaves like ZDoom 2.6.1 with "sv_itemrespawn 1" in this regard. You should definitely ask at the ZDoom forums if the behavior with "sv_itemrespawn 1" is intended. I would be surprised if it actually is intended that map-spawned and non-map-spawned actors behave completely differently.

Independently, you should be able to work around this problem by letting something else than the map spawn them. You can either try creating a dummy actor that just spawns the trampoline with A_SpawnItemEx and vanishes afterward or by spawning them with ACS.
(0004955)
NotIvan   
2012-10-04 20:15   
Your suggestion is very much appreciated, it works this way! However, I can't quite get what you mean there, as in, what exactly should I be asking?
(0004956)
Torr Samaho   
2012-10-04 21:14   
Quote from NotIvan
However, I can't quite get what you mean there, as in, what exactly should I be asking?
Please show trampoline1.wad, explain that it works fine with "sv_itemrespawn 0", but breaks with "sv_itemrespawn 1" and ask if this is a ZDoom bug or intended. If it's intended it would also be nice to know what the intention of such a behavior is.
(0005085)
Edward-san   
2012-10-11 13:14   
(edited on: 2012-10-11 13:17)
randi's reply:
Quote from "randi"
The HoldAndDestroy state is entered when an item is picked up that ① does not stick around in the inventory and ② does not respawn. If the item respawns or stays in the inventory to be used later, then it does not use this state.

I feel kind of bad doing this, since you're abusing an inventory item, but I can give you the NEVERRESPAWN inventory flag.

In the future, the proper way to create an object that does something when you bump into it has been demonstrated by Kate.


NEVERRESPAWN implementation, fix for Kate's example.

(0005096)
Torr Samaho   
2012-10-14 08:18   
Ok, I mark this as "backport later" since we have a working workaround for the issue.
(0005108)
unknownna   
2012-10-14 15:55   
Alright, I split the SoundSequence issue into its own ticket.
(0005109)
Edward-san   
2012-10-14 16:47   
Torr, which workaround? kate's example doesn't work without the fix done by randy in that thread.
(0005110)
Torr Samaho   
2012-10-14 16:58   
"dummy actor with A_SpawnItemEx" or "spawning by ACS"
(0011394)
Edward-san   
2015-01-15 23:38   
> The lock doesn't work there as well. Would be nice if we had them, since the mod has all locked doors in animated door type...

Zandronum 2.0 should have backported this.

About the other issues, it's not clear which one should be still taken a look at.
(0014357)
Edward-san   
2016-02-06 12:32   
Latest zandronum 3.0 beta should contain the mentioned fixes. Please check if it works.
(0014691)
Ru5tK1ng   
2016-04-10 17:03   
Tested all this out with r160403-1900.

Adding the NEVERRESPAWN flag to the trampoline solves the issue with sv_itemrespawn1.

Doors play all sounds online with out fail.