Jump to content
nanos GbR
Pascal S.

JC3:MP Beta 0.9.9 is now available

Recommended Posts

Hello everyone,

once again we have another update ready on our road to a stable release. 


  • Reworked the server code
    • We split large parts of the server code into smaller parts and run them in parallel (yay for multithreading)
    • Decoupled the streamer from the main loop, the streamer now runs every 300ms
    • Rewrote server side entity system to use an entity component system with a chunk allocator
      • This fixes a lot of issues we had with use-after delete causing the server to crash
      • This also improves performance when iterating over entities and gives us more flexibility internally
    • We removed delta package generation from the sync and now batch updates and compress them
      • This increases baseline network usage a tiny bit, but significantly improves performance
      • Changed sync from being reliable ordered to unreliable sequenced, aka only the latest sync will be applied
    • More in depth details coming in a blog post soon
  • Updated node to 7.10 (yay for being up to date again)  https://gitlab.nanos.io/jc3mp/node
  • Updated Chromium to our fork (required so we can ask the user before giving access to getUserMedia https://gitlab.nanos.io/jc3mp/cef)
  • Reworked large parts of weapon shoot handling, fixes most issues with shots not being synced properly
  • Reworked crashdump handling procedure to collect more useful dumps and be less annoying to users
    • If the client crashes you'll now get a crash dialog prompting you to upload the dump. Please do so, as it really helps us out in fixing issues
  • Added HealthEffect scripting, allowing you to control health regeneration properties
  • Added support for loading images from client packages to the renderer (#187 (Add support for images in Texture or Renderer))
  • Added a read only localplayer dimension property
  • Added WorldToScreen function to renderer
  • Added logLevel setting to server config
  • Renderer now supports transform in 2d mode
  • Enabled the CEF Sandbox for improved security
    • This should also fix nanosCEF.exe processes staying alive after the client has exited (nanosCEF.exe is gone you will see multiple PlayJCMP.exe's running now)
  • Changed our internal event handler to improve performance and fix issues when used in multiple threads, less (no more) deadlocks
  • Changed plugin init handling to prevent old plugins from being loaded
    • We will release additional information on a future c++ server sdk later
  • Improved error handling when putting invalid data into entity constructors
  • Some internal preparations to support GameObject synchronization
  • Fixed some things not being reset to their defaults on disconnect
  • Fixed issues where certain properties where not applied to the client correctly
  • Fixed vehicles spawning 'stuck' in the air until they are touched by something
  • Fixed server startup failures if no client_packages directory exists
  • Fixed CEF popups not being rendered (for dropdowns)
  • Fixed WebUIWindow missing size getter implementation
  • Fixed various dimension and streaming issues
  • Fixed a crash in our logger that could happen when writing a script error
  • Fixed #284 (Frequent crashes caused by jc3 allocator)
  • Fixed #272 (getUserMedia not working on CEF)
  • Fixed #220 (Custom properties behave weird)
  • Fixed #236 (restart_package does not work)
  • Fixed #77 (UI bugged after server crash)
  • Fixed #183 (PlayerVehicleEntered not called when reentering a vehicle you were removed from by the API)
  • Fixed #59 (Starting without admin access results in a crash on some systems)
  • Fixed #257 (Crash handler (Breakpad) catches exception codes that are supposed to be handled by windows internally)
  • Fixed #260 (Wingsuit: boostCooldown. boostDuration and boostPower always returns default values)
  • Fixed #140 ([FEATURE] Stop connecting / file transfer)
  • Fixed #195 (PlayerWeapon does return wrong values)
  • Fixed #196 (Invalid Steam App Ticket When Rejoining Server)
  • Fixed #221 (Checkpoint has a 'type' field in its constructor but no matching property)
  • Fixed #247 (Malformed package json output is missing path of package)
  • Fixed #237 (Quick Local Connect does not always connect on first try)
  • Fixed #246 (A couple World related additions/bugs)
  • Fixed #245 (Menu does not close when you select sites to whitelist when connecting to server)
  • Fixed #240 (Quick connect box clears itself after you edit settings)
  • Fixed #244 (Local quick connect port in settings broke)
  • Fixed #177 (Request: Add version property to JCMPNamespace)
  • Fixed #239 (Server browser will not go away after connecting to server)
  • Fixed #250 (Server Crash with 'new Vehicle()' without exception)
  • Fixed #263 (All serverside package.json files can become corrupt with NULs upon first starting a windows server)
  • Fixed #121 (Many synchronization issues between players)
  • Fixed #223 (freeze player until file clientside main.js get startet)
  • Fixed #205 (Missing Functions Player.removeWeapon / Player.removeAllWeapons())
  • Fixed #117 (When disconnecting from a Server, you still hear the Wind sounds etc in the main menu and they're not going away)
  • Fixed a lot of various crashes
  • Added a ScriptError event to get information about script errors. 
    • This allows you to build ingame debugging tools (See also: #106 (A client console would help debugging greatly))
    • If an error occurs while the ScriptError handler is being called, the event is not fired again to avoid infinite recursion.

We also have a few breaking changes

  • POIs and Checkpoints have been removed from the server scripting and added to client scripting. 
  • SetTime now requires a third argument (seconds)

Linux server in this version requires to be invoked with LD_LIBRARY_PATH set to lib....so 'LD_LIBRARY_PATH=lib ./Server'

Dowload the updated client & server directly from our homepage:



Scripting documentation

  • Upvote 6

Share this post

Link to post
Share on other sites

I can't seem to play after this update, it launches fine, but instead of seeing the nanos loading screen, I see the jc3 one. Once it does load, I see the shot over the city, but the GUI is missing. Is this a bug?

Share this post

Link to post
Share on other sites
13 hours ago, xBallisticBlazex said:

I can't seem to play after this update, it launches fine, but instead of seeing the nanos loading screen, I see the jc3 one. Once it does load, I see the shot over the city, but the GUI is missing. Is this a bug?

Yes, this is a bug. Try redownloading and reinstalling the mod to fix the problem.

Share this post

Link to post
Share on other sites
On 12.6.2017 at 2:08 PM, MamayAdesu said:

PLEASE fix AUDIO in that F...NG WebUIWindow!

Please describe the issue more clearly. Is the issue already on our issue tracker?

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.


Important Information

By using this site, you agree to our Terms of Use.