Just Cause 2 – Unofficial Multiplayer 0.2 Mod To Be Released This Wednesday


Contrary to Take-Two, Square Enix appears to be fine with MP mods for its titles. And the team behind the amazing MP mod for Just Cause 2 has revealed that a new version will be released this Wednesday.

As the team noted, this is its “biggest, baddest, most awesome update yet.” In addition, the team has investigated the rendering issue on AMD graphics cards and create a legacy renderer option that can be used as a workaround for rendering issues.

Just Cause 2 MP 0.2 will be released tomorrow at 08:00 UTC.

And here is its changelog:

New Features

Shared

  • Added support for all of the previously unsupported civilian models
  • Added Steam achievements
  • Added SharedObject class
  • Added NetworkObject class
  • Added WorldNetworkObject class
  • Added basic UTF-8 support to Lua strings
  • Added SetUnicode(boolean) global function
  • Added storage to all entities, not just Players
  • Deprecated PlayerValueChange and PlayerNetworkValueChange events
  • Refactored Chat class functions to support multiple colours in a single message
  • Added Vehicle.GetClassByModelId
  • Added Vehicle:GetClass
  • Added VehicleClass enum
  • Improved Lua errors with event argument printout
  • Added delta argument to PreTick/PostTick and Render/PostRender
  • Added Angle.Delta
  • Added Vector2.Reflect and Vector3.Reflect
  • Added ComponentMultiply method to Vector2 and Vector3
  • Added Weapon equality operator

Server

  • Added module metadata
  • Added Player:Damage
  • Added Vehicle:SetStreamPosition and Vehicle:SetStreamAngle
  • Added Vehicle:Get/SetSpawnPosition and Vehicle:Get/SetSpawnAngle
  • Can now disable collisions between two different types with Player/Server functions EnableCollision/DisableCollision
  • Added ClientModulesLoad event
  • Added Player:RequestGroupMembership(groupId, callback)
  • Added StreamableObject:GetStreamedPlayers
  • Added SLED debugger support
  • Added suppressible PlayerAchievementUnlock event
  • Added Server:GetFrameTime
  • Added SendAutorunWhenEmpty config variable, default as false, to control whether autorun scripts are sent for empty modules
  • Added netstat command

Client

  • Added ClientActor class which provides a basic client-side NPC interface
  • Added GameRender event for depth-tested rendering in the game world
  • Main menu overhaul
  • Added support for streaming image resources with AssetLocation.Resource
  • Added support for Unicode characters in CharPress
  • Vastly improved the chat window with word wrap and chat history
  • Added LocalPlayer:SetLinearVelocity
  • Added Character class, common to Player and ClientActor
  • Added Character:Get/SetLeftArmState
  • Added Character:GetSeat
  • Added Vehicle:Set(Linear/Angular)Velocity
  • Added VehicleTransmission, with methods Get/SetGear, Get/SetClutchDelayTime and more
  • Added VehicleSuspension, with methods Get/SetChassisDirection, Get/SetStrength and more
  • Added VehicleAerodynamics for land vehicles, with methods Get/SetAirDensity, Get/SetDragCoefficient and more
  • Added Vehicle:GetTransmission, Vehicle:GetSuspension and Vehicle:GetAerodynamics
  • Added Vehicle:GetTorque, Vehicle:GetWheelCount, Vehicle:GetRPM, Vehicle:GetMaxRPM and Vehicle:GetTopSpeed
  • Added GetClimateZone method to streamed and client entities
  • Added ClimateZone enum
  • Added ShapeTrigger with events ShapeTriggerEnter and ShapeTriggerExit
  • Added TriggerType enum
  • Added VehicleTriggerType enum
  • Added Player:GetAvatar
  • Added AvatarSize enum
  • Added Featured tab to the server browser
  • Added description field to the server browser
  • Server browser filters are now consistent between restarts
  • Added Camera functions SetFOV and GetFOV
  • Added LocalPlayerEjectVehicle event
  • Added ‘entity’ and ‘impulse’ arguments to VehicleCollide event
  • Added LocalPlayer functions SetOxygen and GetOxygen
  • Added LocalPlayer:IsFriend(steamid/player)
  • Added Client:GetFrameTime
  • Added Game:GetWeatherSeverity
  • Added ClientStreamableObject as a base class to Vehicle/Player
  • Added an optional boolean parameter to Physics:Raycast to disable the raycast filter
  • LocalPlayerBulletHit event now contains a bone argument
  • Added a setting to toggle vehicle camera snap and adjust timeout
  • Added a setting to toggle vehicle stunt camera
  • Added chat key and chat toggle key settings
  • Removed apostrophe keybind opening console, added a setting to configure console keybind
  • Added support for correctly rendering the tab character in text
  • Added Render:GetDepthEnabled
  • Added CursorType enum
  • Added Mouse:SetCursor
  • Added FontAwesome and League Gothic fonts to resources
  • Added ability to navigate through TextBox history using Up and Down arrow keys
  • Added Ctrl-Left/Ctrl-Right hotkeys to TextBox to facilitate moving the cursor word by word
  • Added Label:SetLineSpacing
  • Added TextBoxNumeric:Get/SetNegativeAllowed
  • Added gui_show_netstat console command
  • Added window position and size launch parameters

Bug Fixes

Shared

  • General sync improvement
  • Luabind now checks parent classes when looking up class members (class(“MyDerived”)(MyBase) in _init.lua works now)
  • Scripts are now loaded in alphabetical order on all platforms
  • Fixed script profiler not counting network events
  • The marshaller now accepts table keys of any type
  • Angles sent over the network no longer lose precision from compression
  • Vector2/Vector3/Color statics can no longer be edited
  • Comparing any API class with ‘==’ should now work
  • Fixed random number generator not being seeded at startup
  • Improved Timer precision
  • IsValid now returns true for any plain Lua objects (string, number, etc.)

Server

  • Fixed issue with server memory not being freed on entity removal
  • Cleaned up streamer code, hopefully reducing amount of server crashes
  • Fixed issue with world iterators not working correctly
  • Fixed a bug where scripts would still be run even if the server failed to start
  • Fixed SteamId outputting the community id when printed on Windows

Client

  • Fixed bones returning the wrong position for smaller models (Breaking change)
  • Fixed very long-standing issue with on-foot weapons often not firing for other clients
  • Vastly improved vehicle sync, also allows players to stand on vehicles as in singleplayer
  • Hopefully fixed archive bug that caused models/effects to fail to load
  • Fixed static objects not responding to the biome (snow / dust)
  • Fixed an extremely prevalent crash during entity collision listener removal
  • General renderer improvements
  • Refactored Mounted Gun sync, resulting in better aim accuracy
  • Reduced memory usage by preventing entire archives from being loaded at once
  • Fixed issue where requested models could sometimes be wiped out by the loading screen process
  • Fixed a bug where vehicle colors were darker than the requested colors
  • Fixed issue with vehicle colors not being applied to some turret parts
  • Fixed input sometimes going crazy when in a menu
  • Fixed settings window not preserving game resolution upon resize
  • Improved precision of Input:GetValue return value
  • Fixed being stuck in the air when EnterVehicle is called while grappling
  • Things drawn in 3D (and Render:WorldToScreen) no longer appear to be ahead by one frame
  • Fixed character model not changing if gui hidden or in a menu
  • Removed highlighted servers from the server browser
  • Character models are now reset on disconnect
  • Hopefully fixed issue with Rico model being invisible
  • Fixed the sound pop issue on Windows 10, courtesy of emoose from ElDewrito
  • Fixed PlayerEnterVehicle missing old_driver arg
  • Fixed issue with default player state being PlayerState.None instead of PlayerState.OnFoot
  • Some client entities now inherit from ClientStreamableObject to mirror the server classes
  • Added parameters argument to ClientSound.Create
  • Removed palaver, as its implementation burden outweighed the value it provided
  • ImagePanel:SetImage now takes an Image instead of a path
  • ReturnPressed event of a TextBox is now triggered on key down, instead of key up
  • Disabled Tab behaviour of the Enter key in TextBox as it moves to next control in the entire scene
  • Fixed HSVColorPicker issues
  • Fixed SortedList header being offset when it has a scrollbar
  • Fixed crash with SortedList:Clear
  • Fixed issue with SortedList sizing