Skip to content

UEAgent 1.2.1

Choose a tag to compare

@CarlxsMG CarlxsMG released this 15 Oct 17:44
e4a2029

A patch release: calls that killed the editor are refused, and tools that answered success for nothing now say what happened.

Fixed

  • Calls that killed the editor are refused before they touch anything: a negative section_index on the
    procedural mesh tools, remap_material_ids with compact: true, a negative option_index on
    add_eqs_test and add_eqs_generator, add_spring_arm and add_camera_component with the name of an
    existing component (they now take a free name), set_anim_frame_rate with an fps that rounds to 0,
    move_ik_solver_in_stack past the end of the stack, and add_skeletal_mesh_socket copying to the
    skeleton of a mesh without one.
  • Answers that said success for nothing: set_anim_curve_keys on a transform curve,
    add_anim_bone_track and set_anim_bone_track_keys with an unknown bone (they wrote the root track),
    generate_mesh_uvs (it deleted the UV channels above the one it wrote), apply_uniform_remesh (it could
    not use uv_preserving), set_anim_frame_rate and set_anim_number_of_frames (wrong read-back), the
    dynamic mesh and render target tools, the MetaSound graph input and output tools, the Niagara data
    interface tools, add_mass_trait, add_widget_to_blueprint, remove_string_table_entry, the material
    instance parameter tools, the USD specifier tools, and the stop tools of behavior trees, level sequences
    and widget animations.
  • Saves that failed in silence now fail the call with save_error: the Sequencer, animation sequence,
    IK rig and retargeter, Gameplay Cameras, Chooser, geometry collection and Interchange pipeline tools.
  • Edits that were lost or half written: the Niagara data interface tools, the set_game_mode_* setters,
    the gameplay effect and cue setters during Play-in-Editor, create_level_sequence on an existing
    sequence, and create_audio_bus / create_sound_source_bus on an existing asset.
  • Undo for the smart object slot tools, the EQS, spring arm and camera component tools, the Gameplay
    Cameras setters, the IK settings and retarget pose setters, the Chooser tools,
    remove_niagara_data_interface and set_control_bus_mix_stage_value.
  • Documented no-ops that answered failure now succeed (remove_marked_frame, clear_marked_frames, the
    sequence folder tools, add_notify_track).
  • setup_foot_ik binds the legs, remove_widget reaches the widgets created in Play-in-Editor, and more:
    see the changelog.

Measured on 125 tool calls in a headless editor: with 1.2.0, 11 of them kill the editor and 95 answer
wrong; with 1.2.1 all 125 answer as expected.

Schema changes

interp_mode of set_anim_curve_interp_mode and rotation of rotate_dynamic_mesh are required (the
tools already refused a call without them); duration_seconds of set_gameplay_effect_duration is optional
(only HasDuration needs it); the six tag lists of set_gameplay_effect_component_target_tag_requirements
are arrays; remove_widget takes an optional target_world.

Install

  1. Download UEAgent-1.2.1-UE5.8-Win64.zip and unzip it into <YourProject>/Plugins/, replacing
    an older Plugins/UEAgent.
  2. Open the project with Unreal Engine 5.8 on Windows. The plugin is precompiled: no compiler is
    needed, in a Blueprint-only project or a C++ one. The status bar shows MCP · 55561.
  3. Connect your client: see Clients.

Files

File
UEAgent-1.2.1-UE5.8-Win64.zip The plugin, built for Unreal Engine 5.8 (Win64), with its source.
UEAgent-1.2.1-UE5.8-Win64-symbols.zip Debug symbols (.pdb). Only needed for readable crash call stacks: unzip it over the plugin.
SHA256SUMS.txt SHA-256 of both archives.

UEAgent is released under the MIT License.