Many
NullReferenceException
happens during the import process. You will fail to do even a simple "loop back test".
Repro steps
  1. Create a scene having a
    VRCSceneDescriptor
    and an
    UdonBehavior
    at the minimum.
  2. Open
    Network ID Import and Export Utility
    https://creators.vrchat.com/worlds/udon/networking/network-id-utility/#network-id-import-and-export-utility
  3. Press
    Regenerate Scene IDs
    and confirm the dialog
  4. Press
    Export
    and save it to a file
  5. Press
    Clear Scene IDs
    and confirm the dialog
  6. Press
    Import
    and select the file you have just saved. The utility shows the object(s).
  7. Press
    Accept All
    or
    Select
  8. Then, the Console shows
    NullReferenceException
    errors
Environment
Tested with SDK 3.7.0 Worlds. This seems to happen from 3.5.2
Log
The head part of the exception:
NullReferenceException: Object reference not set to an instance of an object
VRCNetworkIDUtility.<DetectConflicts>g__DoTypesMatch|28_6 (VRCNetworkIDUtility+NetworkObjectRef scene, VRCNetworkIDUtility+NetworkObjectRef loaded) (at ./Packages/com.vrchat.base/Editor/VRCSDK/Dependencies/VRChat/VRCNetworkIDUtility.cs:550)
VRCNetworkIDUtility.DetectConflicts (System.Collections.Generic.Dictionary`2[TKey,TValue] loadedRefs, System.Collections.Generic.List`1[T] conflictList) (at ./Packages/com.vrchat.base/Editor/VRCSDK/Dependencies/VRChat/VRCNetworkIDUtility.cs:520)
VRCNetworkIDUtility.OnGUI () (at ./Packages/com.vrchat.base/Editor/VRCSDK/Dependencies/VRChat/VRCNetworkIDUtility.cs:297)
Note
  • The
    NullReferenceException
    happens when accessing
    NetworkObjectRef.typeNames
    .
  • Some implementation of
    INetworkIDContainer
    has the issue, maybe,
    UdonBehavior
    .
  • INetworkIDContainer.NetworkIDCollection
    is typed
    List<NetworkIDPair>
  • Some element of it has the null as
    NetworkIDPair.SerializedTypeNames