Guided Transporter Moved
@Serializable
@SerialName(value = "GuidedTransporterMoved" )
A transporter took possession of a zone, which is the guided-path analogue of ConveyorItemMoved and the same trick: the renderer interpolates between consecutive samples rather than being told a continuous position.
linkName is null when the transporter is standing at an intersection, where zoneIndex has no meaning and is zero; on a link, zoneIndex is one-based from the link's begin end.
Blocking needs no event of its own here, and that is the point of sampling on entry: a transporter that cannot claim the space ahead simply emits nothing and stays where the renderer last put it, so congestion appears as stillness without anything having to say so.