I end up using Packet following this architecture.
CONS:
- You have to sync alarm states for player who joined after the remote is fired.
- If you have streaming enabled, alarms those are streamed in AFTER the event is fired to clients won’t receive the signal.
SOLUTIONS:
I store the base code value/info in the client module, in OnClientEvent I fire a client-sided Signal (bindable event replacement) to activate alarms.
Yeah this is pretty confusing so I advised you to use ObjectValues or attributes as alternatives.
