Início › Documentação › Configuração · origen_graffiti
A configuração está dividida em dois ficheiros:
config.lua — definições essenciais para os donos do servidor (idioma, administradores, loja)config.advanced.lua — ajuste técnico (renderização, sincronização, limites de frequência, distâncias)Só mexas em config.advanced.lua se estiveres a medir o impacto (TPS, latência, carga de rede). Altera um valor de cada vez e testa com mais de 10 jogadores. Se piorar, reverte.
| Variável | Por omissão | Descrição |
|---|---|---|
Config.Language |
'en' |
Idioma da interface — corresponde a um ficheiro de locales/*.json |
Config.AdminGroups |
{'admin','god','superadmin'} |
Grupos com acesso ao painel de administração e aos respetivos comandos |
Config.AdminCommand |
'graffiti_admin' |
Comando de chat para abrir o painel de administração |
| Variável | Por omissão | Descrição |
|---|---|---|
Config.Shop.enterRadius |
2.5 |
Raio de proximidade em metros para abrir a loja |
Config.Shop.sprayItem |
'graffiti_spray' |
Nome do item de inventário para as latas de spray |
Config.Shop.eraserItem |
'graffiti_eraser' |
Nome do item de inventário para os apagadores |
Config.Shop.defaultDurability |
100 |
Durabilidade inicial atribuída na compra |
Config.Shop.durabilityUvThreshold |
0.3 |
Distância UV acumulada (0–1) necessária para consumir 1 ponto de durabilidade |
Config.Shop.eraserDurabilityPerUse |
25 |
Durabilidade que custa apagar uma tag completa |
Localizações da loja — adiciona tantas entradas vector4(x, y, z, heading) quantas precisares:
Config.Shop.locations = {
vector4(-1123.5, -1440.04, 5.19, 304.08),
}Catálogo da loja por omissão:
| ID | Tipo | Nome | Preço | Cor |
|---|---|---|---|---|
borrador |
eraser | Apagador | $150 | — |
spray_custom |
spray_custom | Spray de cor livre | $350 | qualquer |
spray_negro |
spray_preset | Spray preto | $200 | #111111 |
spray_blanco |
spray_preset | Spray branco | $200 | #F0F0F0 |
spray_rojo |
spray_preset | Spray vermelho | $220 | #CC2222 |
spray_azul |
spray_preset | Spray azul | $220 | #2255CC |
spray_amarillo |
spray_preset | Spray amarelo | $220 | #DDC000 |
spray_verde |
spray_preset | Spray verde | $220 | #228822 |
spray_naranja |
spray_preset | Spray laranja | $220 | #CC6600 |
spray_violeta |
spray_preset | Spray violeta | $220 | #8822CC |
spray_rosa |
spray_preset | Spray rosa | $220 | #CC3388 |
spray_celeste |
spray_preset | Spray azul-claro | $220 | #33AADD |
Opcionalmente, apaga os graffitis antigos ao arrancar o recurso:
Config.AutoPurge = {
enabled = false,
days = 30, -- delete graffiti older than this many days
}Opcionalmente, limita quantos graffitis podem existir dentro de um raio antes de bloquear novas sessões:
Config.ZoneGraffitiLimit = {
enabled = false,
radius = 60.0, -- meters
maxTags = 8,
}| Variável | Por omissão | Descrição |
|---|---|---|
Config.PaintMaxDistance |
8.0 |
Distância máxima em metros para pintar sobre uma tela |
Config.BrushRadiusMin |
0.002 |
Tamanho mínimo do pincel (UV) |
Config.BrushRadiusMax |
0.08 |
Tamanho máximo do pincel (UV) |
Config.BrushRadiusDefault |
0.012 |
Tamanho do pincel por omissão ao iniciar a sessão |
Config.SprayDistMin |
0.4 |
Distância mínima da câmara para o escalonamento do spray |
Config.SprayDistMax |
7.0 |
Distância máxima da câmara para o escalonamento do spray |
Config.SprayRadiusMulClose |
0.78 |
Multiplicador do raio com a câmara perto (spray mais fechado) |
Config.SprayRadiusMulFar |
1.45 |
Multiplicador do raio com a câmara longe (spray mais largo) |
Config.SprayIntensityMulClose |
1.15 |
Multiplicador de intensidade ao perto |
Config.SprayIntensityMulFar |
0.4 |
Multiplicador de intensidade ao longe |
| Variável | Por omissão | Descrição |
|---|---|---|
Config.MaxStrokesPerTag |
4000 |
Máximo de traços por tag (carga de dados + base de dados) |
Config.MinStrokesPerSave |
700 |
Os registos com menos traços do que este valor são rejeitados |
Config.CollaborationMaxStrokesPerSecond |
90 |
Limite de frequência por jogador no servidor (janela de 1 s) |
| Variável | Por omissão | Descrição |
|---|---|---|
Config.CollaborationSessionTimeout |
1800 |
A sessão fecha automaticamente após estes segundos de inatividade |
Config.CollaborationJoinDistance |
8.0 |
Distância máxima em metros para entrar numa sessão ativa |
Config.SpectatorDistance |
28.0 |
Raio para ver os traços em direto sem entrar |
Config.SyncLoadRadius |
200.0 |
Raio de pesquisa de tags do servidor por jogador |
Config.SyncMaxTagsPerQuery |
180 |
Máximo de tags devolvidas por consulta de sincronização |
Config.StreamDistance |
70.0 |
Distância em metros para criar ou destruir um DUI por cada graffiti |
Config.ServerCellCheckIntervalMs |
3000 |
Intervalo em ms do thread de deteção de mudança de zona |
| Variável | Por omissão | Descrição |
|---|---|---|
Config.DuiResolution |
256 |
Resolução da tela DUI em píxeis — tem de ser potência de 2 (256, 512, 1024) |
Config.TagAlpha |
190 |
Opacidade da tela renderizada (0–255) |
Config.TagTimeBrightnessEnabled |
true |
Brilho dinâmico consoante a hora do jogo |
Config.TagNightStartHour |
21 |
Hora de início do modo noite |
Config.TagNightEndHour |
6 |
Hora de fim do modo noite |
Config.TagDayBrightness |
1.00 |
Multiplicador de brilho durante o dia (1.0 = original) |
Config.TagNightBrightness |
0.40 |
Multiplicador de brilho durante a noite |
Config.EraseTagDuration |
15000 |
Duração em ms que tens de manter premido para apagar uma tag |
Config.CanvasOffsetStep |
0.005 |
Passo de ajuste do deslocamento da tela em metros por pressão de tecla |
Config.CanvasOffsetMin |
-0.30 |
Deslocamento máximo para dentro (30 cm dentro da parede) |
Config.CanvasOffsetMax |
0.50 |
Deslocamento máximo para fora (50 cm afastado da parede) |