Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
peter gabriel
Nov 8, 2011

Hello Commandos

tuo posted:

What key combo would Derek give to the pg button?

Esc Alt Esc 2

Adbot
ADBOT LOVES YOU

Budgie
Mar 9, 2007
Yeah, like the bird.

Codezombie posted:

Try this for what the audio sounds like while you wait.
https://www.youtube.com/watch?v=qK1aD4CceRI

@1:11 "Bitchin' slide" :rock:

Or something about a ditch, I suppose.

SomethingJones
Mar 6, 2016

<3

mrchinchin25 posted:

I take it this has been posted already, but oh man the comments....

https://www.reddit.com/r/starcitizen/comments/76lqca/30_spoilers_from_my_evocati_friend/


Clearly we do not understand expectation management






EXPECTATIONS CALMED

NOT OPTIMISTIC

Beet Wagon
Oct 19, 2015






ITT: Citizens daydreaming about a minor sidestory in every Stellaris game.

Toops
Nov 5, 2015

-find mood stabilizers
-also,

Eldragon posted:

That is exactly what is happening. This is how I understand it: CIG decided to have all ship movement handled by the physics engine. (Remember that "True fidelity where ship movement is managed by how the thrusters exert force on the ship?) However this means that you nee all players to have the same state of physics, e.g. All player's physics calculation ticks need to be in sync and server authoritative. The more players in the game, the harder the server needs to work running the fully physics calculation, slowing the tick rate. No big deal you think, ships just behave sluggishly and the frame rate can continue to be 60 FPS. Just one problem. Cry engine's physics rendering is tied to the frame rate. It can only draw frames as fast as the physics ticks are coming in.

idk, I don't think the server needs to run the full physics sim for each ship, nor do the physics ticks need to be synced. Client calculates all the physics, sends position/rotation and velocity to the server, server sends it to the clients who need to know, after doing sanity checks to make sure the parameters aren't haxmode. Other clients handle interpolation, etc.

I'm just spitballing, so let's think of some edge cases.

What happens when two ships are about to collide? Well, the server is sending ship_1's position and velocity to ship_2, and vice-versa, and each client knows what type of ships are around them (from which you can get other ships' mass), so maybe collisions can be handled client-side. Every client can calculate collision force with mass and velocity (p = mv, F = dp/dt).

Let's say in this example, ship_2 is a plucky Aurora trying to ram ship_1, a Connie. If this game is ever released, seems like the prototypic Goonrathi use-case. From ship_1's perspective, you would see ship_2 approach, rotate to optimal ramming trajectory, accelerate to ramming speed. Because the server is sending ship_2's position data at (tick rate), and you're interpolating between ticks, you should have enough info to calculate when the collision will happen, where the impact occurs on your hull, and what the imparted force will be. You apply the collision force to yourself locally, and keep sending position/rotation/velocity data to the server as you rapidly change direction and rotation from the resultant force of impact. ship_2 does the same as it responds to the collision.

The challenge here is network latency and resolving when and where the collision happened between different versions of the simulation (client_1, client_2, and server). Both clients will see something slightly different, and it's easy to envision a scenario where both ships wind up clipping through each other. If ship_2 thinks the collision happened 100ms later than ship_1, then ship_2 is still moving "into" ship_1 after ship_1 handled the collision and is spinning around. In this case, you'd have to do something clever to reconcile the 3 simulations. If the server "takes over" and imparts the collision forces on both clients, that could help. Definitely want to add logic that says "if collision happened < Xmsec ago from object Y, don't allow another collision with object Y."

Overall it's a tough problem to solve, but I still don't think you need the server to run a full physics sim for each ship. Just need clever tricks to reconcile the 3 sims in/around a collision.

Ok, how about parking a space bike inside a bigger ship? This is a weird one due to local physics grids. I fly my bike up to the boundary of ship's physics grid. Cross the boundary, now I'm no longer in world physics, I'm in ship physics. What happens when ship rotates 180 degrees around Y and starts moving? Well, I get that information from the server, and have to add the ship's delta-rotation and and delta-position to my own. Seems plausible. As long as I can just rely on that sparse data from the server and self-apply, latency shouldn't be an issue. Yeah, if the ship desyncs for a bit, it's gonna look like I'm rubberbanding around relative to objects not in my reference frame, but I shouldn't be ejected from the ship.

tuo
Jun 17, 2016

Toops posted:

idk, I don't think the server needs to run the full physics sim for each ship, nor do the physics ticks need to be synced. Client calculates all the physics, sends position/rotation and velocity to the server, server sends it to the clients who need to know, after doing sanity checks to make sure the parameters aren't haxmode. Other clients handle interpolation, etc.

you have three nested physics grid, each with 100ms latency from each other, each reliant on the physics solving from the grid above. How should the server sanity check the position that the client three grids down reports to it? What if the server decides that the "middle" physics grid player is cheating, how would it resolve the physics grid within? Each physics grid is reliant on the one above, while beeing able to look at and shoot at the same matrushka doll setup on the opposite side of the idris battle. How would you sanity check such a situation if the whole simulation is not run by the server?

SomethingJones
Mar 6, 2016

<3
FIDELITY GRID HIERARCHY

Oil on canvas, 1853

TheAgent
Feb 16, 2002

The call is coming from inside Dr. House
Grimey Drawer

tuo posted:

you have three nested physics grid, each with 100ms latency from each other, each reliant on the physics solving from the grid above. How should the server sanity check the position that the client three grids down reports to it? What if the server decides that the "middle" physics grid player is cheating, how would it resolve the physics grid within? Each physics grid is reliant on the one above, while beeing able to look at and shoot at the same matrushka doll setup on the opposite side of the idris battle. How would you sanity check such a situation if the whole simulation is not run by the server?
it will just work perfectly because chris roberts

Ayn Marx
Dec 21, 2012

So, so many Derek Smart posts begging for attention and relevance
So many

Combat Theory
Jul 16, 2017

Codezombie posted:

Try this for what the audio sounds like while you wait.
https://www.youtube.com/watch?v=qK1aD4CceRI

Due to my irl work I am have a very OCD hearing for virtual vehicles and this pleases me. Powertrain and suspension sounds good. Like the gearbox touch. Many games overdo the gearbox. For rally tho, turbo doesn't have enough presence. blow off valve is good and the anti lag in the Ford was on point. But I would have given the turbo running noise more presence. Forza motorsport 3 did the turbos good regarding sound, but for rally it's a very special case because the turbos are inherently too small and spool up to very high rpm which gives it the typical rally turbo wheeeeeeeffffff sound. Whereas bigger turbos give you a constant chchchchchchch noise.

But again I am very pleased with the overall sound stage.

Codezombie posted:

It really sounds like CIG are honestly stalling the main thread waiting on (a) network update(s). I'm not sure that I've ever encountered that before, if it is they case they are doing that, then it's the most beserk idea.

Cry engine has 2 main fallouts for multiplayer. There's a certain ratio at which the client can run faster than the server and the engine is completely unaware of a thing called multi threading.

AlbieQuirky
Oct 9, 2012

Just me and my 🌊dragon🐉 hanging out
I was going to take one for the team and go see American Satan, but it is not playing anywhere in Boston, Cambridge, or nearby suburbs, and I'm not driving all the way to Methuen (on the New Hampshire border) to see a lovely movie.

Eldragon
Feb 22, 2003

Toops posted:

idk, I don't think the server needs to run the full physics sim for each ship, nor do the physics ticks need to be synced. Client calculates all the physics, sends position/rotation and velocity to the server, server sends it to the clients who need to know, after doing sanity checks to make sure the parameters aren't haxmode. Other clients handle interpolation, etc.

I'm just spitballing, so let's think of some edge cases.

What happens when two ships are about to collide? Well, the server is sending ship_1's position and velocity to ship_2, and vice-versa, and each client knows what type of ships are around them (from which you can get other ships' mass), so maybe collisions can be handled client-side. Every client can calculate collision force with mass and velocity (p = mv, F = dp/dt).

Let's say in this example, ship_2 is a plucky Aurora trying to ram ship_1, a Connie. If this game is ever released, seems like the prototypic Goonrathi use-case. From ship_1's perspective, you would see ship_2 approach, rotate to optimal ramming trajectory, accelerate to ramming speed. Because the server is sending ship_2's position data at (tick rate), and you're interpolating between ticks, you should have enough info to calculate when the collision will happen, where the impact occurs on your hull, and what the imparted force will be. You apply the collision force to yourself locally, and keep sending position/rotation/velocity data to the server as you rapidly change direction and rotation from the resultant force of impact. ship_2 does the same as it responds to the collision.

The challenge here is network latency and resolving when and where the collision happened between different versions of the simulation (client_1, client_2, and server). Both clients will see something slightly different, and it's easy to envision a scenario where both ships wind up clipping through each other. If ship_2 thinks the collision happened 100ms later than ship_1, then ship_2 is still moving "into" ship_1 after ship_1 handled the collision and is spinning around. In this case, you'd have to do something clever to reconcile the 3 simulations. If the server "takes over" and imparts the collision forces on both clients, that could help. Definitely want to add logic that says "if collision happened < Xmsec ago from object Y, don't allow another collision with object Y."

Overall it's a tough problem to solve, but I still don't think you need the server to run a full physics sim for each ship. Just need clever tricks to reconcile the 3 sims in/around a collision.

Ok, how about parking a space bike inside a bigger ship? This is a weird one due to local physics grids. I fly my bike up to the boundary of ship's physics grid. Cross the boundary, now I'm no longer in world physics, I'm in ship physics. What happens when ship rotates 180 degrees around Y and starts moving? Well, I get that information from the server, and have to add the ship's delta-rotation and and delta-position to my own. Seems plausible. As long as I can just rely on that sparse data from the server and self-apply, latency shouldn't be an issue. Yeah, if the ship desyncs for a bit, it's gonna look like I'm rubberbanding around relative to objects not in my reference frame, but I shouldn't be ejected from the ship.

Sorry, I should have clarified in my earlier post to save you a lot of :words:, but does it need to be this way? Oh hell no. Its how SC is programmed because they don't know any better and they wanted something quick. I always figured those crytek devs they picked up would clean up this mess; but that should have been 2 years ago.

And to clarify, this is my understanding of how Cryengine works as it was described to me 3 years ago. I could be totally wrong. Not firsthand expertise in any way.

Ghostlight
Sep 25, 2009

maybe for one second you can pause; try to step into another person's perspective, and understand that a watermelon is cursing me



Time for an engine change

Erenthal
Jan 1, 2008

A relaxing walk in the woods
Grimey Drawer

Ghostlight posted:

Time for an engine change



Mirificus
Oct 29, 2004

Kings need not raise their voices to be heard
https://twitter.com/TarkaRoshe/status/919906519206055937
https://twitter.com/TarkaRoshe/status/919907191469084677
https://twitter.com/TarkaRoshe/status/919909624144330752

D_Smart
May 11, 2010

by FactsAreUseless
College Slice

Toops posted:

Ok, how about parking a space bike inside a bigger ship? This is a weird one due to local physics grids. I fly my bike up to the boundary of ship's physics grid. Cross the boundary, now I'm no longer in world physics, I'm in ship physics. What happens when ship rotates 180 degrees around Y and starts moving? Well, I get that information from the server, and have to add the ship's delta-rotation and and delta-position to my own. Seems plausible. As long as I can just rely on that sparse data from the server and self-apply, latency shouldn't be an issue. Yeah, if the ship desyncs for a bit, it's gonna look like I'm rubberbanding around relative to objects not in my reference frame, but I shouldn't be ejected from the ship.

It's just a bounding volume. Nothing to do with "physics grid" - and CIG are just obfuscation the issue and proclaiming bullshit (they know their audience after all).

The idea of object A being inside object B that is being translated in world space, is as old as computer books on physics simulations.

They have to flag the "inside" part of the docking bay, as a special volume (e.g. they can create a rectangle). Then "detect" a collision which would imply entry/exit by another entity. And because they botched it, that's why the rover was destroyed on the ramp because the physics response to a rigid body, triggered a collision response large enough for the StarEngine to determine that the rover took enough damage to be destroyed. It's why the player was able to walk up the ramp and into the Idris because the character model isn't a rigid body, and thus is handled differently.

It's why they have trouble with the Nox entering a ship; then going haywire when the player climbs off, and the Nox - a rigid body - triggers a collision with the volume and goes flying all over the place.

It's never - ever - going to work unless they take control away from the player by making it so that "press F to dock" is used which then guides and parks a vehicle inside another. And then it can't be moved until you reverse this process. It's the same way that they handle ships on landing pads. And even those are ganky AF because of their lovely physics implementation.

For example, in my game, the reason that I can EVA from a ship, then land on it and walk even as it hurtles through space, is because once the player touches that body, I treat it as having magnetic boots. And then I use a "step time" to determine updates which determine whether or not I am still attached to it. The only way you can stop walking/running on top of the ship or station, is via a player controlled movement: the jump key.

$160M and those clowns can't figure out even the most basic and mundane things. But they're totally going to make an MMO out of a multiplayer game that can't even handle more than a few clients without going catatonic.

Get a loving refund, son.

EDIT: oooh, I have a new avatar. Thanks!

EDIT2: Oh fer fucks sake, they changed it again. Who did I trigger today? :laffo:

----------------
This thread brought to you by a tremendous dickhead!

D_Smart fucked around with this message at 17:24 on Oct 16, 2017

Mne nravitsya
Jul 14, 2017

I wonder if Sandi’s met Joel Weinstein yet. And if so, she’s not getting good roles out of it. :dong:

Mirificus
Oct 29, 2004

Kings need not raise their voices to be heard

Colostomy Bag
Jan 11, 2016

:lesnick: C-Bangin' it :lesnick:

AlbieQuirky posted:

I was going to take one for the team and go see American Satan, but it is not playing anywhere in Boston, Cambridge, or nearby suburbs, and I'm not driving all the way to Methuen (on the New Hampshire border) to see a lovely movie.

I was going to take one for the team as well but my modest 300K-400K city didn't apparently have the draw of larger metro areas.

Iceclaw
Nov 4, 2009

Fa la lanky down dilly, motherfuckers.

Mne nravitsya posted:

I wonder if Sandi’s met Joel Weinstein yet. And if so, she’s not getting good roles out of it. :dong:

That is kind of tasteless. Even about someone as unlikable as her.

reverend crabhands
Feb 3, 2016

https://twitter.com/dawnofevil/status/919906918700863488

Holy poo poo I can get paid???

Colostomy Bag
Jan 11, 2016

:lesnick: C-Bangin' it :lesnick:


What? You don't get weekly checks from Smart First National Bank?

Mirificus
Oct 29, 2004

Kings need not raise their voices to be heard

Saladin Rising
Nov 12, 2016

When there is no real hope we must
mint our own. If the coin be
counterfeit it may still be passed.

Jobbo_Fett posted:

You know, I just realised something.

Chris Roberts' last foray into video game development pre-dates multi-core CPUs

BUT DON'T WORRY HE CAN BUILD THE BEST drat GAME OF ALL TIIIIIIIIIIIME!

Combat Theory posted:

Cry engine has 2 main fallouts for multiplayer. There's a certain ratio at which the client can run faster than the server and the engine is completely unaware of a thing called multi threading.
Coming in Star Citizen 2018 2019: a revolutionary new Chris Roberts technology: using more than one core/thread at a time! It will truly REVOLUTIONIZE THE GAMING INDUSTRY!

Assuming bankruptcy proceedings haven't started by 2019.

SomethingJones
Mar 6, 2016

<3

IT IS NOT REALLY THE TOOL WHICH IS HARD TO MAKE

Colostomy Bag
Jan 11, 2016

:lesnick: C-Bangin' it :lesnick:

TheAgent posted:

it will just work perfectly because chris roberts

If you were only half the thumb he is.

Mne nravitsya
Jul 14, 2017

Iceclaw posted:

That is kind of tasteless. Even about someone as unlikable as her.

Sorry. Dark humor abounds in me. If it’s any consolation, i didn’t type his real first name.

intardnation
Feb 18, 2016

I'm going to space!

:gary: :yarg:

tuo posted:

drat, don't make me buy another race sim.... ;)

e: gently caress it, I'll try it

ee: the motion correction I'm speaking of is actually some kind of driver level correction, before the running sim get's the positional data from the headset/steamvr/oculus thingy. It simply substracts the movement it implies to you from the x/y/z coords the vr framework receives. You have to tune it quite well with your eye height above chair etc. so it can calculate exactly how much it has to compensate for.

unless you use revive there is no native vive support for it. It will never be on pc for that reason.

Sabreseven
Feb 27, 2016

Mne nravitsya posted:

Sorry. Dark humor abounds in me. If it’s any consolation, i didn’t type his real first name.

Don't worry, I don't think Sandi is his type anyway, I heard he only likes talented actresses. :D

Virtual Captain
Feb 20, 2017

Archive Priest of the Stimperial Order

Star Citizen Good, in all things forevermore. Amen.
:pray:

D_Smart posted:

$160M and those clowns can't figure out even the most basic and mundane things. But they're totally going to make an MMO out of a multiplayer game that can't even handle more than a few clients without going catatonic.

Yeah but cloud, and power of machine learning! CIG will deploy customized cloud servers and leverage machine learning on the physics grid.

For a laugh search "network" or "physics" on the 10FtC transcripts.

reverend crabhands
Feb 3, 2016

D_Smart posted:

$160M and those clowns can't figure out even the most basic and mundane things.

I'm sure they can figure it out, and tell Crobbler.

It's just Crobbler doesn't take no for an answer, else you're fired.

So the dev push back that would occur does not happen.

monkeytek
Jun 8, 2010

It wasn't an ELE that wiped out the backer funds. It was Tristan Timothy Taylor.

Tippis posted:

Don't worry. Knowing CIG, that's probably how it'll end up working: the zones are instanced, but the trigger points are shared — any time anyone triggers one, the effect is shared among everyone.

And by "shared among everyone" you mean CTD for all on the server? :gerty:

BloodyScab
Sep 12, 2017

by Smythe
If this isn't the last citcon its almost certainly the last one that's a big rented out event. Next year will have to be a livestream thing to save cash.

Colostomy Bag
Jan 11, 2016

:lesnick: C-Bangin' it :lesnick:

I'm awaiting for them to bring up quantum entanglement to reduce ping times to 0.

That way, Cymelion who is buried deep in the depths of Australia can actually play a MP game on the MMO scale of Star Citizen.

Codezombie
Sep 2, 2016


"Some of the fuckwits that respond to Derek appear to be working for little known dev studios. But you're probably right there."

I feel Grief...



Combat Theory posted:

But I would have given the turbo running noise more presence. Forza motorsport 3 did the turbos good regarding sound, but for rally it's a very special case because the turbos are inherently too small and spool up to very high rpm which gives it the typical rally turbo wheeeeeeeffffff sound. Whereas bigger turbos give you a constant chchchchchchch noise.

Thanks. Its appreciated. :)
Most of the turbos are recorded off the actual cars, we record them at the same time as the engines, but I think the code that simulates the audio for them does still need improvement.

D_Smart
May 11, 2010

by FactsAreUseless
College Slice

These loving clowns.

As devs, we ALWAYS talk to the engineering teams for the middleware that we license. Heck, even I was on several calls with the LumberYard guys in the past, and even had an email exchange with them earlier this month after they released the recent major patch.

So if this dev says they're already talking to the LumberYard team, it's just par for the course. And them asking other devs their opinion, isn't much different.

Once again, they create a thread to attack a game dev because he dared to even hint about something that goes against CIG. He calls it a "cheap jab".

----------------
This thread brought to you by a tremendous dickhead!

Codezombie
Sep 2, 2016

D_Smart posted:

These loving clowns.

As devs, we ALWAYS talk to the engineering teams for the middleware that we license. Heck, even I was on several calls with the LumberYard guys in the past, and even had an email exchange with them earlier this month after they released the recent major patch.

So if this dev says they're already talking to the LumberYard team, it's just par for the course. And them asking other devs their opinion, isn't much different.

Once again, they create a thread to attack a game dev because he dared to even hint about something that goes against CIG. He calls it a "cheap jab".

Middleware teams are pretty chatty, its their bread and butter to hook in new studios to use their stuff.
I've happily had a good couple of drinks with some of the Sony Audio guys who worked on Morpheus.
I've spent a fair bit of time chatting with the Unreal devs, even though I've never really used it.

I have plenty of ex colleagues over at Unity.

As you say, its a bloody small industry.

Dusty Lens
Jul 1, 2015

All Glory unto the Stimpire. Give up your arms and legs and embrace the beautiful agony of electricity that doubles in pain every second.

BloodyScab posted:

If this isn't the last citcon its almost certainly the last one that's a big rented out event. Next year will have to be a livestream thing to save cash.

The next citcon will be held in a virtual room utilizing CIG's patented face capture software. Look around at the faces frozen in joy. Watch your hands as they clap.

Codezombie
Sep 2, 2016

Dusty Lens posted:

The next citcon will be held in a virtual room utilizing CIG's patented face capture software. Look around at the faces frozen in joy. Watch your hands as they clap.

What amuses me is that they are clearly having bandwidth issues, so the next feature they add is one that needs even more bandwidth...

Adbot
ADBOT LOVES YOU

Sabreseven
Feb 27, 2016

Codezombie posted:

What amuses me is that they are clearly having bandwidth issues, so the next feature they add is one that needs even more bandwidth...

The best way to make the camels back stronger is to keep loading more staw onto it. :)

  • 1
  • 2
  • 3
  • 4
  • 5