x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Why is this specific circular dependency breaking our blueprints?

This issue is fairly hard to explain, so let me know if I need to provide more information.

  1. We have an "instruction panel" bp class. This class has a child actor of "button" bp class.

  2. The "button" class eventually references the playercharacter via some crazy chain of dependencies (just found this in the reference viewer)

  3. The moment I add an "instruction panel" reference to playercharacter bp, any change to game instance breaks the "button" bp class after an engine restart.

  4. This is the error message we see upon opening the "button" blueprint (in visual studio output): "Warning Pasted node K2Node_Event_xxxx conflicted with K2Node_Event_xxxx and was replaced as a Custom Event!" Essentially, all of events inside of the button class are replaced. For example, Event Begin Play is replaced with an event called "Recieved_BeginPlay1".

  5. We've tried remaking the button class, deleting intermediate, re-adding the original events, etc. We just realized that this is probably a circular dependency issue.

Also, once the "button" class is in this broken state, the engine crashes when we open the reference viewer on anything related to the blueprint.

We are currently getting away with other circular dependencies in our blueprints. Any ideas? Thanks!

Product Version: UE 4.13
Tags:
more ▼

asked Oct 27 '16 at 12:25 AM in Blueprint Scripting

avatar image

Gigakaiser
16 1 2 5

(comments are locked)
10|2000 characters needed characters left
Viewable by all users

1 answer: sort voted first

The "button" class eventually references the playercharacter via some crazy chain of dependencies (just found this in the reference viewer)

It's going to be fairly hard to give you a straight answer based off of this alone.

The short answer is: clean up your blueprints not to have circular dependencies. Make use of "GetOwner" or "GetOwningController" for actors or widgets and then cast those to the appropriate player controllers if you want data from them.

If you need a widget to own another widget, make sure you give it an "Owning Widget" variable and set it up after a widget is spawned, that way you can use that owning widget reference as needed in a child widget.

The long answer would require a much better understanding of your project and how everything is set up, which I don't think will be time efficient if you have a lot going on inside of it.

more ▼

answered Oct 27 '16 at 05:05 PM

avatar image

MajinSephiroth
1.2k 31 9 33

(comments are locked)
10|2000 characters needed characters left
Viewable by all users
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question