v1.1.12
v1.1.12
Override an inherited interface implementation or a parent virtual on the child Blueprint, with the correct signature so it actually binds - and chain to the base with a Parent call node. Closes the last gap in child-side override authoring (#688).
Server
blueprint(override_function). Creates the override for an inherited interface implementation (inherited via the parent class) or an overridable parent virtual function, seeding the graph from the base so the entry/result terminators carry the exact signature.create_functiononly ever produced a blank graph that never bound as the override. Event-shaped functions (ReceiveBeginPlay, ReceiveTick, ...) become override events in the EventGraph; value-returning functions become function graphs. Returnskind('function' with a graphName, or 'event' with a nodeId). Params:functionName, source?, preferFunction?, interfacePath?.blueprint(list_overridable_functions). Lists what a Blueprint can override - inherited interface implementations and overridable parent virtuals - each with name, source, declaringClass, and canBeEvent, so an agent can discover the exact name to pass tooverride_function.add_nodenodeClass='CallParent'. Places aParent: <Function>call (K2Node_CallParentFunction) bound to the parent implementation, so an override graph can call the base and post-process its result.functionNameresolves against the Blueprint's ParentClass.
Internals
- Verified live end-to-end: an inherited interface function that returns a struct field overrides into a correctly-signatured child function graph (entry + typed Return node), a
Parent:call node carries the base's output pin, a parent-virtual override lands as abOverrideFunctionevent, idempotent re-runs report existed, and the child compiles clean.