Highlights for Version 1.0.233
Welcome to our March 1st Patch Notes! With this patch, we are introducing new animations, a lot of bug fixes and the new Farming Framework.
Farming Framework
The Farming Framework brings the power of the Producers, Buffs, and Areas to make it possible to build experiences with crops, crafting, and shops, as well as personal areas for players that can be upgraded, decorated, and expanded. It takes advantage of the new Data Tables feature and even includes a system to migrate misspelled or redundant storage to a new id without losing player data!
Note: The Farming Framework isn't compatible with the Producers and Gatherables projects yet. We'll be updating those projects to make them compatible soon.
Make sure to watch the patch notes live stream hosted by Buckmonster on the Core Live Twitch channel at 9 AM PST.
Platform
- New: CoreObjects spawned during play by
World.SpawnAsset()
will now apply the asset name to the spawned object.- This should make inspecting the hierarchy during play more informative.
- Creators who were previously relying on the default name "DynamicProxy" for their logic will need to adjust accordingly.
- New: There is a checkbox under General properties (an advanced property) "Use Skeletal Collisions". If this is selected, that mesh will use the skeletal asset to calculate collisions instead of the normal capsule.
- New: Non-humanoid animated meshes now have the following Play Animations available:
- "unarmed_fall_cycle"
- "unarmed_jump_begin"
- "unarmed_jump_end"
- New: humanoid animated meshes now have the following Play Animations available:
- "unarmed_fall_cycle"
- "unarmed_jump_begin"
- "unarmed_jump_end"
- "unarmed_sit_car_low"
- "unarmed_sit_spaceship_bentleg"
- "unarmed_sit_spaceship_straightleg"
- "unarmed_sit_spaceship_trucker"
- Fixed: A crash when player enters a vehicle on spawn.
- Fixed: When an asset is selected in Project Content, the right click context menu should still show entries for creating folder/script/data table.
- Fixed: When trying to create script/data table inside subfolder folder that allows the asset type, the result asset is inside that folder instead of on top level folder.
- Fixed: The behavior of
Inventory:GiveItem()
in more complicated scenarios involving multiple stacks. - Fixed: An issue where
Inventory:GiveItem()
would always fail. [Hotfixed] - Fixed: A bug where using the
all
argument inInventory:DropItem()
would fail to drop all stacks. [Hotfixed] - Fixed: An issue where
Inventory:RemoveItem()
's optional parameterall
was not working correctly. [Hotfixed] - Fixed: A bug with nested network contexts causing objects to inherit incorrect context.
- Fixed: An issue where list of available characters does not show up the first time the UI is shown.
API
Enums
- New: Added enums:
Enum Name Value Description VoiceChatMethod.PUSH_TO_TALK
0
Player presses Push-to-Talk hotkey to speak in voice chat. VoiceChatMethod.DETECT_SPEAKING
2
Core detects when the player is speaking and automatically activates voice chat.
HitResult
- New: Added function:
Class Function Name Return Type Description Tags GetMaterialSlot()
MaterialSlot
For HitResults involving a CoreMesh
, returns a MaterialSlot instance indicating which material on the mesh was impacted. For certain types of collisions, including when the impacted object is not aCoreMesh
, aMaterialSlot
is not available, andnil
is returned.None
Trigger / Player
-
New: Added function:
Class Function Name Return Type Description Tags GetInteractableTarget()
Trigger
If the player is currently focused on an interactable Trigger, returns that Trigger. Returns nil
if the player is not currently focused on an interactable Trigger.Client-Only -
New: Added events:
Event Name Return Type Description Tags interactableFocusedEvent
Event
<Trigger
trigger,Player
>Fired when a player has focused on an interactable Trigger and may interact with it. Client-Only interactableUnfocusedEvent
Event
<Trigger
trigger,Player
>Fired when a player is no longer focused on a previously focused interactable Trigger. Client-Only
UIButton
- Changed:
boundAction
is now read/write:Property Name Return Type Description Tags boundAction
string
Returns the name of the action binding that is toggled when the button is pressed or released, or nil
if no binding has been set.Read-Write
UIControl
- Changed: The following functions are now client only:
Class Function Name Return Type Description Tags GetAbsolutePosition()
Vector2
Returns the absolute screen position of the pivot for this control. Client-Only SetAbsolutePosition(Vector2)
None
Sets the absolute screen position of the pivot for this control. Client-Only GetAbsoluteRotation()
number
Returns the absolute rotation in degrees (clockwise) for this control. Client-Only SetAbsoluteRotation(number)
None
Sets the absolute rotation in degrees (clockwise) for this control. Client-Only
VoiceChat
- New: Added functions:
Class Function Name Return Type Description Tags VoiceChat.HasMicrophone(Player player)
boolean
Returns true
if Core has detected a microphone for the given player, otherwise returnsfalse
.None VoiceChat.IsVoiceChatEnabled(Player player)
boolean
Returns true
if the given player has enabled voice chat in their settings.None VoiceChat.GetVoiceChatMethod()
VoiceChatMethod
Returns the method the local player has selected in their settings to activate voice chat. Client-Only
Learn more on our API documentation site.
Documentation
- New: Added a Inventory & DataTables tutorial.