Join the community to ask questions about Normal and get answers from other members.










What can I do if I have dependency between RealtimeProperty?

Lets say I have a model with two properties:
[RealtimeProperty(1, true, true)] private string _text;
[RealtimeProperty(2, true, true)] private float _duration;
[RealtimeProperty(1, true, true)] private string _text;
[RealtimeProperty(2, true, true)] private float _duration;

Difference between avatar.ownerIDInHierarchy, avatar.ownerIDSelf, and avatar.realtime.clientID?

I'm trying to keep track of the ID of the current client as clients leave and enter the room. I'm finding that avatar.owner.IDSelf always returns -1. avatar.ownerIDInHierachy seems to work but if someone leaves, and rejoins they get assigned to ID 0 even though the former client that had the ID of 1 also gets set to the ID of 0. This causes errors with my system that isn't expecting two clients to both have the ID of 0. avatar.realtime.clientID seems to work but never reassigns the ID's when someone leaves. For example if a room has two clients and client 0 leaves. Client 1 remains as ID 1 but once the client that left, rejoins the game. Their ID gets set to 0....

How can I get the remote ID that an avatar represents?

In the AvatarCreated function avatar.ownerIDSelf returns -1 and avatar.realtime.clientID returns the ID of the local realtime not the remote. I need the ID of the remote client that the avatar is representing.

Is there an ETA for the Room API?

Hi, I'd like to ask if there is an estimation about the release date of the Room API. Not knowing about the active rooms (or checking if a room is active, etc) is a bit making things harder 🥲 And also, is there a roadmap you can share with us (not too detailed of course)?

Is there a way to change ownership automatically when remote rigidbody is owned by another client?

I want ownership to change when an rigidbody owned by client a hits a rigidbody owned by client b. The object rigidbody by client b is automatically moving, not asleep. What is the best way to approach this?

character controller

if i have an xrorigin rig that moves with a character controller and if i disable and re-enable the controller will the avatar model lose track of it

Call DidChange event when value is the same

I basically want to trigger the ValueDidChange every time I assign model.value to something, even if that value is the same as before. For some context, I'm sending a string to all clients when a player scores and if he scores again the string is going to be the same, but I need the StringDidChange event to trigger on all clients to display who scored....

is the ReltimeView property 'preventOwnershipTakeover' synched between the clients?

Meaning, if clientA takes ownership and the sets the 'preventOwnershipTakeover' property to true - will client 'B' observe that property to be true on his end? If it is not synchronized and assuming we have a rigidbody with a RealtimeTransform component that clientA prevented ownership changes on - what would prevent client B from requesting ownership on that rigidbody (and immediately receiving it), only for it to be rolled back by the server. This process can happen again and again over multiple frames (as the rigidbody keeps colliding with clientB owned rigidbodies - creating an unnecessarily janky behavior of that rigidbody....

Security Question: Is the app key stored in the Unity APK?

Is it possible the APK could be reverse compiled and the app key stolen?

Normcore headless build

Can we create a unity headless build and deploy to one of our cloud platforms instead of using normcore private? And get all those features that normcore headless build provides? The issue is, we are not that big currently, and we do want to fix some issues regarding syncing - spawning etc which we are doing by checking the least client ID in the room. But would be more beneficial and less checking of these if we can spin-up the headless build if we can.

how to handle code server side

how do i run a timer for example on the server and get a signal sent to all the clients when that timer reaches 0

Bandwidth usage analysis

I wanted to analyze my application's bandwidth usage more thoroughly to see if I'm sending unnecessary data or how I can optimize my application's data usage as a whole. I've put the Nomcore modules into the Unity profiler, but I only have the general amount of data sent without any further details. It would also be useful to know the best practices for optimizing internet bandwidth, I didn't find this in Nomcore's documentation....

Realtime.Destroy On owned realtime prefabs.

Can I destroy a RealtimePrefab by calling Realtime.Destroy even if someone else is an owner? Or do I have to take ownership first before destroying. I know it would destroy but I am thinking more like what will happen in the datastore?

How can I distort the mic audio in RealtimeAvatarVoice to be higher or lower pitch?

Is it possible to distort the mic audio from RealtimeAvatarVoice so the player is heard with a squeaky high pitched voice or a deep low pitched voice?

Are there any best practices for syncing a large number of variables in one script?

For instance if we have a large script with many bools floats, integers etc and they all need to be synced and will all be changing at different times.

First player isn't synced to other players, while other players are visible to the first player

No idea why this started happening - didn't change any code from what I can tell, but now whenever a new player joins they can't see the other players in the room. Only the first player to join can see the others

ReadStream was expecting to read a Null type from the stream, but was asked to read a Model type

I started getting this error in my game when I started disconnecting from it by closing the app. My game has a player and a bot that use the same model for the RealtimeComponent. The bot model changes on the host side. Without the bots, the player exits - no error. With bots, the player exits - there is an error. It does not matter whether it is a client or a host leave the game. At this point, in theory, nothing special changes in the network models, just the player leaves the game. What could...
No description

How can I disconnect another player from the game

I need to disconnect a player with another player. Can I do that?

Delayed room updates

We were in the process of testing our game with roughly 18 people per room, and we noticed that datastore updates started to became very delayed. We ended up receiving an action that a player had performed more than 3 minutes after the action was sent. Is there anything we can do to mitigate this?