Andrade Systems
Em desenvolvimentoFiveM

wasteland_crafting

Fabricação · Lua

Gate duplo antes de produzir: o clã controla este território e a receita está liberada pela tecnologia?

Lua
350 linhas
Gates de acesso
2

posse do território e tecnologia liberada

Interface
menu da base

sem NUI própria — decisão, não limitação

Fonte verificada no repositório interno em 08/09/2026

O que faz

Em uso

A bancada é física e fica ancorada no quartel-general. Abrir exige duas condições independentes: estar no clã que controla aquele território, e ter a tecnologia que libera a receita. A bancada em si já exige a tecnologia de fundamentos.

As duas leituras atravessam sistemas diferentes e são protegidas: se um vizinho não subiu, a falha não derruba o handler. A distância até a bancada é revalidada no servidor.

A interface reaproveita o menu dinâmico da base em vez de trazer NUI própria. É uma decisão de custo: mais um bundle de interface por resource é memória e tempo de carga que o jogador paga.

Evidência

Como o sistema aparece

Capturas da interface real, renderizada com payload de demonstração derivado dos contratos do resource — organizações, cargos, pessoas e identificadores são sintéticos. Onde não existe interface, entra visualização técnica, rotulada como tal.

  • Visualização técnica

    Gate duplo antes de produzir, e o consumo com devolução se faltar material no meio.

Por dentro da engenharia

Decisões de implementação

Um bloco por decisão de implementação. Abra o que interessa.

Consumo com devolução, não consumo otimista

Problema

Fabricar consome vários materiais. Se o terceiro faltar, os dois primeiros já saíram do inventário — e o jogador perde material sem receber nada.

Solução

O consumo é revertido quando a operação não completa: o que já saiu volta. Uma trava por jogador impede que dois cliques disparem duas fabricações sobre o mesmo estoque.

Por que foi feito assim

Sem devolução, o modo de falha mais comum do sistema é aquele em que o jogador perde. Um erro que só prejudica o usuário não é erro aceitável.

Revalidar no fim, não só na abertura

Problema

Entre abrir a bancada e clicar em fabricar existe tempo real. O clã pode ter perdido o território, a tecnologia pode ter sido consumida, o material pode ter sido movido.

Solução

Acesso, tecnologia e itens são revalidados no momento de fabricar, e não apenas quando o menu abriu.

Por que foi feito assim

A tela aberta é uma foto do passado. Tratar foto como autoridade é o mesmo erro que autorizar pelo que o cliente afirma.

Decisões

Decisões e trade-offs

Cada decisão registra a justificativa e o trade-off aceito.

  1. Reaproveitar o menu dinâmico da base em vez de construir NUI própria.

    Cada interface própria é um contexto de navegador a mais dentro do jogo, com runtime, fonte e estilo próprios. Para um fluxo de escolher receita e confirmar, o menu da base resolve.

    Custo aceito · Abre mão de identidade visual própria e de qualquer interação que o menu não suporte. Se a bancada ganhar fila, progresso ou comparação de receitas, essa decisão precisa ser revista.

Stack

O que foi usado

  • Servidor

    • Lua
    • FiveM
    • vRP
  • Integração

    • Leitura protegida de posse e de tecnologia
    • Menu dinâmico da base
  • Garantias

    • Consumo com devolução
    • Trava por jogador
    • Distância revalidada no servidor