UEFN 24.00 Pre-Release notes

Validation

24.00 introduces asset validation. This validation verifies that the content is allowed in a UEFN project. There may be issues with assets or devices that you believe are valid but prevent your project from being uploaded.

Please see this post for more details: Handling Content Validation in 24.00

Verse API Changes for 24.00

Removals

  • editable_text_base, editable_text, and editable_text_box widgets have been removed from the UI API
  • material_block and texture_block widgets have been removed

Updates / Refactors

  • Support for Verse code finding props and user devices by tag

  • This includes renaming

    • GetDevicesWithTag to GetCreativeObjectsWithTag

    • GetDevicesWithTags to GetCreativeObjectsWithTags

    • These methods also return a creative_object_interface which can then be cast to each of these.

      # Some test code for finding all of these that have an all_tag on them and then casting to the appropriate type
      AllCreativeObjects:[]creative_object_interface := GetCreativeObjectsWithTag(all_tag{})
      
      for (PropItem:AllCreativeObjects):
          if (TheProp := creative_prop[PropItem]):
              Logger.Print("Prop found with all_tag at position: {TheProp.GetTransform().Translation}")
      
      for (DeviceItem:AllCreativeObjects):
          if (TheDevice := creative_device_base[DeviceItem]):
              Logger.Print("Creative device found with all_tag at position: {TheDevice.GetTransform().Translation}")
      
      for (UserDeviceItem:AllCreativeObjects):
          if (TheDevice := creative_device[UserDeviceItem]):
              Logger.Print("User device found with all_tag at position: {TheDevice.GetTransform().Translation}")
      
  • Rename ToStringSeparated to Join

  • Removed vector3.XAxis, vector3.YAxis, vector3.ZAxis

  • Removed fort_character.IsDown and added fort_character.IsActive to indicate the character is active. If IsActive returns false, most character actions will silently fail.

  • Added vector3.IsAlmostZero(tolerance) and IsAlmostEqual(vector3, vector3, tolerance) to more easily allow testing for these states.

  • Add support for NamedColors.Tan

Devices

  • Audio Player

    • Audio Player now uses Play() and Stop() instead of Activate() and Deactivate()
    • Audio Player now has an option to call Play(Agent) or Stop(Agent) if you want to direct audio at a specific user.
  • Radio

    • Radio now uses Play() and Stop() instead of PlayRadio() and Stop Radio()
  • Random Number Generator Device

    • Device no longer takes an optional Agent argument. Instead users can either choose to call a function with a mandatory Agent argument, or one with no arguments at all.
  • Switch Device

    • Device no longer takes an optional Agent argument. Instead users can either choose to call a function with a mandatory Agent argument, or one with no arguments at all.
  • Timer Device

    • Device no longer takes an optional Agent argument. Instead users can either choose to call a function with a mandatory Agent argument, or one with no arguments at all.
  • Bear Spawner Device

    • bear_spawner_device has been renamed to vehicle_spawner_pickup_truck_device
  • Mudflap Spawner Device

    • mudflap_spawner_device has been renamed to vehicle_spawner_big_rig_device
  • Prevalent Spawner Device

    • Prevalent_spawner_device has been renamed to vehicle_spawner_sedan_device
  • Whiplash Spawner Device

    • whiplash_spawner_device has been renamed to vehicle_spawner_sports_car_device
1 Like