Esencialmente, necesitará dos estructuras de datos (lógico, intrusivo o real, dependiendo del resto de su código). El primero rastreará las cadenas de objetos, y el otro el camino.
Cadena Simplemente necesita saber qué objetos siguen a otros objetos. En el caso más simple, esto será simplemente A sigue a B, pero podría incluir más seguidores. Hay un líder designado en la cadena.
Ruta Para cada cadena necesitarás una ruta. Dependiendo de cómo funcione su juego, determinará cómo está estructurado. En la mayoría de los casos, será algún tipo de lista vinculada. Esto hará un seguimiento de las posiciones que todos en la cadena deben seguir.
Ahora, el líder de la cadena agregará elementos a la ruta . Cada vez que se mueve, agregará algo al encabezado de la lista. Cada objeto en la cadena recuerda en qué parte de la lista está. Cuando se trata de moverlo, simplemente se mueve al siguiente elemento de la lista (interpolado de manera apropiada si es necesario). A medida que el último elemento de la cadena se mueve más allá de un elemento de la lista, ese elemento se puede soltar (estará en la cola).
Metafóricamente, el líder deja un rastro de migas de pan para sus seguidores. El último seguidor de la lista consume la miga de pan.
Si su lista contiene puntos individuales, o solo los vértices de un camino, o algo más, está determinado completamente por su motor de juego. Pero, en cualquier caso, no veo que puedas evitar la lista en sí.