Slow Motion
Moderator: InsideQC Admins
13 posts
• Page 1 of 1
Slow Motion
I want to ad a ''slow-motion'' feature in my mod like MATRIX.
How i can done?
How i can done?
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
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!
-

jim - Posts: 599
- Joined: Fri Aug 05, 2005 2:35 pm
- Location: In The Sun
leileilol wrote: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
i was thinking about this as a security issue - i doubt a game server owner wants clients to change his fps settings.
- Moi
- Posts: 12
- Joined: Tue Jul 20, 2010 10:47 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?
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: 243
- Joined: Sat Feb 28, 2009 2:38 pm
Re:
OneManClan wrote:[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?
Hey people,
We were talking about this today, and I just realised no-one responded to the above, so....
what's the story .. I imagine it would require a mod to the server AND the client... but.. is it 'doable'? Slow motion replay of your death during respawn delay?
- OneManClan
- Posts: 243
- Joined: Sat Feb 28, 2009 2:38 pm
Re: Slow Motion
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.
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?
Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
-

Baker - Posts: 3666
- Joined: Tue Mar 14, 2006 5:15 am
13 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 1 guest

