How can I implement random character movement in the character blueprint?

So first of all. Depending on what you want to do I would suggest using an AI controlled character.

It is a lot easier if you use the “Move To” command and a Behavior Tree as it automatically has this function. You create a task which finds the point where your unit should walk to and then simply call the “Move To” node.

But if you want to do this in this actor you could add a branch behind your current function, checking if your character is at the location and only changing the target (where he moves to) when he is.

To get a location within a certain space you could do a few things. There is a node called “Get float in range”. You can use this 2 or 3 times (depending if you just want a walking character (without the Z axis) or if you want a flying one) and make a vector. You can define the boundary for this variable so for starters you could just hardcode it.

You could also use two target points (Which you can set later in your level when you place the actor) and use those to define the boundary or use a second actor which is a volume with a function to get a random point within it and call this from your actor every time you need a new one.