[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4787: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4789: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4790: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4791: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
InsideQC Forums • View topic - Slow Motion

Slow Motion

Discuss programming in the QuakeC language.

Moderator: InsideQC Admins

Slow Motion

Postby Eljoax » Wed Nov 10, 2010 1:04 am

Last edited by Eljoax on Wed Nov 10, 2010 7:37 pm, edited 1 time in total.
Eljoax
 
Posts: 10
Joined: Sat Oct 23, 2010 9:39 pm

Postby leileilol » Wed Nov 10, 2010 1:05 am

leileilol
 
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Postby Moi » Fri Nov 12, 2010 1:58 pm

Moi
 
Posts: 12
Joined: Tue Jul 20, 2010 10:47 pm

Postby leileilol » Fri Nov 12, 2010 2:10 pm

if it doesn't then it's not slow motion now is it? no player gets their own time and space continuum. ever. you can't change the laws of physics
leileilol
 
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Postby mankrip » Fri Nov 12, 2010 3:11 pm

Slow-motion is hard as hell to code properly, since it affects so many things at once.

I'd suggest taking a look at the JoyMenu 2.2 source code (should be at the downloads section ), the slow motion code in it is really good.
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
/ /
User avatar
mankrip
 
Posts: 915
Joined: Fri Jul 04, 2008 3:02 am

Postby jim » Fri Nov 12, 2010 7:15 pm

I played the matrix quake mod some years ago with some friends and the slow motion in it affected everything. But soon it became a serious annoyance, as we just hit the slow mo button randomly to annoy others. It's kinda stupid going through some corridor without anything happening, then someone press the slow mo button and you're stuck to the corridor for a minute...
zbang!
User avatar
jim
 
Posts: 599
Joined: Fri Aug 05, 2005 2:35 pm
Location: In The Sun

Postby mankrip » Fri Nov 12, 2010 8:41 pm

This is why Max Payne was single player.
Ph'nglui mglw'nafh mankrip Hell's end wgah'nagl fhtagn.
==-=-=-=-=-=-=-=-=-=-==
/ /
User avatar
mankrip
 
Posts: 915
Joined: Fri Jul 04, 2008 3:02 am

Postby Downsider » Fri Nov 12, 2010 9:48 pm

Ensure you multiply timers, physics and everything of that nature by frametime if you're using host_framerate.
User avatar
Downsider
 
Posts: 621
Joined: Tue Sep 16, 2008 1:35 am

Postby Moi » Sat Nov 13, 2010 2:58 pm

Moi
 
Posts: 12
Joined: Tue Jul 20, 2010 10:47 pm

Postby Boss429 » Wed Nov 17, 2010 3:10 am

Boss429
 
Posts: 39
Joined: Sun Dec 03, 2006 7:29 pm

Postby OneManClan » Tue Jan 11, 2011 1:14 pm

[DISCLAIMER: I'm still a newb, so the following might be ridiculously naive/unrealistic]

What if you did this:

1. The Server already has the ability to write an mvd during the game. Make it also store (eg) the last 2 seconds into a seperate buffer (which keeps getting written over)

2. Player dies.

3. Server sends the latest 2 second chunk to the client (should be a tiny dl)

4. The client automatically plays the last 2 seconds, at lower framerate (ie slow motion), using some function which selects them as the player to 'view', so they can see the best view of their death. You might even make a option to show the view from the point of view of the entity that killed them, facing the victim. ie see from behind the the rocket/projectile/path of direct fire weapon.

5. After the replay, the clients framerate is reverted to 'normal'.

If you can access the mvd data whlst it's being written, then you might not even need a seperate buffer, just send the last 2 secs of the (currently being written) mvd everytime someone dies. Off the top of my newbie head, I imagine the mvd is constantly being written at a certain rate, so you could calculate what offset is '2 seconds ago', and grab the chunk you need, though Im not sure you can access data from a file that's still being written to, surely it must exist as a 'temp'. (?)

Anyway... possible?
OneManClan
 
Posts: 247
Joined: Sat Feb 28, 2009 2:38 pm

Re:

Postby OneManClan » Mon Dec 26, 2011 3:52 am

OneManClan
 
Posts: 247
Joined: Sat Feb 28, 2009 2:38 pm

Re: Slow Motion

Postby Baker » Mon Dec 26, 2011 6:36 am

A MVD by definition is a "multiview demo". The server hackery would affect the replay even if you did not watch the demo from the perspective of the dead player (right?) so viewing it would be annoying.

As I understand it, ezQuake has a client side "watch yourself die in slowmo" cvar. If it doesn't apply to demo playback (haven't thought to try it), it would be better to apply it to demo playback than try to force a perhaps unwanted and unavoidable feature "hardcoded" server side making it compulsory for any playback of the demo.

[I haven't played with the feature recently and my memory of it is vague. Hell, it might not have been ezQuake but I am pretty sure it is ezQuake with that feature.]

Either way, this kind of "die in slow mo from probably a third person perspective thing" wouldn't require server support and I am assuming the client support for this kind of feature either depends on health hitting <=0 or the animation frames ... either of which is technically hackery (from say, a DarkPlaces or true modder perspective) but as most mods stick to the basic fundamentals of Quake and use the traditional health and Quake guy using the expected frames this would be no more unstandard than gib filters or dead body filters and other Quake hardcodings that already exist.
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am


Return to QuakeC Programming

Who is online

Users browsing this forum: No registered users and 2 guests