Breaking changes
- Fully removed some non-
Entity<T>
container methods.
New features
IMidiRenderer.LoadSoundfont
has been split intoLoadSoundfontResource
andLoadSoundfontUser
, the original now being deprecated.- Client command execution now properly catches errors instead of letting them bubble up through the input stack.
- Added
CompletionHelper.PrototypeIdsLimited
API to allow commands to autocomplete entity prototype IDs. - Added
spawn:in
Toolshed command. - Added
MapLoaderSystem.TryLoadGeneric
overload to load from aStream
. - Added
OutputPanel.GetMessage()
andOutputPanel.SetMessage()
to allow replacing individual messages.
Bugfixes
- Fixed debug asserts when using MIDI on Windows.
- Fixed an error getting logged on startup on macOS related to window icons.
CC-BY-NC-ND-4.0
is now a valid license for the RGA validator.- Fixed
TabContainer.CurrentTab
clamping against the wrong value. - Fix culture-based parsing in
TimespanSerializer
. - Fixed grid rendering blowing up on tile IDs that aren’t registered.
- Fixed debug assert when loading MIDI soundfonts on Windows.
- Make
ColorSelectorSliders
properly update the dropdown when changingSelectorType
. - Fixed
tpto
allowing teleports to oneself, thereby causing them to be deleted. - Fix OpenAL extensions being requested incorrectly, causing an error on macOS.
- Fixed horizontal measuring of markup controls in rich text.
Other
- Improved logging for some audio entity errors.
- Avoided more server stutters when using
csci
. - Improved physics performance.
- Made various localization functions like
GENDER()
not throw if passed a string instead of anEntityUid
. - The generic clause on
EntitySystem.AddComp<T>
has been changed toIComponent
(fromComponent
) for consistency withIEntityManager.AddComponent<T>
. DataDefinitionAnalyzer
has been optimized somewhat.- Improved assert logging error message when static data fields are encountered.
Internal
- Warning cleanup.
- Added more tests for
DataDefinitionAnalyzer
. - Consistently use
EntitySystem
proxy methods in engine.