CareerMP: BeamNG.Drive Career Mode for BeamMP

CareerMP enables BeamNG.drive’s Career Mode in BeamMP servers.

Here’s the release link for those who want to just get to it: Releases · StanleyDudek/CareerMP · GitHub

image

Overview

The goal of CareerMP is not to change the base game career mode or create my own unique multiplayer career mode like others have done before to good effect, but to provide whatever handling is necessary on the BeamMP client and server to allow the base game career mode to function as multiplayer, so you can play career mode with friends in the same space.

This is basically the same as single player career mode, and all that means, but in addition to the normal traffic, there will be real players doing their own careers as well.

Highlights / Features

  • Support for all base-game career features at parity with single player career mode
  • Saves are local, you can continue on another server running CareerMP, you can take an online save offline and vice versa
  • Mod vehicles that the base game already support in career mode can spawn in traffic and can be found at dealerships
  • Render distance of vehicles have been increased so that you can see players on the bigMap
  • Forced simple_traffic models are used, in freeroaming career, players spawn 2 road traffic vehicles each; missions, challenges, scenarios add additional unmetered traffic
  • Traffic Signals are synced, for a congruent experience for all players
  • Red light camera / speed trap data broadcasts
  • Dragrace scoreboard display and winner light syncing
  • Missions, challenges, scenarios prefabs (track layouts, barriers, hay bales, barrels, arrow signs, gates, unique structures, et cetera) are synced on the fly so you can observe others engage in these activities and have to find creative ways around should they block your path
  • MP UI app injection into missions, challenges, scenarios, making sure you can see chat or quit the session from most points of play
  • Syncing the active states (shown or hidden) of vehicles is a critical part of behind the scenes functionality
  • Nametag visibility supression for many spawnables including traffic to limit visual clutter

Requirements

Due to multiplayer overhead, client performance requirements are accordingly more demanding than single player, and due to traffic, also accordingly more demanding than vanilla multiplayer. Players with moderate systems have reported 5-10% impact compared to an unmodded BeamMP server lobby, high end systems are not really affected, and low end systems will suffer and struggle to maintain realtime physics and position sync if they are running fewer than 20-30 FPS.

CareerMP v0.0.1 was made to work on the following versions of BeamNG and BeamMP softwares:

  • BeamNG.drive v0.38.4
  • BeamMP Server v3.9.0
  • BeamMP Launcher v2.7.0
  • BeamMP Client v4.20.2

Updates to any of these could possibly render CareerMP non-functional without notice.

Installation

  1. Download the latest release and unpack the contents to the root directory of your BeamMP server directory
  2. Set MaxCars = 100 or greater in your ServerConfig.toml
  3. Set Map = "/levels/west_coast_usa/info.json" in your ServerConfig.toml

Notes

As CareerMP relies on the base game’s career mode, it currently will only function on the West Coast, USA map.

CareerMP provides no player moderation itself, and should not conflict with the server moderation plugin of your choice, provided all players can be allowed to spawn at least 100 vehicles.

CareerMP uses your BeamMP username to create a save file, you can continue this file offline, you can continue this save in any other server running CareerMP, if you would like to use a specific file from single player online in a server running CareerMP, you can make sure the save file’s save name matches your BeamMP username before joining.

Currently everyone’s economy will be local to their save, that is, you cannot currently change money or vehicle, but I hope to make this available, I believe it’s quite possible.

Gallery

image

image

image

image

image

image

If you would like to know more or are interested in contributing, please find me on my discord server: Dudek’s Sandbox

3 Likes

Here’s a first update, aimed at addressing the most commonly observed and most important looking issues

2 Likes

This release reverts the physics disabling attempts of the previous version but keeps the other fixes it provided

the physics issue quickly became a chasing my tail in an unsolvable problem

users should be careful in garages until I figure something out, the most game breaking version of this issue is unicycles spawning inside each other when many new players join at the same time, I will try to address that specific instance of this issue instead of handling physics in garages because it feels impossible to sync correctly

use v0.0.2 with physics disabling in garages and spawn areas if you want to try that one, but it seems best suited to literally co-op (cool i guess, if you want to run 2 player servers, that version seems well suited to it), that is, with a third player things regarding physics disabling get weird. I have to find a solution for 3+ players

2 Likes

Fixes players loading saves while on a CareerMP server leaving abandoned vehicles from the previous save.
Now players can load any of their saves and it will load cleanly removing their previously loaded save’s vehicles.

2 Likes

fixes an issue with stored vehicle repairing

1 Like

small update that sets a consistent ignition state of vehicles, so missions like car jockey and personal vehicle retrieval start with the vehicle ignition off

1 Like

add improved AI traffic by user aiDriver.lua
restore mistakenly deleted simple traffic handling by me lmfao

1 Like

Right click a name in the playerlist to pay another player (2.5 seconds between transactions)
all unicycles are now ghosts

1 Like

fixes an issue with playerlist duplication caused by the previous update adding the payment system, this was preventing players from using the playerlist at all

1 Like

If, upon using the latest version, players do not see the new player list, please ask them to press F5 to reload the UI. This should be a one time action for returning CareerMP players, and the new player list should be present without the need to press F5 in future sessions. The player list should also resolve on the next session even if a player did not press F5.

1 Like

this small update fixes incorrect name attributions in the player’s logbook regarding financial transactions

1 Like

this update is a good faith effort to add rate limiting to players paying each other, you should all be ashamed of yourselves



1 Like

this version turns off freeroaming traffic, a tradeoff to prevent instabilities when missions load and unload
This prevents the issue by not spawning freereoaming traffic so none can explode
this is a temporary measure while I work on alternative solutions, such as manually despawning traffic on mission entry, and spawning a new set when exiting.

if you don’t experience the issue of exploding traffic vehicles on your server when players do missions, you don’t need this, but you probably do.

this means lower count player lobbies will feel sparse, higher player count servers less so, and the trade off being better performance for everyone

disabing auto spawn of freeroaming traffic and the removal of the traffic ai zip are the only changes

IF YOU ARE UPDATING FROM A VERSION THAT INCLUDED THE ADDITIONAL AI TRAFFIC ZIP, REMOVE IT

3 Likes

fixes an issue with CareerMP not cleaning up setting changes when leaving the server
fixes a base game bug with on-the-spot repairing with voucher or cash when using a player’s own vehicle for a mission, reported by Alxti

small follow-up that ensures the previous settings leak fix also keeps settings correct during the session

Third time’s a charm, hopefully, and this really should be the most reliable extension hook way to handle reverting settings

1 Like

this fixes a bug introduced by 0.0.12

fix normal insurance repairs after the fix to mission insurance voucher repairs