Jump to content

Paging Karl Berg...karl Berg, Please Pick Up The White Courtesy Phone...


1911 replies to this topic

#641 Tekadept

    Member

  • PipPipPipPipPipPipPipPip
  • Knight Errant
  • 1,290 posts
  • LocationPerth, Australia

Posted 08 May 2014 - 09:33 PM

A lot of games in the past from back in Battlefield 2 days, up to warthunder now have had match replay functionality, which records the match data, and allows it to be replayed on the client after the fact with free camera motion and allows some pretty awesome community video functionality, also allow excellent debriefs for units.

Aside from the fact that it has never been mentioned, and I am sure it never will be coming down from Designs mountain top, Is that "possible" with the current MWO architecture and just not on the radar yet, or is it just not likely possible ever due to architecture limitations?

Edited by Tekadept, 08 May 2014 - 09:33 PM.


#642 Wintersdark

    Member

  • PipPipPipPipPipPipPipPipPipPipPip
  • 13,375 posts
  • Google+: Link
  • Twitter: Link
  • LocationCalgary, AB

Posted 09 May 2014 - 01:17 AM

View PostTekadept, on 08 May 2014 - 09:33 PM, said:

A lot of games in the past from back in Battlefield 2 days, up to warthunder now have had match replay functionality, which records the match data, and allows it to be replayed on the client after the fact with free camera motion and allows some pretty awesome community video functionality, also allow excellent debriefs for units.

Aside from the fact that it has never been mentioned, and I am sure it never will be coming down from Designs mountain top, Is that "possible" with the current MWO architecture and just not on the radar yet, or is it just not likely possible ever due to architecture limitations?
Been covered in the old AtD:

They want to do it, and its possible, but low priority vs. UI/CW/etc as its a feature that would require a solid chunk of dev time from every department.

#643 Tekadept

    Member

  • PipPipPipPipPipPipPipPip
  • Knight Errant
  • 1,290 posts
  • LocationPerth, Australia

Posted 09 May 2014 - 01:43 AM

View PostWintersdark, on 09 May 2014 - 01:17 AM, said:

Been covered in the old AtD:

They want to do it, and its possible, but low priority vs. UI/CW/etc as its a feature that would require a solid chunk of dev time from every department.

But I want to hear it from the keyboard of a dev ^_^ those ATD were just the position at the time, and they were slim with the truth as it was, based on what they said would or would not happen.

Edited by Tekadept, 09 May 2014 - 02:06 AM.


#644 Li Song

    Member

  • PipPipPipPipPipPip
  • Bad Company
  • Bad Company
  • 225 posts
  • LocationSweden

Posted 09 May 2014 - 02:53 AM

I was directed here from reddit. I'm developing the Li Song Mechlab software (http://mwomercs.com/...g/page__st__100) and I have a question about mech movement.

What is the correct way of calculating a mech's turning speed?

I discussed this with Smurfy (https://github.com/E...lsml/issues/226) and we're currently using a formula from an old, discontinued mechlab called mechromancer(?) which is: "enginerating / mechtons * 360/31.4". I'm interested to know if there is a value in the .mdf files I could use instead of 360/31.4.

#645 Karl Berg

    Technical Director

  • 497 posts
  • LocationVancouver

Posted 09 May 2014 - 10:41 AM

View PostLi Song, on 09 May 2014 - 02:53 AM, said:

I was directed here from reddit. I'm developing the Li Song Mechlab software (http://mwomercs.com/...g/page__st__100) and I have a question about mech movement. What is the correct way of calculating a mech's turning speed? I discussed this with Smurfy (https://github.com/E...lsml/issues/226) and we're currently using a formula from an old, discontinued mechlab called mechromancer(?) which is: "enginerating / mechtons * 360/31.4". I'm interested to know if there is a value in the .mdf files I could use instead of 360/31.4.


This is a bit complicated. I've just looked through all of the code again to see where all the config values come from, and indeed the mdf turn parameters and the engine rating are used. Beyond that, here are some of the factors:

- Engine rating gets divided by mechs max tonnage to calculate an effective engine rating for that mech.
- There are separate turn speeds for mech legs, upper torso pitch, upper torso yaw, arm pitch, and arm yaw
- The mech leg turn speed is affected by your engines current power output* when actually in-game, the higher your throttle, the faster you can turn
- The scaling of that mech leg speed is done using a three-point linear interpolation, controlled by the factors:
   TurnLerpLowRate
   TurnLerpMidRate
   TurnLerpHighRate
   TurnLerpLowSpeed
   TurnLerpMidSpeed
   TurnLerpHighSpeed

- Several mdf parameters are converted from degrees to radians, and then multiplied by engine effective rating and skill-tree bonuses

The following parameters are directly converted from degrees to radians ( * (Pi / 180)) in-code:
   TorsoTurnSpeedPitch
   TorsoTurnSpeedYaw
   MaxTorsoAnglePitch
   MaxTorsoAngleYaw
   MaxArmRotationPitch
   MaxArmRotationYaw
   ArmTurnSpeedPitch
   ArmTurnSpeedYaw
   MaxFreeLookPitch
   MaxFreeLookYaw


So I think in general, the formula you are looking for is <mdf value> * (Pi / 180) * (<engine rating> / <mech max tonnage>) * <skill tree fudge factor>

That covers pretty much everything except the leg turn speed, which is affected by throttle rate and a more complicated multi-lerp implementation to determine actual turn speed.

Now, to understand the leg turn rate requires those 6 factors I mentioned earlier: TurnLerpLowRate, TurnLerpMidRate, TurnLerpHighRate and TurnLerpLowSpeed, TurnLerpMidSpeed, TurnLerpHighSpeed. These values are specified in radians, not degrees.

Lets define some notation to make this easier to read/write:

TurnLerpLowSpeed = inLow
TurnLerpMidSpeed = inMed
TurnLerpHighSpeed = inHigh

TurnLerpLowRate * (<engine rating> / <mech max tonnage>) = outLow
TurnLerpMidRate * (<engine rating> / <mech max tonnage>) = outMed
TurnLerpHighRate * (<engine rating> / <mech max tonnage>) = outHigh

Throttle = x

The throttle is used as an interpolation value in the following way:

if (x <= inLow)
{
	return outLow;
}
else if (x > inLow and x <= inMed)
{
	float factor = ((x - inLow) / (inMed- inLow));
	return outLow + factor * (outMed - outLow);
}
else if (x > inMed and x <= inHigh)
{
	float factor = ((x - inMed) / (inHigh - inMed));
	return outMed + factor * (outHigh - outMed);
}
else
{
	return outHigh;
}


To get turn speed for any given throttle setting should involve using that above function. Also a disclaimer; I put this together pretty quickly, so there could very well be errors. Don't take this as 100% completely confirmed.

Hopefully that helps!

* The actual throttle value used in-game maps to engine output power, so this input varies with hill climb factor, how long the mech has been accelerating, whether or not you're running into a wall, etc..

edit: formatting :D
edit2: fixes found by LiSong

#646 Heffay

    Rum Runner

  • PipPipPipPipPipPipPipPipPipPip
  • The Referee
  • The Referee
  • 6,458 posts
  • LocationPHX

Posted 09 May 2014 - 10:45 AM

View PostKarl Berg, on 09 May 2014 - 10:41 AM, said:

*snip*


So... just approximate it? :D

#647 Karl Berg

    Technical Director

  • 497 posts
  • LocationVancouver

Posted 09 May 2014 - 10:55 AM

View PostTekadept, on 09 May 2014 - 01:43 AM, said:

But I want to hear it from the keyboard of a dev :D those ATD were just the position at the time, and they were slim with the truth as it was, based on what they said would or would not happen.


Yes, totally do-able. The entire game is designed to be replicated over a network after all, so we already go through a lot of the work required to compress and serialize data streams that represent the game being played.

There are complications however, playing back that data stream currently requires a dedicated server process to communicate back and forth with. Certain bits of that data stream use an entropy based encoder to compress replicated data, which would complicate us swapping over to a file based IO system for playback. I'd estimate this as quite a bit of work required to get this up and running; so it likely won't be pulled into a sprint any time in the immediate future.

#648 Loc Nar

    Member

  • PipPipPipPipPipPipPipPip
  • 1,132 posts

Posted 09 May 2014 - 01:07 PM

Hi Karl, I'm glad to see this thread continue at its steady pace.. it really is a beacon of hope for many. I'm doing a follow up inquiry to the status of TrackIR implementation, which was word several weeks ago was that it was passed off to QA. Thanks for your efforts either way man.

#649 Karl Berg

    Technical Director

  • 497 posts
  • LocationVancouver

Posted 09 May 2014 - 03:11 PM

View PostKmieciu, on 06 May 2014 - 10:48 PM, said:

Hi Karl,

Could you share with us the recent distribution of players among different mech weight classes?
For example, during the last week, what % of players dropped in a light, medium, heavy and assault mech?

Because the majority of matches I'm in, I see a huge heavy and assault bias. I just wonder if that's because of my particular Elo bracket, or is it a common trend?


I have some recent numbers, this is for a single day of telemetry:

Light: 16%
Medium: 21%
Heavy: 35%
Assault: 28%

View PostLoc Nar, on 09 May 2014 - 01:07 PM, said:

Hi Karl, I'm glad to see this thread continue at its steady pace.. it really is a beacon of hope for many. I'm doing a follow up inquiry to the status of TrackIR implementation, which was word several weeks ago was that it was passed off to QA. Thanks for your efforts either way man.


It's done! ... and waiting on QA branch test for integration. Unfortunately launch module and launch module fixes took priority, so I don't think QA has even started on the TrackIR branch yet.

#650 Alaskan Nobody

    Member

  • PipPipPipPipPipPipPipPipPipPipPip
  • The Determined
  • The Determined
  • 10,358 posts
  • LocationAlaska!

Posted 09 May 2014 - 03:19 PM

View PostKarl Berg, on 09 May 2014 - 03:11 PM, said:

I have some recent numbers, this is for a single day of telemetry:
Light: 16%
Medium: 21%
Heavy: 35%
Assault: 28%

So it is kinda backwards to the lore - but still nowhere near as bad as the older MW games. (especially MW4)

#651 DarkonFullPower

    Member

  • PipPipPipPipPip
  • Big Brother
  • 191 posts

Posted 09 May 2014 - 05:19 PM

Thanks for the reply before. I have an odd one here brought about from confusion. This is the post that started this:

http://mwomercs.com/...transfer-to-ct/

tl;dr: Someone from MWO support said that C.A.S.E. limits ammo explosions to 1 ton, and does nothing to keep the damage from spreading to the Center Torso. This is completely different from what the in game description says.

Is the above true or false? If it is true (or even if it's false, if you have the time), can you explain in a post how the game handles ammo explosions from the ground up. This way, if anyone else asks, we can just quote you and end any further confusion.

#652 Cimarb

    Member

  • PipPipPipPipPipPipPipPipPip
  • Caladbolg
  • Caladbolg
  • 3,912 posts
  • Twitter: Link
  • Twitch: Link
  • LocationA hop, skip and jump from Terra

Posted 09 May 2014 - 05:48 PM

View PostDarkonFullPower, on 09 May 2014 - 05:19 PM, said:

Thanks for the reply before. I have an odd one here brought about from confusion. This is the post that started this:

http://mwomercs.com/...transfer-to-ct/

tl;dr: Someone from MWO support said that C.A.S.E. limits ammo explosions to 1 ton, and does nothing to keep the damage from spreading to the Center Torso. This is completely different from what the in game description says.

Is the above true or false? If it is true (or even if it's false, if you have the time), can you explain in a post how the game handles ammo explosions from the ground up. This way, if anyone else asks, we can just quote you and end any further confusion.

This is one of those things that would be REALLY great to have an official wiki for. Hint Hint PGI :)

#653 DarkonFullPower

    Member

  • PipPipPipPipPip
  • Big Brother
  • 191 posts

Posted 09 May 2014 - 06:53 PM

View PostCimarb, on 09 May 2014 - 05:48 PM, said:

This is one of those things that would be REALLY great to have an official wiki for. Hint Hint PGI :)


Indeed. I think they said before that they just don't have time to do so right now, but if you can't then at least tell us the numbers so we can do it for you.

#654 Rebas Kradd

    Member

  • PipPipPipPipPipPipPipPipPip
  • 2,969 posts

Posted 09 May 2014 - 08:23 PM

View PostKarl Berg, on 09 May 2014 - 03:11 PM, said:


I have some recent numbers, this is for a single day of telemetry:

Light: 16%
Medium: 21%
Heavy: 35%
Assault: 28%


Bet a lot of those heavies are dual Gauss builds.

Lights and mediums need massive boosts to their scouting/recon/counter-ECM bonuses, make them into "quick XP" mechs to compensate for their lesser firepower.

Do those proportions hold for weekends? Saturday and Sunday bring different crowds into the game...

Edited by Rebas Kradd, 09 May 2014 - 08:24 PM.


#655 Alaskan Nobody

    Member

  • PipPipPipPipPipPipPipPipPipPipPip
  • The Determined
  • The Determined
  • 10,358 posts
  • LocationAlaska!

Posted 09 May 2014 - 09:18 PM

View PostRebas Kradd, on 09 May 2014 - 08:23 PM, said:


Bet a lot of those heavies are dual Gauss builds.

But everyone knows the Guass charge made it useless garbage! B)

#656 TheCaptainJZ

    Member

  • PipPipPipPipPipPipPipPipPip
  • The CyberKnight
  • The CyberKnight
  • 3,685 posts
  • LocationUnited States

Posted 09 May 2014 - 09:19 PM

I don't see a ton of dual gauss. I do still see a lot of dual AC20s

#657 Kageru Ikazuchi

    Member

  • PipPipPipPipPipPipPipPip
  • The Determined
  • The Determined
  • 1,190 posts

Posted 09 May 2014 - 10:15 PM

View PostKarl Berg, on 09 May 2014 - 03:11 PM, said:

Light: 16%
Medium: 21%
Heavy: 35%
Assault: 28%

These numbers are not particularly surprising ... 1.9 / 2.5 / 4.2 / 3.4 instead of 3/3/3/3.

Thank you again for the little bit of insight into the inner workings of the game.

#658 Tekadept

    Member

  • PipPipPipPipPipPipPipPip
  • Knight Errant
  • 1,290 posts
  • LocationPerth, Australia

Posted 10 May 2014 - 06:19 AM

View PostKarl Berg, on 09 May 2014 - 03:11 PM, said:

Light: 16%
Medium: 21%
Heavy: 35%
Assault: 28%

I know its probably too hard, but I wonder what % of those % are just bringing meta B)

#659 Wintersdark

    Member

  • PipPipPipPipPipPipPipPipPipPipPip
  • 13,375 posts
  • Google+: Link
  • Twitter: Link
  • LocationCalgary, AB

Posted 10 May 2014 - 07:33 AM

View PostRebas Kradd, on 09 May 2014 - 08:23 PM, said:

Bet a lot of those heavies are dual Gauss builds.
It's interesting, I've seen a lot of dual gauss builds lately. That interests me, given how much hate the Gauss changes got.

Quote

Lights and mediums need massive boosts to their scouting/recon/counter-ECM bonuses, make them into "quick XP" mechs to compensate for their lesser firepower.
Not just quick XP; but cbills too. The reality is that there's not really a lot of reason to play a lighter mech right now unless you're just very fond of them. Also, those bonuses? Big mechs get them too, so no matter what you do with them generally you're still better off in a larger mech where you can get the spotting/etc bonuses AND blowing-s***-up bonuses.

They badly, badly need to address how the reward structure works for lighter mechs.



Overall, I was actually surprised by how close the numbers where. I expected fewer mediums and more assaults. While not ideal and evenly spread, they're not too far apart either.

#660 shellashock

    Member

  • PipPipPipPipPipPip
  • Little Helper
  • 439 posts

Posted 10 May 2014 - 08:21 AM

Seriously, I see a dual gauss heavy nearly every other game now. I haven't seen a dual ac20 mech for over a month now. TBH, most people I know (including me) don't like the gauss charge because it makes it difficult to use it as a secondary weapon while barely effecting gauss boats that use it as a primary weapon. The velocity increase that accompanied the charge was a MASSIVE buff to dual gauss builds because it makes it far easier to hit you with a 30 damage pinpoint alpha in any specific component. Maybe dual/triple gauss boats should get a "ghost" reload penalty for alphaing?

NOTE: This is coming from a massive gauss rifle fan that uses a dual/triple gauss heavy every other match.





9 user(s) are reading this topic

0 members, 9 guests, 0 anonymous users