Cada quien con su propio equipo
Ahora se puede crear cuenta, armar personajes y entrar a la sala con ellos. Antes todos eran el mismo Mago y el mismo Guerrero. Ahora cada jugador elige clase, cuerpo, cabello, color de cabello, tono de piel y altura, junta dos personajes en un equipo y lleva ese equipo a la pelea.
Por qué
El cambio de personaje es el centro del juego, y solo se vuelve personal cuando los dos personajes son tuyos. También necesitábamos cuentas antes de cualquier cosa que dependa de progreso: inventario, niveles, cofres.
Cómo funciona
El login es con correo o username y contraseña. El username es único y es lo que ven los demás; el correo nunca sale del servidor. La contraseña nunca se guarda: el servidor guarda un derivado (PBKDF2 con 200 mil rondas y una sal distinta por cuenta), calculado en un thread aparte para que la sala no se trabe cuando alguien entra. La conexión va cifrada, por ahora con un certificado generado por el propio servidor. Antes de abrir hacia afuera entra un certificado de verdad. Son seis intentos de login por minuto, y luego hay que esperar.
Cada cuenta tiene hasta seis personajes y tres equipos. El mismo personaje puede estar en más de un equipo, y los nombres de personaje pueden repetirse.
No existe campo de género. Son dos cuerpos, doce cabellos, ocho colores, cinco tonos de piel y tres alturas. El color sale del shader, así que cada combinación nueva no cuesta arte nuevo.
Todo personaje nace en nivel 1, con 1 en cada atributo y una skill. Como todavía no hay forma de subir de nivel, en la sala de prueba recibe un kit de prototipo (nivel 5 y las skills de prueba de la clase). Lo que queda guardado en la cuenta es el personaje de verdad.
La prueba automática ahora hace todo el camino: intenta entrar sin cuenta y la rechazan, crea la cuenta, crea dos personajes, arma el equipo, entra a la sala con otro bot y comprueba que los dos se ven. También comprueba que ninguna contraseña haya terminado en disco.
En el celular
Hasta aquí el celular solo caminaba, porque la barra de skills era dibujo. Ahora cada skill es un botón táctil, y hay un botón de Cambio al lado. Tocar el piso sigue siendo caminar, y tocar la barra nunca se vuelve movimiento.
Siguiente paso
La ciudad: un lugar donde todos se ven, con chat, antes de entrar a una sala.
Cambios
- feat(auth): accounts, character creation and teams
Server-side AccountStore (one JSON per account, email/username index, atomic writes) with PBKDF2-HMAC-SHA256 (200k iterations, per-account salt) computed on WorkerThreadPool; DTLS on the ENet connection with a self-signed dev certificate; login rate limit; one session per account. Characters start at level 1 with one skill and validated appearance (2 bodies, 12 hair styles, 8 hair colors, 5 skin tones, 3 heights); teams pair two characters; rooms use a prototype kit until progression exists. Client gets login/register, home, character creator with live preview and team builder. Room state only goes to peers in the room. End-to-end network test covers the whole flow.
- feat(client): tappable skill bar and swap button for mobile
Taps on the action bar fire the skill or swap instead of walking. tools/tap_test.tscn simulates touches to check it.