set_bp_function_rpc
Converts a Blueprint function into an RPC (Server, Client, NetMulticast, or NotReplicated), compiles it, and reads back net flags—enabling headless RPCs that take arguments.
Instructions
Turn a Blueprint FUNCTION into an RPC (rpc_type Server / Client / NetMulticast, or NotReplicated to undo it, plus reliable), then compile and read the FUNC_Net* flags back off the entry node. This is the ONLY headless way to author an RPC THAT TAKES ARGUMENTS: add_function_parameter cannot reach a custom event, so build the RPC as add_blueprint_function -> compile_blueprint -> add_function_parameter -> here. Engine limits that follow: a replicated function cannot return a value and cannot host latent nodes (put a Delay in a separate, parameterless custom event).
Returns: { blueprint_name, function_name, rpc_type, is_net, reliable, function_flags } -- re-read from the entry node's flags after compiling; rpc_type is the RESOLVED type, so compare it with what you asked for. Proof that the call really crosses the wire is not here: drive it in PIE and read the resulting state on the OTHER side.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| force | No | Optional. This command is REFUSED while a Play-in-Editor session is running: it either compiles a Blueprint (the reinstancer can retain a world, and CheckForWorldGCLeaks is Fatal -- it KILLS the editor) or writes to disk (Editor.AllowSavingAssetsDuringPIE=0 makes the engine refuse the write, so it would report success without writing a byte). Stop PIE and retry instead; force=true runs it anyway, at your own risk. | |
| reliable | No | Mark the RPC reliable; ignored (and cleared) when rpc_type is NotReplicated; defaults to false | |
| rpc_type | Yes | One of "NotReplicated", "Server", "Client", "NetMulticast" (case-insensitive). | |
| function_name | Yes | Name of an existing FUNCTION graph on the Blueprint (a custom event has no entry node here and is refused). | |
| blueprint_name | No | Name (or full object path) of the Blueprint. | |
| blueprint_path | No | Alias of `blueprint_name` (same value, same meaning). Accepted because sibling tools spell this parameter differently; prefer `blueprint_name`. |