Thanks for the tutorial, I found a solution to HIDE YOUR OWN NAMEPLATE: - At begin play make a client side function where you create a new widget and set it to the widget component (character). - Attach a collision (sphere or box) and use the events begin and end overlap - In every function check if the overlapped actor is a player and your player is locally controlled (without this you get a bunch of weird functions) - Create a client side function where you pass the widget component and the visibility as parameters. - In your begin and end call this client function and pass the overlapped actor widget - In the begin put visible, in the end hidden. Dont forget to set the widget component and the collision as replicated component in your editor.
@jasongrubb25642 жыл бұрын
You could also just set replication condition to skip owner and it'll hide your own nametag..
@Volvary2 жыл бұрын
Even simpler, just set the Owner No See to true on the widget
@arthurspears8477 Жыл бұрын
OMG The best info right here. Had been trying everything and nothing worked right except this!
@stephsnotfluffy Жыл бұрын
Never mentions where the widget is added to the viewport
@wellendowedstudios3 жыл бұрын
Man this was really good stuff right here! My nametags always bugged out and worked half the time, and had to have a few second delay to work before. I never would have thought of re-creating the nameplate widget. By doing it like you did it made my setup work perfect, I also was able to remove all the delays I had etc. So simple but sometimes things in unreal engine should work but won't haha. I had about 4 months wasted on these nametags then I gave up and left them half working. Thanks to you I fixed them. I can't say thanks enough man! I knew this was gold when you said no multi-cast :). I didn't buy your project but for people needing this it would be worth it 10 times over. Dude put this up on the unreal marketplace it will sell.
@trued74613 жыл бұрын
this was super helpful and awesome! thank you so much! very discriptive!
@MRFATBEAR2 жыл бұрын
I have a proplem with Joined Clients. I get Steam Player Name as Player Name Tag and in Hosted Server Site is working fine but for Client both Hosts Character and Clients Character has Clients Name Tag.
@siepath3 ай бұрын
Hello, what if I want to store the 'Player Name' variable in the game instance? Thank you in advance
@ISDISNJH Жыл бұрын
followed your tutorial to par but instead of having it set the name variable in player character since I have players join battle lobby from main menu where name is set I have name stored in the game instance and then called from there, but still my widget over player is just showing generic text but when I do print string the name stored in game instance is printing and set even between level travel. any suggestions?
@hernangomar54453 жыл бұрын
Aaron, i have my multiplayer proyect running on LAN, using the create sesion, im able to create multiples lobbys and a filter to join them, any easy way to make it online w/o using steam?
@StellaNoctisVR2 жыл бұрын
Great tut! If I want to use the PlayerState to keep the PlayerName. How should I do it? Thanks!
@MrDracStudios3 жыл бұрын
Thank you so much for this simple solution!
@saruedev2 жыл бұрын
My text inside the widget is not a variable like the HpBar :c
@DragonFang253D2 жыл бұрын
I'm doing basically the same thing for health bars above players and AIs heads, it works perfect for the players hitting each other but as soon as a player hits an AI I get an accessed none when trying to read property "set percent" for the widget (same health bar widget for players and AI) works fine for players and doing the same process in the AI BP for any damage event throws an error if the event to set the health bar in the widget is set to multicast
@보리타작-x9s3 жыл бұрын
So helpful for me!! thansk you :) I have a question. Should I use GameInstance when I use to openLevel? I want to use Lobby Level to set name or something(Hair/skin etc) with When I click In LobbyLevel > Open Level > set name tag above Character heads!
@ryanpatton17952 жыл бұрын
I could be wrong, but this won't work if you set your name in a different level or "lobby" and then spawn into the playable world.
@jasongrubb25642 жыл бұрын
Inside your name tag widget blueprint you can cast to your game instance and get a name variable of your choosing and plug it into the server event, and it that text variable will work anywhere..
@GiMiat2 жыл бұрын
Hello! I have a question, I also watched your previous video with the change color with rep notify. There, you are using multicast, and then store the rep notify on each client, but here, you store it right away on the server. So my question is are these two ways equivelant and could be used vice versa or am i missing something, thanks for your time making the videos!
@aaronhunt72042 жыл бұрын
This is a good question. In my previous videos I made a habit out of multicasting too many times. It is not necessary to multicast when setting a repnotify variable! That can/should only be done on the server.
@GiMiat2 жыл бұрын
@@aaronhunt7204 Thanks for your answer , I did try yesterday the method without multicast, seems to work fine I will verify that you have to recreate the widget for some reason Also I noticed that in comments below, some people reported that the master client never loses relevancy. Thats true, because the master client works as server same time so he owns all and never loses relevancy. Thats what happens if you run as standalone. However if you choose Play As Client from editor with 2 clients, then both clients work as non master clients. So they both loose relevancy at culling distance.
@tomasloparnik92563 жыл бұрын
When i try to test player tag in the editor with 2 windows, i set player tag and then it sets it for the other player
@arankasih11622 жыл бұрын
is there any way possible to make the name only visible to other players? i tried to set the owner of the widget, but i can't find any.
@Athasin2 жыл бұрын
My question exactly. Did you ever figure out how?
@robgreig32863 жыл бұрын
Can you give the initial name tag a default value? this might fix your NULL problem
@Gabo64803 жыл бұрын
Why do you have this video as not listed? It should be the other way around
@vergewissert3 жыл бұрын
Hey I've got a question, is there a way to do this with save game variables? I've tried to use the "Populate Nametag" function in the Save Game Blueprint, but this didn't work.
@aaronhunt72043 жыл бұрын
I would set up a "Load" event that runs on Begin Play. The event should load from the save game, and then run your server event that sets the repnotify variable.
@vergewissert3 жыл бұрын
@@aaronhunt7204 could you explain this A bit more detailed so I’ve tried to do a name setup on the host: I’ve got A lobby level, and in this level you can’t move, but in this level you write your name and host IP address and something like this, and I’ve tried to do A save game function for the name, but when I play multiplayer , the name from the host always is the one that you wrote in the lobby, but the players that join always don’t have A name so I think the problem is that the save game variables aren’t network replicated and only one will be saved
@vergewissert3 жыл бұрын
@@aaronhunt7204 BTW the save game variables are used for the map, so if you start the game where you connect to other players you get into the map
@aaronhunt72043 жыл бұрын
@@vergewissert The save game variables shouldn't be replicated. All a save game is is something that stores information in local storage. In your lobby, the players should each save their names to the local save game, before the map loads. When it loads, the player characters who spawn in should locally reach into storage and load the save game by slot, then when you get those local variable values, they should be pushed up to the server for replication.
@vergewissert3 жыл бұрын
@@aaronhunt7204 So the only thing that I have to do is make my save game variables local?
@Lumhax3 жыл бұрын
How can i hide the nameplate of self character but showing others ? thanks for the vid !
@thecrypticlk3 жыл бұрын
If you haven't figured this out yet. What I did was in my character blueprint, on begin play I made a branch with the condition "Is Locally Controlled", then off of true I set the visibility of the widget to be hidden.
@jasongrubb25642 жыл бұрын
Just set the replication condition of the name variable to skip owner
@Dismellion3 жыл бұрын
Just wanted to say about that replicating to everyone is worst idea and then I just saw the link to this and its ok now.