|
| 05 May 2016 08:44 AM |
| I want to make a kill cam so when someone gets killed it shows the killers camera and where they were shooting from. Like COD kill cam not like phantom forces kill cam... |
|
|
| Report Abuse |
|
|
Zawie
|
  |
| Joined: 04 Jul 2010 |
| Total Posts: 6338 |
|
|
| 05 May 2016 08:49 AM |
It's not that it's technically impossible but it is nearly impossible to due without causing major lag the entire time.r You need to track the movement of every single movement of every single player and store it somewhere. |
|
|
| Report Abuse |
|
|
|
| 05 May 2016 08:51 AM |
| I don't play COD so I don't know what you're talking about, but if it's some sort of replay, then yes, that would cause a lot of lag and would be hard for a beginner scripter |
|
|
| Report Abuse |
|
|
DrWaffler
|
  |
| Joined: 16 Sep 2011 |
| Total Posts: 4248 |
|
|
| 05 May 2016 09:08 AM |
Showing where they shot FROM would be possible. Showing where they currently are after you die would be possible. But showing a replay like they do in Call of Duty is not possible. [DISCLAIMER: It actually IS possible, but you'd have to store the data of the past few seconds of EVERY player, including shots taken, directions, locations, animations, for the entire map. That simply isn't feasible.] |
|
|
| Report Abuse |
|
|
|
| 05 May 2016 09:32 AM |
If you think you're capable and want to go totally nuts with this, then like others have said, it would be possible to pull off through constantly saving data and then interpreting it all when you need your killcam.
Short of that, it probably won't be very effective, and isn't worth your time to produce a subpar version. |
|
|
| Report Abuse |
|
|
DrWaffler
|
  |
| Joined: 16 Sep 2011 |
| Total Posts: 4248 |
|
|
| 05 May 2016 09:38 AM |
| Perhaps something similar would be to track the killshot back, and save the data of whoever shot that one shot, locally clone a replica of the person who shot in the state of how he shot, and throw the users camera into the eyes of the man who shot them. That'd be pretty neat while also showing you where the guy was! |
|
|
| Report Abuse |
|
|
Zawie
|
  |
| Joined: 04 Jul 2010 |
| Total Posts: 6338 |
|
|
| 05 May 2016 11:37 PM |
@DrWaffle
But how? You can't go back in time and know how it was played out without saving data from 5ish seconds ago. |
|
|
| Report Abuse |
|
|
Jammer622
|
  |
| Joined: 19 Nov 2008 |
| Total Posts: 1739 |
|
|
| 05 May 2016 11:46 PM |
Well... If you were to just clone the main parts and then have a table of their CFrames, it wouldn't be too incredibly laggy to move the parts client-side based on the information.
Replicating the game world and events such as firing weapons and all that, though, would be incredibly hard to do without a very specifically coded system to work around it.
Monitoring where the player is after they kill you from their point of view is pretty easy, though. |
|
|
| Report Abuse |
|
|
Yamno
|
  |
| Joined: 10 Jun 2009 |
| Total Posts: 123 |
|
|
| 05 May 2016 11:51 PM |
| An idea would be to keep track of player inputs and the starting state of the players or objects. Only record frames where the players change input. Anything that happens naturally (without input) can be ignored except for when they are started. Then you could simulate by playback of the actions that took place, rather than switching through snapshots. |
|
|
| Report Abuse |
|
|
Jammer622
|
  |
| Joined: 19 Nov 2008 |
| Total Posts: 1739 |
|
|
| 05 May 2016 11:53 PM |
I hate to say it, but basically what it comes down to for something like this is...
If you could do it at your current scripting level, you'd know how to do it already. |
|
|
| Report Abuse |
|
|
Zawie
|
  |
| Joined: 04 Jul 2010 |
| Total Posts: 6338 |
|
|
| 05 May 2016 11:54 PM |
@Jammer
o no replaying it isn't the problem; the process of constantly having to save the positions and animations and shots of every single player could become tedious for the server to handle. |
|
|
| Report Abuse |
|
|
Zawie
|
  |
| Joined: 04 Jul 2010 |
| Total Posts: 6338 |
|
|
| 05 May 2016 11:56 PM |
I (think) how they do it in the real world is that they just save rendered images/videos on the client and then just send that video when they kill someone to the server which sends it to the victim.
Tracking input isn't very effecient due to latency when the player walks. Espeically with a long life just a tiny lag spike for .1 seconds could set everything off. |
|
|
| Report Abuse |
|
|
Jammer622
|
  |
| Joined: 19 Nov 2008 |
| Total Posts: 1739 |
|
|
| 06 May 2016 12:00 AM |
nah. Handle it client-side so the server can focus on the game, create a table that holds CFrames of every player's main limbs and weapon's handle position, marking keyframes where their weapon fired, along with where their camera was at the time, weld their outfits or hats onto them or use a humanoid if the player is wearing a shirt and pants, then replay it by making a copy of the limbs and animating the weapon locally based on the contents of the table
in theory, it shouldn't take up too much data with the proper usage of remoteevents and functions |
|
|
| Report Abuse |
|
|
Zawie
|
  |
| Joined: 04 Jul 2010 |
| Total Posts: 6338 |
|
|
| 06 May 2016 12:02 AM |
@Jammer
But even then that is a lot of work to do every single frame. All those things would have to be done every 1/60th of a second. You also have to save the position of all other players since they were in the background/next to the shooter potentionally. |
|
|
| Report Abuse |
|
|
Zawie
|
  |
| Joined: 04 Jul 2010 |
| Total Posts: 6338 |
|
|
| 06 May 2016 12:04 AM |
So with your proposition the client would have to: -- Save cam pos -- Save all limbs positions -- Save gun position -- Save key things -- Save recoil animation (assuming it's random) every 1/60th of a second
and you would still need to save every othe rplayer's movements so in the playback you can see other players running in the view |
|
|
| Report Abuse |
|
|
Zawie
|
  |
| Joined: 04 Jul 2010 |
| Total Posts: 6338 |
|
|
| 06 May 2016 12:10 AM |
So even with the most basic playback for 5 seconds that's
5*60fps = 300frames (6limbs+gun+cam)*180 = 2,400 cframe values
2,400 unique cframe values + some other stuff to be sent to the server and then to the victim and the victim still has to process all the data which would probably be a little off due to rounding; and also you still wouldn't see other players milling about which could make no sense.
If it was possible in ROBLOX phantom forces would do it.
|
|
|
| Report Abuse |
|
|
Jammer622
|
  |
| Joined: 19 Nov 2008 |
| Total Posts: 1739 |
|
|
| 06 May 2016 12:18 AM |
You're totally misinterpreting. Data is read-only in the client if FilteringEnabled is on, which means the client can get the data from the other players, and it doesn't need to be as often as a 60th of a second, it just needs to be smooth enough to show what happened, that way the server can focus on running what it needs to. That's the thing with Roblox- not everything is possible, so you may have to settle for 'good enough' every once in a while. The data could also be offset to a different area where the replays can take place locally without other players being visible on the screen in real-time.
It's completely possible, it can even be done efficiently, but nobody said it would look great. |
|
|
| Report Abuse |
|
|
|
| 06 May 2016 12:26 AM |
| you guys take to long, and those methods are really crazy-ish, so id recommend doing something ugly, and easy. here it is: detect the player who killed you, and point your camera towards them, after you die , with a 'Death by User with ACR' |
|
|
| Report Abuse |
|
|
Jammer622
|
  |
| Joined: 19 Nov 2008 |
| Total Posts: 1739 |
|
|
| 06 May 2016 12:34 AM |
"Like COD kill cam not like phantom forces kill cam..."
thank you for your contribution shimotsuki |
|
|
| Report Abuse |
|
|
|
| 06 May 2016 12:45 AM |
"Like COD kill cam not like phantom forces kill cam..."
yeah i was aware, i'm not underestimating the op but what i said should be easy enough, if that doesn't work i can post a method of doing it lol |
|
|
| Report Abuse |
|
|
mudkip99
|
  |
| Joined: 17 Jun 2008 |
| Total Posts: 3362 |
|
|
| 06 May 2016 02:55 AM |
Just a quick note:
"I (think) how they do it in the real world is that they just save rendered images/videos on the client..."
That's definitely not how most games do it. Capturing and encoding video/images takes up a LOT of resources, way more than just storing information on the current gamestate every frame and pushing out old data would take. |
|
|
| Report Abuse |
|
|
|
| 06 May 2016 03:07 AM |
I would just save players positioning whenever they shoot and paste it to a replica of the map then use that, it wouldnt be moving but its the closest you can get without major lag.
|
|
|
| Report Abuse |
|
|