
Downloads for ManiaPlanet 4
Downloads
489
All changes from Openplanet for Trackmania:
- Improved stability
- New API features
- New "Useful Information" plugin
Downloads
714
- Fixed crash that could occur during mapswitch
- Fixed random input blocking after Alt+Tab
- Fixed upcasting failing in some rare cases
- Added
Text::ParseInt64
,Text::ParseUInt64
, andText::ParseDouble
- Added
string::Replace
- Added
UI::Columns
andUI::NextColumn
- Added
UI::SetNextWindowContentSize
Downloads
345
- Fixed a couple of crashes that could occur when switching maps or disconnecting from servers.
Downloads
257
Many new features! Also, Openplanet for the new Trackmania is happening. Get your club access ready for July 1st!
Highlights
- Added support for the new Trackmania (release soon!)
- Added support for TrackMania United Forever (release TBA)
Overlay
- Added tabs to Nod Explorer
- Added proper mouse and keyboard input blocking when using the overlay
- Added Explore Pack Nod button to Pack Explorer
- Added saving of a bunch of overlay things (window visibility, nod explorer options, etc.)
- Fixed pack selection not working when pack explorer is open
- Fixed calling some actions not working in nod explorer
- Updated Dear ImGui
API
- Added the ability to embed (trusted) Openplanet scripts into title packs, which are then automatically loaded by the game. To get your scripts trusted and embed them into your title pack, please get in contact with me on Discord!
- Added
#min_game_version
and#max_game_version
to plugins - Added
drag
option to int and float settings - Added text rendering to NanoVG API
- Added index operator to all vector types
- Added
OnDestroyed
event which is now called separately from theOnDisabled
event - Added
wstring::EndsWith
- Added
MwId::GetName
- Added
IO::File::ReadToEnd
- Added
IO::SetClipboard
- Added
IO::FolderExists
andIO::CreateFolder
- Added
Json::Value::GetKeys
- Added
Json::Value::Remove
- Added
Json::FromFile
andJson::ToFile
- Added
MemoryBuffer::WriteFromBase64
andMemoryBuffer::ReadToBase64
- Added missing documentation for mat4 and mat3 functions
- Added Dev API functions for vec2, vec3, vec4, iso3, iso4
- Added
throw(const string &in)
- Fixed double clicks not raising
OnMouseButton
event - Fixed middle mouse buttons not able to be suppressed by
OnMouseButton
event - Fixed
&&
and||
not working in preprocessor combined with!
- Fixed
Dev::Write
with constref types - Fixed
Dev::Write
being able to cause a crash - Renamed
MwArray
,MwBuffer
,MwBufferCat
to their respective names:MwFastArray
,MwFastBuffer
, andMwFastBufferCat
- Removed automatic refcounting in scripts in favor of
MwAddRef
andMwRelease
methods - Removed the Audio API as it caused more problems than benefits (nobody using it, crashes when disabling audio device, building on Linux is difficult)
- Updated Angelscript
Miscellaneous
- Much more stability and completeness with the Maniaplanet API
- Update branches are now actually useful
- Renamed
nightly
update branch toedge
- Crash fixes
- Research
Downloads
1445
Time for another big major update!
Note: If Openplanet stops working after installing this update, please install Microsoft's Visual C++ Runtime.
Core
- Added support for 2019-11-19 (should speed up startup a bit).
- Added "Unload scripts" option to the menu, if it's enabled in the settings.
- Added a new method of Maniaplanet code hooking. This will eventually allow for script-level hooks as well.
- Added the ability to set the script timeout to 0 in order to disable the timeout for performance improvements.
- Added update branch option to the settings. (All branches are the same right now, but this might be used in the future.)
- Fixed powersaving option not saving.
- Changed assertions to be less obnoxious and more helpful. They'll also show in the log now.
- Started working on basic support for Linux dedicated server builds.
- Internal change of handling vectors, matrices, and quaternions.
- Research.
Interface
- Redesigned the main interface a bit.
- Redesigned Nod Explorer.
- Redesigned the log window.
- Added a notification system, which is used for events inside of Openplanet and can also be created by scripts.
- Added the ability to call procs directly from Nod Explorer.
- Added the Nod's IdName (if it is set) in Nod Explorer.
- Added traits to Nod Explorer. This is currently unfinished.
- Fixed a lot of Nod Explorer visual things and shortcomings.
- Window backgrounds are now less transparent to make text on them easier to read.
- Added the ability for UI elements to have colors in texts, by using a Maniaplanet-like format:
\$f00Red\$z
- Fixed crash when clicking Explore Pack inside of Pack Explorer.
- Updated ImGui.
Plugins
- Added a couple more titlepacks to Discord Rich Presence.
- Replaced Discord rich presence notifications with native Openplanet notifications via its new API.
- Added
Icons.as
which plugins can include to get access to the set of FontAwesome icons that are available in both Openplanet and ManiaPlanet itself.
Scripting
- Added
Import::GetLibrary
(andImport::Library
), which replacesImport::GetFunction
entirely. This new approach allows dll's to be unloaded and replaced at runtime when plugins are unloaded. - Added support for string return values (in C:
const char*
) in theImport
API. - Added support for wstring return values (in C:
const wchar_t*
) in theImport
API. - Added support for wstring function arguments in the
Import
API. - Added Import::Ref, which can be used as a function parameter for output parameters.
- Added the ability to load setting structures from settings.
- Added
Settings
API and the correspondingOnSettingsSave
andOnSettingsLoad
plugin callbacks. - Added the
hidden
keyword to plugin settings to make them not show up in the settings dialog. - Added
RenderMenuMain
plugin callback, so that plugins can place stuff in Openplanet's main menu. - Added VirtualKey enum which is now also accepted in a plugin's
OnKeyPress
callback. - Added the ability to load setting structures from settings.
- Changed the plugin function
Update(int dt)
to take a float instead. The old callback will throw a deprecation warning. - Added the ability to load and render textures via
Resources::GetTexture
,UI::Image
, andDraw::DrawTexture
. - Added
UI::SliderInt
,UI::SliderFloat
,UI::VSliderInt
, andUI::VSliderFloat
. - Added
power
parameter toUI::VSliderFloat
. - Added
UI::InputText
. - Added
UI::PushFont
andUI::PopFont
. - Added NanoVG API. See the
nvg
namespace documentation. Ultimately this is supposed to somewhat replace theDraw
API. - Added warn() and error() functions to scripts.
- Added
XML::Node::Content
. - Added
string::opIndex
. - Added documentation for
string::Join
. - Fixed broken proc calls due to a Maniaplanet change.
- Added
mat3
type to perform 2D transformations. - Added Length, LengthSquared, and Normalized functions to vectors in scripting API.
- Fixed potential crashes when using
iso3
andiso4
types in scripts. - Added a
Resources::Sound
type which holds a wave file and can be played. - Added
IO::IndexFolder
function, which can be used to list files and folders. - Added listening API to Net::Socket.
- Added support for writing
#region
and#endregion
. (The compiler just ignores them) - Added init param to MemoryBuffer constructor.
- Fixed OnSetCurChallenge callback causing a crash.
- Fixed font size change not working in font loading.
- Fixed crash when reloading font at runtime.
- Throw exception when trying to load a font while font atlas is locked.
- Fixed crash when getting class members with reflection API.
- Fixed crash when getting script properties that have a defined range.
- Fixed crash that could occur when instantiating wide strings.
- Fixed failed assertion when passing enum values in some cases.
- Fixed not being able to concatenate wstring and string objects.
- Fixed memory leak for certain strings in scripts.
- Added Angelscript's
ref
type, which can contain any type of handle. - Added a
startnew()
variation that also accepts a userdata parameter. - Added some more
Dev
API functions, as well as removing some limitations. - Updated Angelscript.