writeCharTo() has a visibleOnly option that makes the char only visible to the client. However, when a tile is updated, all visibleOnly chars within it will disappear. This also happens when their respective tiles are unloaded.
See the video for info:
https://github.com/user-attachments/assets/bcfc3eb0-c72d-4841-b4ba-8708b72d0d05
(note: In the video it takes a few seconds for the char to vanish because the server was still laggy, but you can tell that it should happen instantly because the char vanishes as soon as the yellow background thingies(?) begin appearing)