Admin
Comandos da staff em servidores com o framework krs: punição, grupos, economia, teleporte, veículos e manutenção. Cada ação relevante vai para o log do krs. Tem também uma API HTTP opcional.
Precisa de: krs, oxmysql
Este script usa o krs direto. Ele não roda em outro framework.
Instalação
ensure adminColoque depois do krs. As tabelas usadas vêm do banco do krs. Veja a ordem no server.cfg.
Alguns comandos chamam outros resources:
| Comando | Precisa de |
|---|---|
/passport, /passaporte | phone, crons e inventory ligados |
/insertcron, /removecron | crons |
Permissão
Os comandos usam o grupo Admin do krs. Cargo 1 é o mais alto:
| Cargo | Nome |
|---|---|
| 1 | Administrador |
| 2 | Diretor |
| 3 | Moderador |
| 4 | Suporte |
| 5 | Ajudante |
Para dar o primeiro acesso, rode no console do servidor:
setgroup 1 Admin 1Na coluna Cargo, das tabelas abaixo:
| Valor | Significado |
|---|---|
| qualquer | Qualquer cargo de Admin |
| até 2 | Cargo 1 ou 2 |
| 1 | Só cargo 1 |
| direto | O grupo Admin foi dado à própria pessoa, sem herança de outro grupo |
Quem não é cargo 1 não age sobre staff de cargo igual ou maior nos comandos marcados com *.
Comandos
Comandos com teclado abrem uma janela para preencher os campos.
Jogadores
| Comando | Cargo | O que faz |
|---|---|---|
/players | qualquer | Lista os passaportes conectados |
/id <passaporte> | qualquer | Mostra nome, banco, rádio e grupos |
/usource <source> | qualquer | Mostra o passaporte daquele source |
/conta <passaporte> | qualquer | Mostra conta, Discord, licença, diamantes, banimento, prisão e personagens |
/status | qualquer, direto | Escolhe um grupo e lista os membros |
/leaders | qualquer, direto | Lista os líderes de grupo online |
/suspeitos | qualquer | Lista até 15 jogadores com pontos no anticheat |
/wall | qualquer | Liga e desliga nome, vida, colete, distância e arma sobre os jogadores |
/spectate <passaporte> | qualquer | Observa o jogador. Rode de novo para sair |
/print <passaporte> | qualquer | Captura a tela do jogador e envia para discord_screenshot |
Punição
| Comando | Cargo | O que faz |
|---|---|---|
/kick <passaporte> * | qualquer | Expulsa |
/ban * | qualquer | Teclado: passaporte, minutos e motivo. Com 0 minutos, o banimento é permanente |
/banr | qualquer | Teclado: reduz o banimento em minutos |
/unban | qualquer | Teclado: revoga o banimento |
/freeze <passaporte> * | qualquer | Congela e descongela o jogador e o veículo |
/mute <passaporte> * | qualquer | Silencia e libera a voz |
/kill <passaporte> * | até 2 | Mata o personagem |
/delete <passaporte> * | até 2 | Pede confirmação e marca o personagem como deletado |
/soltar | até 2 | Teclado: passaporte e motivo. Solta da prisão |
/destravar <passaporte> | qualquer | Tira de bucket e congelamento e leva à praça. Não vale para banido ou preso |
/liberar | qualquer | Teclado: libera a entrada com o código de liberação |
Grupos
| Comando | Cargo | O que faz |
|---|---|---|
/group <passaporte> <grupo> [nível] | até 2 | Dá o grupo. Só cargo 1 dá Admin |
/ungroup <passaporte> <grupo> * | até 2 | Tira o grupo. Só cargo 1 tira Admin |
setgroup <passaporte> <grupo> [nível] | 1, ou console | Dá o grupo e salva na hora. A resposta sai no console |
/insertcron | 1 | Teclado: dá um grupo por um tempo, em horas ou dias |
/removecron | 1 | Teclado: remove o tempo de um grupo |
/clearpermission | 1, direto | Teclado: tira todos os grupos de um passaporte |
/wipepermissions | 1, direto | Escolhe um grupo, remove todos os membros e apaga os baús dele |
setgroup é restrito pelo FiveM. Em jogo, além do cargo 1, é preciso liberar command.setgroup por ACE.
Economia
| Comando | Cargo | O que faz |
|---|---|---|
/money | 1 | Teclado: dá dinheiro no banco, de 1 a 10.000.000 |
/dima | 1 | Teclado: dá diamantes |
/rem money, /rem dima * | 1 | Teclado: tira até zerar, com motivo |
/rem item * | até 2 | Teclado: tira um item, com o jogador online |
/item | até 2 | Teclado: dá um item a um jogador, a todos ou a uma área. Offline, entrega quando ele entrar. Máximo 1000 por vez |
/item <item> <quantidade> | até 2 | Dá o item a você |
/clearinv <passaporte> * | até 2 | Limpa o inventário |
/skins | até 2 | Teclado: aplica skin de arma a um jogador ou a todos |
/codes | 1 | Teclado: cria um código com usos e recompensas |
/pointbattlepass | 1, direto | Teclado: dá pontos do passe de batalha |
/pointexperience | 1, direto | Teclado: dá experiência num trabalho |
/enquete | qualquer | Mostra o resultado de uma enquete |
Personagem
| Comando | Cargo | O que faz |
|---|---|---|
/god [passaporte] | qualquer | Revive e enche fome e sede. Em você, também enche o colete |
/skin * | qualquer | Teclado: troca o modelo, com dias opcionais |
/clone <passaporte> | qualquer | Copia modelo, roupa, cabelo e tatuagens do jogador para você |
/rename * | qualquer | Teclado: troca nome e sobrenome |
/skinshop, /barbershop, /tattooshop, /lscustoms | qualquer | Abrem a loja onde você está |
/postit | qualquer | Cria um post-it |
/nc | qualquer | Liga e desliga o noclip. W e S movem, Shift acelera |
/cam | grupo Freecam | Liga e desliga a câmera livre. W, A, S, D movem, Q sobe, Z desce, a roda do mouse dá zoom |
/blips | qualquer | Liga e desliga nome, passaporte, vida e colete sobre os jogadores próximos |
Teleporte
| Comando | Cargo | O que faz |
|---|---|---|
/tptome <passaporte> | qualquer | Traz o jogador até você |
/tpto <passaporte> | qualquer | Leva você até o jogador |
/tpway | qualquer | Vai até o ponto marcado no mapa |
/tpback | qualquer | Volta para onde estava antes do teleporte |
/tpcds | qualquer | Teclado: vai até as coordenadas coladas |
/cds | qualquer | Mostra as suas coordenadas para copiar |
/bucket [número] | qualquer | Entra num routing bucket |
/tpcds
-1039.89, -2740.74, 13.88Veículos
| Comando | Cargo | O que faz |
|---|---|---|
/fix | qualquer | Conserta o veículo |
/nitro | qualquer | Enche as garrafas instaladas no veículo em que você está |
/fuel | qualquer | Enche o tanque do veículo em que você está |
/tuning | 1 | Aplica turbo e o nível máximo de motor, freio, transmissão e suspensão |
/addcar | 1, direto | Teclado: dá um veículo mensal, permanente ou por dias |
/remcar | 1 | Teclado: escolhe e remove um veículo do passaporte |
/configrace [nome] | qualquer, em serviço | Marca pontos de corrida a partir do veículo |
Em /configrace, E grava um ponto, e Page Up e Page Down ajustam a largura. Rode de novo para sair. Os pontos ficam em <nome>.txt, na pasta do admin.
Mundo e manutenção
| Comando | Cargo | O que faz |
|---|---|---|
/announce | até 2 | Teclado: aviso geral com título, texto, segundos, cor e posição |
/video | qualquer | Teclado: toca um vídeo do Vimeo por passaporte, grupo, área ou para todos. Fechar encerra |
/limparea | qualquer | Limpa peds, veículos, objetos e projéteis a até 100 m |
/blackout | qualquer | Liga e desliga o apagão |
/quake | 1 | Avisa e dispara o terremoto |
/save | 1, ou console | Salva os dados do krs |
/kickall | 1, ou console | Avisa por 3 minutos, expulsa todos e salva |
/kickall2 | 1, ou console | Expulsa todos na hora e salva |
/wipebattlepass | 1 | Reinicia o passe de batalha de todos |
/wipeonline | 1 | Zera o tempo online de todos |
/wipedaily | 1 | Zera o daily de todos |
/passport | 1 | Teclado: troca o número de um passaporte, com o jogador desconectado |
nameds | console | Ajusta o nome de todos os personagens para uma palavra em nome e sobrenome |
console <texto> | console | Mostra o texto a todos, como aviso da prefeitura |
Para jogadores
| Comando | O que faz |
|---|---|
/passaporte | Escolhe um número livre de 1 a 200 por 20.000 diamantes. O jogador é desconectado para concluir a troca |
Configuração
O script não tem config.lua. Estes limites ficam no início de server-side/core.lua:
| Opção | Padrão | O que muda |
|---|---|---|
MaxItem | 1000 | Máximo de itens por vez em /item |
MaxMoney | 10000000 | Máximo de /money |
Praca | vec3(164.3,-998.45,29.35) | Destino de /destravar |
| Convar | O que faz |
|---|---|
discord_screenshot | Webhook de /print |
admin_http_auth | Senha da API HTTP. Vazio desliga a API |
Logs
Os logs saem por exports.krs:Log. Veja os convars de webhook. Canais: AddCar, Ban, Battlepass, ClearInv, Codes, Delete, Dima, Experience, Freeze, God, Group, Http, Item, Kick, Kill, Liberar, Money, Mute, Passport, Prison, RemCar, Rename, Skin, Skins, Spectate, Teleport, Unstuck, Wall e Wipe.
API HTTP
Fica desligada até você definir a senha:
set admin_http_auth "SUA_SENHA_LONGA"Use set, não setr. O convar é lido quando o admin inicia. Cada pedido leva a senha no cabeçalho Auth e um corpo JSON. A resposta é JSON, com o campo message. Senha errada recebe o código 400.
curl -X POST "http://SEU_IP:SUA_PORTA/admin/god" -H "Auth: SUA_SENHA_LONGA" -d '{"CharId":1}'| Rota | Corpo | O que faz |
|---|---|---|
/god | CharId | Revive e enche fome e sede |
/dima | CharId, Amount | Dá diamantes |
/print | CharId | Captura a tela e envia para discord_screenshot |
/tdiscord | CurrentDiscord, NewDiscord | Troca o Discord da conta |
/thex | ActualHex, NewHex | Troca a licença da conta |
/banned | CharId, Duration, Reason | Bane por minutos. Com 0, é permanente |
/unbanned | CharId | Revoga o banimento |
/limbo | CharId | Destrava e leva à praça |
/thex apaga antes a conta e os personagens que já usam NewHex.
Para programadores
-- servidor: acrescenta uma linha a um .txt na pasta do admin
exports.admin:Archive("arquivo.txt","texto")O nome aceita letras, números, _ e -, terminado em .txt. Outro nome devolve false.
Eventos de cliente: admin:Wall, admin:WallEntra, admin:WallSai, admin:NoClip, admin:Freecam, admin:Tuning, admin:initSpectate e admin:resetSpectate.
Problemas comuns
As mensagens de setgroup saem no console do servidor.
| Mensagem | O que fazer |
|---|---|
Uso: setgroup <passaporte> <grupo> [nivel] | Passe o passaporte e o grupo |
O grupo "..." nao existe em vrp/config/Global.lua | Confira o nome em Groups, no arquivo krs/config/Global.lua. Maiúsculas e minúsculas contam |
O grupo ... so possui ... niveis | O nível foi ajustado para o último cargo do grupo |
Sem permissão sobre staff de cargo igual ou maior. | Peça a um cargo acima, ou ao cargo 1 |
