Ford Racing 2 (2003) PC


Juego de carreras sin pretensiones.
Juego sencillo sin muchas opciones.
Segunda parte de un juego mediocre.
El Pepsi-Man de los juegos de coches.

Un juego directo, sencillo pero con unas físicas y un manejo muy satisfactorios. Y un juego que, pese al recibimiento tibio por parte de la prensa, sobre todo por intentar compararlo de manera absurda con Gran Turismo, supo hacerse un hueco en el recuerdo de aquellos que pudieron probarlo en su momento.

╔════════════════════════════╗
FORD RACING 2
PC
╚════════════════════════════╝

La verdad es que no se han presentado demasiados problemas a la hora de hacer funcionar este juego correctamente, pero los pocos que han aparecido no he sido capaz de resolverlos ni de encontrar la más mínima información en internet. Los iré mencionando en sus apartados correspondientes.

En cualquier caso, te recomiendo seguir los pasos en orden y no dejarte nada. Sin más preámbulos, vamos al tajo.


╔════════════════════════════╗
Descarga e instalación
╚════════════════════════════╝

En la actualidad es imposible adquirir este juego por ninguna vía. Sin embargo, lo tienes disponible para su descarga en archive.org, pero yo no te he dicho nada.

Montar la imagen ISO e instalar el juego de forma normal. Te aconsejo que vayas a la carpeta de instalación (por defecto C:\Archivos de programa (x86)\Empire Interactive\Ford Racing 2\) y hagas copia de seguridad del ejecutable, fr2.exe, por si acaso.


╔════════════════════════════╗
Ajustes gráficos, de audio y de idioma
╚════════════════════════════╝

Muchos juegos antiguos tenían los ajustes de resolución (y, a veces, el resto de ajustes gráficos) fuera del propio juego, en una ventana de ajustes propia. Si vamos a "Inicio - Programas - Empire Interactive - Ford Racing 2 - Game Configuration" o ejecutamos directamente el archivo "syscfg.exe" ubicado en la carpeta "CONFIG" dentro de la carpeta del juego, podremos ajustar diversos parámetros:


Desde esta ventana nos aseguraremos de elegir los máximos ajustes gráficos. En resolución, al igual que sucedía con Star Wars - Racer, te recomiendo que escojas la más baja que tenga la misma relación de aspecto que tu monitor, y la profundidad de color más alta. Mi monitor es 16:9, por lo que escogeré 1280 x 720 x 32. No te preocupes si tu monitor tiene una resolución nativa mucho mayor: recuerda que la resolucion real a la que se renderizará el juego vendrá dada por dgVoodoo. El escoger resoluciones menores desde los ajustes de configuración del juego responde a dos motivos principales:
  1. En muchos juegos antiguos que dependen mucho de la CPU el rendimiento se resiente a altas resoluciones, incluso en CPUs modernas, si ejecutamos el juego nativamente y no a través de un wrapper como dgVoodoo. Escogiendo una resolución baja en los ajustes del juego y una alta en dgVoodoo solucionaremos ese problema en gran medida, y el rendimiento será mucho mejor, sea cual sea la resolución final a la que dgVoodoo renderice el juego.
  2. El HUD de muchos de estos juegos no se lleva bien con resoluciones muy altas, y tiende a mostrarse a un tamaño ridículamente pequeño, tanto más pequeño cuanto mayor sea la resolución escogida en los ajustes del juego. En cambio, si escogemos una resolución relativamente baja en los mismos, y luego una resolución alta en dgVoodoo, el tamaño del HUD seguirá siendo grande y legible, por norma general.

╔════════════════════════════╗
Widescreen fix de AuToMaNiAk005
╚════════════════════════════╝

Ha habido otros widescreen fixes para este juego en el pasado, pero éste es el primer widescreen fix HOR+ que no estira el HUD, lo cual es novedad, ya que ha salido hace escasas semanas.

Descargaremos el widescreen fix de AuToMaNiAk005 desde su Google Drive o desde este mirror. Aclaro que es la última versión disponible a día 11 de julio de 2023. El enlace original de Google Drive lo he sacado del canal de YouTube del autor:


Es una pena que este tipo no se dé más a conocer. Sería genial que actualizase la obsoleta información de la entrada de este juego en PCGamingWiki.

El zip que acabamos de descargar contiene dos carpetas: "NoCD" y "Original". Si no quieres depender del disco o de la imagen montada para jugar, lo más cómodo es que te centres en la carpeta "NoCD". Escoge el ejecutable que coincida con el aspect ratio de tu monitor. En mi caso, iré a NoCD\16x9 y copiaré el ejecutable modificado fr2.exe a la carpeta de instalación del juego, sustituyendo el original.

En Windows 10 y 11 este widescreen fix funciona sin problemas, pero parece haber algún tipo de incompatibilidad en Windows 8.1, donde también lo he probado:


Nos da el error de los filtros DirectShow, pese a haber seguido el prodecimiento reflejado en el siguiente apartado de esta guía.

Entiendo que es problema del Widescreen fix, porque si uso un NoCD exe normal de toda la vida, como éste, el juego arranca y funciona sin problemas, aunque sin Widescreen fix, claro. Me he puesto en contacto con el autor y se lo he comentado. Afirma que su ejecutable se basa en este mismo NoCD. No ha vuelto a responder pero está claro que su ejecutable tiene que tener alguna diferencia más, y no me refiero únicamente al widescreen hack. En cualquier caso, no creo que juegue mucho a este juego en Windows 8.1, con lo cual no es tan grave la cosa.


╔════════════════════════════╗
Windows Media Source Filter fix
╚════════════════════════════╝

Este juego de 2003 utiliza un antiguo componente de DirectShow para la reproducción de música, que fue eliminado por Microsoft en Windows Vista. Las pistas de música están en formato WMA. Lo que haremos será restablecer el antiguo "Windows Media Source Filter". Con eso conseguiremos que el juego no crashee al acabar la intro y que la música funcione. Lo haremos de la siguiente manera:
  1. Descargamos el Windows Media Source Filter - DirectShow Codec v1.7 desde este enlace o desde este mirror.
  2. Descomprimimos el zip a una carpeta, en cualquier lugar, no necesariamente en el directorio de instalación del juego.
  3. Haremos clic derecho sobre el archivo "ApplyPatch.bat" y lo ejecutaremos como administrador.
  4. Una vez nos diga que todo se ha instalado y registrado correctamente, copiaremos los archivos strmdll.dll y drmclien.dll a la carpeta de instalación del juego.
Y con esto, ya estaría.


╔════════════════════════════╗
dgVoodoo, el "viejo confiable"
╚════════════════════════════╝

dgVoodoo, que traducirá el DirectX 8 de este juego a un más actual DirectX 11, nos permitirá ejecutar el juego a la resolución que queramos (con filtrado anisotrópico de hasta 16x y Multisampling Anti-Aliasing de hasta 8x), nos ayudará a corregir algunos problemillas de Z-Fighting aumentando la precisión del depth buffer y también nos permitirá usar ReShade. Para empezar, descargaremos la última versión de dgVoodoo de su web oficial. La última disponible ahora mismo es la 2.8.1. Una vez descargado el zip, coloca los siguientes archivos en la carpeta principal del juego:

dgVoodooCpl.exe
dgVoodoo.conf
MS\x86\D3D8.dll

Ahora, ejecuta dgVoodoCpl.exe. Deja todas las opciones como vienen por defecto, a excepción de las siguientes:
  • Pestaña General \ Appearance \ Scaling mode: 
    • Para jugar en el aspect ratio 4:3 original -> "Stretched, 4:3 Aspect Ratio"
    • Para 16:9, ya sea con el panorámico con vFOV recortado o usando el mencionado widescreen fix (recomendado) -> "Unspecified".
  • Pestaña General \ Miscellaneous: Keep window aspect ratio: ON
  • Pestaña General \ Miscellaneous: Capture mouse: OFF
  • Pestaña DirectX \ Resolution (ejemplo para una resolución efectiva de 4K):
    • Para 4:3 -> 2880x2160 (aunque no sale en el desplegable, puedes teclear este valor y pulsar Intro).
    • Para 16:9 -> 3840x2160
  • Pestaña DirectX \ Texturing: Filtering: Force anisotropic 16x
  • Pestaña DirectX \ Antialiasing (MSAA): 4x (si te atreves y tu PC es lo bastante potente, puedes probar 8x). Por cierto: así como en el caso del Star Wars Racer te dije que no se te ocurriese crear perfil del juego en el panel de control de Nvidia que modifique el anisotrópico o el anti-aliasing, ni siquiera el de transparencia, ya que eso provocaría que el juego no a arrancaría o, si lo hacía, habría shimmering en las texturas, en esta ocasión te recomiendo justo lo contrario: que actives, en el perfil del panel de control de Nvidia para este juego, la opción de Anti-aliasing de transparencia:

  • Ajustes avanzados: haciendo clic con el botón derecho sobre alguna zona libre de la ventana de dgVoodoo, nos saldrá un menú contextual del que seleccionaremos "Show all sections of the configuration". Nos aparecerán varias pestañas nuevas. Iremos a "DirectXExt" \ Miscellaneous \ Depth buffers y escogeremos "Force 32 bit". Con esto corregiremos los problemas de parpadeo de poligonos en la lejanía que luchan por superponerse a otros (Z-fighting).
  • Para reducir los tiempos de carga en el Star Wars Racer, recomendaba, en la pestaña "DirectXExt", activar la opción "Batched update for primary surface. Aunque en este juego no noto una disminución sensible de los tiempos de carga, sigo dejando la opción activada. Y, del mismo modo, si tenemos problemas de rendimiento iremos a la pestaña "DirectX \ Miscellanneous" y marcaremos la opción "Fast video memory access". Supuestamente reduce drásticamente el uso de la CPU. En mi caso, no noto ninguna diferencia en los replays, único momento en el que se nota algo de stuttering esporádico producido por un extraño problema que presental el juego: en las repeticiones del jugador, el framerate comienza siendo de 60fps, al igual que el resto del juego, pero una vez los coches se disponen a arrancar, se bloquea a 58fps. No tiene ningún sentido, pero no se puede cambiar. O, al menos, no he encontrado la manera. Y por eso hay algo de judder en los replays. Lo he visto en multitud de vídeos de YouTube. Esto sólo afecta a los replays del jugador, y no a las repeticiones que se muestren en las rolling demos.
Una vez tengamos todo, haremos clic en "Apply" y en "OK" para cerrar la ventana.


╔════════════════════════════╗
Vibración
╚════════════════════════════╝

En este juego la vibración no me ha funcionado en Windows 8.1, 10 ni 11 con ningún mando, ni DirectInput ni XInput, ni usando el driver de Masahiko Morii modificado, ni usando Xidi (echa un vistazo a mi anterior entrada sobre el Star Wars: Racer para más info de estos drivers/wrappers). No obstante, cualquiera de los dos es necesario para que el juego arranque si usamos un mando: deberemos tener instalado uno de ellos, indistintamente. En el caso de Xidi, hay que colocar en el directorio del juego el archivo dinput8.dll de la carpeta Win32 del zip de Xidi para que el cachondo del juego arranque sin dar el siguiente mensaje de error:


Por cierto: si tienes intención de usar los gatillos analógicos para acelerar y frenar, entonces elige Xidi y olvida el driver de Masahiko Morii. La explicación, en el apartado siguiente.

Cualquiera diría que, consiguiendo que ese mensaje deje de salir, habremos conseguido que la vibración funcione... Pues no, nada de eso. Ni con el Dualshock 4 y DualSense conectados mediante DS4Windows, ni con mando original de 360, One, copia china del de 360, 8BitDo Ultimate C Wired USB, Logitech Rumblepad 2 DirectInput/Logitech F510 conectado en modo DirectInput (en ambos casos con el software de Logitech corriendo en segundo plano)... Deja escoger vibración en los ajustes de control, pero luego no funciona.

Así que, de momento, nada que hacer a este respecto. No entiendo por qué no funciona. También ignoro si funciona en Windows anteriores al 8.1. Si funciona, por ejemplo, en Windows 7, entiendo que debería funcionar en el 8.1, pero no lo hace. Podría ser un bug del juego original. Tampoco he probado con volante. Nos quedamos sin vibración, a menos que decidamos emular la versión de PS2 o de Xbox.


╔════════════════════════════╗
Controles / Esquema /
Perfil DS4Windows 
╚════════════════════════════╝

Mi esquema de control preferido para este tipo de juegos es el clásico de juegos de PS1 hasta el año 97, aproximadamente:


Aunque veas un mando de PS4, el esquema vale exactamente igual para un mando de Xbox y, por extensión, para cualquier mando XInput. De esta imagen, por cierto, hay que hacer varias puntualizaciones:
  • He intentado ajustar el esquema de control lo máximo posible a la configuración clásica de PSX para juegos de conducción/arcade.
  • Si usamos mando con stick analógico, sea la configuración que sea, sólo podremos navegar por los menús usando dicho stick, y no la cruceta. Para solucionar esto, he mapeado la cruceta del mando a los cursores del teclado, como se ve en la imagen, mediante DS4Windows. De paso, usando esa misma herramienta, he mapeado el botón OPTIONS, antiguamente conocido como START, a la tecla Escape. De ese modo, puedo pausar la partida en cualquier momento, saltarme las secuencias FMV, etc. Por lo demás, el juego parece asignar por defecto el botón Círculo a la acción de cancelar dentro de los menús, por lo que faltaría asignar el botón X a la acción de aceptar, que, por defecto, es el Intro del teclado, por lo que mapearemos el botón X al Intro. Por último, asignaremos R1 a la captura de pantalla (tecla "Impr Pant" o "PrtSc"). Con DS4Windows es muy sencillo asignar cualquier botón del mando a dicha tecla. Si no usas un mando de PS4, tu mejor apuesta es joy2key. En este caso, mapear el botón R1 a la tecla de "Impr Pant" es un pelín engorroso ya que el programa no registra la pulsación de dicha tecla a la hora de asignarla, sino que hay que desplegar el menú contextual sobre la casilla de registro y elegir PRINT SCREEN.
  • No he asignado el acelerador y freno a los gatillos analógicos del mando porque, como he dicho, quería conseguir un esquema de control lo más parecido al típico juego de coches de PSX, al menos hasta el año 97-98. Pero, que sepas que se puede. La única condición para que los ejes y todo funcione correctamente es colocar un archivo Xidi.ini (crea un archivo txt y le cambias la extensión a .ini) en la carpeta del juego que contenga lo siguiente:
[Mapper]
Type                                = StandardGamepad
Type.1                              = ExtendedGamepad

Como ves, he cambiado la línea "Type.1" al valor "ExtendedGamepad". De este modo se preserva la funcionalidad analógica de los botones LT y RT, que funcionarán correctamente. Si pusiera StandardGamepad, los gatillos serían reconocidos simplemente como botones digitales. Y si pusiera XInputNative, los gatillos estarían patas arriba al tener asignado un eje negativo y positivo a cada gatillo, actuando el juego de una forma con el gatillo sin pulsar hasta pulsado a la mitad, y de otra desde la mitad hasta pulsado a fondo. Lo dejo aquí reflejado simplemente como apunte.

Si tienes un Dualshock 4 o un DualSense y te convence este esquema de control, puedes descargar mi perfil de DS4Windows desde aquí.


╔════════════════════════════╗
ReShade (opcional)
╚════════════════════════════╝

Reshade es un inyector de efectos por post-procesado -tales como oclusión ambiental, profundidad de campo, aberración cromática, grano/ruido, correcciones de color, etc.- desarrollado por Crosire, que podemos aplicar a nuestro juego para cambiar y mejorar su aspecto gráfico. ReShade funciona con juegos en DirectX 9, 10, 11, 12, OpenGL y Vulkan.

Nota: las siguientes capturas relativas a la instalación y configuración de ReShade pertenecen al tutorial del Star Wars: Racer, por lo que las rutas de los ejecutables, etc., son distintas.

Primero, descargaremos ReShade desde su web oficial. En el momento de escribir esto, la última versión disponible sigue siendo la 5.8.0. Al ejecutar el archivo nos pedirá que localicemos el ejecutable del juego donde queremos inyectar ReShade (por defecto, en C:\ Archivos de Programa (x86) \ Empire Interactive \ Ford Racing 2 \ fr2.exe):


A continuación, tenemos que decirle a ReShade qué API gráfica está usando nuestro juego. El juego corre bajo DirectX 8, pero ya sabemos que, dgVoodoo mediante, el juego está siendo convertido a DirectX11 "al vuelo", por lo que marcaremos la segunda opción:


En el siguiente paso, podemos pasar y crear nosotros nuestro propio preset jugando con los distintos shaders y configuraciones, o importar uno ya hecho:


El que yo he creado, aparte de ser bastante liviano en cuanto a recursos, es sutil y da a la imagen un aspecto más agradable, con una iluminación algo más realista. Aquí imágenes del antes y el después:




Si te gusta, puedes descargarlo de aquí.

Una vez descargado, coloca el archivo en la carpeta principal del juego. Entonces, desde la ventana de instalación de ReShade que aún tienes abierta, busca el archivo y selecciónalo. Si lo has hecho así, en el siguiente paso habrá ya unos cuantos packs de shaders seleccionados:


En teoría, dejándolos tal cual vienen debería funcionar mi preset sin ningún problema pero, por algún motivo, el shader "Chromaticity.fx" de dicho preset no se instala. Por ello, te recomiendo que busques y marques manualmente el pack de shaders "RSRetroArch", al que se supone que pertenece, o que marques todos e instales todo (haciendo clic en "Unckeck all" y luego en "Check all").

Una vez hecho, empezará a descargar los shaders de algún lugar de internet (algún repositorio de GitHub, imagino). Cuando haya terminado, si todo ha ido bien, saldrá esta ventana:


Hacemos clic en Finish y ya estaría. Ahora, cada vez que iniciemos el juego nos saldrá un pequeño banner semitransparente en la parte superior de la pantalla anunciando que ReShade está cargando los shaders de nuestro preset. Una de las ventajas de las últimas versiones es que detecta cuando estamos viendo una secuencia FMV y no se aplica ahí, o al menos así parece responder en este juego.

En cuanto a cómo se usa ReShade, cómo modificar el preset o crear uno nuevo, cómo alterar individualmente los parámetros de cada shader, hacer capturas de pantalla con el antes y el después, activar o desactivar efectos individualmente o en conjunto, medir el impacto en milisegundos de cada shader en el pipeline global, y un largo etcétera, hay muchos tutoriales y vídeos a lo largo y ancho de la red, pero aquí tienes el tip más básico con el que empezar a toquetear: con la tecla "Inicio" o "Home" del teclado nos aparecerá, en una ventana flotante encima del propio juego, la interfaz gráfica de ReShade. A partir de ahí, el mundo es tuyo.

Otro pequeño consejo es que, si quieres utilizar shaders que necesitan acceder al buffer de profundidad (depth buffer), como por ejemplo los que alteran la profundidad de campo, etc., deberás tener desactivado el MSAA desde los ajustes de dgVoodoo, en este caso, o desde los ajustes del propio juego o del panel de control de la gráfica, en general. En el caso de mi preset, ninguno de los shaders que utiliza necesitan acceder a dicho buffer, por lo que no necesitas desactivar el anti-aliasing y todo se verá mucho más sólido.

Por cierto: el único archivo dll que introduce ReShade en la carpeta de instalación del juego es "dxgi.dll". Y, en cuanto a problemas o fallos, por algún motivo, y una vez he instalado ReShade, el juego se cuelga el 100% de las veces al intentar salir, teniendo que cerrarlo desde el administrador de tareas de Windows (Ctrl+May.+Esc). No me preocupa demasiado.


╔════════════════════════════╗
Intro FMV reescalada
╚════════════════════════════╝

La intro FMV original (archivo "intro_pc.wmv" situado en la carpeta "ANIMS" en el directorio principal del juego), es un archivo WMV de 256x256 a 25fps. La imagen está comprimida en el eje horizontal,  pensada para verse estirada a un aspect ratio de 16:10, por lo que he comprobado: la proporción áurea. Y no es de extrañar, dada la popularidad de ese formato de monitor por aquel entonces. En esta ocasión no me he puesto a editarla en Premiere para que se vea correctamente a 16:9, pero se podría hacer perfectamente. Lo malo es que no he conseguido reescalarla a más de 512x512 con éxito: a mayores resoluciones de archivo, el juego reproduce la imagen de la intro completamente descentrada, cortada, etc. En todo caso, una vez reescalada a 512x512 con Topaz Video AI e interpolado su framerate de 25 a 50fps con FlowFrames, el resultado es algo mejor que el original (sin tirar cohetes, que la resolución del archivo original es lamentablemente baja incluso para el año 2003). 

Para convertir el archivo resultante de nuevo a WMV he utilizado el servicio gratuito online de Cloudconvert. Hay que tener cuidado de seleccionar en los parámetros el códec de WMV llamado wmv2, y el códec de audio wmav2 o, si no, el juego dará el siguiente mensaje de error al intentar reproducir la intro y el juego se cerrará:


Puedes descargar la intro reescalada desde este enlace.


╔═══════════════════╗
NOTAS FINALES
╚═══════════════════╝

Con este puñado de fixes, la verdad es que el juego se deja jugar bastante bien. Recapitulando, aquí va un pequeño resumen de los fallos que nos vamos a encontrar:
  • Las repeticiones van un poquito a trompicones, no así el gameplay. Resulta que es porque van a 58fps en vez de a 60fps como el resto del juego. He intentado varias cosas y no he conseguido que cambie. Me da a mí que es un fallo del juego original, al menos en su versión de PC. Difícilmente se puede cambiar, pero vaya, lo único que provoca es eso, una ligera falta de fluidez a la hora de ver los replays. Nada más. Y es curioso, sabiendo que el juego puede llegar, en teoría, hasta un máximo de 122fps (según PCGamingWiki y confirmado por un usuario de Discord).
  • Tras instalar ReShade, ya no se puede salir del juego, siempre se queda colgado y hay que cerrar el proceso desde el administrador de tareas de Windows.
  • La vibración no funciona bajo ninguna circunstancia ni con ningún tipo de mando, sea DirectInput o XInput, en Windows 8.1 a Windows 11, aunque utilicemos soluciones como el driver de Masahiko Morii o, mi favorito, Xidi. Sin embargo, hay que tener uno de los dos instalado para que el juego no crashee con el mensaje de error de la vibración, y necesitaremos Xidi con un Xidi.ini para que los gatillos nos proporcionen aceleración y frenada analógica, si es que lo queremos.
  • No podremos reescalar la intro FMV más allá de 512x512 sin mostrarse cortada y descentrada.
  • Si entramos al apartado de calibración de los controles analógicos, al salir de dicho menú el juego se colgará. Por suerte, se habrán guardado los cambios, así que tampoco es para tanto.
Por último, cabe la posibilidad de utilizar la música que queramos sustituyendo los archivos presentes en \ SOUNDS \ MUSIC, siempre que mantengamos el nombre de archivo y el codec WMAV2. 

Pues nada más, de momento. Nos vemos en la siguiente.





Comentarios