El sitio personal de David Colmenero (D_Skywalk)

Posts tagged with 'Videojuegos'

Como modificar Minecraft para una LanParty / Servidor Privado

Que también lo podía haber llamado “como crakear minecraft”, pero hubiera sido algo amarillista, ya que las herramientas y todo el sistema son libres y está muy simplificado. Evidentemente no es que Mojang lo soporte pero tampoco creo que sea algo que realmente les moleste. De hecho las protecciones son MUY simples.

Yo inicié todo este pequeño proyecto de servidor privado para una mini-party en una casa rural y como era imposible tener internet, pues lo monté para que todos pudiéramos disfrutarlo allí :)

Minecraft Cliente 1.1 - Para la Party

Mis objetivos con este proyecto eran:
Sistema de Login de Usuarios para una LAN, Sistema de Skins/Cloaks para la LAN y multiplayer desde LAN con todo esto funcionando…

Modificar el cliente de Minecraft

Lo primero que necesitamos es descargar el Coder Pack correspondiente a nuestra versión de Minecraft (ej: para la 1.1 usaremos el MCP 5.6), este pack de utilidades nos permitirá extraer/modificar/recompilar el código fuente de Minecraft. Una vez bajado debemos copiar la carpeta [bin] de Minecraft a la carpeta [jars] de MCP y descargar de la página oficial minecraft_server.jar para tenerlo también en [jars] por si queréis echarle un ojo luego ;)

Ahora desde un terminal entramos en el directorio del MPC y ejecutamos: decompile (en ubuntu sería ./decompile.sh)
Este proceso extraerá todos los ficheros del paquete oficial y los parcheará para que sus funciones sean comprensibles para los humanos XD
Una vez terminado todos los fuentes los tendréis disponibles en la carpeta [src]. Ahora tenéis todo el juego disponible para modificar cualquier cosa que no os guste o ampliar, logros, armas, etc…

Pero nosotros vamos a algo mucho más sencillo permitirnos jugar sin internet, para ello necesitamos editar 4 ficheros.

EntityOtherPlayerMP.java

Este fichero sirve para mostrar las propiedades de los otros jugadores durante la partida multijugador (de ahí el MP). Buscad esta cadena casi al inicio del fichero:

skinUrl = (new StringBuilder()).append("http://s3.amazonaws.com/MinecraftSkins/").append(s).append(".png").toString();

Esto lo que hace es bajar el png de tu skin, y nosotros queremos que las skins las use de nuestra LAN asi que nada más facil que por ejemplo si la ip de nuestro server (con apache montado y demás) fuera 192.168.0.1 …

skinUrl = (new StringBuilder()).append("http://192.168.0.1/MinecraftSkins/").append(s).append(".png").toString();

EntityPlayer.java

De aquí vamos a buscar las cloacks y hacer que la url apunte a nuestra LAN:

playerCloakUrl = (new StringBuilder()).append("http://s3.amazonaws.com/MinecraftCloaks/").append(username).append(".png").toString();

Igual que antes usamos la ip de nuestro server:

playerCloakUrl = (new StringBuilder()).append("http://192.168.0.1/MinecraftCloaks/").append(username).append(".png").toString();

También podríamos modificar EntityPlayerSP.java pero sólo vale para el solitario, así que para este tutorial no nos interesa, si quisierais modificarlo sería lo mismo que el MP, no hay pérdida ;)

NetClientHandler.java

Este componente se encarga de comprobar que nuestro usuario y nuestra sesión son correctas, al hacer login contra el servidor oficial se nos da un identificador si no es correcto, pues no podemos entrar, lo que vamos a hacer es que esa comprobación la haga contra nuestro server (que dirá que sí a todo XD)

Buscad la cadena de iniciar la sesión del cliente:

URL url = new URL((new StringBuilder()).append("http://session.minecraft.net/game/joinserver.jsp?user=").append(mc.session.username).append("&sessionId=").append(mc.session.sessionId).append("&serverId=").append(packet2handshake.username).toString());

Y modificadla como antes a vuestra LAN:

URL url = new URL((new StringBuilder()).append("http://192.168.0.1/game/joinserver.jsp?user=").append(mc.session.username).append("&sessionId=").append(mc.session.sessionId).append("&serverId=").append(packet2handshake.username).toString());

Luego crearemos todos estos ficheros y directorios en el server, pero por el momento simplemente modifiquemos el cliente.

ThreadCheckHasPaid.java

Este fichero genera un hilo que cada cierto tiempo conecta al servidor oficial y comprueba que tus datos de login son correctos, es un hilo que está ahí consumiendo y que sólo vale para eso.

HttpURLConnection httpurlconnection = (HttpURLConnection)(new URL((new StringBuilder()).append("https://login.minecraft.net/session?name=").append(mc.session.username).append("&session=").append(mc.session.sessionId).toString())).openConnection();
httpurlconnection.connect();
if(httpurlconnection.getResponseCode() == 400 && this == null)
{
    Minecraft.hasPaidCheckTime = System.currentTimeMillis();
}
httpurlconnection.disconnect();

Yo al principio no quería tocarlo y simplemente usar mi server y añadirle un certificado SSL a apache, pero el problema es que java requiere que ese certificado sea correcto y un montón de tonterías más… total, un trabajazo para simplemente comentar esas líneas y dejar activa la línea que establece el valor de la variable Minecraft.hasPaidCheckTime para que el cliente inicie correctamente.

Y ya hemos terminado, sólo queda llamar a recompile y aunque podríamos iniciar el juego con starclient no lo hagáis aun ya que necesitamos montar la parte del servidor y luego ya comprobaremos que todo funciona correctamente.

Vamos a por el Server!

Preparar el servidor para Minecraft SMP

Damos por supuesto que tenéis un servidor apache y mysql funcionando, sois root y que tenéis acceso al directorio del servicio web. Simplemente vamos a configurar el sistema para que nos permita loguearnos contra el servidor y usar nuestras Skins. Se podría también preparar un sistema de registros (yo de hecho monté uno sencillito que nos permite subir nuestras Skins) pero como el artículo va dirigido a montar una lan-party realmente cuesta poquito dar las cuenta de alta a mano y copiar las skins.

Login del Panel de control de Dantoine

Bajad la carpetilla del servidor web, descomprimidla y comprobad con cualquier navegador que el servidor os las muestra (aunque en algunas al no enviar vuestro user/pass dará “bad login” o “cannot select DB”, claro). Explico que contiene cada carpeta:

  • [game] Contiene las comprobaciones cuando conectamos al servidor, simplemente son un par de ficheros que no comprueban nada y simplemente contestan “adelante!” XDD checkserver.jsp lo usará el servidor y joinserver.jsp como vimos lo usaba el cliente.
  • [loginusr] Un pequeño PHP  que permite a los usuarios loguear en el sistema. Nada del otro mundo, usad el SQL que encontraréis en la carpeta para instalar la tabla de usuarios. La información del mysql los coge del config.inc.php del principal. Con este fichero podríamos jugar con muchas cosas incluso obligar a los jugadores a actualizarse, la verdad que es bastante ampliable pero para nuestros cometidos es suficiente ;)
  • [MinecraftCloacks] y [MinecraftSkins] son directorios que contienen las capas y las skins de los usuarios, simplemente hay que poner ahí la skin con el nombre exacto de usuario y ya al loguear aparecerá keko con la apariencia que deseaba el usuario. Vendría bien que bajaráis unas cuantas por que si no tenéis internet, poco podréis bajar en la lan-party ;)
  • [webinfo] Es el HTML que verán los usuarios al introducir sus datos. Puedes editarlo y poner lo que quieras :)

Pues eso sería todo metéis la tabla de usuarios con phpmyadmin y dáis de alta vuestros usuarios!

Panel de control de Dantoine
Una vez logueado en el panel de Dantoine esto es lo que se veía…

MinecraftLauncher

Ya tenemos el cliente y el servidor configurados aun no podemos loguear con nuestros usuarios ya que el MCP sólo permite entrar con una cuenta por así decir anónima, sin usuario ni contraseña. Para poder loguearnos debemos usar un launcher que inicie el cliente con nuestros datos de usuario. Para eso vamos a usar una versión viejuna del lanzador de Minecraft, no podemos usar las nuevas por que requieren servidor con https y meternos con SSL, certificados y demás como dije está fuera de este artículo.

Esta versión que yo modifiqué sólo tiene un pequeño bug, que cuando pulsamos en un enlace no abre el navegador, pero vamos nada grave ;)

Launcher Modificado para Servidores no SLL

El lanzador de Minecraft viene configurado para el servidor de todo este artículo 192.168.0.1 si tu servidor estará en una ip diferente modificaremos con un editor hexadecimal los ficheros: LauncherFrame.class y LoginForm$8.class, buscad la cadena de de la ip y cambiadla a la ip que deseeis, tened en cuenta que no podéis añadir caracteres, respetad la cadena original. Si ahora la ip es tiene más caracteres os comeréis parte del directorio de apache asi que renombradlo después en el server para que coincidan.

Os veo un poco perplejos, así que pongo un ejemplo para LoginForm$8.class la cadena que encontraréis será:

http://192.168.0.1/webinfo/ (carpeta webinfo en el server)
http://192.168.0.100/winfo/ (renombramos la carpeta a winfo en el server)

El nombre me los he inventado yo, podéis poner el nombre a la carpeta que queráis siempre que mantengáis el tamaño de la cadena exactamente igual.

Una vez hemos modificado los dos ficheros con cualquier compresor podemos abrir minecraft_launcher-1.5-dantoine.jar (no es más que un zip) y actualizar ambos ficheros con las nuevas versiones.

Finalmente para iniciar el lanzador debemos indicar que inicie la clase “net.minecraft.LauncherFrame“, en windows hay utilidades que permiten generar un ejecutable que por defecto use esa clase pero en ubuntu debemos indicarla, pero nada más simple que montarnos un pequeño script que haga el trabajo por nosotros. Os dejo un simple ejemplo suponiendo que el lanzador lo metierais dentro de [.minecraft] en una nueva carpeta llamada [LauncherDantoine]:

cd ~/.minecraft/LauncherDantoine
java -Xmx1024M -Xms512M -cp minecraft_launcher-1.5-dantoine.jar net.minecraft.LauncherFrame

Ya tenemos casi todo listo volvemos al cliente para finalizar todo el proceso…

Ajustes en el Servidor Multiplayer

Para simplificarlo ya que el minecraft_server.jar intenta loguear contra *session.minecraft.net*, yo lo que hice fue añadir en el /etc/hosts (supongo que en windows andará por el system) la ip del server:

192.168.0.1    session.minecraft.net

 Retoques finales del Cliente de Minecraft

Antes os dejé la miel en los labios de comprobar si todo funcionaba, bueno no si se aguantasteis sin lanzar el cliente XD
Pues ya vamos a lo último, actualizar el cliente oficial para que use nuestra party-modificación ^_^’

Sencillo volvemos al terminal y desde el directorio principal del MCP lanzamos reobfuscate (siendo esta llamada en linux ./reobfuscate.sh), nos aparecerá algo como esto:

== Reobfuscating client ==
> Gathering md5 checksums
> Compacting client bin directory
> Reobfuscating client jar
> Extracting modified classes
> Modified class found : net/minecraft/src/EntityOtherPlayerMP
> Modified class found : net/minecraft/src/EntityPlayer
> Modified class found : net/minecraft/src/NetClientHandler
> Modified class found : net/minecraft/src/ThreadCheckHasPaid
> Outputted net/minecraft/src/EntityOtherPlayerMP to reobf/minecraft as qx.class
> Outputted net/minecraft/src/EntityPlayer      to reobf/minecraft as xb.class
> Outputted net/minecraft/src/NetClientHandler  to reobf/minecraft as abm.class
> Outputted net/minecraft/src/ThreadCheckHasPaid to reobf/minecraft as hc.class

Ahora como véis se han creado cuatro nuevos ficheros compilados y cifrados con nuestras modificaciones, pues ahora como hicimos con el launcher, vamos al jar oficial de minecraft que tendréis en vuestra carpeta bin del juego y sobrescribid cada uno de ellos para que ahora el cliente contenga nuestras modificaciones :D

Y por último borramos completamente la carpeta [META-INF] que contiene el jar para que el cliente no proteste por haberlo modificado.

Yo también modifiqué la carpeta de title y añadir un splash personalizado, jejej apañado que es uno :P

Disclaimer final…

Evidentemente aunque se necesita al menos alguien con el juego original, todo esto puede usarse para jugar de gratis, pero nada de mal hace a nadie usarlo para montarte tu pequeña LAN y me consta que gracias a todo esto que monté para esa pequeña reunión se han vendido un par de Minecraft más y a quien no le gustó, tampoco lo llegó luego a jugar más ;)

Aviso: Este tutorial no se actualizará, si algún día Mojang decide cambiar los ficheros, la forma de funcionar, etc… este tutorial yo lo hice para la versión 1.0 (aunque me consta que sigue siendo válido para la 1.1) y ahí se quedará, ignorando si más adelante seguirá siendo efectivo o no.

Un Saludo y espero que lo disfrutéis con vuestros colegas, nosotros lo pasamos pipa… hoguerita, minecraft y todos alrededor con nuestras mantitas ^_^

Minecraft Login - Apache Files

Subido: 2012-01-20 22:44:16 Ficheros para el servidor apache.

Minecraft Login - Launcher

Subido: 2012-01-20 23:20:38 Launcher modificado por mi para permitir usar cualquier servidor HTTP.

Minituto: Como traducir el Mod de MedianXL (Diablo II)

Con la llegada de Diablo 3, nos dio un ansia de Diablo y preparé MedianXL para una pequeña kdd con unos colegas, como quería sorprenderlos no puse nombres, para que luego no me andaran buscando trucos y esas cosas, pero bueno que sepáis que es un MedianXL V1F9h del que hablo durante el artículo.

MedianXL Screenshot!
MedianXL: un bicho haciéndonos sudar tinta XD

Hace unos meses recomendé en el foro de fasebonus el mod y que si alguien quería mi traducción que me la pidiera. Pues el amigo Oxy no sólo me tomó la palabra por correo sino que además me preguntaba por las herramientas usadas y que mejor oportunidad para montar un pequeño tutorial y mostrar como lo hice. Lamentablemente no puedo explicarlo todo pormenorizadamente pero lo que no quede claro lo comentáis :P

Para hacer tu traducción necesitas estos ingredientes:

  • AFJ tbl Edit 1.00 (funciona en wine buscando sus dlls)
  • WinMPQ 1.64 (funciona en wine buscando sus dlls)
  • Una base de datos MySQL o SQLite, supongo que incluso hoja de cálculo podría valer :?
  • Y una ramita de Peregil (no pude evitarlo, jejej)

Primero con WinMPQ extraéis los ficheros que contienen el texto del juego y del mod siguiendo los siguientes pasos:

  • Haced un backup de vuestro patch_d2.mpq original y del que trae median.
  • Abrid el fichero de la versión que queráis exportar y buscad “*tbl”.
  • Aparecerán tres ficheros los seleccionais y “Mpq”->”Extract” a una carpeta de destino que vosotros queráis.

Ahora podríamos editar los ficheros tbl con AFJ y volverlos a insertar nuevamente en el** patch_d2.mpq** original, pero hacerlo a mano es muy costoso así que usaremos la opción de exportar como* fichero tabulado (Tabbed TXT)* dentro de *AFJ*.

Ese fichero lo insertamos en una tabla de un base de datos, por ejemplo yo para MySQL usé PHPMyAdmin y su importador de datos CVS indicando que los datos están terminados en “t”, dejando en blanco tanto el carácter de encerrados como el escape. Y poco más, ahora que lo tenéis en una base de datos es más cómodo de traducir incluso podéis coordinaros con otros de forma online, etc…

Al no tener colaboradores ni tiempo para montar nada decente me las ingenié para traducir rápidamente al menos todo lo que era igual en el viejo Diablo II y no había sido tocado por MedianXL. Lo que hice fue añadirles un campo Id llamado* “cnt”* simplemente para saber con que línea estaba lidiando y hacer 3 tablas por cada uno de los ficheros (y claro una cuarta tabla trd con la versión resultante).

En uno tenemos la versión en inglés original, en otro la versión en castellano y finalmente la del Mod-MedianXL en inglés. Y lo que queda es sencillo comparar con un UPDATE si los campos del mismo cnt son iguales en el “mod” y el “eng” entonces actualizas “trd” con los campos de la tabla “esp”. Lo veréis mejor con un ejemplo usando un sencillo SELECT:

SELECT * FROM `eng_expansionstring` en, `mod_expansionstring` md WHERE en.cnt=md.cnt AND en.Index=md.Index AND en.Name=md.Name

Pues eso con un UPDATE y el SET y ya tenéis el comando que traduce automáticamente el 70% del MedianXL, lo demás ya debe ser a mano…

Una vez finalizado el proceso de traducción exportáis las tablas, generáis el tbl y volvéis a insertarlas en el patch_d2.mpq :)

Diablo II (Patched)

Y hasta aquí el pequeño tutorial para traducir y trastear el Diablo II, os dejo en la parte inferior mi pequeña traducción del MedianXL y las tablas que usé en formato MySQL.

Un Saludo feos! XD

MedianXL-DiabloII.mod

Subido: 2011-11-15 04:23:00 Median XL V1F9h traducción (incompleta) al castellano por D_Skywalk. Página oficial del mod: http://modsbylaz.hugelaser.com/

MedianXL-DiabloII.mod - Traducción SQL

Subido: 2011-11-15 04:25:49 Ficheros de MySQL de la traducción (versión r2)

A.G.E.S. Live - Arcade Machine System

Arcade Genuine Entertainment System (A.G.E.S.) es un pequeño pero potente Live de Ubuntu, enfocado a un uso exclusivo en máquinas arcade. El objetivo es tener un sistema mínimo pero usable que permita jugar fácilmente a emuladores y juegos OpenSource.


A.G.E.S. Pantalla de Arranque

Características principales

  • Incluye pyRetro un FrontEnd pequeño, muy rápido y de uso sencillo.
  • Ahora funciona con las xorg en lugar de la consola de la vieja versión (0.00.1e), que permitirá nuevos emuladores y aprovecharemos la aceleración OpenGL de las tarjetas modernas.
  • Mame 0.143 hiscore y groovy patches (incluye switchres para generar los modos nativos como antiguamente se hacía con advmame)
  • Kernel 2.6.38.8 ArcadeVGA parches de groovy (permite tener desde el arranque 15Khz).
  • xorg-radeon 6.14.99~git 20110811 ArcadeVGA ages-fix (permite resoluciones menores de 320×240 en las xorg)
  • libsdl-1.2 switchres patch.
  • OpenPPJoy 0.4z preconfigurado (Controles Arcade Usando LPT).
  • Modos Entrelazados totalmente operativos (en la anterior versión desde consola no funcionaban correctamente).

*Todos los parches usados están en el live en la ruta /opt/ages y /opt/pkg
*

Por Hacer

  • RC2: Terminar Ages-Setup y añadir updater.
  • RC3/Final: Añadir soporte de otros emuladores en pyRetro y añadirlos a la release final, mame 0.106?

Testeo

Puedes instalarla/probarla desde un pendrive, hay más info en la web de ubuntu: (Try it)

Página Oficial/Bugtracker: https://forja.rediris.es/projects/ages

RC1a fallos conocidos

  • En modo arcade no aparece la pantalla de inicio, si lo hace a 30Khz (algo falla en plymouth, investigar)
  • Cuando hay un crash de MAME la pantalla continúa a la resolución del juego (añadir un xrandr al volver?)

Downloads, Videos y tutoriales sobre A.G.E.S. abajo :)

English

Arcade Genuine Entertainment System (A.G.E.S.) is a little live system exclusive for arcade cabinets. The goal is to get a minimal but usable system that allows easy playing emulators and opensource videogames.


A.G.E.S. Boot Screen

Features

  • Include pyRetro FrontEnd little but easy, stable and quick work.
  • Using xorg  no more console commands are need it to configure the basic system.
  • Mame 0.143 hiscore and groovy patches (includes switchres to generate arcade native modes like advanceMAME)
  • Kernel 2.6.38.8 ArcadeVGA patches from groovy (boot on 15Khz).
  • xorg-radeon 6.14.99~git 20110811 ArcadeVGA ages-fix (resolutions bellow than 320×240 on xorg).
  • libsdl-1.2 switchres patch.
  • OpenPPJoy 0.4z preconfigured (Arcade Joysticks using LPT).
  • Interlazed modes working with a perfect vsync!

Patches used are included on live, path /opt/ages and /opt/pkg

ToDo

  • RC2: To finish ages-setup and his updater.
  • RC3/Final: Add support for more emulators on pyRetro Frontend.

Tests

You can try AGES from CD or using a USB/Pendrive, more info at ubuntu site: (Try it)

Oficial Site/Bugtracker: https://forja.rediris.es/projects/ages

RC1a Bugs

  • In Installed system (at 15khz) splash do not appear, working on 30Khz test (something wrong on plymouth?)
  • When MAME is crashed, screen still on game resolution (add xrandr?)

Downloads bellow…

Videos

Tutorial Videos

Ages Live 11.04.2 * Remix

Subido: 2011-10-21 01:06:00 Ages Live - RC1a

Ages Live 11.04.2 (Test 1)

Creo que he hablado muchas veces de él pero aún no os lo he presentado convenientemente, Arcade Genuine Entertaintment System (AGES) es un pequeño pero potente Live de Ubuntu, enfocado a su uso en máquinas arcade. El objetivo es tener un sistema mínimo pero usable que permita jugar fácilmente a emuladores y juegos OpenSource.

El mayor problema que nos podemos encontrar cuando intentamos instalar cualquier sistema operativo para una máquina arcade es que los modos gráficos necesarios, al ser especiales, requieren de gran conocimiento del sistema para llegar a poder ver a Pacman usando sus 224×288 líneas ;)

Como cualquiera de mis proyectos personales, he usado AGES durante años y ahora he querido actualizarlo para poder disfrutar de otros emuladores que normalmente eran incompatibles o daban problemas desde la consola. Otro problema era su difícil configuración, tengo amigos que han usado y siguen usando AGES pero que se perdían o directamente fallaban en su intento de tocar configuraciones desde consola, instalar nuevas aplicaciones, bajar ficheros, etc…

Desarrollando AGES
Foto de un momento del desarrollo que compartí por Twitter, mientras creaba el nuevo modo de visualización de pyRetro

Así con las metas de usar las xorg y añadir administración desde gnome he empezado desde hace unas semanas la nueva versión que nace con esta nueva AGES Live 11.04.2 Basada en Ubuntu Natty :)

Características principales

  • Incluye pyRetro un FrontEnd pequeño, muy rápido y fácilmente configurable y modificable.
  • Hace uso de las xorg en lugar de la consola de la vieja versión, que permitirá nuevos emuladores y aprovecharemos la aceleración OpenGL de las tarjetas modernas.
  • Mame 0.143 hiscore y groovy patches (incluye switchres para generar los modos nativos como antiguamente se hacía con advmame)
  • Kernel 2.6.38.8 ArcadeVGA patches from groovy (permite tener desde el arranque 15Khz).
  • xorg-radeon 6.14.99~git 20110811 ArcadeVGA ages-fix (permite resoluciones menores de 320×240 en las xorg).
  • libsdl-1.2 switchres patch.
  • OpenPPJoy 0.4z preconfigurado.
  • Modos Entrelazados totalmente operativos (en la anterior versión desde consola no funcionaban correctamente).

Por Hacer

  • No funciona la instalación (al menos no ha sido testeada), el live puede fallar en crt/tft y sería conveniente añadir samba.
  • pyRetro sólo soporta MAME, pero no debería de ser complicado añadirle más emuladores.
  • El nuevo modo Layout de pyRetro necesita recolectar año, pantalla y controles de cada rom listada.
  • Soportar otras versiones más viejas de MAME (0.55/0.106).
  • Añadir modo admin y menu de admin (en gnome).
  • Arrancar con X peladas el FE, para aprovechar la CPU.

Fallos Conocidos

  • Por alguna extraña razón en el último build se ha estropeado la configuración de las xorg para crt/tft/vm, de todas formas todo el live va enfocado a usarlo en una arcade, pero por si alguien quería verlo añadí esa opción, lo revisaré tranquilamente para la test_2, si alguien tiene un fix que avise en los comentarios, thx.
  • En este Live Test_1 el único monitor arcade soportado es Hantarex 9110, aunque no debería de dar muchos problemas usando este live con otros monitores arcade o en un Televisor de tubo.

Download

Por el momento está alojado en el blog pero pretendo que las siguientes release vuelvan a estar disponibles en la página de la forja en rediris (sourceforge español, para entendernos XD)

Live ya disponible en redIris, en la parte inferior tenéis el enlace ;)
y recordad comprobar el md5 de la iso

Pruebas/Testeo

Podéis instalar el live en un picho usb (de al menos 1Gb) sino queréis gastar un CD en la test, el resultado será el mismo.

  • Arrancar el pyRetro (genera la lista de roms) y jugar un poco (por ejemplo al wrally), comprobar refresco y resoluciones reales, etc…
  • Cambiar xinitrc y arrancar de nuevo en modo arcade, para ello seguid estos pasos:
    Pulsamos CTRL ALT F1 y Copiamos xinitrc al home del usuario:
    cp /opt/ages/configs/others/xinitrc ~/.xinitrc
    Matamos las X parando el gdm:
    sudo /etc/init.d/gdm stop
    Iniciamos las X sólo con el xterm y arrancamos pyretro:
    startx
    pyretro
    Este sería el modo donde funcionaría normalmente ages, excepto cuando estemos configurando que volveríamos a gnome normal, para así facilitar al usuario mover roms, conectar a servidores, navegar por la red, etc…

Todos los parches usados en esta release están disponibles en /opt por si queréis echarles un ojo. La excepción son los parches de pyRetro que los subí ayer a la página del proyecto (issue 10 y issue 11), así que no están disponibles en el live.

Envio de Bugs y página del proyecto:

https://forja.rediris.es/projects/ages/

Downloads en la entrada del proyecto en el blog.

Un Saludo y espero que lo disfrutéis ;)