MushRog

Grupo, semana da dungeon e o jogo em inglês

15 de outubro de 2026 mecanicaarquitetura

Três coisas para a beta: dá para montar um grupo antes de entrar na sala, as dungeons ganham um modificador diferente a cada semana, e o jogo inteiro pode ser jogado em inglês.

Por quê

Até aqui, duas pessoas que queriam jogar juntas tinham que entrar no portal e torcer para cair na mesma sala. Os modificadores estavam no design desde o começo, para a mesma dungeon não ficar igual toda semana. E o design pede quatro idiomas desde a primeira linha, e quanto mais tarde a tradução entra, mais cara ela fica.

Como funciona

Para formar grupo, toque em alguém na cidade e escolha “Convidar pro grupo”. Cabem até 4. Quando o líder entra num portal, quem do grupo está na cidade vai junto para a mesma sala, e quem entrar sozinho depois cai na sala onde o grupo já está. O chat do grupo é /p. Sem grupo, o jogo procura uma sala com gente de nível parecido (de 10 em 10 níveis) antes de encher a mais cheia.

Cada semana tem um modificador, igual para todas as dungeons: Fúria (inimigos batem 25% mais forte), Fortificados (35% mais vida), Pressa (30% mais rápidos), Fortuna (um pouco mais de vida e o dobro de ouro) e Tempestade elemental. Ele aparece no topo da sala e nas informações da Incursão.

O menu tem a opção “Idioma / Language”, e na primeira vez o jogo escolhe pelo idioma do aparelho. Toda a interface passou para uma tabela de textos com mais de 500 entradas. Os nomes de conteúdo (itens, skills, classes, monstros, salas, receitas, cosméticos) também têm versão em inglês. Russo e chinês entram depois como colunas novas na mesma tabela. Algumas mensagens que o servidor monta sozinho, como a descrição do loot e os anúncios, ainda estão em português.

Próximo passo

A fase de interface: o fluxo de entrada, a barra nova e o manual.

Mudanças

  • 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)

← Todo o devlog