4.8.3 Is there meant to be a difference between using arrays within Functions vs Events?

I came across as situation where I was attempting to take an array and remove an item at index. When the array was referenced from the same blueprint, it worked correctly, but if the array came from an input into the method, the array would not be altered. However, it works with functions. I am wondering if this is intentional, and if so, can someone explain to me why?

Here are some images that might help explain it better. I made this in a fresh project.

With the first image, the values in the array remain unchanged.

52592-cleararrayeventnotworking.png

With this one, it works as intended, removing all of the values from the array.

Here is how I have a function set up and working the way I wanted the event to in the first image.

52595-clearfunctionarraycalled.png

52596-cleararrayfunction.png

Hi,

why not just use “remove index” right after tick even?

This wasn’t the exact situation I was using it, there were other factors involved and I wasn’t using it after event tick. I just did it this way in the example because it was a simple way to display what I was trying to do. Regardless if it’s not best practice, I’m curious as to whether it ShOULD work.

i did some investigation of custom event and function with same code inside and here are result:

function - “remove index” inside work properly, printing array length inside function and outside gives same number

custom event - “remove index” inside have no effect on array length inside and outside, but! “resize” inside custom event work really weird, it change arrays size and print correct value, but at same time tick event print same unchanged size of array, screenshots for clarifocation