Simple random variable replication question.

Hey guys! I have been banging my head against the wall trying to figure out how to replicate the results of a random multigate. I thought i had a decent handle on replication, but everything ive learnt so far has not resulted in this setup working.
Im playing around with procedurally generated levels. The level generator has a bunch of variables that can be tweaked that will result in different types of levels, such as bigger, smaller, more roads, more buildings and so on. The idea is that at the start of a round, the players are presented with 3 options “map cards” that are randomly generated, and would be voted for. the winner being the one that the map generator will be built to.
My issue is, the map cards are generated randomly, and i cant manage to get the results of each card the same for every user.
Currently the cards are widgets, that i spawn in the level blueprint, and then i add them to every players viewport. I assumed this would mean that the players would add the exact card that the levelblueprint would spawn, but they are behainvg as if they were spawning fresh for each player. I determine the random results like this-

I have tried all the tricks i know for replication, like custom events and running on server, making it a repnotify, and so on.
Would any of you know of a good way to obtain random results, and then broadcast them to every player?
Thanks in advance guys!

Have you tried determining a host player and sending their value to the others?

Well I will start out with, your variable is not set to replicate, then you need to turn on replication of the actor in your blueprint. Then you will want to make sure it is only being set on the server because setting it on the client is just a waste.

Let me know if that dosnt fix it or if you already have all those.

Sorry for the late reply, ive been traveling for work and not had the time to explore the issue furthur. So I have come to a couple of conclusions and have solved this issue, ill explain the things i was doing wrong, in case anyone has a similar situation.
First of all, i had set up my initial random value generator inside my gamemode blueprint. The problem is, gamemode is run only on the server, and it seems to me (correct me if im wrong please!) that even variables on the game mode are not replicated. This obviously means i cannot send out the randomized variable to all clients. Afterwards, I set up my function on the gamestate, which is replicated. The problem here is that this function would run at the start of a match. This means every clients gamestate would result in its own randomized version of this variable, which resulted in inconsistent information.
Finally, i ended up solving this issue by having the function run on the gamemode, and then spawn a fresh actor set to replicate that has all the variable information i needed for each map card generated. Then each player will have the map card widget spawned to their viewport which are tied to the variables inside these actors.
This works for me, but i feel like its a hacked together work around. Is it common practice to spawn empty actors in world 0,0,0 whose sole purpose is to hold information? The idea of randomising a value and then broadcasting the results seems pretty straightforward in theory, but its been giving me a ton of trouble to get workign in practice. Would anybody have any suggestions as to a simpler way to have a enum variable randomise the same for everyone?
I feel like im thinking too hard about this, and overlooking a simple solution.

Thanks alot!