Sigh...I sometimes wonder why I pay a site for BluePrint tutorials...need some help...

Basically, this guy doing a tutorial really didn’t prepare for it. He made changes off camera in between segments and didn’t even explain why he did it (Luckily, when my BP says I made a mistake, I just paused the tut and looked for extra nodes), he doesn’t really explain much of why he does what he does either. Anyways. So I am almost at the end, finally…but something’s off, I can’t figure out if he changed something, or not. It’s definitely related to The Region Volumes I just placed in the level (because it was fine before that), however, he ended up rewriting a lot of the BP and I can’t see what I did wrong (and he doesn’t show off the node up close overall to see for mistakes). So, I turn to you fine Ladies and Gents.

I do have one question real quick before that though. He made a sub-level for the pickups. Why was this necessary? He never explained it, and previously when doing pickups, I just put them in on the same level. Just trying to see it from his point of view (which he never explained). Is it a performance thing? It’s not like we are streaming or dumping any levels here…

Oh, and I put everything back into the StarterMap just to debug this thing. And some of the comments might be “unclear or noob”, that’s because he never commented a single thing…so that’s just my interpretation of what was going on. So please throw me some feedback if you see something off. Or if you guys can think of an easier way of doing it, or clean up my BP…spill it! Thanks!


I’m confused. What was the tutorial trying to teach you?

I am confused along with Vipar, what were the tutorials for? Something I noticed is that the ‘Get Pickup Locations’ function is useless, you are using a function AND a node, when all you need is the node. The ‘Randomize Unique Integers’ function also seems to contain a few unnecessary things. Also, BIG TIP: When taking screenshots, drag the ‘Event Graph’ tab out of UE4, and anchor it to be maximized with the screen, this will save you a lot of space when taking screenshots.

In case you are interested, I am available for paid tutoring, Skype me if you’d like to know more.

Ah sorry. It is supposed to randomly spawn pickups throughout the level (using a PickupSpawnMaster in the level)

It uses also a PickUpParent, and the children are the actual pickups. You place a PickupLocation actor wherever you want there to be a potential pickup. This is supposed to be about adding replayability (via randomness) in games.

So are the spawn locations static but whether something spawns there or not, is determined by randomness?

Yes. Pretty much. I am able to choose how many I want to spawn and what type and supposed to be able to choose in what region also…but that’s not working at all. It’s completely broken now, it won’t even spawn anything. Like I said, he must have done something off screen again and not mentioned it.

Before this whole Region Thing (via trigger volumes), I was able to successfully spawn (randomly) however many and whatever type I wanted (as long as I had enough Pickuplocation actors placed in level). It would randomly place them.

Here is the Setup of the PickupMasterSpawn actor

Attachment is invalid but here is how I assume you could do it:

  1. Make a Master Class which will be called something like “MasterPickup” or “AbstractPickup”.
  2. In this master class you put the main components in that ALL pickups will have.
  3. Start making child actors of this pickup class.
  4. Take care of the event that occurs when a pickup overlaps with a player. Do this for all child pickups.
  5. Now make a single Spawner class. It needs to be able to show the pickup and since all pickups inherit from Master/Abstract pickup you can spawn any pickup you wish for. Make a function to accomplish this. Or alternatively you can just place an empty spawner class down so that you have a reference to spawn pickups.
  6. Place the spawners in the level where you want pickups to appear
  7. In your level blueprint, set up the conditions for spawning a pickup and then make a for loop which looks for all classes of type spawner.
  8. Call the function on the spawners that need to spawn pickups and pass it a pickup. Since they all inherit from Master/Abstract pickup, any pickup can pass through to the spawner.

I hope this helps. Please remember that this is just designed from the top of my head and may need adjustments.

Hmmm…no idea what that is about…let me try againDTTutFailure12.jpg

OMFG…THIS TOOL (the guy doing the tutorial)…alright, I figured it out on my own, in a previous video he had deleted a node…well guess what, that node WASN’T supposed to get deleted and it MAGICALLY appears 2 videos later…

Between Get Pickup and the loop, there’s a Set Location node that was missing. Thanks everyone for the help:)


But, back to my original question…why the sublevel for Pickups? Why isn’t it all included in the same level? Obviously we can’t speak for the guy, I am just trying to figure out if there’s a performance thing behind it. By placing all the pickups in a sublevel that’s blank…

Using the streaming levels for things is kind of nice organisational, you can think of them as layers in this case. Its a good way to work with bigger teams etc.