Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

REQ: Option to prevent demo playback exiting at end of demo #564

Closed
HangTimeQW opened this issue Jul 8, 2021 · 3 comments
Closed

REQ: Option to prevent demo playback exiting at end of demo #564

HangTimeQW opened this issue Jul 8, 2021 · 3 comments

Comments

@HangTimeQW
Copy link

Is your feature request related to a problem? Please describe.
When you play back a demo, if you demo_jump beyond the end of the demo, the demo exits. This means you have to know the the length of the demo to avoid getting dumped back to console if you choose too long a jump. This is a problem if you launched a demo from windows/cmdline because the client has no way of easily reloading the demo (probably has a complex filepath). You have to e.g. tab back out to windows and re-open the demo.

Similarly if you let a demo playout you get dumped to console.

A common scenario when viewing demos is I want to skip to near the end so I can see the scores / endgame print etc. With a standard 20min 4v4 mvd this is fine you can demo_jump 20:10 but some demos are odd lengths e.g. if recorded manually, or the game terminated early for some reason.

Describe the solution you'd like
A command that will skip to e.g. 5s before the end of a demo, or a cvar that will halt at the end of a demo without dumping you to console. Basically a way of avoiding "premature eject" of the demo file...

I'm open-minded about approach for this as long as it provides a way to reliably skip to the end / near the end of a demo regardless of demo length.

Describe alternatives you've considered
Using the demo player alleviates some of these problems but it is a bit less user friendly e.g. sometimes I download a demo and just want to check it quickly, I don't want to have to move it into my demos folder and then find it with some random name/timestamp etc. Likewise to use /playdemo you have to move it somewhere under Quake directory hierarchy.

@meag
Copy link
Contributor

meag commented Jul 8, 2021

Quick hack in the meantime...

alias demo_jump_end_go "demo_jump $demo_near_end;cl_demospeed 0"
alias demo_jump_end "set_calc demo_near_end $demolength - 5;demo_jump_end_go"

then demo_jump_end?

Will try and make the "disconnect" command simply pause the demo if it's found during demo_jump but not sure it will always be reliable.

@meag meag closed this as completed in 312d810 Jul 28, 2021
@meag
Copy link
Contributor

meag commented Jul 28, 2021

Hi @HangTimeQW

I think this should give you almost what you want: you should be able to /demo_jump_end and it will stop as it hits intermission, or 2 seconds before the end of the demo.

One thing - do you want it to pause as well?

meag

@HangTimeQW
Copy link
Author

Yes I think it would make sense to pause it at that point, thanks.

meag added a commit to meag/ezquake-source that referenced this issue Jul 28, 2021
meag added a commit to meag/ezquake-source that referenced this issue Jul 28, 2021
Anticipating hangtime's next request on QW-Group#564, wanting
  to see the end-game stats after demo_jump_end
meag added a commit to meag/ezquake-source that referenced this issue Nov 14, 2021
### Changes from alpha8=>alpha9 (July 13th => November 14th, 2021)

- Fixed/worked around some classic renderer bugs on version x.y.13399 AMD drivers (QW-Group#416)
- Fixed bug causing off-by-one error when drawing rectangle outlines (3.5 bug, reported by Matrix, QW-Group#536)
- Fixed `/in_raw 0` behaviour on MacOS (QW-Group#489)
- Fixed `/r_drawflat 1`, `/r_drawflat_mode 0` affecting ammo boxes etc in classic renderer
- Fixed match logging not working when using competitive rulesets
- Fixed incomplete rendering when gibbed or dead in shallow water (reported by Matrix, QW-Group#568)
- Fixed tab key not switching tabs on serverinfo popup (reported by Hangtime, QW-Group#555)
- Fixed `/demo_jump_mark` not working if `/demo_jump_rewind` not set
- Fixed coping with 1x1 ibar.png (reported by Matrix, QW-Group#571)
- Fixed powerupshells when using `/r_viewmodelsize` (reported by timbergeron, QW-Group#573)
- Fixed crouch adjustment staying disabled after teleport/respawn when `/cl_nopred` enabled (reported by Matrix, QW-Group#572)
- Added `/gl_smoothmodels` back in (modern renderer only), (requested by Repast via [quakeworld.nu](https://www.quakeworld.nu/forum/topic/7508/why-is-the-command-glsmoothmodels-r))
- Added `/demo_jump_skip_messages` to determine if messages should be printed to console during demo jump
- Added `/demo_jump_end` to jump to next intermission point or end of demo (requested by Hangtime, QW-Group#564)
- Added `/sb_info_filter` to allow filtering of servers in server-browser based on serverinfo (requested by Matrix, QW-Group#537)
- On startup (after `autoexec.cfg` executed), a `vid_restart`/`s_restart` will be issued if any latched variables were changed (reported by Dusty, QW-Group#458)
- Multiview will be disabled when watching a solo demo and no powerup cams are active (requested by mmavova, QW-Group#126)
- MacOS: sets SDL flag to stop touch events being translated into mouse events (might help with QW-Group#354)
- `/status` command will be ignored if an alias with the same name is found, use `/sv_status` instead (fixes QW-Group#532)
- qw:// urls in command line will be opened even if not preceded by `+qwurl` (thanks to ciscon)
- Linux: register_qwurl_protocol will register protocol with xdg (thanks to ciscon)
- Added `/v_dlightcolor` to control if being inside flashblend light affects palette by color of light
- Added `/v_dlightcshiftpercent` to control strength of palette shift effect when inside flashblend light
- Changed `/v_dlightcshift` to be enum of when being inside flashblend light affects palette (requested by HangTime, QW-Group#542)
- Added `/vid_framebuffer_multisample` to control multi-sampling level of the framebuffer (reported by Matrix, QW-Group#367)
- Translucent models are first drawn with a z-pass, to stop overdraw affecting level of translucency
- Fixed explosion effects on md3 viewmodels (additive blending was being lost)
- Removed server-side weapon switching 'support' in client
- Removed debugging messages when using `+fire_ar`
- Commands that search by regular expression (`/cvarlist_re` etc) are now case-insensitive (reported by HangTime, QW-Group#599)
- Added `/fs_savegame_home` to control if games are saved to home directory (default) or game directory (reported by githubtefo, QW-Group#586)
- Fixed `/gl_no24bit` not taking effect after `/vid_restart` (reported by hemostx, QW-Group#601)
- Fixed `/gl_no24bit` not disabling loading external textures (3.5 bug, kind of reported by hemostx, QW-Group#601)
- Fixed bug causing `/gl_scaleskytextures` to not affect external textures (reported & fixed by hemostx, QW-Group#606)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants