Android
Este documento explica la app de Android de IGK Emulator: qué celulares la usan, cómo se personaliza para cada servidor, cómo se descargan y actualizan los datos del juego (la API de datos AndroidApi), y cómo se juega con la pantalla táctil. Sirve para el dueño del servidor y para sus jugadores.
Qué es la app de Android
La app es el mismo cliente de MU que el de PC, hecho para celulares. Se conecta al mismo servidor: los jugadores de PC, Android y navegador juegan juntos, con los mismos personajes.
- Se entrega como un archivo APK que el jugador instala en su celular.
- Al abrirla por primera vez descarga los datos del juego (
data.zip). Después entra directo y solo descarga lo que cambió. - Tiene su propia interfaz táctil: joystick, botones de skills, menú y ventanas pensadas para el dedo.
Requisitos del celular
| Requisito | Valor |
|---|---|
| Versión de Android | Android 8.0 o más nuevo |
| Procesador | 64 bits (arm64). La app no trae versión de 32 bits ni para emuladores de PC (x86) |
| Gráficos | Vulkan; si el celular no tiene Vulkan, OpenGL ES 3 (el celular debe tener como mínimo OpenGL ES 3.1) |
| Orientación | Siempre horizontal |
| Espacio libre para la primera descarga | Unas 2,6 veces el tamaño del data.zip. Con el paquete de IGK (unos 850 MB) son unos 2,3 GB libres |
| Internet | Para descargar los datos y para jugar |
La app mantiene la pantalla encendida mientras se juega.
Gráficos: Vulkan u OpenGL ES
- La app usa Vulkan cuando el celular lo tiene (casi todos los celulares de los últimos años).
- Si Vulkan no funciona, usa OpenGL ES 3 sola, sin que el jugador haga nada. Con OpenGL ES el juego se ve, pero algunos efectos de imagen pueden no salir.
- No hay opción de motor gráfico en el celular: lo elige la app.
Cómo se arma la app de cada servidor (IgkServer.ini)
El APK lo prepara el equipo IGK para cada servidor. Los datos del servidor van dentro del APK al compilarlo (archivo IgkServer.ini). Si alguno de estos datos cambia, hay que pedir un APK nuevo.
Datos que el dueño tiene que dar al equipo IGK
| Dato | Qué es | Ejemplo |
|---|---|---|
Nombre del servidor (Name) | Nombre del ícono de la app en el celular y título de la pantalla de datos | MiServidor MU |
Dirección de la API (ApiUrl) | La carpeta del hosting donde está api.php (ver "La API de datos"), con / al final | https://tudominio.com/android/ |
Dirección de respaldo del data.zip (DataUrl) | Un data.zip completo que la app usa si la API no responde y el celular todavía no tiene datos | https://tudominio.com/android/data.zip |
Ícono (Icon) | Imagen PNG cuadrada, ideal 512x512. Si no se da, se usa el mismo ícono del Main.exe de PC | icono.png |
Lo que no necesita un APK nuevo (se cambia en config.php de la API, sin compilar): la versión de los datos, la dirección del data.zip, los parches, las imágenes y el mensaje de la pantalla de datos.
Dónde se conecta la app (IP y puerto del servidor)
La app lee la IP, el puerto y la versión del servidor de los datos del juego, igual que el cliente de PC (los archivos que genera el Encoder.exe del MainInfo, dentro de Data). Por eso:
- El
data.zipdel celular tiene que hacerse con elDatadel cliente ya configurado para tu servidor. - Si cambias la IP, el puerto o cualquier cosa del MainInfo: corre
Encoder.exe, arma de nuevo el paquete del celular, súbelo y subedata_version(o manda un parche con esos archivos).
Versión nueva del juego
Cuando IGK saca una versión nueva del juego (un Main.exe nuevo para PC), también hay un APK nuevo. El cliente de PC, el APK y el servidor tienen que ser de la misma versión. El jugador instala el APK nuevo encima del anterior: los datos descargados y las cuentas guardadas quedan.
Los datos del juego en el celular (data.zip)
Cómo descarga los datos la app
Cada vez que se abre, la app muestra la pantalla de datos (nombre del servidor, imágenes, barra de progreso) y hace esto:
- Pregunta a la API (
api.php) qué versión de datos hay. - Sin datos en el celular: descarga el
data.zipcompleto (el de la API; si la API no responde, el de respaldo del APK) y lo instala. - Con datos y la API dice una versión mayor: descarga la actualización (el parche si hay, si no el
data.zip) y la copia encima de lo instalado. - Con datos y la misma versión: entra directo al juego ("Datos al día").
- Sin conexión con la API: entra con los datos instalados ("Sin conexión con el servidor: se usan los datos instalados").
Características de la descarga:
| Característica | Detalle |
|---|---|
| Reanudable | Si se corta (sin señal, app cerrada), al abrir la app de nuevo sigue desde donde quedó ("Reanudando la descarga"). Reintenta sola hasta 40 veces |
| Verificada | Al instalar, cada archivo del zip se comprueba. Si el zip está dañado, se borra y la próxima vez se descarga de nuevo desde cero |
| Espacio | Antes de descargar comprueba el espacio libre y avisa si no alcanza ("No hay espacio suficiente") |
| Muestra | Porcentaje, MB descargados, velocidad y tiempo que falta; después "Instalando los datos" con la cantidad de archivos |
El paquete del celular (IgkGamers HD Tools)
Los celulares usan una copia de Data con las texturas comprimidas para la gráfica del celular (formato ETC2): pesa menos, carga más rápido y usa mucha menos memoria de video. La arma IgkGamers HD Tools:
- Abrir
HDTools\IgkGamersHDTools.exe. - Botón "Paquete celular...". No pide carpeta: el resultado queda siempre en
HDTools\Mobile:HDTools\Mobile\Data: los datos para el celular (los usa también la versión web para celulares).HDTools\Mobile\data.zip: el archivo que descarga la app de Android (con la carpetaDataadentro).
- Subir
data.zipa la dirección dedata_urly subirdata_versionen 1 enconfig.php.
Notas:
- La interfaz, los datos de los mapas y lo que no se puede comprimir va tal cual.
Data\HD(texturas HD de PC) yData\Logsno van. - Al rehacerlo, solo procesa lo nuevo o cambiado; el
data.zipse arma entero cada vez (unos 15 segundos). - El
data.ziptiene que traer la carpetaDataen su raíz; si no, la app dice "El data.zip descargado no tiene la carpeta Data". - El
data.zipno puede tener contraseña.
La API de datos (AndroidApi)
Es una carpeta de archivos PHP que se sube a cualquier hosting web. La app la consulta cada vez que se abre. Con ella el dueño controla, sin compilar un APK nuevo: la versión de los datos, de dónde se bajan, los parches, las imágenes y el mensaje de la pantalla de datos.
Archivos de la carpeta AndroidApi
| Archivo | Para qué sirve | ¿Se edita? |
|---|---|---|
config.php | La configuración (ver tabla abajo) | Sí, es el único |
api.php | Lo que lee la app: responde con la versión, las direcciones, las imágenes y el mensaje | No |
common.php | Arma la respuesta a partir de config.php | No |
index.php | Página para revisar lo que va a recibir la app antes de avisar a los jugadores | No |
.htaccess | Impide ver la lista de archivos de la carpeta | No |
images\ | Imágenes de la pantalla de datos (vienen dos de ejemplo: 1.jpg, 2.jpg) | Se cambian las imágenes |
patches\ | Carpeta para guardar parches (zips con lo que cambió) | Se agregan zips |
Requisito del hosting: PHP 7.4 o más nuevo.
config.php: opciones
Ruta: AndroidApi\config.php
| Opción | Qué hace | En los archivos que vienen con IGK |
|---|---|---|
server_name | Nombre que muestra index.php. El nombre de la app en el celular no sale de aquí: va en el APK | 'IgkGamers MU' |
message | Texto bajo el nombre del servidor en la pantalla de datos. '' = nada | '' |
data_version | Número entero de la versión de los datos. Subirlo = todos los celulares descargan la actualización la próxima vez que abran la app | 1 |
data_url | El data.zip completo. Dirección completa (https://...) o un archivo de esta carpeta ('data.zip') | una dirección de ejemplo |
patch_url | Opcional: un zip solo con lo que cambió. Lo bajan los celulares que ya tienen datos cuando sube data_version. '' = usan data_url | '' |
images | Imágenes de la pantalla de datos. [] = todas las de la carpeta images/ (jpg, png o webp, en orden por nombre). También nombres de esa carpeta ('images/1.jpg') o direcciones completas | [] |
image_seconds | Segundos que se ve cada imagen (mínimo 1,5) | 4 |
Ejemplo:
return [
'server_name' => 'MiServidor MU',
'message' => 'Evento doble experiencia este fin de semana',
'data_version' => 3,
'data_url' => 'data.zip',
'patch_url' => 'patches/parche_v3.zip',
'images' => [],
'image_seconds' => 4,
];
Cómo funciona data_version
- La app guarda en el celular el número de versión de los datos que tiene instalados.
- Al abrirse compara: si
data_versionde la API es mayor, descarga y aplica la actualización; si es igual o menor, entra directo. - Un celular que ya tenía datos de antes de que existieran las versiones toma el número actual sin descargar. Para obligarlo a bajar, sube el número otra vez.
- Un celular nuevo (sin datos) siempre baja
data_url, que tiene que ser el completo.
Actualizar solo lo que cambió (patch_url)
Para no hacer bajar 850 MB a todos por un cambio chico (textos, un ítem, el MainInfo):
- Arma un zip con solo los archivos cambiados, dentro de
Data\con sus carpetas. Ejemplo:Data\IGK\Local\Lang\Spn.json,Data\Local\Connect.igk. - Súbelo (por ejemplo a
patches\parche_v3.zip) y ponlo enpatch_url. - Sube
data_versionen 1. - Actualiza también el
data.zipcompleto (data_url), para que los celulares nuevos tengan lo mismo.
Al aplicar un parche, los archivos se copian encima de lo instalado y lo demás queda igual, incluidas las cuentas guardadas de cada jugador.
Ejemplo que viene con IGK: patches\lang_20261025.zip (trae solo los textos en español e inglés).
Imágenes y mensaje de la pantalla de datos
- Las imágenes se ven como fondo de la pantalla de datos, cambiando cada
image_seconds. - Mejor horizontales, 1920x1080, menos de 8 MB cada una.
- Cada celular las guarda y las vuelve a mostrar aunque no tenga internet. Si cambias una imagen en
images/, se descarga de nuevo sola. - Sin imágenes en la API, se ven las que trae la app.
Publicar la API en un hosting PHP
- Sube la carpeta
AndroidApicompleta a tu hosting (por ejemplo, a una carpetaandroid):https://tudominio.com/android/. - Edita
config.php(con el administrador de archivos del hosting o antes de subirlo). - Sube el
data.zip(a esa misma carpeta o a otro almacenamiento) y pon su dirección endata_url. - Abre
https://tudominio.com/android/en el navegador:index.phpmuestra la versión de los datos, si eldata.zipresponde (código HTTP y tamaño) y las imágenes. - Abre
https://tudominio.com/android/api.php: tiene que mostrar un texto JSON condata_version,data_url,images... - Esa dirección de la carpeta (con
/al final) es la que se da al equipo IGK para el APK.
Consejos:
- El servidor donde está el
data.ziptiene que permitir descargas por partes (casi todos lo permiten) para que la descarga se pueda reanudar. - Detrás de Cloudflare funciona igual.
Problemas comunes de la API
| Síntoma | Causa | Solución |
|---|---|---|
| La app dice "Sin conexión con el servidor: se usan los datos instalados" | La app no llega a api.php (dirección mal en el APK, carpeta no subida, hosting caído) | Abrir .../api.php en el navegador del celular. Si no abre, revisar el hosting o pedir un APK con la dirección correcta |
| "No hay datos instalados y el servidor no dice de dónde bajarlos" | Celular sin datos, API sin data_url y APK sin dirección de respaldo | Poner data_url en config.php |
| "HTTP 404 al descargar data.zip" (u otro número) | La dirección de data_url está mal o el archivo no está subido | Revisar con index.php (columna del estado del data.zip) |
| Subí datos nuevos pero los celulares no los bajan | No se subió data_version | Subir el número en 1 |
| Un celular nuevo entra con datos incompletos | data_url apunta a un parche y no al data.zip completo | data_url siempre el completo; el parche va en patch_url |
| "Datos incompletos después de la actualización" | El parche no tiene la estructura Data\... | Armar el zip con la carpeta Data en la raíz |
Video de la lista de servidores en Android
La app muestra el mismo video que el PC detrás de la lista de servidores y de la ventana de login.
- Se activa en
MainInfo\MainInfo.ini [Custom] ServerListVideo = 1(después, correrEncoder.exe). En los archivos que vienen con IGK:1. - El video es
Data\IGK\Custom\Serverlist\bg_serverlist.mp4: tiene que estar dentro deldata.zipdel celular. - Suena su audio en vez de la música del login, con el volumen de la música de las Opciones, y se pausa cuando la app pasa a segundo plano.
- En el celular se dibuja a 720 líneas como máximo.
- Formato recomendado:
.mp4con video H.264 y sonido AAC (el sonido tiene que ser AAC). - Si el archivo no está o el celular no lo puede reproducir, se ve el mapa 3D del login de siempre.
La interfaz táctil (para el jugador)
Login, selección y creación de personaje
- Pantallas propias del celular, con la escena 3D de fondo.
- La lista de servidores está abajo.
- El login muestra el formulario y, al lado, la lista de cuentas guardadas: un toque en una cuenta la usa.
- En la selección de personaje se desliza el dedo para cambiar de personaje.
Qué hay en la pantalla de juego
| Lugar | Qué hay |
|---|---|
| Arriba a la izquierda | Nivel (con la experiencia como un anillo alrededor), barras de vida y maná con SD y AG debajo; el botón del Helper ("Cazando" / "Detenido") con su engranaje; los buffs |
| Arriba al centro | Avisos de invasión, la hora del día y la noche, y el objetivo (un toque cambia al siguiente) |
| Arriba a la derecha | Botón del minimapa (lo muestra u oculta), botones de zoom - y +, FPS y ping (el punto de color dice cómo está la conexión) |
| Columna derecha | Botones de Reset y Master Reset, Season Pass, misiones, y el ranking de daño de los jefes |
| Abajo a la izquierda | El joystick y las 4 pociones (Q, W, E, R) |
| Abajo al centro | Botones Menú, Personaje, Inventario, Mover, Chat, Tienda |
| Abajo a la derecha | El botón grande de ataque (espada) y alrededor los 5 botones de skills y el interruptor de la espada |
Un toque en el mundo que no cae en un botón funciona como un clic del PC (hablar con un NPC, recoger un ítem). Dos dedos a la vez: el segundo es un clic derecho.
El tamaño de todos los botones se cambia en Opciones > Interfaz > Tamaño de la interfaz táctil (80 % a 130 %).
Caminar: el joystick
- Se toca en cualquier lugar de la parte izquierda de abajo: el joystick aparece donde está el dedo.
- El personaje camina directo hacia donde apunta el joystick, sin marca en el suelo y sin frenar entre pasos.
- Contra una pared o una baranda, se desliza a lo largo de ella.
- Al soltar el dedo, el personaje se detiene.
Atacar y skills
- Botón de ataque (espada): ataca al enemigo más cercano (hasta 10 pasos). Con Auto PK encendido, primero a los jugadores. Mantenerlo apretado sigue atacando.
- 5 botones de skills (los mismos 1 a 5 de la barra de skills del PC):
- Un toque lanza la skill. Si hay un enemigo al alcance de la skill, va hacia él; si no, al suelo delante del personaje.
- Mantenerlo apretado la sigue lanzando.
- Un botón vacío: un toque abre la lista para elegir la skill ("Skill para el botón N").
- Para cambiar la skill de un botón: deslizar el dedo fuera del botón y soltar.
- Un toque mientras el personaje todavía termina la skill anterior se guarda y sale al terminar (si falta menos de 0,3 segundos). Así el combo no depende de tocar en el momento exacto.
- Pociones Q, W, E, R: un toque las usa. Mantener apretado (o tocar una vacía) abre la lista para elegir qué poción va ahí ("Poción para Q"). Solo aparecen las pociones que hay en el inventario.
Botón de espada: clic izquierdo o derecho (Sword.ini)
Al lado de los botones de skills hay un interruptor pequeño para la espada:
| Modo | Qué hace la espada | Igual que en PC |
|---|---|---|
| Apagado (por defecto) | Ataque normal | Clic izquierdo |
| Encendido (iluminado) | Lanza la skill seleccionada (la última usada de 1 a 5) | Clic derecho |
- Se guarda para cada personaje en el archivo
Data\IGK\Settings\Touch\Sword.inidel celular (en la carpeta de datos de la app). No hace falta editarlo a mano. - Formato del archivo:
[Sword] NombrePersonaje = 1 ; 1 = la espada lanza la skill seleccionada, 0 = ataca - En una partida de League of Masters la espada siempre ataca.
Ayuda de combos
Para los personajes que hacen combos (según la regla del servidor):
- Después de la skill que abre un combo, un anillo que se va vaciando rodea los botones de las skills que siguen el combo: muestra los 3 segundos que hay para el siguiente paso.
- Cuando el servidor hace el combo, aparece la marca "¡COMBO!" sobre la espada.
- El combo necesita el GameServer de la misma versión (el servidor le dice a la app qué skills forman combo).
Helper (MU Helper)
- El botón del Helper (arriba a la izquierda) lo enciende y apaga: dice "Cazando" o "Detenido" y el tiempo que lleva.
- El engranaje abre la configuración del Helper en una sola pantalla para el dedo: pestañas, listas con desplazamiento, barras y selector de skills grandes.
- Solo aparece si el servidor tiene el Helper oficial activado.
Zoom de la cámara y de las ventanas
- Cámara: botones
+(acercar) y-(alejar) arriba a la derecha. Mantenerlos apretados sigue acercando o alejando. - Ventanas: las cajas de mensajes (aceptar/cancelar, menús de NPC, avisos) y las ventanas clásicas se dibujan más grandes en el celular, para que los botones se puedan tocar. Mientras hay una ventana grande abierta, los botones del juego se esconden.
Menú
El botón Menú abre un panel con todas las ventanas, en 3 pestañas:
| Pestaña | Qué tiene |
|---|---|
| Juego | Personaje, Inventario, Habilidades, Misiones, Grupo, Clan, Amigos, Mover, Mapa, Tienda, Comandos, Opciones |
| IgkGamers | Las ventanas propias del servidor (las del menú F4 del PC: recompensas, rankings, etc.). El nombre de la pestaña es un texto que el dueño puede cambiar en los textos del juego (txt_5233) |
| Sistema | Modo PK, Ayuda, Opciones, Cambiar personaje, Cambiar servidor, Salir |
- Salir, cambiar de personaje o de servidor piden dos toques ("Toca otra vez").
- Se cierra tocando fuera del panel.
Botón Atrás del celular
- Cierra la ventana abierta.
- Si no hay nada que cerrar, abre el Menú en la pestaña Sistema.
Ventanas adaptadas al dedo
Tienen su propio diseño para el celular: inventario (un toque en un ítem dice qué es; botones Usar/Equipar, Quitar, Tirar al suelo; arrastrar para mover), personaje, tienda de NPC, baúl, mezclas (Chaos Machine), comercio entre jugadores, tiendas personales, clan, grupo, amigos, comandos, Helper, recompensas diarias, Season Pass, misiones, reset, banco de joyas, pantalla de muerte, ventanas de eventos (Blood Castle, Devil Square, Chaos Castle, Doppelganger, Imperial Guardian, Kanturu, duelo, guardias y portales del castillo), árbol de Master Skill, ranking de Gens, mercado, mascotas, diálogos y misiones de NPC.
Chat y teclado
- El botón Chat abre el panel de chat arriba al centro (el teclado del celular tapa la mitad de abajo).
- Canales: Normal, Susurro (con el campo "Para:" para el nombre) y Gens.
- "Toca para escribir" abre el teclado del celular. Se envía con Enviar o con Enter del teclado.
- Los últimos mensajes del chat y los avisos del servidor se ven en pantalla; un toque sobre ellos abre el chat.
- En cualquier cuadro de texto del juego (login, cantidades, nombre de tienda) el teclado del celular aparece solo.
League of Masters en el celular
- Los botones de skills 1 a 4 son las 4 skills de la partida, con su tiempo de espera dibujado alrededor y oscuros mientras están bloqueadas.
- El botón Tienda de abajo abre la tienda de la partida.
- El minimapa y los botones Base, Marcador y Tienda de la partida van en la columna derecha.
- El marcador va arriba al centro.
Ventanas que todavía se ven en formato PC
Según el código actual, estas ventanas todavía se ven como en PC (más chicas, pero se pueden usar):
- Gremory Case.
- Comprar VIP.
- Ver el inventario de otro jugador.
- Ampliación de inventario, de baúl y de mezclas.
- La tasa de éxito de las mezclas.
- Ventanas de Crywolf, Illusion Temple (dentro del evento) y Castle Siege (durante la batalla).
- Mirar duelos de otros jugadores.
- La ayuda (F1).
- Minería.
(Lista deducida del código; puede cambiar con cada versión.)
Una sola interfaz en el celular (LookAndFeel)
- En PC,
MainInfo.iniLookAndFeelelige el tipo de interfaz (barras, marcos). - En el celular siempre se usa la interfaz táctil propia, sea cual sea el LookAndFeel del MainInfo. Lo poco que queda de la interfaz de PC (marcos, cajas de mensaje, lista del grupo) va siempre con el tipo 0.
- Por eso un cambio de LookAndFeel no cambia nada en Android.
Opciones gráficas en el celular
La ventana de Opciones es la misma del PC, con estas diferencias:
| Pestaña | En el celular |
|---|---|
| Pantalla | No hay motor gráfico, modo de ventana, resolución, VSync ni la ventana de inicio: el tamaño lo pone el celular. "Mostrar FPS" sí está |
| Gráficos | Preajustes (bajo, medio, alto, ultra, personalizado) y las mismas opciones de calidad. El agua con reflejos viene apagada (el jugador la puede encender). No están "Compresión de texturas" ni "Texturas HD" (el celular ya usa su paquete) |
| Interfaz | "Tamaño de la interfaz táctil" (80 % a 130 %, se ve al momento) en lugar del tamaño de interfaz de PC. No está la opción del cursor |
| Juego | Igual que en PC (sin la opción de la tecla Alt del ranking) |
Las opciones se guardan en config.ini, en la carpeta de datos de la app.
Idioma
- Pantalla de datos (la que descarga): en español si el celular está en español; en cualquier otro idioma, en inglés.
- Juego: el idioma se elige en Opciones > Juego > Idioma. La primera vez arranca en inglés (en el celular no hay launcher que lo configure).
- Los textos del juego son los mismos del PC (
Data\IGK\Local\Lang): si los cambias, mándalos en un parche.
MuError.log en el celular
- Está en la carpeta
Logde la carpeta de datos de la app, al lado de la carpetaDatay deconfig.ini. Normalmente:Android/data/<paquete de la app>/files/Log/MuError.log(con el APK de IGK,Android/data/com.igkgamers.mu/files/Log/). - Va cifrado, como en PC: para leerlo, arrástralo sobre
Encoder.exey saleMuError.txtal lado. - Se escribe cuando pasa algo grave. Si la app se cierra sola, guarda qué pasó.
- Si pasa de 1 MB, al abrir el juego se renombra a
MuError.old.log(en la misma carpetaLog). - Para sacarlo: conectar el celular a una PC por cable USB y copiar el archivo. En Android 11 o más nuevo, muchos administradores de archivos del celular no muestran la carpeta
Android/data. - Pídelo a los jugadores cuando reportan cierres: es lo que necesita el soporte.
Preguntas frecuentes
P: ¿Qué celulares pueden instalar la app? R: Celulares con Android 8.0 o más nuevo, de 64 bits (arm64) y con OpenGL ES 3.1 o Vulkan. No funciona en celulares de 32 bits ni en emuladores de PC.
P: ¿Puedo compilar el APK yo mismo con el nombre de mi servidor?
R: No, el APK lo prepara el equipo IGK. Tienes que darle el nombre del servidor, la dirección de la carpeta de la API (con / al final), una dirección de respaldo del data.zip y el ícono (PNG cuadrado, 512x512).
P: Cambié textos, ítems o el MainInfo. ¿Cómo llegan a los celulares?
R: Arma de nuevo el paquete con IgkGamers HD Tools ("Paquete celular"), sube el data.zip nuevo y sube data_version en 1 en config.php. Si el cambio es chico, haz un zip solo con los archivos cambiados (dentro de Data\) y ponlo en patch_url.
P: Subí un data.zip nuevo y los jugadores no lo bajan.
R: Falta subir data_version en config.php. La app solo descarga cuando ese número es mayor que el que tiene el celular.
P: ¿Los jugadores pierden sus cuentas guardadas al actualizar? R: No. Las actualizaciones se copian encima y las cuentas guardadas quedan. Solo se pierden si el jugador desinstala la app (Android borra su carpeta de datos).
P: La descarga se cortó a la mitad. ¿Empieza de cero? R: No. Al abrir la app otra vez sigue desde donde quedó. Solo empieza de cero si el archivo se dañó.
P: Cambié la IP del servidor. ¿Necesito un APK nuevo?
R: No. La IP sale de los datos (MainInfo). Corre Encoder.exe, arma el paquete del celular y súbelo con data_version + 1 (o un parche con los archivos del MainInfo).
P: ¿Cómo cambio las imágenes o pongo un aviso en la pantalla de carga de la app?
R: Pon las imágenes en la carpeta images/ de la API (o sus direcciones en images) y el texto en message de config.php. No hace falta compilar nada.
P: ¿Cómo hago que la espada lance la skill en vez de atacar? R: Toca el interruptor pequeño al lado de los botones de skills. Encendido, la espada lanza la skill seleccionada (como el clic derecho del PC). Se guarda para cada personaje.
P: ¿Cómo pongo una skill en un botón? R: Toca el botón vacío y elige la skill. Para cambiarla, desliza el dedo fuera del botón y suelta.
P: El juego se ve en inglés en el celular. R: Cambia el idioma en Opciones > Juego > Idioma. La pantalla de descarga sigue el idioma del teléfono.
P: Cambié el LookAndFeel y en el celular se ve igual. R: Es normal: el celular siempre usa su interfaz táctil, sin importar el LookAndFeel.
P: Los botones se ven muy chicos o muy grandes. R: Opciones > Interfaz > Tamaño de la interfaz táctil (de 80 % a 130 %).
P: Un jugador dice que la app se cierra sola. ¿Qué le pido?
R: El archivo MuError.log de la carpeta Log de los datos de la app (Android/data/.../files/Log/), sacado con un cable USB desde una PC, y el modelo del celular.
P: ¿El video de la lista de servidores funciona en Android?
R: Sí, si ServerListVideo = 1 en el MainInfo y el archivo bg_serverlist.mp4 está dentro del data.zip. Usa video H.264 con sonido AAC.