
Server (host) is on Mac Mini M4 Pro running Mac OS Sequoia 15.6.1. Also saw this running TTS host on Max Studio M2 Max w same OS. Ton of memory on both servers. Clients exhibiting this issue included both Mac and Windows (all updated to the Beta).
I can reproduce this at will using my macbook M1 Air laptop 16GB Sequoia 15.6.1 running a second login on Steam/TTS as a test client connected to the M4 mini as a host. This is on my local network, a very low latency and high bandwidth connection.
Repro:
1) Startup TTS Beta on both host and client with a multi player server on the host.
2) Load a mod on the host with some ojbects that have images (like tiles etc.). Could have some custom models as well.
3) Note mod loads fine on the host however on client it does not seem to fully load and client is in a very bad state. Objects have strange scale (much larger) and are missing images. Additionally the player is unable to change colors. In fact it seems like all hand locations from the table have dissapeared. The only option for client player is to select gray and have no hand location.
The first image is a screen shot of the broken TTS client immediately after the host loads the mod.
4) Disconnect clent from server and re-connect. On reconnect the mod loads correctly on the client. All objects are correct size and have images displayed. Client player can select a color & has a hand location. Mod seems to be fine.
The second image is what the client looks like after disconnecting and reconnecting to the Host.
5) Reload the mod on the host and the client will be back to the exact same broken state as in #3. It looks just like the first screen shot again.
This cycle of #4 and #5 can be repeated with the same result every time.
I am not using hotseat. This is a multiplayer server. Tried mod caching on/off with same effect.
Nothing shows up as an error in the log that I can see.
This was seen by my game group across numerous mods that work fine in v13 on the same hosts and clients.


I thought this was a longstanding issue. The only way I’ve consistently been able to do multiplayer is to have everyone join a blank table and then load the mod. Not that I would mind it being addressed…

@Dvrooman What we’re observing is definitel[y v14 related. There were occaisonal issues with loading in a multiplayer context before but nothing like this.

Specific observation: the (much larger) in David Veach’s (3) is of default scale. Many objects in a TTS mod are scaled by default. The client renders those scaled objects as if one had run obj.setScale(Vector(1,1,1)), while the server renders the object with the scale reported by obj.getScale().
If one - after clients are connected - manually re-scales the objects, the clients see them satisfactorily. But if the host reloads the mod (or, equivalently, re-pushes the code object) then objects are again reset (for the clients, and only for the clients) to default scale.

(More, there appears to be a wait time before the clients are willing to accept rescales. Adding (something like; I’ve not tested this exact idiom)
for _, obj in ipairs(getObjects()) do
obj.setScale(obj.getScale())
end
to the onLoad() routine of the mod does not work. But running something of that ilk a few seconds after clients connect appears to be successful.

