English

VRChat Server Information

This article is intended to be updated over the long term. If you find any errors, please point them out in the comments (GitHub issues) and include supporting evidence.

Summary

Domain IP Provider Location Purpose
vrchat.com 104.18.6.156, 104.18.7.156 Cloudflare San Francisco, California, US Official website (/home) and legacy API (/api)
wiki.vrchat.com Website results: 104.18.6.156, 104.18.7.156; Cloudflare DoH results: 8.6.112.0, 8.47.69.0 Cloudflare San Francisco, California, US Official Wiki
status.vrchat.com Many Amazon CloudFront CDN, Atlassian Multiple locations Official server availability monitoring
vrch.at 104.18.28.35, 104.18.29.35 Cloudflare San Francisco, California, US Short URLs for users, worlds, instances, groups, etc.1
api.vrchat.cloud 104.18.26.36, 104.18.27.36 Cloudflare San Francisco, California, US Website backend and game server API2
pipeline.vrchat.cloud 104.18.26.36, 104.18.27.36 Cloudflare San Francisco, California, US WebSocket API3 that pushes group notifications, friend requests, friend status updates, and other messages to the game client
files.vrchat.cloud Results vary because of the CDN Amazon CloudFront CDN, AWS S3 Multiple locations Distribution of worlds, avatars, SDKs, and other resource files; the domain uses CloudFront with S3 behind it
file-variants.vrchat.cloud Results vary because of the CDN Amazon CloudFront CDN Multiple locations Downloads of worlds, avatars, SDKs, and other resource files in the game client
assets.vrchat.com Results vary because of the CDN Amazon CloudFront CDN, AWS S3 Multiple locations Distribution of image assets; the domain uses CloudFront with S3 behind it
ns.photonengine.io, *.exitgames.com, ns.photonengine.cn “Such an IP list does not exist as the Photon Cloud is changing too frequently” Photon Engine Multiple locations Real-time player movement and voice, the “VRChat is not responding” popup , and the “Your connection has timed out” popup4

vrchat.com

The official website is at https://vrchat.com/home. There is also a subdomain, https://api.vrchat.com, although despite its name, it appears to do nothing more than redirect to another domain.

Pay Attention to Program-triggering Events and Execution Order

I originally thought this is a kind of passive skill of the programmer profession, but I realized that many colleagues do not pay much attention to program-triggering events and execution order. In this article, I want to explain why we, as programmers, should pay attention to these things and what benefits it brings.

When the program is triggered

If you accidentally download a virus from the internet, and it’s now saved on your local disk. Is it game over? Not yet. It hasn’t been executed. Just delete it (preferably using a file shredder tool). Our computers follow the Von Neumann architecture, in which programs and data are treated equally when they are stored in the hard drive (as well as in memory). The program on the hard drive has not been executed. I guess people working in cybersecurity are familiar with this. A successful attack inevitably involves the successful execution of malicious instructions.

Train a LoRA model for an anime character

This article was completed with the help of www.DeepL.com/Translator.

I saw the LoRA model of Hero from “Wolf and Spice” posted by Eric Fu earlier. My heart ignited an impulse, who does not want to refine a model for waifu? So… I tried to make it done. The process was recorded for your reference.

To complete this thing requires you have:

  • A certain understanding of Python coding and Python environment building, ML projects or old projects inevitably have a bit of dependency conflicts. In order to avoid dependency confusion, I have prepared a separate venv for each tool.

  • If your computer’s GPU is Nvidia supported CUDA GPU, remember to install pytorch-cuda before installing dependencies for each project, this package uses GPU while pytorch will drive your CPU crying. Installation reference this discussion.

Introducing a Minecraft treehouse I built

Location

One of the Minecraft servers that I’m playing just cleaned its old savings and upgraded to version 1.18.2, just in time for my periodic rekindling of the passion to play Minecraft. When I was traveling through the main world, looking for an ideal place for building house, at the end of the endless jungle, the mouth of the river, two trees from the forest close to each other caught my attention.

Whole-building-image

This location is not far from the server’s spawn point, about three fireworks elytra flying distance, easily to accessible. Surrounded by the river, the sea, and other players’ buildings not far away, the scenery is pleasant. “That’s it”, I thought.

Process of practicing part of Conway’s Game of Life Kata in Java with IntelliJ IDEA

Forward

What is “Kata”

Kata is example code or question for practicing coding, that is repeatedly written to hone the proficiency of various programming skills (such as using IDE shortcut keys, using design patterns to refactor code…) to achieve the state of subconsciously completing hand actions.

This noun is from some sort of martial arts, means “type”, “form” or “move” etc, single part of whole. It’s written as かた in Japanese, pronounced as “ka ta”, same as the English word.

What is “Conway’s Game of Life Kata”

You can read this Wikipedia page for information about “Conway’s Game of Life”, but I think most of us have already known it.