trensim.comSimulación Ferroviaria
   

Trensimpedia :: Simulación Ferroviaria.
 
 

:: Entrar

MSTS:Rutas y TrackDatabase

De TrenSimpedia

En este artículo se pretende dar una serie de consejos a la hora de crear una ruta para MSTS. Para aquellos que se consideren totalmente inexpertos en esta tarea, el primer consejo es la lectura de unos buenos manuales de ayuda del Editor de Rutas (ER) y de creación y modelado de terreno, disponibles en la web. En ellos se dan las primeras advertencias acerca de la inestabilidad del editor de rutas, que origina no pocos problemas que pueden provocar la pérdida de una buena parte de la decoración de la ruta.

Contenido

Consejos generales para la realización de rutas.

A la hora de disponer los diferentes objetos y vías de la ruta a crear, es imprescindible seguir una serie de pautas, para evitar en la medida de lo posible un cierre inesperado del editor que acarree pérdida de datos.

Orden de colocación de objetos en una ruta:

  1. Todos los tramos de vía.
  2. Todos los tramos de carreteras.
  3. Objetos estáticos, no interactivos con vías ni carreteras.
  4. Objetos interactivos: Siding (apartadero), Platform (andén), paso a nivel, límites de velocidad, car spawner (tráfico en carreteras)
  5. Toda la se√Īalizaci√≥n y sem√°foros de las v√≠as.

El objetivo de este orden es evitar que un error producido en la colocación de tramos de vía o carretera, los más frecuentes, provoque la pérdida de los objetos interaccionan con la base de datos de vías.

  • Guardar los cambios efectuados en la ruta a intervalos cortos de tiempo y efectuar copias de seguridad de toda la ruta por si fuera necesario recuperarla.
  • No usar nunca la llamada dynamic track o v√≠a din√°mica. Este tramo de v√≠a de longitud variable que viene con el editor para enlazar tramos, es la fuente de muchos de los problemas; y puede evitarse su uso con los X-tracks [1], que incorporan secciones de v√≠a de longitudes y radios muy diversos.
  • Evitar los tramos de v√≠a largos (500mstrt, 2000r20d‚Ķ) que salten de baldosa. Son preferibles dos o m√°s tramos iguales m√°s cortos.
  • Evitar la colocaci√≥n de tramos en curva a izquierda y derecha correlativos, formando ‚ÄúS‚ÄĚ insertando un peque√Īo tramo recto entre ambas curvas.
  • Evitar situar un cambio de agujas entre dos baldosas.
  • Evitar que un mismo tramo de v√≠a empiece en una baldosa, pase por una segunda y termine en una tercera baldosa. De ah√≠ lo de los tramos largos.
  • Evitar que carreteras y carspawner pasen solo un poco a la baldosa siguiente.

Errores más frecuentes en el editor de rutas referentes a la base de datos de vías.

Es muy frecuente que en el momento m√°s inesperado, el editor de rutas se "cuelgue" y se cierre, debido sin duda a alg√ļn tipo de error en la base de datos de v√≠as (tambi√©n llamado TDB, de track database)

Failed to load trackdatabase

Este error se produce en el momento de abrir la ruta con el editor o en el juego. Significa que no se ha podido cargar la base de datos de vías porque hay un error.

Track data base error: 'remove_end_end' one non-vector, one vector

Este mensaje de error se puede producir al seleccionar un tramo de vía en el editor de rutas. Los datos referentes a ese tramo están corruptos en la base de datos y provoca el cierre inmediato del editor.

Can't load adjacent track

Este mensaje se produce como en el anterior caso, pero en los tramos de v√≠as que est√°n unidos al tramo corrupto. Tambi√©n puede ser producido por posici√≥n de la c√°mara y la longitud del tramo, que provoca que el tramo siguiente a√ļn no se haya cargado. En este caso basta con mover la c√°mara un poco.

Solución principal para la corrección de la base de datos.

El editor de rutas dispone de una funci√≥n para reconstruir esa base de datos, la rebuild track database, que se encuentra al principio, cuando elegimos la ruta que queremos abrir. Esta funci√≥n reconstruye esa base de datos desde el principio, pero produce tambi√©n algunos da√Īos colaterales. Y es que la reconstrucci√≥n implica la p√©rdida de sincronizaci√≥n de los objetos interactivos con la base de v√≠as, que obliga a borrar todos esos objetos y a colocarlos de nuevo. √Čsta es una de las razones del orden de colocaci√≥n de objetos. Si en la ruta solo hay v√≠as, √©sta opci√≥n es la m√°s adecuada.

Soluciones alternativas al rebuild track database

En ocasiones, el hecho de reconstruir la base de datos de v√≠as implica la p√©rdida de una cantidad de objetos considerable, pues no siempre se cumple la recomendaci√≥n de colocar los objetos seg√ļn un orden. Puede ocurrir que ya se hayan colocado objetos interactivos por desconocimiento, porque se est√© ampliando una ruta ya terminada o simplemente porque nos gusta ver una zona terminada antes de pasar a la siguiente. En estos casos se hace necesario el empleo de soluciones alternativas al Rebuild

Copia de seguridad.

Es la forma m√°s r√°pida de reparar un error. Se borra la carpeta de la ruta y se reemplaza por otra que previamente se ha guardado. El inconveniente principal es que todo el trabajo realizado desde esa copia de seguridad se ha perdido. Esta soluci√≥n es √ļtil en caso de que hubiera gran cantidad de errores y fuera muy dif√≠cil de solucionar a mano.

Copia de seguridad avanzada.

La versi√≥n avanzada consiste en recuperar una copia de seguridad, pero a√Īadi√©ndole las baldosas de terreno que se han modificado o creado desde entonces.

Para saber qu√© baldosas hay que incluir a la copia de seguridad, basta con sobrevolar la zona en el ER y apuntar el n√ļmero de baldosa, del estilo: 10366-10345. Despu√©s se copian de la carpeta world los archivos de extensi√≥n .W y .WS cuyo nombre coincida con las coordenadas.

Esta solución exige tener unos conocimientos algo más avanzados del ER, porque plantea algunos problemas con las vías, carreteras y objetos interactivos.

Las v√≠as y carreteras colocadas desde la copia aparecer√°n como objetos est√°ticos y es necesario seleccionarlos uno a uno para que se a√Īadan al TDB y RDB.

Antes de a√Īadir las baldosas nuevas, es necesario revisar la copia de seguridad con el ER. Concretamente las secciones de v√≠a y carretera y los objetos interactivos, porque son los que aparecen por duplicado en los archivos .W y en las bases de datos.

Si se habían eliminado objetos de este tipo, es necesario volver a eliminarlos de la copia para que el TDB y RDB antiguos coincidan con las baldosas nuevas.

Si se hab√≠an modificado tramos de v√≠a o carretera (var√≠a la inclinaci√≥n, el radio, el tipo de tramo de v√≠a‚Ķ); entonces se deben borrar en la copia, as√≠ como todos sus objetos interactivos. Aparecer√°n como tramos est√°ticos al a√Īadir las baldosas y se incluir√°n en el TDB y RDB al seleccionarlos uno a uno.

Todo esto es para estar seguro de que no hay nada en el TDB y el RDB que no exista como objeto est√°tico en la baldosa.

Si se han a√Īadido nuevos tramos de v√≠a y carretera a tramos ya existentes en la copia de seguridad, es necesario borrar de la copia el √ļltimo tramo que conecta con los nuevos. Es muy importante que los tramos nuevos, que aparecen como est√°ticos y que hay que seleccionar para incluirlos a las bases de datos, no est√©n conectados a los antiguos. Una vez que todos est√°n incluidos en la TDB y RDB, se incluye el tramo de conexi√≥n.

¬ŅQu√© se consigue con este procedimiento?

  • 1: No tenemos que realizar ning√ļn rebuild track database (con lo que conlleva).
  • 2: No tenemos que picar TODAS las secciones de v√≠a de toda la ruta, solo las de las baldosas que copiamos.
  • 3: Aparte de esas baldosas, el resto de la ruta NO se altera para nada.

Reparación puntual manual del track database

Puede darse el caso concreto de que sea posible abrir la ruta con el ER sin que muestre el mensaje Failed to load track database; pero que una vez dentro, se produzca un error puntual del tipo Remove_end_end… y Can’t Load… que esté perfectamente localizado.

Además, las soluciones anteriores de rebuild… o copia simple o avanzada pueden no ser factibles en cuanto impliquen demasiadas pérdidas o sea muy complejo realizar una copia de seguridad avanzada.

Para estos casos, es posible una reparación manual del archivo TDB.

La siguiente soluci√≥n permite eliminar tramos que llamaremos ‚Äúrebeldes‚ÄĚ sin necesidad de recurrir a una copia de seguridad. L√≥gicamente se debe hacer una copia de seguridad por si se producen fallos.

Lo primero es localizar ese tramo rebelde en el editor de rutas. Un tramo rebelde es aquel que al seleccionarlo en el ER, aparece el mensaje: Track data base error: 'remove_end_end' one non-vector, one vector con el consiguiente cierre del ER.

Este tramo va acompa√Īado de los tramos adyacentes, que muestran el mensaje: can't load adjacent track. El esquema siempre es el siguiente:

Resto v√≠as‚ÄĒtramo correcto‚ÄĒtramo adyacente‚ÄĒtramo rebelde‚ÄĒtramo adyacente‚ÄĒtramo correcto‚ÄĒResto v√≠as.
  • Aislar los tramos del resto. Se borran en el ER los tramos correctos, para que los tramos err√≥neos queden aislados. Lo ideal ser√≠a borrar todos los tramos de la baldosa, pero no es imprescindible. Se anota el nombre de la baldosa.
  • Abrir el archivo TDB. El inicio de dicho archivo ser√° parecido a esto:
TrackDB (
Serial ( 2496 )
TrackNodes ( 888
TrackNode ( 1
TrEndNode ( 0 )
UiD ( -10353 10333 541 1 -10353 10333 -977.555 526.352 -748.375 0 -1.06084 0 )
TrPins ( 1 0
TrPin ( 2 0 )
)
)

Donde:

  • TrackNodes ( 888 son los puntos de uni√≥n totales entre los diferentes tramos de v√≠as de la ruta, comenzando a enumerarlos uno a uno.
  • UiD ( -10353 10333 es la baldosa donde se encuentra el punto.
  • TrPin ( 2 0 ) es cada uno de los enlaces con otros tramos. En este caso, el tracknode 1 est√° unido solo con el 2. Aparecer√°n tantos TrPin como uniones con otros tramos.

Interesa saber qu√© track nodes son los rebeldes, y se buscan por el n√ļmero de baldosa.

Usando el comando ‚Äúbuscar‚Ķ‚ÄĚ, se inserta el n√ļmero de la baldosa (Por ej:‚Äú-10360 10271‚ÄĚ) y el wordpad muestra los tracknodes que tienen este n√ļmero en su descripci√≥n UiD. Apuntamos estos n√ļmeros.

  • Revisi√≥n de conexiones. Observando los TrackNodes apuntados, nos fijamos en sus interconexiones (TrPin)
  • Se observa que los Tracknodes de los tramos err√≥neos forman una cadena cerrada; mientras que el resto van interconect√°ndose entre s√≠.
  • Una vez conocidos los TrackNodes err√≥neos, se borran estas entradas. Aparece otro problema: el listado debe ser exacto y correlativo. No se puede borrar el TrackNode 575 y dejarlo simplemente vac√≠o. Los siguientes deben cambiar de numeraci√≥n. Cuando a un TrackNode se le cambia el n√ļmero, debe hacerse lo mismo con sus conexiones, en la l√≠nea TrPin, para que se refiera al nodo correcto.
  • En la tercera l√≠nea del archivo, se debe cambiar el n√ļmero total de nodos existentes, descontando los que se han borrado.
  • Abrir el ER e ir a la baldosa. Los tramos de v√≠a err√≥neos aparecen ahora sin la l√≠nea blanca superior. Se seleccionan y se borran.

Ejemplo:

Encontramos un tramo rebelde y dos tramos adyacentes que dan los mensajes de error (tres tramos de vía doble). Borramos los tramos contiguos para dejar esos tres aislados. Apuntamos la baldosa.

Buscamos en el TDB los TrackNode. Observamos que los √ļnicos Tracknode en esa baldosa son los n¬ļ 879, 880, 881, 882, 884 y 885. Seis nudos cuando la l√≥gica dice que tres tramos de v√≠a doble deber√≠an tener ocho nudos (cuatro intermedios y cuatro en los extremos). √Čste es posiblemente el error.

Vamos a los nudos numerados y nos fijamos en sus TrPin (sus conexiones) para apuntarlas en una hoja:

879-881-882; 880-884-885;
883-888-876-875-866-878-870…
886-887-873-874-868-877-872…

¬ŅQu√© observamos de esto? Que los seis nudos est√°n unidos entre s√≠ de tres en tres, y el resto de nudos van formando una cadena que enlaza con otros nudos. Estos seis son los rebeldes.

Aquí hemos tenido suerte, pues borramos todos los tramos de la baldosa salvo los rebeldes y por eso los seis que encontramos de esa baldosa son los malos. Sin hubiera más tramos, tendríamos que averiguar por las conexiones cuáles son los aislados.

Ahora tenemos que cambiar el n√ļmero de esos TrackNodes: 883->879; 886->880; 887->881 y 888->882.

No solo en la l√≠nea ‚ÄúTrackNode (883‚ÄĚ sino tambi√©n en aquellos TrackNodes directamente ligados a estos. En este caso en los propios Trpin de estos nodos y tambi√©n en los de los nodos 876 y 873.

Por supuesto, tambi√©n debemos cambiar el n√ļmero total de nodos en la l√≠nea del principio del archivo:

TrackNodes ( 888 --> TrackNodes ( 882

Si hacemos esto bien, ahora debemos guardar el archivo y abrir el RE. Vamos a la zona rebelde y deberían aparecer los tres tramos SIN la línea de cable encima. SOLO esos tres tramos. Seleccionamos y borramos.

Ya tenemos el TDB reparado.

L√≥gicamente, este truco solo sirve para un error puntual en el TDB, que suelen ser la inmensa mayor√≠a. En este caso, solo hab√≠a que eliminar tres tramos y pudimos aislarlos en una baldosa. Fueron f√°cilmente localizados y estaban al final de la numeraci√≥n. Si de 888 nodos tuvi√©ramos que eliminar el 346, del 612 al 615 y del 729 al 732, el proceso ser√≠a bastante engorroso y habr√≠a que plantearse las opciones tradicionales. Recordemos que no s√≥lo el n√ļmero de TrackNodes debe ser exacto, sin saltarse ning√ļn n√ļmero, sino que tambi√©n deben estar perfectamente ordenados.

Icono de esbozo

Este artículo o sección es un miniesbozo en el que falta información esencial. Ampliándolo ayudarás a mejorar la TrenSimpedia.