Portal SAMP
[Include] FS_CMD (Processador de comandos) - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Lançamentos (https://portalsamp.com/forumdisplay.php?fid=26)
+---- Fórum: Includes (https://portalsamp.com/forumdisplay.php?fid=27)
+---- Tópico: [Include] FS_CMD (Processador de comandos) (/showthread.php?tid=5164)



FS_CMD (Processador de comandos) - FStralioti - 04/01/2026

FS_CMD – O Processador de Comandos Autossuficiente para SA-MP

Olá, comunidade SA-MP!

Apresento a vocês o FS_CMD, um processador de comandos leve, rápido e totalmente autossuficiente, desenvolvido para tornar seu desenvolvimento em SA-MP mais simples, eficiente e sem dependências externas.

Se você já usou ZCMD, sabe que muitos sistemas exigem bibliotecas adicionais e funções complexas, como sscanf, para funcionar corretamente.
O FS_CMD elimina completamente essa necessidade, oferecendo um sistema de comandos limpo, direto e pronto para uso, sem precisar instalar nada além da própria include.

Por que o FS_CMD é único:

Citar:
  • Independência total: não depende de bibliotecas externas, sscanf ou macros complicadas. Basta incluir <FS_CMD> e começar a criar seus comandos.
  • Registro simples e intuitivo: apenas declare FS_CMD(nome) e seu comando já estará disponível.
  • Help automático: o comando /help lista todos os comandos disponíveis com suas descrições.
  • Suporte completo a argumentos: leitura fácil de strings e inteiros usando FS_CMD_ARG e FS_CMD_ARG_INT.
  • Minimalista e leve: código enxuto, rápido e sem sobrecarregar o gamemode.

Diferenciais

Citar:
  • Nenhum sscanf, nenhuma complicação: o parser interno do FS_CMD lida com argumentos de forma robusta, segura e eficiente.
  • Help inteligente: todos os comandos cadastrados são listados automaticamente.
  • Preparado para o futuro: estrutura pensada para receber melhorias contínuas.

O Futuro do FS_CMD


O FS_CMD está em constante evolução. Atualizações futuras incluirão:

Citar:
  • Mais ferramentas para gerenciamento de comandos complexos.
  • Otimizações adicionais para velocidade e desempenho.
  • Recursos avançados para criar experiências únicas em gamemodes e filterscripts.

O FS_CMD não é apenas mais uma include; é uma
plataforma de comandos completa, independente e moderna, focada em simplicidade e performance.

Crie gamemodes incríveis sem depender de bibliotecas externas ou complicações e aproveite todo o potencial do SA-MP.

Experimente, teste e compartilhe suas ideias.
O FS_CMD veio para ficar e crescer junto com a comunidade!

Download

GitHub

Autor: FStralioti
Versão: 1.0



RE: FS_CMD (Processador de comandos) - xbruno1000x - 04/01/2026

Poderia ter o benchmark comparativo com o ZCMD, Pawn.CMD e outros processadores de comando relevantes para sabermos a velocidade. É uma boa ideia, só precisa exibir o que isso tem de melhor em relação as outras includes.


RE: FS_CMD (Processador de comandos) - Mateus Lima - 05/01/2026

(04/01/2026 23:49)xbruno1000x Escreveu: Poderia ter o benchmark comparativo com o ZCMD, Pawn.CMD e outros processadores de comando relevantes para sabermos a velocidade. É uma boa ideia, só precisa exibir o que isso tem de melhor em relação as outras includes.

Verdade


RE: FS_CMD (Processador de comandos) - FStralioti - 05/01/2026

(04/01/2026 23:49)xbruno1000x Escreveu: Poderia ter o benchmark comparativo com o ZCMD, Pawn.CMD e outros processadores de comando relevantes para sabermos a velocidade. É uma boa ideia, só precisa exibir o que isso tem de melhor em relação as outras includes.

(05/01/2026 10:14)Mateus Lima Escreveu:
(04/01/2026 23:49)xbruno1000x Escreveu: Poderia ter o benchmark comparativo com o ZCMD, Pawn.CMD e outros processadores de comando relevantes para sabermos a velocidade. É uma boa ideia, só precisa exibir o que isso tem de melhor em relação as outras includes.

Verdade
Fala Brunão meu amigo, cheguei a tentar benchmarkar FS_CMD vs ZCMD e Pawn.CMD, mas sendo bem sincero: no SA-MP isso é complicado de medir de forma “bonita”. Na maioria dos testes o GetTickCount() mal sai de 0–1 ms, mesmo com milhares de execuções, então os números acabam não representando muita coisa no servidor real.

O que dá pra comparar melhor não é o “tempo final”, mas como cada include faz o parsing.

O ZCMD, por exemplo, depende totalmente do sscanf. Ele é confiável e flexível, mas não é leve — conforme o comando cresce (mais parâmetros, mais validações), o custo vem daí. Isso não é um defeito, é uma escolha de projeto.

O FS_CMD segue outro caminho: faz o parsing manual uma única vez, armazena os argumentos e só converte quando você pede (FS_CMD_ARG_INT, etc). Não tem dependência externa, não tem camada extra no meio. Por isso, em testes de parsing mais pesado, ele acaba se comportando melhor que o ZCMD.

Já o Pawn.CMD é bem otimizado e até supera o FS_CMD em desempenho. Em alguns cenários empata, em outros perde. Nada absurdo — é uma include sólida.

No fim das contas, o FS_CMD nunca foi pensado pra disputar benchmark, e sim pra facilitar a vida no dia a dia(até para meus projetos) com:

• parsing simples

• fácil aprendizado

• código legível

• zero dependências (principalmente sscanf)

Vou continuar evoluindo a include e, se eu conseguir um benchmark mais honesto de parsing que faça sentido, posto aqui sem problema.
Até porque estava parado com o desenvolvimento para o SA:MP e estou retornando agora e me atualizando sobre tudo.