Como ya he dicho cuantos menos archivos .MEB tengamos que utilizar, menos probabilidades de equivocarnos  tendremos, y menos tiempo perderemos intentando subsanar fallos. Así que lo mejor es buscar un .VHF que utilice  pocas matrices, y usarlo para nuestro mod.  Pero en ese caso ¿cómo metemos varios objetos en un solo archivo .MEB desde el programa 3DSimEd? Eso es  fácil. Primero importamos una parte de nuestro mod, y luego le añadimos las demás entrando en el menú Primitives y  pulsando el botón Add Object. En la pestaña de la parte inferior derecha seleccionamos el tipo de archivo que vamos a  añadir.  Una vez añadidos todos los objetos que vamos a meter en el .MEB, pinchamos en el menú Edit y en el botón Explode  All Objects. Confirmamos que queremos unir todas las piezas en una sola y listo, ya podemos exportar a formato .MEB.  Es muy importante no olvidarse del botón Explode All Objects, pues si no solo se exportará el primer objeto, todos los  demás que añadimos después no aparecerán en el juego.  También tenemos, cómo no, la opción de unir las partes que necesitamos en el propio ZModeler, exportar el formato  MTS, reimportarlo en el 3DSimEd, y finalmente exportar en formato .MEB.  Seguramente te habrás preguntado qué pasa con los .MEB que no usamos, en este caso los correspondientes al portón  del maletero (boot), a la defensa trasera (rear bumper) y al cuerpo de las ópticas (chassis lights), entre otros.  No podemos borrar esos .MEB, porque el juego se saldría a Windows al no encontrar unos archivos que  necesita. Entonces ¿qué hacemos?  Pues es simple: con el ZM creamos un objeto con un único y minúsculo polígono, colocándolo además lo más alejado  posible del coche. Le asignamos el material generic_windows. Exportamos en formato .mts, reimportamos en el 3DSE, y  exportamos en .MEB, sobrescribiendo los archivos que en teoría no deberían tener ninguna geometría.  Cuando iniciemos el juego ese polígono no se verá, y mantendremos esos .MEB que no podemos borrar. Problema  solucionado.  Llantas y ruedas  Una vez terminado el apartado de la carrocería, pasamos a las llantas y las ruedas.  Al igual que con el NFS Most Wanted, para crear las ruedas solo necesitamos una llanta y su neumático  centradas en el punto 0.00 de los ejes X, Y y Z, con la cara externa orientada hacia el lado izquierdo. El juego  luego se encargará de “recolocar” este objeto en las coordenadas que más tarde le indicaremos. Aunque no es tan  simple como en el NFS MW, en éste tendremos que hacer más cosas. Objetos 3D, materiales y texturas  Los discos de freno, las llantas y los neumáticos están separados en objetos distintos. En este caso me valen los discos  que ya trae, así que solo tocaré estos dos últimos. No tienen daños y son para todos los kits. Los archivos .MEB con el nombre tire loda y lodb son para los neumáticos. La geometría de los del lado izquierdo (lf  y lr) tienen la misma orientación que las llantas (la cara externa de la llanta hacia la izquierda). Los del lado derecho (rf y  rr) están en orientación y posición contrarias.  Los archivos .MEB con el nombre wheel loda y lodb son para las llantas. Son todos iguales. Los archivos .MEB con el nombre wheel lodc tienen la geometría de los neumáticos y las llantas (ambos objetos  unidos en uno solo). Son todas iguales y tienen la misma orientación que los loda y lodb (con la cara externa a la  izquierda).  Así pues se trata de repetir el proceso que ya hemos hecho con la carrocería: preparar estos objetos en el ZModeler  1.07, exportarlos a mts, reimportarlos en el 3DSimEd, y exportar en .MEB, sobreescribiendo los archivos que  correspondan. Luego iniciamos nuestro NFS Shift y comprobamos que todo esté correcto.  Una vez cargados los neumáticos y las llantas definitivas podemos comprobar si la altura de la carrocería es la correcta,  o si tenemos que volver a modificarla en el ZModeler y repetir el proceso hasta dejarlo correcto. También podemos  comprobar si las texturas de las llantas están bien así o hay que hacer más modificaciones.  Coordenadas de posición  Terminado el apartado gráfico de las ruedas, pasamos a posicionarlas de manera correcta. Estas coordenadas se  encuentran en dos archivos: vehicles\porsche_944_turbo\porsche_944_turbo.VHF (para los menús del juego), y  vehicles\physics\vehicles\porsche_944_turbo.VDF (para las carreras). Ambos archivos se editan con el bloc de  notas o el Wordpad, y en ambos deberemos poner los mismos valores.  En el .VHF tendremos que buscar las siguientes matrices: 7 => Pinza de freno derecha trasera  8 => Pinza de freno derecha delantera  11 => Disco de freno derecho delantero  12 => Disco de freno derecho trasero  13 => Llanta izquierda trasera  14 => Llanta izquierda delantera  15 => Disco de freno izquierdo trasero  16 => Disco de freno izquierdo delantero  17 => Pinza de freno izquierda trasera  18 => Pinza de freno izquierda delantera  20 => Neumático izquierdo delantero  21 => Neumático izquierdo trasero  22 => Neumático derecho delantero  23 => Neumático derecho trasero  26 => Llanta derecha delantera  27 => Llanta derecha trasera  Hay que recordar que estas matrices son las del Renault 21 Turbo modificadas, y éstas a su vez eran las del Ford Escort  RS Cosworth. Si hacemos la conversión usando como base otro modelo, los números de las matrices no van a coincidir.  Como ves son muchas matrices a modificar. Pero hay un truco: colocar correctamente primero los neumáticos del  lado izquierdo. Las llantas, las pinzas y los discos de freno de ese mismo lado tendrán los mismos valores exactos. Los  del lado derecho tendrán también los mismos valores, pero con el valor del eje X en negativo.  La primera línea de cada matriz es la que tendremos que modificar. La estructura de esa línea es la siguiente:  <MATRIX id="número de matriz" Offset="valor de eje X valor de eje Y valor de eje Z" Orientation="0.000000  0.000000 0.000000 1.000000" parent="0" />  El valor del eje X desplaza el objeto desde el centro del coche hacia el lateral. El valor del eje Y desplaza el objeto en  altura. Y el valor del eje Z desplaza el objeto desde el centro del coche hacia las ópticas delanteras o las traseras.  Por ejemplo, la matriz del neumático izquierdo delantero es la siguiente:  <MATRIX id="20" Offset="0.720000 0.300000 -1.400000" Orientation="0.000000 0.000000 0.000000 1.000000"  parent="0" /> ¿Y qué valores le ponemos? Pues esto es como siempre: método del “prueba-fallo”. Es decir, modificas el valor  añadiendo o restando un poco al número que tiene, ejecutas el juego, y miras si está mejor orientada o peor. Vas  probando valores y afinando hasta dejar el objeto en la posición correcta.  En este caso tal y como se puede ver en la imagen anterior la casualidad ha hecho que los valores X e Y estén bastante  correctos, por lo que solo modificaré el valor de Z. Tras varias pruebas la matriz queda así:  <MATRIX id="20" Offset="0.720000 0.300000 -1.280000" Orientation="0.000000 0.000000 0.000000 1.000000"  parent="0" /> Terminados de modificar el resto de matrices, el coche queda así:  Hemos terminado con el archivo .VHF. Ahora toca repetir con el archivo .VDF, con la diferencia de que usaremos los  mismos valores exactos. Lo abrimos con el bloc de notas o con el Wordpad y buscamos las siguientes líneas:         <prop name="Wheel FL Offset" data="0.7200;0.27;-1.4000" />         <prop name="Wheel FL Dimensions" data="0.300;0.50" />         <prop name="Wheel FR Offset" data="-0.7200;0.27;-1.4000" />         <prop name="Wheel FR Dimensions" data="1.300;0.50" />         <prop name="Wheel RL Offset" data="0.7200;0.27;1.2000" />         <prop name="Wheel RL Dimensions" data="0.300;0.50" />         <prop name="Wheel RR Offset" data="-0.7200;0.27;1.2000" />         <prop name="Wheel RR Dimensions" data="0.300;0.50" /> Es exactamente igual que con el archivo .VHF, solo que los valores están separados por un punto y coma. El valor Y da  igual si lo alteramos o no pues no habrá variación en el juego. Tras modificarlos quedan así:          <prop name="Wheel FL Offset" data="0.7200;0.27;-1.2800" />          <prop name="Wheel FL Dimensions" data="0.300;0.50" />         <prop name="Wheel FR Offset" data="-0.7200;0.27;-1.2800" />          <prop name="Wheel FR Dimensions" data="1.300;0.50" />         <prop name="Wheel RL Offset" data="0.7200;0.27;1.1500" />          <prop name="Wheel RL Dimensions" data="0.300;0.50" />         <prop name="Wheel RR Offset" data="-0.7200;0.27;1.1500" />          <prop name="Wheel RR Dimensions" data="0.300;0.50" /> También sustituiremos la leyenda renault_21_turbo por porsche_944_turbo allá donde la veamos.  Salvamos los cambios y listo, en carrera las ruedas deberían aparecer correctamente.  Las ruedas ya están en la posición correcta. Sin embargo parece que en el menú la carrocería está a la altura correcta, y  en partida está un poco más alta de lo que debiera. Podemos corregirlo también modificando con el bloc de notas o el  Wordpad el archivo vehicles\physics\chassis\porsche_944_turbo.CDF.  En él buscamos la siguiente línea:  GraphicalOffset=(0.0, -0.00, 0.0) // does not affect physics! Al igual que con las matrices de las ruedas, se trata de los ejes X, Y y Z, separados por comas. Y una vez más, método  de “prueba y fallo”, hasta dar con el valor más adecuado. Modifico el segundo valor para bajarla en altura, quedando así:  GraphicalOffset=(0.0, -0.10, 0.0) // does not affect physics! Resultado final:  Finalizada la carrocería, las llantas y las ruedas, pasamos a editar otros parámetros importantes.  Piloto  Posición del piloto  La posición del piloto se encuentra en el archivo vehicles\porsche_944_turbo\porsche_944_turbo.CDV que  editaremos con el bloc de notas o el Wordpad.  Como siempre cambiaremos renault_21_turbo por porsche_944_turbo allá donde lo encontremos. Y también  modificaremos los valores de X, Y y Z en las líneas Vehicle Driver Position y Cockpit Driver Position. El resto del  documento lo dejaremos intacto.  Tras probar varias veces, finalmente las líneas que me interesan se quedan así:          <prop name="Name" data="porsche_944_turbo" />          <prop name="Right hand drive" data="false" />         <prop name="Vehicle driver position" data="-0.00;-0.03;0.10" />          <prop name="Cockpit driver position" data="-0.00;-0.03;0.10" />  Cámara del piloto La cámara del piloto conviene dejarla por defecto cuando hablamos de interiores de gran detalle. Pero cuando se trata de  interiores pobres es mejor cambiarla de posición. Lo haremos editando el archivo  vehicles\porsche_944_turbo\porsche_944_turbo.CDP con el bloc de notas o el Wordpad.  La línea que tenemos que retocar es:          <prop name="Eye point offset" data="-0.35;1.03;2.10" />  Como siempre hay que sustituir renault_21_turbo por porsche_944_turbo allá donde aparezca. El resto de líneas las  dejamos tal y como están. Cockpit  El NFS Shift tiene un archivo específico para el interior de la cabina (cockpit), el  vehicles\porsche_944_turbo\porsche_944_turbo.CPT. Este archivo funciona como el CRD pero solo en lo relativo al  cockpit. Como siempre lo editamos con bloc de notas o Wordpad y cambiamos renault_21_turbo por porsche_944_turbo.  La parte que más nos interesa en principio es la línea donde pone Cockpit Render Model. En esa línea le decimos qué  archivo .VHF va a utilizar para los objetos 3D del cockpit.  Cuando tenemos un cockpit de alta definición en objetos 3D separados del resto de la carrocería lo normal es repetir el  proceso que ya hemos hecho: editar el .VHF que corresponde (que en este caso sería el archivo  vehicles\porsche_944_turbo\porsche_944_turbo_cockpit.VHF) y exportar y sobreescribir los archivos .MEB  (aquellos que aparezcan listados en el .VHF).  Como este Porsche no tiene un interior en alta definición no necesitamos hacer nada de esto. Así que le doy como valor  el archivo .VHF de la carrocería y ruedas. La línea queda finalmente así:          <prop name="Cockpit Render Model" data="porsche_944_turbo.vhf" />  Guardamos cambios y listo. Con esto nos ahorramos un montón de trabajo y logramos que el juego cargue los mismos objetos para las cámaras  interiores y exteriores.  Llamaradas de escape El número y posición de las llamaradas que salen por el escape en carrera se determinan en el archivo  vehicles\porsche_944_turbo\porsche_944_turbo.CRD. En concreto en las líneas:          <prop name="Number of Exhausts" data="1" />         <prop name="Exhaust Position 1" data="0.35;0.25;1.90" />          <prop name="Exhaust Position 2" data="0.45;0.25;1.90" />          <prop name="Exhaust Target Position 1" data="0.35;0.25;2.00" />         <prop name="Exhaust Target Position 2" data="0.45;0.25;2.00" /> En la primera línea ponemos el número de llamaradas. Para este coche solo necesitaré una.  En la segunda y tercera línea indicamos la posición de dichas llamaradas (”X;Y;Z”)  Y en la cuarta y quinta línea indicamos la posición del humo del tubo de escape, que será casi la misma que la de las  llamaradas.  Colores de carrocería y vinilos  Se listan en el archivo vehicles\porsche_944_turbo\porsche_944_turbo.RCF.   Podemos añadir o eliminar elementos de la lista (deberá haber mínimo 4). En este coche he decidido poner 6, copiando  las líneas de los colores de otros coches y editándolas, de tal manera que el documento queda así:  <REPLACEMENT_SYSTEM>  <NAMES INPUT ="LIVERY"> <NAME LIVERY="1" NAME="Paint 1" /> <NAME LIVERY="2" NAME="Paint 2" /> <NAME LIVERY="3" NAME="Paint 3" /> <NAME LIVERY="4" NAME="Paint 4" /> <NAME LIVERY="5" NAME="Paint 5" /> <NAME LIVERY="6" NAME="Paint 6" /> </NAMES> <CONDITION LIVERY="1"> <REPLACE MATERIAL="porsche_944_turbo_paint" NEWMATERIAL="Vehicles\_Paint_Colors\paint_audi_ibis_white.mtx" /> <REPLACE TEXTURE="COMMON_PAINT.dds" NEWTEXTURE="paint_audi_ibis_white.dds" /> </CONDITION> <CONDITION LIVERY="2"> <REPLACE MATERIAL="porsche_944_turbo_paint" NEWMATERIAL="Vehicles\_Paint_Colors\paint_ford_screaming_yellow.mtx" /> <REPLACE TEXTURE="common_paint.dds" NEWTEXTURE="paint_ford_screaming_yellow_gt.dds" /> </CONDITION> <CONDITION LIVERY="3"> <REPLACE MATERIAL="porsche_944_turbo_paint" NEWMATERIAL="Vehicles\_Paint_Colors\paint_toyota_red.mtx" /> <REPLACE TEXTURE="common_paint.dds" NEWTEXTURE="paint_toyota_red.dds" /> </CONDITION> <CONDITION LIVERY="4"> <REPLACE MATERIAL="porsche_944_turbo_paint" NEWMATERIAL="Vehicles\_Paint_Colors\paint_vw_golf_mk2_gti_blue_metallic.mtx" /> <REPLACE TEXTURE="common_paint.dds" NEWTEXTURE="paint_vw_golf_mk2_gti_blue_metallic.dds" /> </CONDITION> <CONDITION LIVERY="5"> <REPLACE MATERIAL="porsche_944_turbo_paint" NEWMATERIAL="Vehicles\_Paint_Colors\paint_subaru_steel_gray_metallic.mtx" /> <REPLACE TEXTURE="COMMON_PAINT.dds" NEWTEXTURE="paint_subaru_steel_gray_metallic.dds" /> </CONDITION> <CONDITION LIVERY="6"> <REPLACE MATERIAL="porsche_944_turbo_paint" NEWMATERIAL="vehicles\_paint_colors\paint_vw_black_magic.mtx" /> <REPLACE TEXTURE="COMMON_PAINT.dds" NEWTEXTURE="paint_vw_black_magic.dds" /> </CONDITION> </REPLACEMENT_SYSTEM> También podemos crear nuestros propios colores y vinilos. Para ello crearemos el material .MTX correspondiente y lo  colocaremos en el directorio vehicles\_paint_colors. La textura de ese material la colocaremos donde van casi todas  las texturas, en vehicles\textures.  Mejoras Las mejoras o “upgrades” que podemos montar en nuestro coche están repartidas en diversos archivos que podremos  editar con el bloc de notas o el Wordpad, a saber:  vehicles\porsche_944_turbo\porsche_944_turbo_body.VUD  Establece qué archivos debe cargar para el coche de serie y para las mejoras de carrocería. En el caso de este Porsche  no hay mejoras, por lo que todos los KITS deben ser el 00.  Para la posición de los escapes en las mejoras pondremos los mismos valores que en .CRD y para los desplazamientos  de ruedas (para carrocerías ancheadas) les pondremos valores cero. También sustituiremos las referencias  renault_21_turbo por porsche_944_turbo.  vehicles\porsche_944_turbo\porsche_944_turbo_brakes.VUD  Establece qué frenos debe cargar para el coche de serie y para las distintas mejoras. Si lo vas a modificar debes cargar  siempre uno que exista o el juego se saldrá cuando intente cargarlo. Si no sabes qué debes modiicar, mejor déjalo como  está o cópialo de otro coche. Mi archivo finalmente queda así:  <brake_upgrades>     <stage level="0" disc="FORD_ESCORT_RS" caliper="FORD_ESCORT_RS" />     <stage level="1" disc="BREMBO_STAGE4" caliper="BREMBO_STAGE4" />     <stage level="2" disc="BREMBO_STAGE4" caliper="BREMBO_STAGE4" />     <stage level="3" disc="BREMBO_STAGE4" caliper="BREMBO_STAGE4" />     <stage level="4" disc="BREMBO_STAGE4" caliper="BREMBO_STAGE4" /> </brake_upgrades> vehicles\porsche_944_turbo\porsche_944_turbo_tire.VUD  Exactamente lo mismo que con el anterior, pero con las ruedas. Establece qué neumáticos y llantas tendrán cada mejora  y de qué medidas. upgrade\vehicleupgradecatalogue\porsche_944_turbo.XML  En este archivo indicaremos qué mejoras estarán disponibles para comprar, y cuáles no. La inteligencia artificial del juego  podrá usar todas las mejoras, pero nosotros solo aquellas que especifiquemos en este archivo. Aquellos que no  queramos simplemente los dejamos en blanco y listo. También podemos establecer cuánto nos va a costar cada mejora.  La lista de mejoras para este coche queda así:  <!-- Engine stages --> <!-- Drivetrain stages --> <!-- Turbo stages --> <!-- Suspension stages --> <!-- Brake stages --> <stage name="brake_1" path="brake" stage="1" price="1500" label="brake_1" description="brake_1" /> <!-- Tyre stages --> <stage name="tyre_1" path="tyre" stage="1" price="1000" label="tyre_1" description="tyre_1" /> <!-- Nitro stages --> <!-- Body stages --> <!-- Cockpit stages --> <!-- Weight reduction stages --> Como ves este coche solo dispondrá mejoras de frenos y ruedas, nada más.  Otros archivos  Todavía podemos cambiar un montón de parámetros, como el precio del coche, el rango de llantas que podremos  comprar, el sonido del coche y su volumen, etc. Es cuestión de ir abrienndo archivos, leer las líneas e ir cambiando los  valores.  Pero aunque ya no queramos modificar ningún valor más, deberemos siempre cambiar las referencias  renaul_21_turbo por porsche_944_turbo en los siguientes archivos:  vehicles\porsche_944_turbo\porsche_944_turbo.CDP  vehicles\porsche_944_turbo\porsche_944_turbo.CDV  vehicles\porsche_944_turbo\porsche_944_turbo.CGP  vehicles\porsche_944_turbo\porsche_944_turbo.CPA  vehicles\porsche_944_turbo\porsche_944_turbo.CPT  vehicles\porsche_944_turbo\porsche_944_turbo.CRD  vehicles\porsche_944_turbo\porsche_944_turbo.CSD  vehicles\porsche_944_turbo\porsche_944_turbo.RCF  vehicles\porsche_944_turbo\porsche_944_turbo.CDV  vehicles\porsche_944_turbo\porsche_944_turbo.VHF  vehicles\porsche_944_turbo\porsche_944_turbo_body.VUD  vehicles\physics\chassis\porsche_944_turbo.CDF  vehicles\physics\collision\porsche_944_turbo.joi.XML  vehicles\physics\collision\porsche_944_turbo.sys.XML  vehicles\physics\collision\porsche_944_turbo.XML  vehicles\physics\engines\porsche_944_turbo.EDF  vehicles\physics\statistics\porsche_944_turbo.XML  vehicles\physics\vehicles\porsche_944_turbo.VDF  Ya lo he remarcado a lo largo del tutorial, debemos cambiar esas referencias siempre que nos las encontremos. Es  sumamente importante ya que si las referencias no son al coche correcto nuestros cambios pueden no tener efecto o  directamente hacer que el juego falle.  Podemos modificar más archivos y cambiar más valores, pero a mí me vale con éstos. No necesito que mis mods rocen  la prefección, solo que me diviertan al jugarlos.