Download

Having objects in the world change functions/parameters inside of another specific actors blueprint?

Okay,so I have seen the power of creating blueprints inside of individual actors but I am confused on how other external actors within the Map can effect the parameters inside of another actors internal blueprints, or vice-versa.

When I open up an actor with it’s own blueprint, I cannot seem to select actors in the level and create references to them. This confuses me.

For example. I have a light inside the blueprint of an actor on my level and I would like external triggers to change it’s intensity when the player interacts with the triggers.

Any ideas?

I noticed that as well, I think the level blueprint is used to talk to the actors within the level. I think with the other blueprints you need to set their variables either to PUBLIC so other blueprints can also access them. But that might only work for other blueprints that are of the same class type and if that’s the case, that it only works for blueprints of the same class type then to get it to talk to blueprints of a different class type like widgets, you may need to use the class node and the cast node to gain access to the blueprint class as not all blueprints use the same class type and this is why the communication system in the blueprints is a MESS and it gets more complicated because each blueprint class is locked away into their own separate container within its own class type (ISLANDS in the sea) and isolates themselves all away from the others that are of a different class…

So you have to link up all the hundreds of different blueprint classes (islands) just to get them to talk to one another, Its a daisy chain form of communication It think its a stupid way to communicate. Because with this system, there’s not one main umbrella form of communication where all the blueprints can just talk to each other all freely and they can’t do that because they’re been all shoved off into these different classes to only allow communication within their own classes, so you have to use a class node or cast node or interfaces (or in other words put in all the LINKS) to try to access all these islands classes if they are not of the same class otherwise you might not beable to talk to them if public don’t work for talking to different class types but works only for talking to just other blueprints that are of the same class type, then public is really not much use… (I’m not sure on that though.)

That’s why I think you get the Extra blue target pin showing up on the variable if you can’t access the blueprint class directly… And you probably also need to cast to that blueprint you want access to try to get access to it. They are not all using the same class type and because the blueprints use different class types, is why the communication takes longer also to set the links all up. I don’t think daisy chaining hundreds of blueprint islands together of different classes is a very good communication system. I just see it as being a communication system that gets very complex and confusing.

Suggestions: Pick a center or central HQ in your project that will drive your gameplay.
That might be Gamemode in Singleplayer or it might be Gamestate in Multiplayer etc.
This central area creates all your Pawns characters / objects in the game, drives logic.
Store variables here that you share between other blueprints to let them communicate.

When you create an actor you get a return ref, pass that into blueprints that need them.
It may take planning and going back and re-engineering to make all this work obviously.
There’s 2 other approaches to help: Dispatchers / Interfaces (often used in UI / Menus).
If you’re lost, try Community-Tools / Marketplace packs and take apart working projects.

Can we store bulk data in a gamestate or game mode? What about Bulk Data Save systems?

This maybe of interest: