MantisBT - Doomseeker
View Issue Details
0002477Doomseeker[All Projects] Suggestionpublic2015-10-04 21:082018-10-27 22:55
WaTaKiD 
Zalewa 
normalminorN/A
closedfixed 
MicrosoftWindowsXP/Vista/7
1.0 
1.21.2 
0002477: Update Zandronum dmflags for Zandronum 3.0
'https://bitbucket.org/Torr_Samaho/zandronum/commits/7c829fcd214366e143b29bb938e6b04bf140dfd5 [^]'

"Launchers and config files need to be updated to account for this change"
No tags attached.
Issue History
2015-10-04 21:08WaTaKiDNew Issue
2015-10-04 21:19Blzut3Summarydmflags values compatibility problems => Update Zandronum dmflags for Zandronum 3.0
2015-10-05 16:48ZalewaNote Added: 0013608
2015-10-05 16:49ZalewaNote Edited: 0013608bug_revision_view_page.php?bugnote_id=13608#r8105
2016-10-24 19:30ZalewaCategoryBug => Suggestion
2016-10-24 19:30ZalewaAssigned To => Zalewa
2016-10-24 19:30ZalewaStatusnew => assigned
2016-10-29 16:12ZalewaNote Added: 0016115
2016-10-29 16:13ZalewaNote Edited: 0016115bug_revision_view_page.php?bugnote_id=16115#r9828
2016-10-30 18:22ZalewaNote Added: 0016124
2016-10-31 14:42ZalewaNote Added: 0016132
2016-11-01 15:18ZalewaNote Added: 0016134
2016-11-01 15:18ZalewaStatusassigned => needs review
2016-11-01 15:19ZalewaNote Edited: 0016134bug_revision_view_page.php?bugnote_id=16134#r9836
2016-11-02 20:08ZalewaNote Added: 0016143
2016-11-02 20:08ZalewaStatusneeds review => needs testing
2016-11-02 20:11ZalewaNote Edited: 0016143bug_revision_view_page.php?bugnote_id=16143#r9842
2017-07-03 17:39ZalewaNote Added: 0017977
2017-07-03 17:39ZalewaStatusneeds testing => assigned
2017-09-02 08:08ZalewaNote Added: 0018223
2017-09-24 16:49ZalewaNote Added: 0018367
2017-09-24 16:49ZalewaStatusassigned => needs review
2017-09-24 18:19WubTheCaptainNote Added: 0018374
2017-09-27 18:17ZalewaNote Added: 0018395
2017-09-27 18:17ZalewaStatusneeds review => resolved
2017-09-27 18:17ZalewaFixed in Version => 1.2
2017-09-27 18:17ZalewaResolutionopen => fixed
2018-09-27 03:15WubTheCaptainTarget Version => 1.2
2018-10-27 22:55WubTheCaptainStatusresolved => closed

Notes
(0013608)
Zalewa   
2015-10-05 16:48   
(edited on: 2015-10-05 16:49)
This needs to be done, yes, but I won't release a plugin with these flags until the 3.0 version gets officially released. If I do, it will break the launcher for all the people who just want to play the game at 2.1. Still, thanks for bringing this to my attention.

(0016115)
Zalewa   
2016-10-29 16:12   
(edited on: 2016-10-29 16:13)
As Zandronum 3 is pretty much playable now but still not officially released, I will add an option in the "create game" box to switch between flags for version 2 and for version 3.

Current dmflags system in Doomseeker is still somewhat broken however and it eludes me right now how to do this in a way that won't involve either fierce amount of copypasta code or many confusing 'if/elseifs'.

The major pain here is that `dmflags` cvar values for yes-crouch and yes-jump have changed and this shifts values for about 10 other flags in this section. This is breaking the current way Doomseeker is programmed - in current state switch between Zandronum versions will force reset of all checkboxes that affect the `dmflags` cvar. Just look at the current code for this.

(0016124)
Zalewa   
2016-10-30 18:22   
Preparatory commits:

1.'https://bitbucket.org/Doomseeker/doomseeker/commits/50a3bb29d673c889647a14dfbc4f40302b95fd3d [^]'
2.'https://bitbucket.org/Doomseeker/doomseeker/commits/fd95ed2a95a2524df6a7b3779673c2a712ad6a68 [^]'
(0016132)
Zalewa   
2016-10-31 14:42   
Looney preparatory commit that allows to disconnect Zandronum's flags setup in Doomseeker from the `dmflags` numerical values:

3.'https://bitbucket.org/Doomseeker/doomseeker/commits/5b356dfe8ecef7de0ebb70b4a4e5a2739abb104a [^]'
(0016134)
Zalewa   
2016-11-01 15:18   
(edited on: 2016-11-01 15:19)
Something really awful:

4.'https://bitbucket.org/Doomseeker/doomseeker/commits/9968ac66d50569691b48770b7537338e90d9407f [^]'
5.'https://bitbucket.org/Doomseeker/doomseeker/commits/698bdc22711907a85d5c58a0fba868f7f19c312c [^]'
6.'https://bitbucket.org/Doomseeker/doomseeker/commits/4fa160770f87028e195ff49de2583c69a1eaccee [^]'
7.'https://bitbucket.org/Doomseeker/doomseeker/commits/8d7021259b29b307dd0e2e137f0572c00049fc16 [^]'
8.'https://bitbucket.org/Doomseeker/doomseeker/commits/edd22282815ee83705b8944d27e50b0897ace4dc [^]'

I couldn't figure out how to do this in a way that would allow to avoid copypasting the entire dmflags listing and then copypasting all of the bindings that bind checkboxes to dmflags numerical values. I mean, there are methods to do this but these would involve lots of 'ifs' that could create some nasty bugs. I have assumed that dmflags listing for Zandronum 2 will not change anymore and the code that handles this version will pretty much be frozen.


So, the feature is ready. Create game box will allow the user to switch flag sets between Zandronum 2 and Zandronum 3. I will put up a beta sometime soon.

(0016143)
Zalewa   
2016-11-02 20:08   
(edited on: 2016-11-02 20:11)
Newest version available on the beta update channel will now allow to alternate between flag set for Zandronum 2 and Zandronum 3. See "Flags" tab in "Create Game" dialog box.

Also, settings will now be stored internally per-checkbox. All checkboxes now have their own unique ID and each checkbox is a separate entry in the server configuration file. Doomseeker will no longer rely on Zandronum's dmflags uint32s, although it will still generate them for ease of copy & paste and for usage in the game command line to start the game.

(0017977)
Zalewa   
2017-07-03 17:39   
Additional settings have been added in the meanwhile so I'm changing the status back to "assigned".
(0018223)
Zalewa   
2017-09-02 08:08   
"Dead players can keep inventory" dmflag added here:'https://bitbucket.org/Doomseeker/doomseeker/commits/a97a2bca6431a3ac14ce022bef44371de55643bf [^]'
(0018367)
Zalewa   
2017-09-24 16:49   
This commit switches the default game version to Zandronum 3, thus finalizing this task:'https://bitbucket.org/Doomseeker/doomseeker/commits/bc380eca6113f06feda39a8cd7fe712a0c211b18 [^]'
(0018374)
WubTheCaptain   
2017-09-24 18:19   
I can't comment on the patches or their code quality as a whole work, but I did a little bit of testing for the last two commits.

The Create Game menu selections seem to retain their Zandronum versions between 1.1 and latest Mercurial build as it should.

"Players who lose all lives can keep inventory" is visible for Zan 3.0 config and invisible for Zan 2.x, as it should be.
(0018395)
Zalewa   
2017-09-27 18:17   
I'm closing this as done, though we probably should release another plugin update soon. Then again, given recent surge of changes, Doomseeker 1.2 might not be that far away.