These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

EVE General Discussion

 
  • Topic is locked indefinitely.
Previous page123Next page
 

Give us a "battle recorder"

First post
Author
Neuntausend
Republic Military School
Minmatar Republic
#21 - 2017-02-21 20:52:13 UTC
Cade Windstalker wrote:
It receives what is needed to display the battle, mostly, but not in a loggable format and not completely. Fun fact, did you know guns on most ships don't display until you view the ship? Same goes for a lot of other little details that are culled for the sake of bandwidth and client performance.

Similarly your client knows nothing about the HP of anything it doesn't have targeted or watchlisted (and the latter updates more infrequently) it only knows whether or not they've exploded. The end result of trying to replay this sort of thing back in any detail would be, I suspect, rather lackluster.

Ok, so the guns wouldn't show up in the replay except on your own ship or the ones you have looked at. So what? They don't show up in the game either, nor do they in a captured video. Only the projectiles and beams do. Showing anything you would not see during the battle would be additional intel anyway. It also would not need to show the HP of ships. The client knows whether or not they are alive, and that's enough for a replay.

I still think it would only be a matter of saving what the client sees anyway, and write a log parser so the games engine can play it back. This should really not increase server load whatsoever and it should not be a big undertaking either. I'm just taking a guess: The biggest hurdle would probably be undocumented ~legacy code~, as it always is. But they will have to touch it sooner or later anyway, and when they do, they can just as well give us a replay feature.

And really, we already can get this sort of replay logs for the alliance tournament, but to play them back we need to use a third party viewer outside of the game (Eve NTs Alliance Tournament viewer). This proves that it is technically possible. And if a couple of guys over there at Eve NT can do it, it would be rather pathetic if CCP could not.
Cade Windstalker
#22 - 2017-02-21 21:40:56 UTC
Neuntausend wrote:
Ok, so the guns wouldn't show up in the replay except on your own ship or the ones you have looked at. So what? They don't show up in the game either, nor do they in a captured video. Only the projectiles and beams do. Showing anything you would not see during the battle would be additional intel anyway. It also would not need to show the HP of ships. The client knows whether or not they are alive, and that's enough for a replay.

I still think it would only be a matter of saving what the client sees anyway, and write a log parser so the games engine can play it back. This should really not increase server load whatsoever and it should not be a big undertaking either. I'm just taking a guess: The biggest hurdle would probably be undocumented ~legacy code~, as it always is. But they will have to touch it sooner or later anyway, and when they do, they can just as well give us a replay feature.

And really, we already can get this sort of replay logs for the alliance tournament, but to play them back we need to use a third party viewer outside of the game (Eve NTs Alliance Tournament viewer). This proves that it is technically possible. And if a couple of guys over there at Eve NT can do it, it would be rather pathetic if CCP could not.


First off, no, the biggest hurdle here wouldn't actually be legacy code it would be capturing everything the client would need for playback (new code), writing everything out in a format that's usable (new code), and writing the huge mess of code that would allow it to be played back (tons of new code).

This isn't even as simple as just feeding data into the client because the client expects to be playing a game, and if it doesn't get certain responses it will assume a disconnect has happened and shut off.

I also personally suspect that the server avoids sending a lot more extraneous data than you think, with the end result being a lot of kinda jerky ships if they were way off away from your camera/ship/something at the time of 'recording'. The general counter argument at this point is "but it's better than nothing!" to which I respond, 'yes, but once CCP has released something they have to support it and field complaints about how bad things look and why the thing should be improved' and "It's better than nothing" flies about as well as a brick sandwich when a dev says it.

The Alliance Tournament replayer is based off of server logs and is, if I had to guess, literally a stripped down 'camera-client' being fed server replay data, not anything that a player could use because the server has all the answers and can use them to calculate game state.
Orakkus
ImperiaI Federation
Goonswarm Federation
#23 - 2017-02-21 21:50:21 UTC
Wait, didn't they have something like this for an Alliance Tournament a few years back? I think it was 2013 or 2014, where you could see how the battle played out?

He's not just famous, he's "IN" famous. - Ned Nederlander

CCP Darwin
C C P
C C P Alliance
#24 - 2017-02-21 22:20:04 UTC  |  Edited by: CCP Darwin
This topic comes up now and then. As it turns out, it's incredibly difficult to retrofit onto a system that was designed without such recording in mind.

Quote:
Wait, didn't they have something like this for an Alliance Tournament a few years back? I think it was 2013 or 2014, where you could see how the battle played out?

Yes, there was an experimental API for providing live access to what happened on-grid for each match in the AT. My understanding (which is somewhat shaky) is that it relied heavily on the tournament tools that we use internally for setting up and administering each match to generate and publish the data.

As has been pointed out here, such a system would have to record the game state server-side to be able to provide a complete picture of what was going on in a replay, and that would be a huge problem to solve.

I don't expect to see anything like that added to Eve, although I admit that being able to step through a replay of arbitrary in-game events would possibly be the coolest feature ever, if it were possible.

Edit: A feature like that would also raise all kinds of horrible game design problems related to leaking intel after an engagement. I'll leave that analysis to those who think deeply about such matters for a living. I do not.

CCP Darwin  •  Senior Software Engineer, Art & Graphics, EVE Online  •  @mark_wilkins

Fek Mercer
Native Freshfood
Minmatar Republic
#25 - 2017-02-21 23:24:31 UTC
CCP Darwin wrote:
This topic comes up now and then. As it turns out, it's incredibly difficult to retrofit onto a system that was designed without such recording in mind.

Quote:
Wait, didn't they have something like this for an Alliance Tournament a few years back? I think it was 2013 or 2014, where you could see how the battle played out?

Yes, there was an experimental API for providing live access to what happened on-grid for each match in the AT. My understanding (which is somewhat shaky) is that it relied heavily on the tournament tools that we use internally for setting up and administering each match to generate and publish the data.

As has been pointed out here, such a system would have to record the game state server-side to be able to provide a complete picture of what was going on in a replay, and that would be a huge problem to solve.

I don't expect to see anything like that added to Eve, although I admit that being able to step through a replay of arbitrary in-game events would possibly be the coolest feature ever, if it were possible.

Edit: A feature like that would also raise all kinds of horrible game design problems related to leaking intel after an engagement. I'll leave that analysis to those who think deeply about such matters for a living. I do not.





Thanks. What about the client only side of the discussion here? excuse any ignorance.
Lulu Lunette
Savage Moon Society
#26 - 2017-02-21 23:47:10 UTC
They'll get to it after Captain's Quarters.

@lunettelulu7

CCP Darwin
C C P
C C P Alliance
#27 - 2017-02-22 01:02:59 UTC
Fek Mercer wrote:
Thanks. What about the client only side of the discussion here? excuse any ignorance.

Still very hard to implement, and would lack a lot of the information you'd like to see, even things you think you might expect but that aren't actually sent to your client during a fight. It wouldn't necessarily be much better than recording a video yourself.

CCP Darwin  •  Senior Software Engineer, Art & Graphics, EVE Online  •  @mark_wilkins

Neuntausend
Republic Military School
Minmatar Republic
#28 - 2017-02-22 01:13:18 UTC
Oh bloody hell CCP Killjoy Darwin! Can you not once come here and say "Sure, I can do that!". That would be really nice. Straight
Amojin
Doomheim
#29 - 2017-02-22 01:41:13 UTC
You have an environment where something was not recorded for bragging rights?!

Hallelujah! It's not like people don't already do this. Well, they do it the reasonable, humanly responsible way - they record their own screens, with their own programs, since they are the ones that want it...

Seriously. We don't need MORE lag because the server is recording **** that people should be doing, themselves.
CCP Darwin
C C P
C C P Alliance
#30 - 2017-02-22 02:06:40 UTC
Neuntausend wrote:
Oh bloody hell CCP Killjoy Darwin! Can you not once come here and say "Sure, I can do that!". That would be really nice. Straight

I agree, it would be a lot more fun to talk about what we are doing. All in good time. :)

CCP Darwin  •  Senior Software Engineer, Art & Graphics, EVE Online  •  @mark_wilkins

Cade Windstalker
#31 - 2017-02-22 02:18:54 UTC
Thanks for dropping in CCP Darwin! Great to have some of my suspicions confirmed and my domain knowledge in this area verified :)
Neuntausend
Republic Military School
Minmatar Republic
#32 - 2017-02-22 02:32:28 UTC  |  Edited by: Neuntausend
CCP Darwin wrote:
Neuntausend wrote:
Oh bloody hell CCP Killjoy Darwin! Can you not once come here and say "Sure, I can do that!". That would be really nice. Straight

I agree, it would be a lot more fun to talk about what we are doing. All in good time. :)

Alright, I will wait. But it'd better be something fun. If it's just the next jump fatigue, I will not strike out the nickname next time. Blink

PS. I am still mad because of the high res textures. So this is strike two.
Alexander Bor
Polaris Global
#33 - 2017-02-22 02:59:41 UTC
There are more important things in EVE that should be done (changed/removed/added) so even such a tool is possible to be put in game (and I believe CCP are able to do it) it's not a time yet.

Anyway I don't see anything bad with summoning a camera man who do all necessary job with data fixation.
Commander Spurty
#34 - 2017-02-22 12:02:53 UTC  |  Edited by: Commander Spurty
I'd just like a dscan.me killmail grabbed centered on the victims location.

If that's "too much effort" time for fresh faces at CCP.
Hint: should be super simple and no additional computation required

There are good ships,

And wood ships,

And ships that sail the sea

But the best ships are Spaceships

Built by CCP

Nana Skalski
Taisaanat Kotei
EDENCOM DEFENSIVE INITIATIVE
#35 - 2017-02-22 14:53:08 UTC  |  Edited by: Nana Skalski
Nicen Jehr
Subsidy H.R.S.
Xagenic Freymvork
#36 - 2017-02-24 05:23:04 UTC
Instead, give us a way to snapshot the client's view of game state and load it in the client. You must have this capability for dev.

This way players can maintain opsec over who shares the snapshot.
A file would be fine, dragging links in the client would be better.
Killing the player session when you open a snapshot would be fine.

As a start, see if you can implement taking a snapshot and viewing it, without any loading capability, at server shutdown.
Many's the time I have turned on my client in the morning to see the shutdown message and no way to see the most recent state of chat windows.
Garia666
CyberShield Inc
HYDRA RELOADED
#37 - 2017-02-24 13:51:01 UTC
its spreadsheet online.. every action is a text based action.. it should be possible to make this.

It hasnt to be 100% accurate.. but mostly.. do something like UDP protocol traffic.. It only sends out and not recieve.
Give the client an option to record all actions vissible on his grid and record it to a file.

create player to play the recorded file and voila ;) . mabe a tool or two to adjust it slightly by the user.. that would have help allot..
Reiisha
#38 - 2017-02-24 18:41:22 UTC  |  Edited by: Reiisha
CCP Darwin wrote:
Fek Mercer wrote:
Thanks. What about the client only side of the discussion here? excuse any ignorance.

Still very hard to implement, and would lack a lot of the information you'd like to see, even things you think you might expect but that aren't actually sent to your client during a fight. It wouldn't necessarily be much better than recording a video yourself.


Wouldn't it be a matter of tapping into the graphics output of the client rather than the gamestate?

All those bits need to be rendered somehow, so the information is getting to the client directly at *some* point. The GPU pretty much has all the information people are asking for, unless somehow some of the rendering is done server-side (which would be horribly inefficient and hilarious).

This also feeds into the UI rendering (for overview data etc to extrapolate information which may not be rendered directly, such as ship models at long ranges).

What about the in-house cinematic tool CCP uses? It can't have been developed in complete isolation of the client itself?

If even that is not directly possible, will it be done in the inevitable upcoming engine revamp? :)

If you do things right, people won't be sure you've done anything at all...

Veine Miromme
Gallente Federation
#39 - 2017-02-24 22:10:01 UTC
Ξ > Accessories > Log and Messages >

multiplied by the number of players

= Ƶ.

Ship Type : Out of pod (for now)

Eli Stan
Center for Advanced Studies
Gallente Federation
#40 - 2017-02-25 05:45:33 UTC
CCP Darwin wrote:
Fek Mercer wrote:
Thanks. What about the client only side of the discussion here? excuse any ignorance.

Still very hard to implement, and would lack a lot of the information you'd like to see, even things you think you might expect but that aren't actually sent to your client during a fight. It wouldn't necessarily be much better than recording a video yourself.


CCP Darwin, that actually sounds pretty good. Mostly because as opposed to a video recording, the camera drones can be manipulated, I assume, during the playback of such a battle recording, allowing for unique, multiple perspectives to be edited together. Another possibility is that the battle info can be recorded at minimal graphics settings for performance, then played back on a machine capable of rendering at max settings.

I also assume the data stream from the server to the client (plus any relevant input to the client from the player) is significantly less data than a 2560x1440@60fps stream, so that I would be able to record many hours of play without worrying about disk space...

(Obviously I have no idea just how much data is or is not sent to the client. Smile )
Previous page123Next page