All notable changes should be documented in this file. The format is based on Keep a Changelog.
- V command expecting
VehicleAsset
throwing an exception when encounteringVehicleRedirectorAsset
. Thanks @ItsRodrigoAl in issue #75.
- Bind Unturned's
PreVanillaAssemblyResolvePostRedirects
event to fix assembly resolve consistency.
OnPlayerChatted
overridingisVisible
whenonChatted
is called beforehand. Thanks @rube200 in PR #58.
- Assembly resolve looks for dependency with requested version number. Thanks @Sl4vP0weR in issue #49.
- Updated
onCheckValid
toonCheckValidWithExplanation
. "Thanks" @surv0013 in issue #39.
- Replaced
UnturnedPlayer
usage ofPlayerSkills.askSkills
. Thanks @PandahutMiku: #2537
- Replaced Assembly-CSharp-firstpass.dll with Steamworks.NET.dll.
- Call OnPlayerDeath (tellDeath) before tellDead to respect old behaviour. Thanks @rube200 in issue #38 and @RestoreMonarchy in issue #37.
- Replaced
tellBleeding
invocation withserverSetBleeding
. - Replaced
tellBroken
invocation withserverSetLegsBroken
. - Replaced
UnturnedPlayer.TriggerEffect
invocation withEffectManager.triggerEffect
. - Replaced
UnturnedEffect
invocation withEffectManager.triggerEffect
. - Replaced
UnturnedPlayer.Experience
invocation withPlayerSkills.ServerSetExperience
. - Vanish mode teleport no longer needs special handling because the vanilla game skips other clients if canAddSimulationResultsToUpdates is false.
- Updated gesture changed to use value from event.
- Replaced gesture parse with switch statement. Thanks @PandahutMiku: #2435
- Replaced
OnPlayerUpdateStat
usage ofSteamChannel.onTriggerSend
withPlayer.onPlayerStatIncremented
. - Replaced
OnPlayerWear
usage ofSteamChannel.onTriggerSend
withPlayerClothing.OnItemChanged_Global
. - Replaced life stat usage event of
SteamChannel.onTriggerSend
withPlayerLife.OnTellStat_Changed
. - Replaced
OnPlayerUpdateGesture
usage ofSteamChannel.onTriggerSend
withPlayerAnimator.OnGestureChanged_Global
. - Replaced
OnPlayerUpdateExperience
usage ofSteamChannel.onTriggerSend
withPlayerSkills.OnExperienceChanged_Global
. - Replaced
OnPlayerUpdateStance
usage ofSteamChannel.onTriggerSend
withPlayerStance.OnStanceChanged_Global
. - Replaced
OnPlayerDead
andOnPlayerDeath
usage ofSteamChannel.onTriggerSend
withPlayerLife.onPlayerDied
. - Replaced
OnPlayerUpdateLife
andOnPlayerRevive
usage ofSteamChannel.onTriggerSend
withPlayerLife.OnRevived_Global
.
- Updated
UnturnedPlayer.IP
andUnturnedPlayer.Ban
to use address from transport layer refactor.
- Updated to use Unturned's plugin advertising interface rather than directly setting Steam Game Server details, and no longer consume a bot player slot.
Logger
no longer directly writes to Rocket log file becauseRocket.Unturned.U
already writes console output to the log file. Reported by @warren39 in issue #28.
- The command to reload all plugins at once has been disabled by popular request. Many plugins did not support it properly. Reloading individual plugins is still enabled. Read this issue for more details: #1794
Logger
console output is routed through Unturned'sCommandWindow
class, rather than directly using theSystem.Console
class. This fixes Rocket output blocking the game thread. Reported by @rube200 in issue #21.
- Home command offsets vertically similar to the vanilla respawn, and warns player when unable to teleport.
AutomaticSaveWatchdog
checks the timer duringUpdate
rather thanFixedUpdate
because the latter is for physics code. Reported by @rube200 in PR #7.UnturnedChat
internally usesChatManager.serverSendMessage
rather than manually invoking thetellChat
RPC.- Marked Observatory obsolete and deleted the implementation because it is no longer maintained. Reported by DiFFoZ in PR #4.
UnturnedPlayer.Ban
correctly callsProvider.requestBanPlayer
rather thanProvider.ban
. The distinction is thatrequestBanPlayer
allows plugins to override the ban handling and saves the ban information, whereasban
is a poorly named internal callback. Reported by @Kr4ken-9 in PR #1.UnturnedPlayer
overridesObject.Equals
andObject.GetHashCode
in order to work properly with standard containers. Reported by @CyberAndrii in PR #2.UnturnedPlayerComponent
no longer callsDontDestroyOnLoad
on itself. This component exists per-player and should be destroyed during level load. Reported by @rube200 in PR #7.UnturnedChat
was ignoring therich
parameter. Reported by @Tortellio and @CyberAndrii.