Join requests from users without Images, Flash
tracked
Comfy Chloe
get a join request from a user without an avatar loaded, it displays as no image, then flashing to blank.
This is from a user in a null avatar I belive
usr_17432174-b7f1-4e8c-bfc6-36bc8f9b5e73
Log In
StormRel
marked this post as
tracked
WubTheCaptain
As anticipated, the missing file (404 Not Found) is attempted to be re-fetched every second, which causes the flickering.
2026.01.20 20:49:25 Debug - Received Notification: <Notification from username:****, sender user id:usr_e3b073fe-****-****-****-************ to usr_6fa4abc5-9952-4a0a-97de-b3598fbf6a5c of type: requestInvite, id: not_47f10968-188c-40de-8387-598f7be9f9f3, created at: 01/20/2026 20:49:21 UTC, details: {{}}, type:requestInvite, m seen:False, message: "">
2026.01.20 20:49:26 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
2026.01.20 20:49:27 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
2026.01.20 20:49:27 Warning - [TextureManagement] Could not download image https://api.vrchat.cloud/api/1/image/file_2d927225-b424-439a-bc0b-5e59dfcd3f71/1/256 - HTTP/1.1 404 Not Found
{"error":{"message":"Version 1 for file_2d927225-b424-439a-bc0b-5e59dfcd3f71 not found","status_code":404}}
2026.01.20 20:49:28 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
2026.01.20 20:49:29 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
2026.01.20 20:49:30 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
2026.01.20 20:49:31 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
2026.01.20 20:49:32 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
2026.01.20 20:49:33 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
2026.01.20 20:49:34 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
2026.01.20 20:49:35 Warning - An error occurred downloading an image: HTTP/1.1 404 Not Found
[...]
This is a bit frustrating/annoying to replicate successfully, but here's the most reliable method I've found:
- Launch VRChat to your home world with a regular avatar, show avatar picture in profile
- Join a friend who's wearing a different avatar and has profile picture reset to show the avatar picture
- After joining, have both you and your friend switch to the Rosie (avtr_a1f478b6-5745-425e-b274-18e56f4cfc5) avatar
- Go alone back to your home world (invite instance/"Ask Me" status)
- Ask your friend to send a request to join
- Receive the request to join notification from your friend
- Open your Quick Menu (Esc key on desktop mode) and watch the flicker in notifications
WubTheCaptain
While attempting to replicate this issue, on a random attempt I also triggered a NullReferenceException in VRC.Core.APIUser, Transmtn.DTO.Notifications.Notification when a request to join notification was queued and sent too early while I was still loading the VRChat client:
2026.01.20 20:42:49 Error - Object reference not set to an instance of an object.
System.NullReferenceException: Object reference not set to an instance of an object.
at ÌÌÎÏÍÌÎÏÍÌÎÍÍÎÎÍÏÎÍÌÏÌÎ.ÏÍÍÎÎÍÍÍÏÍÎÌÍÌÎÏÏÍÌÏÏÍÎ (VRC.Core.APIUser ÍÍÎÍÍÍÏÏÍÌÍÍÌÍÏÌÌÍÎÏÎÎÍ) [0x00000] in <00000000000000000000000000000000>:0
at ÌÌÎÏÍÌÎÏÍÌÎÍÍÎÎÍÏÎÍÌÏÌÎ.ÏÍÍÎÎÍÍÍÏÍÎÌÍÌÎÏÏÍÌÏÏÍÎ (VRC.Core.APIUser ÍÍÎÍÍÍÏÏÍÌÍÍÌÍÏÌÌÍÎÏÎÎÍ) [0x00000] in <00000000000000000000000000000000>:0
at ÍÍÍÌÎÍÌÍÌÏÏÎÍÎÌÎÍÍÎÏÎÏÏ.ÏÌÍÎÍÎÍÎÍÌÌÏÎÍÏÏÎÎÏÌÌÏÏ (VRC.Core.APIUser ÎÌÍÏÏÏÍÌÎÍÏÌÌÎÎÌÍÏÎÍÍÌÎ, Transmtn.DTO.Notifications.Notification ÎÍÎÏÏÎÎÍÌÎÎÌÏÏÌÍÌÏÌÏÍÍÏ, ÍÌÏÍÎÏÌÎÍÍÏÌÎÎÎÎÎÌÏÎÌÍÍ ÍÎÍÍÎÍÎÍÎÌÌÍÎÍÏÏÍÌÌÍÎÏÌ, ÍÍÍÌÎÍÌÍÌÏÏÎÍÎÌÎÍÍÎÏÎÏÏ+ÍÎÌÏÌÎÍÍÌÎÍÌÍÎÎÎÍÍÎÏÏÎÏ ÏÎÍÏÏÏÎÌÎÏÌÏÎÎÍÍÌÍÍÍÎÏÎ) [0x00000] in <00000000000000000000000000000000>:0
at System.Runtime.CompilerServices.AsyncVoidMethodBuilder.Start[TStateMachine] (TStateMachine& stateMachine) [0x00000] in <00000000000000000000000000000000>:0
at ÍÍÍÌÎÍÌÍÌÏÏÎÍÎÌÎÍÍÎÏÎÏÏ.ÏÌÍÎÍÎÍÎÍÌÌÏÎÍÏÏÎÎÏÌÌÏÏ (VRC.Core.APIUser ÎÌÍÏÏÏÍÌÎÍÏÌÌÎÎÌÍÏÎÍÍÌÎ, Transmtn.DTO.Notifications.Notification ÎÍÎÏÏÎÎÍÌÎÎÌÏÏÌÍÌÏÌÏÍÍÏ, ÍÌÏÍÎÏÌÎÍÍÏÌÎÎÎÎÎÌÏÎÌÍÍ ÍÎÍÍÎÍÎÍÎÌÌÍÎÍÏÏÍÌÌÍÎÏÌ, ÍÍÍÌÎÍÌÍÌÏÏÎÍÎÌÎÍÍÎÏÎÏÏ+ÍÎÌÏÌÎÍÍÌÎÍÌÍÎÎÎÍÍÎÏÏÎÏ ÏÎÍÏÏÏÎÌÎÏÌÏÎÎÍÍÌÍÍÍÎÏÎ) [0x00000] in <00000000000000000000000000000000>:0
at ÍÍÍÌÎÍÌÍÌÏÏÎÍÎÌÎÍÍÎÏÎÏÏ.ÎÍÌÌÏÏÎÌÎÎÎÏÍÌÎÎÌÍÍÌÍÌÏ (Transmtn.DTO.Notifications.Notification ÎÍÎÏÏÎÎÍÌÎÎÌÏÏÌÍÌÏÌÏÍÍÏ, ÍÍÍÌÎÍÌÍÌÏÏÎÍÎÌÎÍÍÎÏÎÏÏ+ÍÎÌÏÌÎÍÍÌÎÍÌÍÎÎÎÍÍÎÏÏÎÏ ÍÏÍÍÏÏÎÌÌÏÌÌÍÍÏÏÎÎÎÎÌÏÎ) [0x00000] in <00000000000000000000000000000000>:0
at Cysharp.Threading.Tasks.UniTaskCompletionSourceCore`1[TResult].TrySetResult (TResult result) [0x00000] in <00000000000000000000000000000000>:0
at Cysharp.Threading.Tasks.UniTask+WaitUntilPromise.MoveNext () [0x00000] in <00000000000000000000000000000000>:0
at Cysharp.Threading.Tasks.Internal.PlayerLoopRunner.RunCore () [0x00000] in <00000000000000000000000000000000>:0
--- End of stack trace from previous location where exception was thrown ---
[...]
This attempt (request to join sent too early) failed to replicate the flickering issue, and instead the photo was static black or a "no image" placeholder image.
WubTheCaptain
Can you replicate this by uploading an avatar with an avatar thumbnail, switch to that avatar, delete the avatar (so you end up with "No image" error thumbnail), and sending a request to join from that account to a friend?
The API response for https://api.vrchat.cloud/api/1/image/file_a1781b22-64c3-45f3-9bd0-7fcb765cf24b/1/1024 from that user was:
{"error":{"message":"The thumbnail for that image is not available","status_code":404}}
WubTheCaptain
I replicated this flickering issue with Rosie (
avtr_a1f478b6-5745-425e-b274-18e56f4cfc57
) by Nanner.{"error":{"message":"Version 1 for file_2d927225-b424-439a-bc0b-5e59dfcd3f71 not found","status_code":404}}
WubTheCaptain
NB: You must not have a custom profile picture set, so that the 404 image response from the avatar photo is displayed instead.
WubTheCaptain
This is also not replicable with self-invites using the invite API; you must have another user account (a friend) send you an invite to replicate the bug report in OP.
Attached logs are for failed reproduction (not of too much interest), using self-invite.