So I am new to UE4 and I’ve gotten to the part where I want to implement a boss fight. I’m trying to add the health bar but for some reason (as I’m following this tutorial) I cannot find my variable in the Sub Properties? I’ve attached photos. One shows the drop down menu and how it is not listed. I am looking for Arachnid_Health_Bar. I feel like its a small fix. I’ve redone the steps and checked my BP. alt text
I wanted to put two more screenshots but the site says I can’t cause its over 2MB.
I tested & attached pics of a setup between 3 BP’s (Character, Enemy, and Widget)
When Character presses “E” Enemy takes damage (for testing purposes)
The tutorial you are watching is teaching “bindings” within the widget, but it is important to note that all bindings in widgets “tick”. I would always avoid a tick when possible, and in this case it’s possible. So the setup I show here does not tick, as we use a custom event to manually bind the progress bar values to the Enemy BP’s Health and call it when necessary.
Hope you try this setup, even though it may seem a little more complex its actually less expensive than a binding. It’s also a good lesson in alternative BP to BP communications. Let me know how it goes
Thank you for your fast response. I’ve been looking at your screenshots for quiet a while now and started the “Character BP” for me (ThirdPerson Character BP on yours) and I got stuck on how you have those Reference Variables on the side. I don’t have nearly all the options you have in the variables box. Does this mean I need to create references to the widget so that I can click and drag it to “set”? If so how is creating those references even possible? Would this be something I would have to create another thread for?
Unreal’s Forum won’t allow me to upload a screenshot so I have uploaded the screenshot to a sharable Google Drive link.
NP - I’ll walk you thru it. (no need for another thread) Yes, you have to manually create the references/variables.
See pic 997 the Yellow, top right corner of screen. This is where in your project you would add the “Arachnid” BP as a variable inside the character BP. In the details panel (by variable type) left click the black down arrow and type in the name of the BP reference you are looking for. Keep in mind, at the time you create this variable, it is null/void (empty).
Now - you do the same inside the widget as well (lower left corner of the screen in widget)
Then - See pic 998 - Inside Enemy (Arachnid BP) Look at the Orange Boxes. Notice how we Set the Enemy variables we just created - to “Self” on event begin play. When this happens, they are no longer null/void. UE4 now recognizes them as the Arachnid Enemy in the level
In this setup, the widget is created inside the Character BP. This makes it easy for the character to get a valid reference to the widget (see pic 997 - Green) Since everything can cast successfully to the character, the Arachnid can now get a valid reference to the widget as well (See Pic 998 - Yellow)
Also you can promote inputs and outputs to variables by right clicking on them (just another way to create them) See new attached pics
Hopefully this is all making sense. Let me know if you need me to clarify further…
BTW - I just attach pics to the text, never gives me problem - hope you figure that out too
Hope you could bear with me a a little longer, so after trying to complete the process I got stuck in the same spot for both the Boss’s BP and the Character’s BP. How did you get “Target is Enemy?” and “Target is Main Widget?” I did some research but could not find anything on how to get those options. Thank you!
just about to leave the house bro - I’ll be back around 10pm (maybe sooner) and I’ll walk you thru this. If you have a discord link, I’ll screenshare and show you while I explain.
But real quick, see paragraph 2 where I talk about how to create those variables “In the details panel (by variable type) left click the black down arrow and type in the name of the BP reference you are looking for”… later man - I got you on this!
Update I reread paragraph two and still couldn’t figure out how you got "Enemy is Attacked, Target is Enemy."I searched for “Events” “Attack” “Enemy is Attacked” “Target is Enemy” and as for variables I was able to create them as described in paragraph 2 and I’m using them but I can’t figure out how they those variables are connected to “Enemy is Attacked, Target is Enemy.” I substituted that with just a regular “set” I have a feeling that isn’t a good idea though.
Ok so let me explain the events - See pic 997 Inside the character BP / when E is pressed / after “Attacking” is Set to True / the Event “Enemy Is Attacked” Must be created before it can be called.
This is done in the Arachnid (Enemy) BP - See pic 998 Inside the Enemy BP notice the two red execution nodes on the left (Event Begin Play - Top / Enemy Is Attacked - Bottom) Enemy is attacked is a custom event you must create.
Right click on the event graph in the Enemy BP and type “customevent” and name it “Enemy is Attacked” (or whatever you want). Once it’s created, you can then call it back inside the character BP
To do this, go back inside your character BP / drag a wire from the Enemy Ref / right click on the event graph and type “enemyisattacked” (or whatever you named it) You will then be able to call that custom event by node
Hopefully you get it figured out. Let me know how it goes
Sorry for the late reply! Good news, I was able to complete Character BP and Widget BP and I am 99% done with Enemy BP. The problem with Enemy BP is I couldn’t figure out how you got that subtract (Decrement) in between Enemy Health and the Float Clamp.
Another thing I should point out ( and it may be related to the fact that I put the wrong Decrement in between Enemy Health and Float Clamp) is that when I test ran it, the following occurred:
Health did not go down
Blue numbers with a 1.0 showed up on the left side as a column anytime I pressed E and retracted after a second.
Multiple errors after test run.
Also I gotta say thank you so much cause I’ve learned a crazy amount from you in just this thread! Its insane!! Much appreciated.