Grupo, semana de la dungeon y el juego en inglés
Tres cosas para la beta: se puede armar un grupo antes de entrar a la sala, las dungeons reciben un modificador distinto cada semana, y todo el juego se puede jugar en inglés.
Por qué
Hasta ahora, dos personas que querían jugar juntas tenían que entrar al portal y rezar para caer en la misma sala. Los modificadores estaban en el diseño desde el principio, para que la misma dungeon no fuera igual cada semana. Y el diseño pide cuatro idiomas desde la primera línea, y entre más tarde entra la traducción, más cara sale.
Cómo funciona
Para formar grupo, toca a alguien en la ciudad y elige “Invitar al grupo”. Caben hasta 4. Cuando el líder entra a un portal, quienes del grupo están en la ciudad van con él a la misma sala, y quien entre solo después cae en la sala donde ya está el grupo. El chat del grupo es /p. Sin grupo, el juego busca una sala con gente de nivel parecido (de 10 en 10 niveles) antes de llenar la más llena.
Cada semana tiene un modificador, igual para todas las dungeons: Furia (los enemigos pegan 25% más fuerte), Fortificados (35% más vida), Prisa (30% más rápidos), Fortuna (un poco más de vida y el doble de oro) y Tormenta elemental. Aparece arriba en la sala y en la información de la Incursión.
El menú tiene la opción “Idioma / Language”, y la primera vez el juego elige según el idioma del aparato. Toda la interfaz pasó a una tabla de textos con más de 500 entradas. Los nombres de contenido (objetos, skills, clases, monstruos, salas, recetas, cosméticos) también tienen versión en inglés. Ruso y chino entran después como columnas nuevas en la misma tabla. Algunos mensajes que el servidor arma por su cuenta, como la descripción del loot y los anuncios, todavía están en portugués.
Siguiente paso
La fase de interfaz: el flujo de entrada, la barra nueva y el manual.
Cambios
- feat(rooms): parties, level-band matchmaking and weekly dungeon modifiers
Parties of up to four: invite by tapping a player in the city, accept from a popup, party chat with /p. When the leader takes a portal, the members who are in the city go into the same instance; a member taking the portal alone joins the instance where the party already is. Solo matchmaking prefers an instance in the same level band (tens of levels), then the fullest one; a party prefers an empty room of its own. A weekly modifier from data/modifiers.json (Furia, Fortificados, Pressa, Fortuna, Tempestade elemental) changes enemy health, damage, speed or gold in every dungeon and shows in the room header and the Incursao info. Protocol 17.
- feat(client): Portuguese and English UI (i18n)
All client UI text now goes through a string table: i18n/strings.csv (columns keys,pt_BR,en; 501 snake-case keys, RU/ZH later are new columns), registered in project.godot with pt_BR as fallback. Server notice codes, account errors, rejected-command reasons and food buffs map to key families (notice_*, acc_err_*, reason_*, buff_*). Content names stay Portuguese in data/*.json; data/i18n/en.json holds the English names (items, skills, classes, jobs, mobs and their attacks, rooms and hints, dungeon/incursion layouts, legend phases, portals, buildings, recipes, cosmetics and banners, elements, reactions, chests, grades, affixes, equipment bases, slots, region, farm zones and nodes, hair colors and styles). client/loc.gd (Loc) picks the name for the current locale, falls back to the data name, and can translate a PT text that arrived without an id (room name in the sim meta, layout titles, legend phase texts) by reverse lookup. The main menu has an "Idioma / Language" picker saved to user://settings.cfg ([ui] locale); default is pt_BR when the OS locale starts with "pt", else en. Changing it reloads the scene so HUD, chat and panels rebuild in the new language. --lang=xx forces a locale without saving (screenshots, tests). Chat also accepts /report. tests/test_i18n.gd checks that every key the client uses exists, that no CSV key is unused, that both columns are filled with matching placeholders, and that en.json covers every id of each category. The generated .translation files are gitignored (rebuilt by --import). Pending (still Portuguese in EN): - text formatted by the server: loot_rpc lines, announcements, market sale notices, incursion chest name and drop preview, chest names in the Bag (view has no chest id), legend/explore texts built server-side - gear stat strings (Gear.describe in core) and gear names in market listings, trade and storage views that come without the base id - market search matches the Portuguese item names on the server - guild log dates use day/month in both languages - the report reason sent from the town menu stays PT (it is moderation data)