Anonymous | Login | Signup for a new account | 2024-04-23 11:57 UTC |
My View | View Issues | Change Log | Roadmap | Doomseeker Issue Support Ranking | Rules | My Account |
View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||
0003599 | Doomseeker | UI | public | 2019-01-27 05:25 | 2019-07-30 10:13 | ||||
Reporter | BLOODWOLF | ||||||||
Assigned To | Pol M | ||||||||
Priority | normal | Severity | minor | Reproducibility | always | ||||
Status | closed | Resolution | fixed | ||||||
Platform | OS | Windows | OS Version | 8.1 | |||||
Product Version | 1.2 | ||||||||
Target Version | 1.3 | Fixed in Version | 1.3 | ||||||
Summary | 0003599: Allow Adding Maps En Masse To Playlist | ||||||||
Description | Currently we cannot shift or ctrl+click multiple maps to add at once to the playlist. And Create Game>Rules Tab>Map List always warns about "Current map isn't on map list. Game may misbehave." when attempting to add maps using that method (Doom 1, typing "E1M1" into text box then clicking [add]). General Tab>Map: [is empty] I only bring this up because if a user creates a server and defines the starting mission in General Tab>Map: E3M1 for example, once the players defeat that episode's final boss the server starts back over at E3M1 (if it doesnt kick all the players instead which commonly occurs) instead of moving onto E4M1 which I think the community would intuitively assume should have happened. | ||||||||
Attached Files | |||||||||
Relationships | |||||||||||
|
Notes | |
(0020321) Zalewa (developer) 2019-01-27 11:29 |
Your point has merit but I'm not sure what's the solution you're seeking. What do you mean by adding multiple maps to the map list by "shift" or "ctrl+click"? The maps to the map list are typed in. Do you want Doomseeker to define some batch presets that can be included on the map list with a single click? Consider that WADs are free to define their own map names - so E#M# and MAP## are not the only formats that will be encountered. Or do you want the map list box to accept a drag'n'drop from a text file with a predefined map list? Or do you want Doomseeker to parse the loaded WADs and list all the map names for you? (this will be a lot of work, mind you) |
(0020324) BLOODWOLF (reporter) 2019-01-27 17:12 edited on: 2019-01-28 01:56 |
Personally I would like it if we could shift+click add maps (with add button or drag 'n drop is fine too) in the Maps > Playlist... dialog when a server has already been created. That new window populates all the maps included in your current .wad and what I intuitively attempted to do at first. Or allow the server to continue on to the next episode after E3M8 for example instead of looping back to E3M1 after the boss which is the reason why I began looking into how to populate a map playlist. And even if you start your server on E3M4 for example it will loop back to E3M1 (or kick everyone from the server) after defeating the Spiderdemon. So, this behavior from Doomseeker is the actual cause/issue that lead to the request to add many maps at once to the playlist. If it automatically jumped to the next episode or did not kick all players from the server after the boss in Doom I then that would resolve the issue as well. |
(0020325) Zalewa (developer) 2019-01-28 19:24 edited on: 2019-01-28 19:24 |
So, to fulfill your needs, Doomseeker would have to parse the WADs (and PK3s) selected for the game and list all the available maps. You would then be able to select & drag all of them to the map list in one go. This is not unfeasible, but it will be quite an undertaking. Doomseeker currently has no code whatsoever for parsing WADs. Maybe we could borrow some from Zandronum? |
(0020326) Pol M (developer) 2019-01-28 20:53 |
Quote from Zalewa I was thinking of suggesting this, but I was gonna wait to see if it looked like it was possible. I'd say that this would be a good idea and would save us the hassle. |
(0020327) BLOODWOLF (reporter) 2019-01-28 21:52 |
Yes, if that is the Zandronum code that is listing all the maps once you already have a server running and then allow mass adding/removing that would be much more user-friendly. |
(0020328) Pol M (developer) 2019-01-28 22:19 edited on: 2019-01-28 22:20 |
Huh, so you're asking for a way to change the parameters of the zandronum server once it has already been initialized, right? (I'd say that this, unfortunately, will probably be impossible, all the data is set when the server starts). That said, making the process of adding wads *before* the server starts easier can be feasible. That said, maybe there is some RCon magic that can be pulled out, I'd need to read more the wiki :) If I'm wrong, I'll be very happy :P |
(0020329) Zalewa (developer) 2019-01-28 23:10 |
Let's not over-do this. Limiting the functionality to a pre-game setup is enough. Server admins that need more flexibility in configuring their servers always have the whole .ini file at their disposal and the "exec" CCMD. |
(0020330) Pol M (developer) 2019-01-29 23:41 edited on: 2019-02-02 16:57 |
Okay then. I'll take a look at the possibilities we have. As said, maybe it will be necessary to take code from zandronum. I don't know a lot about licences and anything non-code related that could apply in this situation, so I'll leave that to the reviewer of a potential pr :) EDIT: The code I want (w_wads.*) has a massive amount of dependencies that either would need to be imported (bad idea, I reached 200 files and decided to stop, plus it needs things like lzma) or that should be replaced (bad for me, because some classes are quite intricate). I've been reading about the wad structure and pk3 (it is just a zip), EDIT2: I take it back, I rather deal with the dependency hell EDIT3: Man, this is going to take forever. I've found this (really old) library that is cross-platform, LGPL licenced, documented, and that while it claims to be not yet finished, in the TODO file it only says that there are just a few missing features and needs more testing. I'll dust it off and give it a go (fingers crossed)(https://sourceforge.net/projects/libdoomwad/) |
(0020331) Zalewa (developer) 2019-02-03 08:34 |
The game will have tons of code for WAD parsing because the game needs to parse everything, while all that we need to do is find the map lumps (however that's done) and return their names. If you find this library any good, its code can be incorporated directly into Doomseeker's code. Its license is already compatible and it will save us from adding an extra dependency. |
(0020332) Pol M (developer) 2019-02-03 14:36 edited on: 2019-02-03 14:43 |
Quote from Zalewa I know, but it is so tangled up that it ends up needing pretty much all the engine. I have decided to not continue because of how time-consuming it would be to get what I need. Quote from Zalewa Done! I'll proceed with a pr with an example. Please note that it only handles wad files and not pk3. This example covers most cases while only checking the bare minimum of the requirements for a map. Here is a list of the "requirements" for a map (just for clarity, the necessary lumps are: THINGS, LINEDEFS, SIDEDEFS, VERTEXES, SEGS, SSECTORS, NODES, SECTORS, REJECT, BLOCKMAP) |
(0020333) Blzut3 (administrator) 2019-02-03 20:38 |
For pk3 files we already have zip reading code in Wadseeker which we make public since it's useful for extracting development builds. Pk3s could be complicated since some mod authors like to abuse the recursive file loading that ZDoom/Zandronum does. My recommendation would be to only support listing the maps in the maps/ directory in order to give more incentive for authors to do the right thing, but maybe that's just me. I don't particularly care if you want to use that library, but just want to mention that with QDataStream you should be able to read the WAD's directory with maybe 20 lines of code. It's a pretty trivial container format. |
(0020334) Pol M (developer) 2019-02-03 23:00 edited on: 2019-02-04 00:24 |
Quote from Blut3 Oh. that is indeed easy. ... ... Well, I'll proceed to make a small class that reads the header and the directory. XD EDIT: DONE :) |
(0020335) Pol M (developer) 2019-02-05 15:36 |
I'm pretty much done (pr) |
(0020414) Pol M (developer) 2019-02-18 20:12 |
Applying changes based on Zalewa's review. |
(0020428) Pol M (developer) 2019-02-26 10:39 |
Changes applied |
(0020444) Zalewa (developer) 2019-03-17 13:18 |
Changes squashed and merged: -'https://bitbucket.org/Doomseeker/doomseeker/commits/372e943eb5c9356aab9047b58a207292cb59cba6 [^]' -'https://bitbucket.org/Doomseeker/doomseeker/commits/e69b235a28aab51909fe053bb6d245ec5634d9a6 [^]' |
(0020446) Pol M (developer) 2019-03-17 19:18 |
Completing 0003542 will solve our pipelines problem. |
(0020822) Zalewa (developer) 2019-06-23 10:34 |
BLOODWOLF, this may be tested by auto-updating at the beta channel or running Doomseeker from this package:'https://devbuilds.drdteam.org/doomseeker/doomseeker-1.3~beta-190622-1032.zip [^]' Personally I haven't noticed any problems. |
(0020824) BLOODWOLF (reporter) 2019-06-23 16:19 |
Looks good. Still shows that "Map isn't present on maplist. Game may misbehave." warning message but, that's trivial. And when dragging and dropping maps in between others to change the order the listbox snaps back up to the very top but, still gives us the functionality I was wanting so, very good. |
(0020825) Zalewa (developer) 2019-06-23 21:06 |
Quote from BLOODWOLF That's a warning that you should actually heed, as I put it in because the game did misbehave for me. I'm not sure what the exact problem was, but I remember that Zandronum did not act as expected. Basically, if you put maps on the map list, ensure that one of those maps is typed in to the "Map" field in the "General" tab. About the list snapping - I see what you mean, but this may be something that Qt does and may not be simple to fix. But we should try - this is definitely undesireable. |
(0020851) Zalewa (developer) 2019-06-30 10:40 |
We should see if something can be done about list snapping back to top. |
(0020858) Pol M (developer) 2019-06-30 13:15 |
If you mean that when you reorder it snaps to the top, I'll look into it :) |
(0020899) Pol M (developer) 2019-07-20 16:17 |
PR |
(0020900) Zalewa (developer) 2019-07-20 18:48 |
Quote from Pol M I checked this and I think it's totally acceptable now. I hate that hacks like this are necessary to get the UI to work right, but what can you do? At least Qt is not as bad as SmartGWT in this regard. In this particular case the hack doesn't incur any actual side-effects either. Good job. I think we can consider this ticket as resolved at this point. |
(0020901) Pol M (developer) 2019-07-21 19:39 |
I'm also inclined to mark this as resolved. Stuff has already been tested, and setting this to needs testing only to see that, indeed, it now doesn't snap, is not necessary :) Resolving it is! |
This issue is already marked as resolved. If you feel that is not the case, please reopen it and explain why. |
|
Supporters: | No one explicitly supports this issue yet. |
Opponents: | No one explicitly opposes this issue yet. |
Issue History | |||
Date Modified | Username | Field | Change |
2019-01-27 05:25 | BLOODWOLF | New Issue | |
2019-01-27 11:29 | Zalewa | Note Added: 0020321 | |
2019-01-27 11:36 | Zalewa | Status | new => feedback |
2019-01-27 17:12 | BLOODWOLF | Note Added: 0020324 | |
2019-01-27 17:12 | BLOODWOLF | Status | feedback => new |
2019-01-28 01:56 | BLOODWOLF | Note Edited: 0020324 | View Revisions |
2019-01-28 19:24 | Zalewa | Note Added: 0020325 | |
2019-01-28 19:24 | Zalewa | Note Edited: 0020325 | View Revisions |
2019-01-28 20:53 | Pol M | Note Added: 0020326 | |
2019-01-28 21:52 | BLOODWOLF | Note Added: 0020327 | |
2019-01-28 22:19 | Pol M | Note Added: 0020328 | |
2019-01-28 22:19 | Pol M | Note Edited: 0020328 | View Revisions |
2019-01-28 22:20 | Pol M | Note Edited: 0020328 | View Revisions |
2019-01-28 23:10 | Zalewa | Note Added: 0020329 | |
2019-01-29 23:41 | Pol M | Note Added: 0020330 | |
2019-01-29 23:41 | Pol M | Assigned To | => Pol M |
2019-01-29 23:41 | Pol M | Status | new => assigned |
2019-01-31 17:44 | Pol M | Note Edited: 0020330 | View Revisions |
2019-01-31 20:13 | Pol M | Note Edited: 0020330 | View Revisions |
2019-01-31 20:14 | Pol M | Note Edited: 0020330 | View Revisions |
2019-02-02 16:57 | Pol M | Note Edited: 0020330 | View Revisions |
2019-02-03 08:34 | Zalewa | Note Added: 0020331 | |
2019-02-03 14:36 | Pol M | Note Added: 0020332 | |
2019-02-03 14:43 | Pol M | Note Edited: 0020332 | View Revisions |
2019-02-03 20:38 | Blzut3 | Note Added: 0020333 | |
2019-02-03 23:00 | Pol M | Note Added: 0020334 | |
2019-02-04 00:24 | Pol M | Note Edited: 0020334 | View Revisions |
2019-02-05 15:36 | Pol M | Note Added: 0020335 | |
2019-02-05 15:38 | Pol M | Status | assigned => needs review |
2019-02-18 20:12 | Pol M | Note Added: 0020414 | |
2019-02-18 20:12 | Pol M | Status | needs review => assigned |
2019-02-26 10:39 | Pol M | Note Added: 0020428 | |
2019-02-26 10:39 | Pol M | Status | assigned => needs review |
2019-03-17 13:18 | Zalewa | Note Added: 0020444 | |
2019-03-17 19:18 | Pol M | Note Added: 0020446 | |
2019-03-17 19:18 | Pol M | Relationship added | related to 0003542 |
2019-05-20 14:13 | Pol M | Status | needs review => needs testing |
2019-05-20 14:14 | Pol M | Relationship added | parent of 0003650 |
2019-05-30 06:13 | WubTheCaptain | Target Version | => 1.3 |
2019-06-23 10:34 | Zalewa | Note Added: 0020822 | |
2019-06-23 12:08 | WubTheCaptain | Platform | HP laptop => |
2019-06-23 16:19 | BLOODWOLF | Note Added: 0020824 | |
2019-06-23 20:53 | WubTheCaptain | Status | needs testing => needs review |
2019-06-23 21:06 | Zalewa | Note Added: 0020825 | |
2019-06-30 10:40 | Zalewa | Note Added: 0020851 | |
2019-06-30 10:40 | Zalewa | Status | needs review => assigned |
2019-06-30 13:15 | Pol M | Note Added: 0020858 | |
2019-07-20 16:17 | Pol M | Note Added: 0020899 | |
2019-07-20 16:18 | Pol M | Status | assigned => needs review |
2019-07-20 18:48 | Zalewa | Note Added: 0020900 | |
2019-07-21 19:39 | Pol M | Note Added: 0020901 | |
2019-07-21 19:40 | Pol M | Status | needs review => resolved |
2019-07-21 19:40 | Pol M | Fixed in Version | => 1.3 |
2019-07-21 19:40 | Pol M | Resolution | open => fixed |
2019-07-30 10:13 | WubTheCaptain | Status | resolved => closed |
Copyright © 2000 - 2024 MantisBT Team |