MantisBT - Zandronum |
View Issue Details |
|
ID | Project | Category | View Status | Date Submitted | Last Update |
0001351 | Zandronum | [All Projects] Suggestion | public | 2013-05-27 19:23 | 2018-09-30 21:49 |
|
Reporter | Ijon Tichy | |
Assigned To | Torr Samaho | |
Priority | urgent | Severity | feature | Reproducibility | N/A |
Status | closed | Resolution | fixed | |
Platform | | OS | | OS Version | |
Product Version | 1.0 | |
Target Version | 3.0 | Fixed in Version | 3.0 | |
|
Summary | 0001351: Backport ZDoom revisions r4280, r4283, r4292 (Official CVar and User CVar support in ACS) |
Description | 'http://zdoom.org/Changelog/4280/files [^]'
'http://zdoom.org/Changelog/4283/files [^]'
'http://zdoom.org/Changelog/4292/files [^]'
Basically, this adds official CVar support to ACS, removing one of the reasons for ConsoleCommand to exist. I'm normally not the sort of person to ask for a backport, but this feature is of such critical importance to Zandronum mods, which tend to define CVars of their own for server customization, and its addition would make ConsoleCommand almost completely useless.
The only thing left would be executing net scripts from the client to the server on ACS, but that's a different ticket. |
Steps To Reproduce | |
Additional Information | |
Tags | 2.7 |
Relationships | child of | 0001070 | new | Dusk | Phasing out the dangerous ConsoleCommand for various additional/improved ACS commands | child of | 0002172 | closed | Torr Samaho | Upgrade GZDoom base to 1.8.6 |
|
Attached Files | setcvar.7z (9,730) 2014-08-07 08:15 https://zandronum.com/tracker/file_download.php?file_id=1278&type=bug |
|
Issue History |
Date Modified | Username | Field | Change |
2013-05-27 19:23 | Ijon Tichy | New Issue | |
2013-05-27 19:25 | Watermelon | Note Added: 0006348 | |
2013-05-27 19:31 | TerminusEst13 | Note Added: 0006351 | |
2013-05-27 20:22 | Edward-san | Note Added: 0006352 | |
2013-05-30 00:06 | Hypnotoad | Note Added: 0006354 | |
2013-06-11 23:42 | Dusk | Relationship added | child of 0001070 |
2013-06-16 17:07 | Torr Samaho | Note Added: 0006453 | |
2013-12-27 13:42 | Torr Samaho | Note Added: 0007739 | |
2013-12-27 19:36 | Visual Vincent | Note Added: 0007744 | |
2014-06-15 14:59 | Dusk | Note Deleted: 0007744 | |
2014-06-15 15:00 | Dusk | Note Deleted: 0006354 | |
2014-08-06 19:09 | Torr Samaho | Note Added: 0010135 | |
2014-08-06 19:10 | Torr Samaho | Note Edited: 0010135 | |
2014-08-06 19:10 | Torr Samaho | Note Revision Dropped: 10135: 0005498 | |
2014-08-06 19:10 | Torr Samaho | Assigned To | => Torr Samaho |
2014-08-06 19:10 | Torr Samaho | Status | new => assigned |
2014-08-06 19:10 | Torr Samaho | Status | assigned => needs testing |
2014-08-06 19:11 | Torr Samaho | Note Edited: 0010135 | bug_revision_view_page.php?bugnote_id=10135#r5500 |
2014-08-06 19:11 | Torr Samaho | Note Revision Dropped: 10135: 0005499 | |
2014-08-06 20:45 | Ijon Tichy | Note Added: 0010136 | |
2014-08-06 20:49 | Ijon Tichy | Note Edited: 0010136 | bug_revision_view_page.php?bugnote_id=10136#r5502 |
2014-08-07 08:15 | Torr Samaho | File Added: setcvar.7z | |
2014-08-07 08:17 | Torr Samaho | Note Added: 0010139 | |
2014-08-10 13:32 | Torr Samaho | Note Added: 0010158 | |
2014-08-10 15:27 | Dusk | Note Added: 0010159 | |
2014-08-10 16:00 | Torr Samaho | Note Added: 0010164 | |
2014-08-10 21:01 | Torr Samaho | Note Added: 0010173 | |
2014-08-12 21:33 | Qent | Note Added: 0010192 | |
2014-09-16 12:00 | ZzZombo | Note Added: 0010273 | |
2015-05-10 22:12 | WaTaKiD | Target Version | => 3.0 |
2015-05-10 22:12 | WaTaKiD | Relationship added | child of 0002172 |
2016-03-17 18:03 | StrikerMan780 | Note Added: 0014584 | |
2017-02-06 19:03 | Dusk | Status | needs testing => resolved |
2017-02-06 19:03 | Dusk | Fixed in Version | => 3.0 |
2017-02-06 19:03 | Dusk | Resolution | open => fixed |
2018-09-30 21:49 | Blzut3 | Status | resolved => closed |
Notes |
|
|
This would be great in helping phase out ConsoleCommand |
|
|
|
Not only great for helping phase out ConsoleCommand, but would help dramatically in bridging the gap between ZDoom and Zandronum. A lot of advanced ACS trickery works in Zandronum but not in ZDoom--now it's possible to use the advanced ACS trickery in ZDoom, but via an entirely different method that accomplishes the same result.
Making the methods the same would basically mean less difference between zdoom-specific builds for mods and Zandronum-specific builds. |
|
|
|
sorry, but this will happen after 1.1 comes out. |
|
|
|
I agree that it would be very useful to have this, but I didn't check yet whether it would be feasible to backport this at the moment. I'll have a look and report back. |
|
|
|
The implementation of this feature in ZDoom heavily relies on the changes made in ZDoom revision 4253 (revised userinfo handling). So 4253 would also need to be backported which is quite a bit of work on its own. |
|
|
(0010135)
|
Torr Samaho
|
2014-08-06 19:09
(edited on: 2014-08-06 19:11) |
|
Since this is an important feature to get rid of ConsoleCommand, I backported the CVARINFO lump and the ACS functions SetCVar, GetCVarString and SetCVarString. This binary contains the backports, but is completely untested. Please test if it works as expected.
Note: I intentionally did not backport the user cvars.
|
|
|
(0010136)
|
Ijon Tichy
|
2014-08-06 20:45
(edited on: 2014-08-06 20:49) |
|
Before I do any serious tests, how do server CVars get handled in clientside scripts? Do they follow what the server says, or do they do what they do now and use what the client has them set to?
Edit: Also, is this on the Bitbucket repo? Because if so, I can't find it, and if not, I'll need a 64-bit Linux build to test this.
|
|
|
|
Since this is still completely untested, I didn't push it to the Bitbucket repo yet. I attached the necessary patches, so you can test this locally.
So far there is no synchronization of server CVars to the clients, so they still have the old behavior. I plan to change this though, but would first like to know if the basic functionality is working at all. |
|
|
|
I implemented the synchronization of server CVars defined via CVARINFO. While at it, I noticed that the archiving of the custom CVars was completely broken. Even archiving of SERVERINFO CVARs (e.g. sv_smartaim) on the server was broken in 1.2. These issues should also be fixed now. I'll try to post updated binaries and the new source later today. |
|
|
(0010159)
|
Dusk
|
2014-08-10 15:27
|
|
What is stopping you from posting these changes on the repo in a separate head? |
|
|
|
For one thing, I want to have as few heads in the main repository as possible (that's why I maintain the stable repository instead of a stable head). For another thing, I don't want to have code that is still completely experimental in the main repository.
I pushed the changes to the accounts repository. |
|
|
|
Here is an updated binary with the sync of custom server vars and the archive fixes. |
|
|
(0010192)
|
Qent
|
2014-08-12 21:33
|
|
CVARINFO works for archiving clients' settings, replacing ConsoleCommand set/archivecvar in the coopbullets mod. I was also able to use GetCVarString to implement GetCVarFixed, replacing a ConsoleCommand eval. So far so good. |
|
|
|
|
|
|
|