Releases: BigBang1112/gbx-net
GBX.NET 2.0.7
- Added
CPlugSolid2Model.ExportToObj()
- Added missing
DefaultZone
toCGameCtnCollection
- Added missing
CGameUserFileList
from v1 - Added
CPlugWeatherModel
/CMotionManagerWeathers
support - Added missing
IGbx
interface members - Added concrete exception for text format Gbxs
- Added
GetValidFileName()
,InvalidFileNameChars
, andInvalidFileNameCharSearchValues
toGbxPath
- Implemented
CFuncKeysSkel
0x001
- Implemented missing
CGameCtnGhost.Checkpoint
ToString
from v1 - Made
CGameCtnReplayRecord.InterfaceScriptInfos
nullable (fixes JSON serialization) - Changed
CPlugSurface.SurfMaterial.SurfaceId
fromshort
toCPlugSurface.MaterialId?
- Fixed
CPlugTree
all children methods to properly handle mips - Fixed
CPlugMaterial
for TMF - Fixed
CPlugCrystal.SpawnPositionLayer
being wrongly de/serialized - Fixed various serialization problems (often meshes and metadata) when values were between 255-65534
- Fixed some class IDs not being mapped properly
New package GBX.NET.Crypto!
GBX.NET.Tool.CLI 0.2.0:
- Added YML support
- Added
HidePath
toConsoleSettings
- Added
JsonOptions
toToolConsoleOptions
- Renamed
JsonSerializerContext
toJsonContext
inToolConsoleOptions
- Enhanced logging
GBX.NET.LZO 2.1.1:
- Made
Lzo.Compress
thread-safe due to unknown parallel issues
Assets were automatically generated using the publish workflow.
GBX.NET 1.2.7
- Fixed
CGameCtnMediaBlockCameraCustom
of Summer 2024 update
GBX.NET 2.0.6
- Enhanced
CGameCtnBlock
properties (by @tomek0055)Unassigned1
blocks have been discovered as decal properties of the previous block:DecalId
,DecalIntensity
,DecalVariant
- Added
IsPillar
andIsReplacement
- Added
PhyCharSpecialProperty
(classCScenePhyCharSpecialProperty
) - Added
SquareCardEventIds
- Some
CGameCtnChallenge
method signatures have been updated to address the change (breaking change) HasFlags
andBit17
are now obsolete
- Added full
CPlugPrefab
support - Added
CPlugDynaObjectModel
support (moving items in TM2020) - Block's X and Z coordinates are now subtracted by 1 in TM2 and TM2020 maps (breaking change)
- Reworked
CPlugTreeVisualMip
(breaking change)IDictionary<float, CPlugTree> Levels
is nowIList<CPlugTreeVisualMip.Level>
Level
hasfloat FarZ
andCPlugTree Tree
- Enabled lightmap support properly in
CGameCtnChallenge
- Added new read setting
SafeSkippableChunks
- Reads skippable chunks more expensively (similarly to GBX.NET 1) while allowing to ignore skippable chunk data
- Saving Gbx files with these errors can lead to unpredictable issues
- Added
exceptions = true
to external node properties - Updated
GetChallenge
methods inCGameCtnReplayRecord
with asyncs and parse configuration - Implemented some missing
CPlugMaterial
andCPlugShader
chunks from v1 - Added
CGameCtnChallenge.GenerateMapUid()
- Added
Color.ToRgba()
Gbx.Compress
now attempts to recompress, which can result in better or worse compressionGbx.Compress
andGbx.Decompress
no longer returnbool
(breaking change)- Removed
Gbx.Recompress
to reduce confusion (breaking change) - Fixed
Gbx.Compress
incorrectly copying over - Fixed map metadata writing string lengths to write byte lengths instead of character lengths
- Fixed
CPlugSolid
0x000
version15-28
not being properly written - Fixed
CPlugVehicleCarPhyTuning
for ManiaPlanet - Fixed
CGameCtnCollection
for ManiaPlanet - Attempts to fix
CPlugSurface
for TM2020 - Updated TmEssentials to 2.5.0
- Updated some attributes
GBX.NET.LZO 2.1.0 now uses native LZO implementation with 999 compression by default. This compression has been tested on all Trackmania games with success.
GBX.NET.Imaging.SkiaSharp 1.1.0:
- Added
ImportIcon
toCGameCtnCollector
extensions - Fixed incorrect colors on WebAssembly build
GBX.NET.NewtonsoftJson 1.0.1:
- Added static
GbxJson
class and trimming annotations
New package GBX.NET.Imaging.ImageSharp, GBX.NET.Tool and GBX.NET.Tool.CLI!
Assets were automatically generated using the publish workflow.
GBX.NET 2.0.6-beta3
Assets were automatically generated using the publish workflow.
GBX.NET 2.0.6-beta2
Assets were automatically generated using the publish workflow.
GBX.NET 2.0.6-beta1
Assets were automatically generated using the publish workflow.
GBX.NET 2.0.5
- Added
ExportToObj
toCPlugCrystal
andCPlugSolid
- Added
CPlugTree.GetAllChildrenWithLocation()
(don't mind the weird naming) - Added
CSceneSoundSource.SoundSource
- Added missing
IVersionable
onCGameCtnChallenge
0x040
chunk - Added
Gbx<T>(T node)
constructor - easier and safe way to make typedGbx
other thanCMwNod.ToGbx()
- Renamed
CPlugTree
Translation
toLocation
(breaking change, better late than never) - Implemented some
CGameCtnChallenge
chunks - Implemented more guard clauses
- Fixed
CGameCtnMediaBlockCameraCustom
of Summer 2024 update - Fixed write issue with analog input values in TM2 and older games
- Fixed MediaTracker not being written properly in
CGameCtnMacroBlockInfo
- Fixed some read/write issues of
CPlugSurfaceGeom
- Fixed various null issues
- Fixed various Gbx Explorer issues
New package!
GBX.NET.NewtonsoftJson
1.0.0- Current replacement of
GBX.NET.Json
, properly working now - Upcoming
GBX.NET.Json
v2 will useSystem.Text.Json
- You can dump any
Gbx
orCMwNod
type withToJson
, explore everything in JSON, and maybe even compare changes.
- Current replacement of
Assets were automatically generated using the publish workflow.
GBX.NET 2.0.4
- Added
ScriptMetadata
toCGameWaypointSpecialProperty
- Added
CGameItemModel.ItemGroupElements
- Added more description to
CPlugCrystal
- Added
CPlugSolid2Model
0x000
header chunk - Added classes related to leaves in TMUF
- Improved
CSceneObjectLink
(TMUF triggers can be easily linked now) - Published hidden
CPlugSolid2Model
properties - Fixed
SBadge
read/write for TMTurbo ghosts - Fixed
Blocks
for TMUnlimiter 2
Assets were automatically generated using the publish workflow.
GBX.NET 2.0.3
- Added partial
Action.Gbx
support with a bunch of classes with it- It is not yet complete, make sure to use
IgnoreExceptionsInBody
for now
- It is not yet complete, make sure to use
- Added
CGameCtnBlockInfoRectAsym
- Added
UpgradeIconToWebP
toGBX.NET.Imaging.SkiaSharp
CPlugTree
: AddedincludeVisualMipLevels = false
toGetAllChildren
CGameCtnChallenge
: FixedAuthorLogin
not being linked toMapInfo
CGameCtnChallenge
: Fixed macroblock instances when all objects of it are removedCPlugTree
: FixedGetAllChildren
not working properly- Published
CollectionManager.Collections
- Updated some attributes
Gbx Explorer:
- Added Gbx Explorer support for v2
- Enabled
IgnoreExceptionsInBody
by default (node will return with partial data if Gbx body fails) - Some features were stripped off, let me know if they are important to you
- Server supports OpenTelemetry Protocol
Breaking changes:
CGameCtnCollector
0x009
Version
has been removedCGameCtnChallenge
TMObjective_IsLapRace
andIsLapRace
have been merged toIsLapRace
CGameCtnChallenge
TMObjective_NbLaps
andNbLaps
have been merged toNbLaps
(could cause inexact behavior, report to me in case)
Assets were automatically generated using the publish workflow.
GBX.NET 2.0.3-beta1
Assets were automatically generated using the publish workflow.