Files
ZMMO/Source
Mateus Rodrigues 518a346cf5 feat(auth): login por credenciais (PASSWORD) na tela de Login
UILoginScreen_Base agora envia uint8(PASSWORD) + string(user) +
string(pass) no C_CHAR_AUTH_REQUEST (em vez de string(token dev:N)).
Servidor valida via AccountService.login (Argon2id + lockout) — contas
são criadas com 'npm run account' no ZeusCharServer.

CharServerOpcodes.h espelha do servidor:
- ZMMOCharAuthMethod::{TOKEN=0, PASSWORD=1}
- ZMMOCharRejectReason::{InvalidToken, AccountBanned, AlreadyOnline,
  InvalidCredentials=4, AccountLocked=5, AccountSuspended=6,
  CredentialsAuthDisabled=7}

S_CHAR_AUTH_REJECT mapeia por switch:
- 4 → InvalidCredentialsText  (Usuário ou senha inválidos.)
- 5 → AccountLockedText       (Conta bloqueada por excesso de tentativas.)
- 6 → AccountSuspendedText    (Conta suspensa.)
- 7 → CredentialsDisabledText (Auth indisponível no servidor.)
- outros → RejectedText + código

MakeDevToken removido (StubTokenValidator continua aceitando dev:N
no servidor para testes diretos via outro cliente).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-20 01:44:53 -03:00
..