27 abr 2014

ePSXe 1.9.0 + bios + plugins & guía Steam Overlay [Win7 compatible]



Como bien sabréis algunos, este emulador no es la primera vez que aparece en mi blog. Hasta el día de hoy, ha estado disponible la descarga de la versión 1.7.0 (y aún sigue disponible aquí), aunque tiene la pega de que solo era compatible hasta windows Vista (según la página oficial) y ciertos juegos daban problemas por los plugins que poseia.

Esta nueva versión que traigo aquí (y que lleva disponible desde Agosto de 2013, casi nada), dispone de muchos más plugins para gráficos, más bios y un par de aplicaciones extra (una de las cuales mía) que extienden las capacidades del emulador. Además, mi intención en esta nueva entrada es comentar una configuración del emulador con la que mis juegos me van genial (en la otra versión me iban a patadas juegos como RE2, RE3 o MGS) y explicar como he logrado integrar el Steam Overlay para realizar capturas y subirlas.

El contenido del paquete es el siguiente:
-Bios SCPH101,1001,5500,7001 y 7502 (USA, USA, JPN y PAL respectivamente)
-6 drivers gráficos para tarjetas compatibles con DX y OpenGL
-Plugin de sonido SPU para v1.9.0
-Plugins para el lector de CD para las nuevas versiones de Win y las antiguas.
-Aplicación ePSXeCutor, para lanzar distintas configuraciones del emulador y gestionar memory cards.
-Aplicación ExeCreator para generar ejecutables de tus imagenes de juegos y añadirlas a Steam.

NOTA: la última aplicación (ExeCreator) es de mi autoría. Esta en fase alpha y requiere tener instaladas las librerías C++ básicas. Viene junto a BatToExe, aplicación freeware de terceros con la cuál se puede realizar el proceso de generación del .exe del juego (funcionamiento explicado más adelante).


Índice:
1. Descarga e instalación
2. Configurar el emulador
    Paso 1: Inicio
    Paso 2: Bios
    Paso 3: Gráficos
    Paso 4: Sonido
    Paso 5: Lector CDROM
    Paso 6: Joysticks
3. Usar Steam Overlay en un juego
    Uso de ExeCreator
    Videotutorial (todos los pasos)
4. Comentarios, problemas y soluciones


1. Descarga e instalación
Fácil y sencillo, un único paquete en formato .RAR que puedes descargar desde mi dropbox:


Para instalarlo, o mejor dicho para empezar a usarlo, descomprimelo en una carpeta de tu gusto. Recomiendo usar tu propio HOME, o lo que es lo mismo, tu carpeta de usuario (la que tiene el nombre de tu cuenta de usuario). De esta forma te ahorrarás en dolores de cabeza en caso de que no dispongas de permisos de escritura en el disco C:\ (o la partición donde tengas Windows instalado).

En mi caso, lo tengo descomprimido en "C:\Users\Razorbreak\Downloads\epsxe 190".

Actualización: puedes descargar también las isos de algunos de los juegos que aún me funcionan. Más información en http://razorbreakrestringedzone.blogspot.com.es/p/drive.html.

2. Configurar el emulador
Este proceso puede resultar fácil o difícil, todo depende de nuestro sistema y el hardware y software que posea. En mi caso, tengo las siguientes especificaciones:
-SO Win7 Ultimate x64
-Gráfica NVidia GTX650 2GB
-8GB RAM DDR3
-DualShock 2 Wireless

Esa configuración me causó ciertos problemas con la versión 1.7.0 que posteé hace tiempo en este mismo blog, y a mucha gente que conozco me ha comentado que en sus sistemas de 64bits el emulador no andaba. A mi me llegaba a funcionar, con el problema de que juegos como Resident Evil 2 no lograban siquiera pasar del menú principal, o bien se aceleraban o bien se trababan al pasar un rato. Si bien, todo podría deberse a que el emulador, por aquel entonces no era compatible más allá de un Win Vista.

Esta versión es diferente, además de tener más plugins para distintas tarjetas y sistemas, es compatible con Win7 y sistemas más actualizados, asi que os explicaré el proceso que yo he seguido para que me funcionasen correctamente los juegos.

Una vez descomprimido, hacemos doble click sobre ePSXe.exe hasta que veamos la ventana principal del emulador. Si es la primera vez, nos saltará automaticamente una ventana para autoconfigurarlo todo en 7 pasos. En caso de no saltar, o de que queramos reconfigurarlo todo, pinchamos en el menú Config-->Wizard Guide.

Estas son las ventanas que deberemos ver:

Paso 1: Inicio

Pinchamos sobre "Config >>" para avanzar.

Paso 2: Selección de BIOS

Pinchamos sobre la BIOS que queramos. Como yo tengo en mi inmensa mayoría juegos PAL, selecciono la última versión. En cualquier caso, si en algún momento queréis cambiar la versión de la bios para jugar a otros juegos de otras regiones, id a Config-->Bios y escoged cualquiera de los otros archivos disponibles de bios. Usad el nº como referencia para saber la región de cada bios (no hace falta repetir el asistente).

Pinchamos en "Next >>" para avanzar.

Paso 3: Selección del driver gráfico


Este punto es crucial, y determinará que un juego funcione correctamente, con glitches o directamente ni arranque. He probado todos, y los 6 disponibles funcionan correctamente con mi tarjeta de vídeo. Por experiencia, recomiendo escoger la de "Pete's OpenGL2 Driver 2.9". Antes de proceder, pinchad en Test, si se muestra un mensaje de que funciona aparentemente bien, pinchad en Config, vereis lo siguiente:


No os asusteis con la gran cantidad de opciones, solo comentaré lo crucial en base a mis pruebas. Si disponeis de una buena gráfica (por ejemplo de Nvidia serie GT en adelante, o sus sucedáneos de ATI), abajo a la izquierda (abrir imagen en una pestaña aparte, para ampliarla) veréis dos opciones para establecer la configuración en rápida (Fast) o buena (Nice). Pinchad en Nice, os rellenará automáticamente la configuración mejor. Habilitar también las opciones "Disable screensaver", "Fullscreen mode" (usad la configuración de vuestro monitor, en mi caso 1440x900 y 32 bit) y escoged las pestañas 1,1,3,0 para Internal X, Internal Y, Stretching y Render, respectivamente. Debería funcionaros esta configuración incluso con una gráfica inferior a la mía, todo es cuestión de  probar, pero recomiendo empezar por esta configuración y ya editar según os interese o según el juego (unos dan más problemas que otros).

Paso 4: driver de sonido


Sin demasiadas complicaciones. Solo hay un driver disponible. Pinchad en Config y tildar el checkbox en caso de que no lo esté marcado, aceptar y pinchad sobre "Next >>".

Paso 5: driver CDRom


Escoged según el SO que tengais. Omitir que ponga lo de la versión 1.7.0. Si vuestro sistema en XP o superior, seleccionar el driver "ePSXe CDR WNT/W2K core 1.7.0". Esto solo será útil si usais vuestro lector de CD para jugar, en caso contrario os dará igual el driver, sobre todo si jugais usando ISOs, como yo. Igualmente lo he testeado, y los juegos arrancan perfectamente desde el CD, cosa que mi PSX ya no hace :( . A mi personalmente no me gusta por el ruido que hace mi lector.

Si queréis hacer una imagen ISO de vuestro juego, bajaros el programa ImgBurn y en cuestion de minutos tendreis vuestras imágenes listas para usar. Usad el formato .IMG, va genial y podréis eliminar el .bin o .cue que se crea junto a la imagen.

Paso 6: configurar joysticks


Ultimo paso, pinchad en cada Controlador y escoged el tipo de mando a emular y asignadel botones o teclas. Yo uso mi DS2 Wireless mediante un adaptador USB y el emulador me permite usar todos y cada uno de los botones.

Cuando pincheis en "Next >>" os dirá que el proceso ha concluido. Finalizar el asistente con el botón "Done" y listo. Podréis revisar y cambiar los drivers directamente desde la opción de menú "Config".

Probad un juego cualquiera, que todo funciona bien y podréis proceder (si quereis) con el siguiente paso para integrar nuestra biblioteca de juegos de PSX a Steam ¡y hacer capturas in-game de los mismos!


3. Usar Steam Overlay en un juego
El proceso para integrar la interfaz de Steam sobre la emulación de nuestros juegos no es relativamente complicado. En internet he leído artículos sobre como lograr este fin de numerosas maneras, si bien ninguna de ellas lograba hacer que pudiese tomar screenshots durante el juego (por ejemplo el método de los .bats o el de los accesos directos).

El método que presento aquí hace uso de un pequeño programa en C++ aún en fase alpha (sirve para lo que esta programado y poco más, no espereis personalización de los .exe ni nada por el estilo, por le momento) que yo mismo he creado y adjuntado a la descarga de esta versión del emulador.

El programa en si permite que, a partir de una imagen de nuestro juego (cualquier formato es válido siempre y cuando lo reconozca ePSXe y pueda ejecutarlo) nos construya un .exe de la imagen que permita lanzarla como si se tratase de un juego nativo de windows.

Hay que hacer los siguiente para crear el .exe.

Paso 1: Localizar ExeCreator.exe y nuestro directorio con la ISO del juego



Paso 2: Arrastrar la imagen o imagenes sobre ExeCreator


NOTA: Para generar multiples ejecutables, arrastrar todos los archivos al programa.

Paso 3: Esperar a que se genere el .exe


Durante la operación, el programa preguntará si el juego requiere de cambios de CD in-game. Por defecto escribir 'n' para indicar que no (juegos de CD único). En caso contrario se deshabilitará el autorun del juego (es necesario escoger la imagen una vez abierto el emulador) pero permitirá cambiar de CD pulsando Escape durante la partida (en lugar de finalizarlo). Algunos juegos así son Final Fantasy VII, Metal Gear Solid, etc. El Steam Overlay seguirá estando disponible.

Actualización: Se ha añadido una versión del programa (ExeCreator_NoAsk) que no pregunta y responde directamente 'no'. Esta pensada para crear los ejecutables de múltiples juegos sin requerir acción alguna del usuario. Su uso es cuestión de comodidad ;-)

NOTA: Algunos juegos de multiples CDs permiten usar los otros discos para realizar la transición. Por ejemplo, al final del disco 1 de MGS, se puede guardar la partida antes del cambio, cerrar el emulador e iniciarlo usando el 2º CD. Cuando se vaya a realizar el cambio, al estar ya puesto el 2º no hará la petición. No en todos los juegos se puede hacer esto y no en todos funciona igual. Si os da problemas, simplemente responder 's' durante la creación del .exe.

Paso 4: Añadir el .exe a Steam como un juego No Steam




Paso 5: Opcionalmente, se puede añadir una imagen personalizada para usar en Big Picture


En mi dropbox tengo banners del tamaño exacto que exige steam para algunos de los juegos que tengo. Podéis descargarlos y usarlos libremente desde https://www.dropbox.com/.../m%20Content o podéis descargar la plantilla para Photoshop que hay y crear los vuestros propios.

Videotutorial
Para que comprobéis de primera mano como funciona, he grabado un video configurando el emulador, creando el ejecutable del juego, personalizando el banner y haciendo capturas in-game. Cualquier duda o problema no dudéis en comentarla en la entrada. (no disponible)



4. Comentarios, problemas y soluciones

Problema: ePSXe crashea al lanzar un juego o la bios.

Solución: Gracias a Madamelena, se ha descubierto que si se tiene instalado TeamViewer, el emulador se cierra inesperadamente cuando se intenta cargar un juego o la propia bios (el panel de memory card). Para solucionar el problema, se deben cerrar todos los servicios de TW, o en su defecto desinstalarlo y usarlo en su versión portable.


29 jul 2013

Regreso al tajo... nuevo grupo de Steam

Buenas lectores.

Justo hoy acabo de regresar de las vacas, y que mejor manera de mejorar la comunicación entre el blog y los jugadores que creando un grupo en Steam. Podéis usar libremente los foros que he creado para comentar cualquier cosas importante, estar al tanto de servidores de juego, comerciar con otros usuarios, incluso preguntar cualquier duda que os surja con alguno de mis tutoriales o incluso realizar quedadas para jugar a cualquier juego (he incluído un listado de los juegos multijugador que poseo en steam).

Ya sabéis, que siempre que puedo intento responder todos y cada uno de vuestros comentarios, pero otras veces suelo estar ausente bastante tiempo (días, semanas o incluso un par de meses). Con ese grupo, pretendo que podáis comentar cualquier cosa y de paso podáis recibir una respuesta mucho más rápida que al hacerlo desde el blog, ya sea mía o de cualquier otro usuario (muchos de vosotros habéis sido de gran ayuda al aclarar ciertos aspectos e incluso resolviendo dudas a otras personas, gracias).

En enlace al mismo lo podéis encontrar en http://steamcommunity.com/groups/restringedzone, o buscando el grupo Restringed Zone Corporation en el buscador el programa Steam. Evidentemente requiere tener una cuenta creada y estar logueado.

Poco a poco, mientras me hago con el control del funcionamiento del grupo iré añadiendo los permisos de publicación (para poder permitir que creáis eventos) e iré cambiando el avatar y esas cosas.


Saludos y os espero por ahí :)

11 may 2013

Aplicaciones de bolsillo

Desde que comencé a programar para mi persona hace ya algunos años, a lo largo de todo este tiempo siempre me han surgido necesidades que ninguna otra aplicación existente (de pago o gratuíta) conseguía paliar. Ya fuese para casos puntuales como para automatizar muchos procesos que usaba a menudo (como la creación de un servidor privado para juegos), me he visto obligado a crear aplicaciones muy sencillas y lo más portables posibles que cumpliesen un objetivo muy concreto, SER ÚTILES.

Esta entrada la dedicaré exclusivamente a compartir todas esas maravillosas creaciones que me he ido creando para variadas funciones, desde la simple obtención de la IP pública (muuuuy usado), el testeo de puertos abiertos o incluso un pedazo de script para la consola de Windows (en batch) para la preparación de un servidor de Terraria para partys privadas apoyándome en dropbox.

NOTA: estos programas han sido creados con fines muy concretos y privados, eso no significa que no podáis utilizarlos o incluso modificarlos o expandirlos, solo que el nivel de control de errores es bastante bajo (lo justo para funcionar en los casos más habituales).

REQUISITOS: los scripts los he creado bajo Win7 Ultimate y las aplicaciones java requerirán tener instalado el JRE más reciente.



Spoiler: Obtener IP pública
Una de las primeras aplicaciones que me vi obligado a crear. Hice dos versiones, una para consola de comandos y otra con interfaz gráfica que permite copiar la IP al portapapeles. La versión para consola está orientada a ser usada en scripts o por gente que le gustan más los comandos (quedas to pro delante de la gente XD), mientras que la versión con GUI esta más destinada a casos puntuales donde se requiere conocer dicha IP y pasarla rápidamente a otras personas.

Esta aplicación está creada en JAVA y te ahorra el esfuerzo de tener que conectarte a una web sobre herramientas ADSL, automatizando el proceso y ahorrándote anuncios, spam y todas esas cosas. Solo te da lo que quieres :)

Descargas:
Versión consola: http://www.wuala.com/Razorbreak-Restringed-Zone/Programacion/Java/public_ip(shell).rar/

Versión con GUI: http://www.wuala.com/Razorbreak-Restringed-Zone/Programacion/Java/public_ip(gui).rar/


Spoiler: Comprobador de puertos
Siempre que se desea montar un servidor de cualquier clase, lo primero que uno se pregunta (si no es así recomiendo leer mucha bibliografía sobre redes bajo NAT) es si nuestro servidor es visible desde cualquier lugar de internet. Esta duda se resuelve rápidamente si tenemos certeza absoluta de que el puerto bajo el que proveemos nuestro servicio está abierto o cerrado al público. Para ello me cree esta segunda aplicación (esta vez solo para uso en consola). Básicamente, le pasas una lista de puertos a probar (como parámetros) y el programa te irá diciendo para cada uno si el puerto es visible o no. Si es un puerto no válido, también lo avisará. Me gustaría en un futuro no muy lejano incluirle un testeador de rangos de puertos, aunque si bien es cierto la mayoría de las veces solo me ha hecho falta probar algunos muy concretos (de ahí que no lo haya implementado).

Al igual que el programa anterior, esta aplicación te ahorra el engorro de tener que buscar una web de ayuda ADSL para obtener esta función. Está programado en JAVA.

Descarga: http://www.wuala.com/Razorbreak-Restringed-Zone/Programacion/Java/checkport(shell).rar/


Spoiler: Spoiler: Generador de M.O.T.D.
Técnicamente hablando, no es un generador propiamente dicho, sino más bien una pequeña aplicación que escoge aleatoriamente de entre una lista de MOTDs (Mensajes del día/Message of the day) y la devuelve. El funcionamiento es muy sencillo, aunque requiere hacer uso de la consola. Junto al .jar de la aplicación es necesario incluir un fichero motds.txt donde cada línea representará un mensaje del día diferente. Al lanzar la aplicación, esta buscará dicho fichero y escogerá una de manera aleatoria mostrándolo en pantalla. Está orientado a ser usado en scripts. Si el programa no encuentra el fichero devolverá un mensaje que le puse por defecto.

Descarga: http://www.wuala.com/Razorbreak-Restringed-Zone/Programacion/Java/generate_motd(shell).rar/


Spoiler: Generador de GAMERCARD Mass Effect 3 (ME3App)
La aplicación ha sido actualizada. Ahora, además de tener una interfaz más bonita y agradable, se permite la personalización manual de la gamercard. Esto se ha hecho así por que la página de bioware del N7HQ ha sido modificada y no permite (por ahora) la actualización automática de la gamercard. De la misma forma que antes, se puede escoger donde almacenar la tarjeta.
También se le ha añadido una nueva funcionalidad que permite seleccionar de forma aleatoria de entre los personajes y armas, así como clasificarlas. La utilidad práctica a nivel de juego es nula, pero yo lo uso cuando juego con los colegas y nos imponemos ciertas reglas de juego propias, como jugar con X raza o con Y clase o con Z arma (de ahí la posibilidad de escogerlas de forma aleatorias).
Queda pendiente implementar el sistema de guardado de nuestro árbol de habilidades para nuestros personajes favoritos. Como ya sabréis, al ascender una clase todos los puntos asignados desaparecen, lo que hace que fácilmente lleguemos a olvidad una buena configuración de poderes para ciertos personajes. Con esa función pretendo que cada uno pueda guardarlas a buen recaudo para poder pasarlas o verlas en cualquier momento.

NOTA: debe instalarse necesariamente en la carpeta por defecto.
Descarga: https://www.dropbox.com/sh/tg6fzt2v36lmdja/CM7F0F73ij/Releases/ME3App.exe


Spoiler: Sistema de hosting circular para server de Terraria
El siguiente sistema que he diseñado usando exclusivamente scripts BATCH, aplicaciones JAVA y C y Dropbox permite a un circulo de usuarios compartir las labores de Hosting de servidores de juego. Concretamente este ejemplo esta pensado para montar y compartir el mismo servidor de Terraria, pudiendo adaptarse y configurarse según las especificaciones del usuario que haga de host, pudiendo jugar en el mismo mundo persistente y proporcionando la información de conexión al resto de jugadores.

El sistema requiere realizar los siguientes pasos:
1.Instalar Dropbox en cada máquina perteneciente al circulo y compartir la misma carpeta. Permitir que Dropbox sincronice automáticamente dicha carpeta.
2.Copiar a dicha carpeta el contenido del RAR (ver sección de descarga).
3.[OPCIONAL] Copiar un mundo existente a la carpeta \worlds.
4.Editar y configurar las variables del fichero start-server.bat para cargar el mundo deseado así como configurar ciertos aspectos del servidor.

Una vez terminada la preparación se puede proceder a ejecutar el .bat. El script recuperará la IP pública, buscará un puerto abierto y configurará el servidor. A continuación permitirá al host revisar si los datos son correctos y dará avisos de error si así debe ser. Si todo es correcto, basta con presionar cualquier tecla para iniciar el lanzamiento del server. Para evitar además que Dropbox actualice continuamente la carpeta conforme el mundo se va autoguardando, como medida preventiva Dropbox se cerrará, reabriéndose automáticamente al cerrar el servidor para sincronizar el mundo actualizado.

Al iniciarse el servidor, el resto de jugadores si intentan lanzarlo recibirán un aviso indicando que el servidor esta online y dando la información del mismo, impidiendo además que otros usuarios lancen por error el server (es necesario permitir a Dropbox que sincronice automáticamente).

Descarga:
AutoServer-Terraria.rar

NOTA: en caso de que el servidor no se cierre adecuadamente y se desincronice la carpeta, borrar el fichero "SERVIDOR ONLINE!.txt" que se habrá creado.
Si el script no encuentra un mapa válido en la carpeta \worlds, creará uno según la configuración que se haya editado en el .bat.
Si se produce algún error a iniciar el servidor, revisar los nombres de configuración, por si algún valor no fuese válido.