Okay, I spent some time debugging your project and spotted a few issues.
First, it looks like Return Values from SpawnActor SolarSystemBP_C node are not updating in GalazyBP. So when your HighFloorScale variable is multiplied by 160 to update LastSystemBounds variable, it’s returning 0. That, in turn, means that when you multiply that with anything and then set that as your next SolarSystemBP spawn transform, it will always spawn at 0,0,0.
This looks like a bug. I can’t see any reason spawned Actor isn’t returning proper values. I’m going to dig into this a little further and talk with developers to see if there’s a reason for this or if it is truly a bug that needs fixing. I will let you know what I find out.
way I was able to fix this was to update each of variables that are currently after SpawnActor SolarSystemBP node (Last System Bounds and each of Arrays you’re appending to) by casting to them in SolarSystemBP itself. After each Set HighFloorScale node in SolarSystemBP, cast to GalazyBP and grab variables you need and update them there. It’s easiest to create a function for this and just use that in each of those three spots.
But you’ll still run into an issue with spawning at 0,0,0 for an entirely separate issue: floats have a maximum cap, and you’re reaching that when you multiply GalazySpawn and LastSystemBounds variables to get your Spawn Transform. I saw potential product reach over 11 digits, and I think cap for floats is 10. So when you multiply these two huge numbers together, it seems to be converting that to 0, and you have same problem as before.
I’m going to double check with some programmers tomorrow to see what actual float cap is, and whether this should be converted to 0 or if it should truncate it. Either way, you might need to start using much smaller numbers (or integers, which I believe have a higher cap).
third thing I noticed is that your For Loops tend to start with First Index 0, and then you pass it a desired number for Last Index. I’m not sure if this is intentional, but I figured I would point it out. For example, for your NoOfSolarSystems check, if number given is 4, then it will actually spawn 5 SolarSystemBPs because it starts with number 0 and then goes up to number you gave it.
I’ll keep looking into this, but you can try these workarounds (lowering number scale you’re using, moving variable updates to SolarSystemBP) in meantime to keep your project going. As for ‘Call_Func_Array_Get_Item’ error, I wasn’t getting it at first but as soon as I messed around with Arrays I started getting it. I’ll ask a developer about that, but since it doesn’t seem to actually affect game it might not be a problem.