Normal

N

Normal

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

Join

🤝ask-a-question

💼jobs-and-opportunities

💾sample-code

🥂project-showcase

💭feature-request

✨normcore

💬chat

🚧wip-and-updates

RealtimeDictionary.modelReplaced oldModel is null

I see the signature is: delegate void Normal.Realtime.Serialization.RealtimeDictionary<TValue>.ModelReplaced(Normal.Realtime.Serialization.RealtimeDictionary<TValue> dictionary, uint key, TValue oldModel, TValue newModel, bool remote) However, when I try to access oldModel, it says the value is null. Is this expected?...

Ownership of child components with a parent realtime view owned

Feel like this should be obvious but I don't know how to solve it at the moment. I have a gameobject with the root view owned by a client (So it can be destroyed when leaving), but I also have child components on the object that I want to be owned by different clients, however this doesn't exactly seem to be possible in the default state? I'm wondering if it's basically just possible to have the child component be owned by whoever while having the root view owned by a different client. Alternatively another solution could be destroying it myself when the owner leaves? I'm not sure how normcore handles that however, or if there are nice callbacks for when clients join / leave...

Recommended way to maintain a dict of Realtime prefabs?

I want every player to be able to check a dict or some other data structure to see all the Realtime prefabs of a certain type in a room (and access metadata about those prefabs, like who owns them). I could use a separate RealtimeDictionary and update it when the RT prefabs are instantiated/destroyed, but I imagine it would easily go out of sync if OnDestroy isn't always run on disconnecting clients.

Getting these errors in the log

Dictionary: Server rejected a clear operation, but the local dictionary version doesn't match the server's. This is a bug!! (5, 4) Anyway I can work around these? Anything I can do to avoid it?...

cosmetics help

hello everyone, im a new gtag dev and i want to add cosmetics to my game, the only problem is that i use Normcore and i cant find any tutorials that show me how to add cosmetics using normcore, can someone help

Failed to set model on Component still erroring after working through checklist

I have been working fine with normcore for sometime and have become accustomed to creating RealtimeComponents with models in the appropriate pattern, but recently: I created a new realtime component called CustomizationManager which has a model CustomizationInfoModel Since adding it to my realtime object: All the components under the parent view are throwing: ...

Sync Headphone being viewable

I am struggling to make it so everyone sees a gameobject over the players head go active and inactive. Here is my script using the example your document have provided. I just need everyone to see when it is active and inactive. Everyone has this gameobject on their rig and they will be making it active and inactive throughout the room.

Billing when app is in the background/asleep

We are building an AppleVisionPro app that uses Normcore. We notice that our Normcore billing hours are much higher than we expected. We think it may be because when the user switches our app to the background, that Normcore still accumulates time. If this is possible - any suggestions on how to prevent billing when the app is in the background?

Infinitly spawning grabbable ball

I am trying to make an infinitly respawning grabbable ball in my VR game. I have tried a lot of different solutions but none of them work. How would i do this?

room.datastoreFrameDuration effect on voice chat

What effect does room.datastoreFrameDuration have on a room that only processes voice chat?

Ready Player Me official support?

I saw you officially have a Meta SDK integration, any plans for a ready player me integration?

Boss size and rotation not syncing (I think)

In my game i have a boos fight. We have the following script that spawns the boss and handles movement when a player steps into an invisible collider. The boss spawns and rotates and works, but for the player that doesnt spawn the boss the size and rotation are different. this is the script: ```using Normal.Realtime; using System.Collections; using System.Collections.Generic;...

Mirroring a player's voice onto a separate Audio Source?

I am currently trying to create an "intercom" like mechanic where a player presses a button and while they hold said button their voice is transmitted across a separate audio source entity. The issue I'm running into is the lack of an audio source to fetch the audio clip from. I have tried to also subscribe to the voiceData event in RealtimeAvatarVoice.cs file but that doesn't seem to ever fire, at least locally. Any ideas?

failed to set model on component - when does this happen?

ERROR: Failed to set model on component (1:ArenaPvE (ArenaPveSync)). UnityEngine.Debug:LogError (object) Normal.Realtime.RealtimeView:BindModelsToComponentMap (Normal.Realtime.ImmutableModelCollection,Normal.Realtime.RealtimeComponentMap) Normal.Realtime.RealtimeView:Normal.Realtime.IConfigurableComponent.SetModel (Normal.Realtime.RealtimeModel) Normal.Realtime.Realtime:ReplaceSceneViewModelWithFreshModel (Normal.Realtime.RealtimeView)...

Strange function call in auto-generated model code

Really not sure what's going on here, but it seems like one of the FireChanged functions in the auto-generated model code is somehow getting a reference to one of my scripts and calling a function on it. I get this output: ` begining lobby load UnityEngine.Logger:Log(LogType, Object)...

Moderator Muting Ownership

Let's say I have an AvatarSync on my RealtimeAvatar that has the bool _isMuted. I believe that RealtimeAvatarManager spawns VR Player Character with ownership belonging to the client who is the actual player. If I want a moderator to be able to set _isMuted on another player to true, do I have to RequestOwnership()? Then how do I give ownership back once the client who owns it updates it? Call RequestOwnership() inside the DidChange callback if MyClientID == originalOwner or something?

Confusing MetaModel Ownership Situation

Version: 2.15.5 So admittedly, this could be down to a fundamental misunderstanding of MetaModels and how they interact with the hierarchical ownership structure, but here is the situation: We have a RealtimeComponent "VehicleInteractionSystem" that includes TValue<PassengerManagerModel> which is a meta model:...
No description

How to call OnRealtimeModelReplaced() only once

Me and a friend of mine are trying to find a way to call OnRealtimeModelReplaced() function only once. Is there any reliable way to do that?

RealtimeDictionary.Count Accuracy

Is the .Count always accurate? What does this mean in the docs: "Adding or removing items sends the minimal amount of information to the server in order to perform the update on all clients. The whole collection is not sent every time."...

Separating Realtime.Destroy() from OnDestroy when a client leaves/stops playing?

Can I set destroyWhenOwnerOrLastClientLeaves to false to prevent OnDestroy from running on my RealtimeComponent? Basically I have an OnDestroy on my RealtimeComponent that I want to run when Realtime.Destroy() is called. But not when a client disconnects (which triggers OnDestroy for monobehaviours)...