Development Sneak Peek #4

16 February 2018


Some of you were asking for a new Dev Sneak Peek, and it’s finally here πŸ˜‰

We have all been quite busy since the last post in the series, here’s a brief summary of what you have seen:

  • 1 major release, featuring West Coast USA, a new in-game mod repository, new drivetrain torque reaction physics and lots more
  • 5 minor releases, with various improvements and numerous bugfixes
  • A time-limited special Winter event mod with a corresponding Steam achievement to unlock

While all of that happened, we’ve been continuing to work on the next major release, and regularly posting updates in the developer subforum. Some of these updates mention features that are already available for you to play with, so those might not be new to you, but we thought you’d like to see what’s under the hood anyway.

Remember that this post contains just a sample of what the BeamNG team has been working on. Most of it is taken straight from our Developer Section, so if you want to find out about these tidbits before anyone else, you may want to subscribe to that subforum.

Enjoy!

What you see here will NOT necessarily reach the next update or the final version
If it does, it is NOT representative of what it may look like
More work happens behind the curtains – this is only a random selection!
LJFHutch, Oct 25, 2017:

Here’s some signs:


A few more:


thomatoes50, Oct 30, 2017:

Hot-loading for Mesh is fixed too

stenyak, Oct 30, 2017:

Currently working on small improvements for the spawn algorithm of External camera. Here’s some debug visualizations of two of its worst enemies:

One of them is curved tunnels:


The other is… fast tunnels:

Red lines are the reasons why specific spawn configurations were discarded.
Blue lines are those discarded spawn configurations: each blue line represents the predicted camera path during its panning movement. If the camera was static, it would be just a point, rather than a line.
The black line represents the chosen spawn point. Green sphere is the original position, white is its current position, red will be the final position, if everything goes according to the basic predictions we performed at the beginning of the take.

tdev, Nov 14, 2017:

Sneak peak, work in progress πŸ™‚

stenyak, Nov 16, 2017:

This is a statistical profiler, and is one of the tools a developer can use to optimize software:

It sneakily gathers stats about what the program is internally doing at intervals, for a period of time. If this profiler thingie caught BeamNG.drive doing the same thing (in the same function of code) 90% of the times it has taken a look, then it would mean we are probably spending 90% of the time there.

More samples means more reliable stats. In this case, the profiler has taken 62.000 samples while I was recording a replay of an ETK K-series doing burnouts and donuts.

Once you know what the cpu time is used for, you have a better idea of where it might be worth to spend your time optimizing. As you analyze and rework the chosen code, you run the profiler again to verify the results are indeed what you expect (they not always are).

In this case, the changes resulted in roughly a 0.6% increase in framerate for that specific replay recording scenario in my computer.

tdev, Dec 1, 2017:

So, in the first days of the repository our CDN provider Akamai really helped us push the load – so everyone can have fast ingame downloads πŸ™‚

The peak bandwidth at one point was 1939 MBit/s πŸ™‚

Since its release, we had 387 thousand downloads with it πŸ™‚


LJFHutch, Dec 4, 2017:

Hilltop villa:


Diamondback, Jan 16, 2018:

The last days we have been working on implementing an expression based system for variables in jbeam.

To recap, that’s how variables in jbeam are currently used:
Define the variable(s):

[“$wastegateStart”, “range”, “psi”, “Turbocharger”, 8, 6, 36, “Wastegate Start”, “Pressure at which the wastegate begins to open”][“$wastegateLimit”, “range”, “psi”, “Turbocharger”, 10, 8, 38, “Wastegate Limit”, “Pressure at which the wastegate is fully opened”],
And then use it to adjust whatever you need to adjust:
“wastegateStart”:”$wastegateStart”
“wastegateLimit”:$wastegateLimit”
Now that system has enabled us to offer lots of tuning options, from tire to pressure, over turbo and engine settings to things like spring rates.
However, all the time the system was quite limited, you could just assign a single variable to a single data point.

With the expression based extension of this, we aim to allow for simpler, yet more powerful tuning options.
The goal is to essentially allow the creator to use math inside these variables to allow for finer control and easier tuning.

Let’s take a look at the example from above simplified with expressions:

Definition:

[“$wastegateStart”, “range”, “psi”, “Turbocharger”, 8, 6, 36, “Wastegate Start”, “Pressure at which the wastegate begins to open”]
Usage:
“wastegateStart”:”$wastegateStart”
“wastegateLimit”:”$=$wastegateStart + 2″
As you can see, you can now avoid having two different variables and just use a fixed offset.
One could also allow to tune the start value + the offset and use it like so:
“wastegateStart”:”$wastegateStart”
“wastegateLimit”:”$=$wastegateStart + $wastegateRange”
We also plan to allow the use of certain math related functions like:

  • min
  • max
  • abs
  • sin
  • cos
  • tan
  • sign
  • round
  • square
  • etc

We haven’t finished working on this yet, so details may or may not change/disappear/appear. But in any case, this is a much needed extension of the jbeam variable system, made to allow for much greater customization while keeping stuff more simple to use. πŸ™‚

Diamondback, Jan 19, 2018:

Just a tiny cryptic teaser πŸ™‚
As always, no promises on if and how that actually makes it into a final release but we are experimenting with something like this.

Nadeox1, Jan 29, 2018:

Improved ‘Caustics’ being displayed at any depth at full strength.
Now fades out the deeper you go.

We also disabled the underwater bobbing/distortion effect, as it was kind of nauseating.

LJFHutch, Jan 30, 2018:

I implemented longer grass for the more wild areas




LuisAntonRebollo, Feb 2, 2018:

Working on lots of invisible changes on the render code, but i have on my ToDo some little things too…

Added a new material option for invert backface normals for simplify geometry of some opaque objects.

stenyak, Feb 2, 2018:

A future update will include small improvements in the handling of audio devices.

The first change will be the ability to just use whatever the selected Windows audio device is. It’s checked each time you start BeamNG.drive, and remembered for the rest of the session:

You can of course still force the use of an specific audio device, if you want BeamNG.drive to always go through one specific output (if you want to actively ignore your Windows configuration).

The second change is the ability to remember previously plugged devices:

For example, if you had decided to use a USB headset for the game, and have now unplugged it, BeamNG.drive will temporarily use the Windows default as fallback. But it will remember your old choice and use it again next time you run the game with that USB headset plugged in.

tdev, Feb 5, 2018:

Repo is back on – 2.9 GBit/s max peak, 17.5 M hits and 26.8 TB mods delivered in two days.


LJFHutch, Feb 13, 2018:

Improved the grass throughout the entire island.



Diamondback, Feb 14, 2018:

Giving the torque/power related apps a bit more attention:

There has been some confusion around what each value means so I tried to make that more obvious πŸ™‚

tdev, Feb 15, 2018:

πŸ˜€

Nadeox1, Feb 19, 2018:

Busy street

What you see here will NOT necessarily reach the next update or the final version
If it does, it is NOT representative of what it may look like
More work happens behind the curtains – this is only a random selection!

0.11.0.5 released

02 February 2018

Fixes a lot of problems with the Ingame repository.

Fixes

  • Fixed random crash (related to fileSystem notifications and shaders)
  • Fixed ingame repository subscribing or unsubscribing too many times, endless download loops, not downloading new subsriptions, detail mods page not using offline data
  • Fix issue where you could not uninstall a mod you didn’t not subscribe to first (manual install)

Others

  • Readded the “Show only subscribed” button in ingame repository
  • Ingame repository: Hide configuration is enabled by default to match website
Please note that this is a hotfix release to fix issues within 0.11. We are also working on 0.12 in parallel πŸ™‚

Instructions on how to update the game here.
Bug reporting/Help Thread here.

0.11.0.4 released

20 December 2017

The fourth hotfix for 0.11 to fix some ingame repository issues

Fixes

  • Improved ingame repository reliability on slow or unstable connections
  • Fixed levels not showing up after installing a mod
  • Fixed apps that used the sensor stream. I.e. the G-force meter
Please note that this is a hotfix release to fix issues within 0.11. We are also working on 0.12 in parallel too πŸ™‚

Instructions on how to update the game here.
Bug reporting/Help Thread here.

Snowmen everywhere!

08 December 2017

Ho ho ho!

We have a small present for you – a special winter event mod that will only run until 7th of January πŸ™‚

If you update your game, the mod will automatically download and activate. As it is a mod, you can activate/deactivate as you like.

It features the “Snowman Hunt” minigame:

Collect all 90 snowmen to unlock the new achievement.
Tip: It helps if you have the “Navigation”-App and sound enabled πŸ™‚

The whole BeamNG team wishes you Happy Holidays and a Happy New Year!

And as usual the changelog follows:

Fixes

  • Fixed Filesystem problems: user files would not overlay mods. Making it difficult to work on mods.
  • Fixed engine being disabled if the starter took too long to start
  • Fixed exhaust using wrong end nodes upon reset

Misc

  • Improved vehicle collision reaction forces
  • Improved the rigidity of door mirrors on 200BX, Covet, Roamer
  • Retuned Stage 3/4 superchargers on Barstow, Burnside, Moonhawk to have more base engine torque and less boost pressure
  • Sunburst: Tuned weights to reduce polar inertia for faster steering response

Known problems

  • We found the performance degradation issue with West Coast Usa and are investigating it
Please note that this is a hotfix release to fix issues within 0.11. We are also already working on 0.12 in parallel too πŸ™‚

Instructions on how to update the game here.
Bug reporting/Help Thread here.

Older Posts »