Por que o seu plugin do CounterStrikeSharp não carrega
Compilar com sucesso só prova que o código é válido. Se o servidor carrega o plugin depende do próprio servidor: Metamod, versão do CounterStrikeSharp, onde você copiou os arquivos e o que o plugin precisa para rodar. Faça as verificações abaixo em ordem, porque as primeiras são as mais comuns.
Confirme que o CounterStrikeSharp está rodando
Antes de culpar o plugin, verifique se o framework está vivo. Digite meta list no console do servidor. O CounterStrikeSharp precisa aparecer na lista. Se não aparecer, o problema está na instalação do Metamod ou do CounterStrikeSharp, não no plugin. Nosso guia de instalação do Metamod cobre essa parte.
meta list
Leia o erro no console
Quando um plugin falha, o console mostra qual e por quê. Uma entrada <ERROR> na lista de plugins significa que o arquivo foi encontrado mas não pôde ser carregado. Copie a mensagem inteira, não só a primeira linha, porque o motivo real costuma estar algumas linhas abaixo.
[META] Failed to load plugin addons/counterstrikesharp/bin/linuxsteamrt64/counterstrikesharp
Listing 1 plugin:
[01] <ERROR>
O servidor foi atualizado e nada mais funciona
Depois de uma atualização do Counter-Strike 2, o CounterStrikeSharp e o Metamod muitas vezes precisam ser atualizados também, porque os arquivos do jogo em que eles se encaixam mudaram. Se todos os plugins pararam ao mesmo tempo, é essa a causa. Atualize o CounterStrikeSharp e o Metamod para as versões mais recentes e reinicie o servidor. Nosso guia sobre como atualizar o CounterStrikeSharp mostra o jeito seguro.
Veja o que o servidor acha que está instalado
Execute css_plugins list no console. Ele mostra cada plugin que o framework encontrou, com seu estado. Se o seu plugin não aparece, os arquivos estão no lugar errado ou o nome da pasta não bate com o da DLL. Se aparece com erro, volte ao passo dois e leia a mensagem.
css_plugins list
Confira a estrutura de pastas
Cada plugin precisa da sua própria pasta dentro de plugins, e a DLL principal deve ter exatamente o mesmo nome dessa pasta. Os arquivos ao lado, como o deps.json, devem ficar junto da DLL.
Copie só a pasta do plugin, não a dependencies
Nosso compilador coloca duas coisas no zip: a pasta do plugin e uma pasta dependencies. Copie para o servidor apenas a pasta do plugin. A pasta dependencies contém arquivos que o CounterStrikeSharp já fornece, e copiá-los pode causar conflitos de versão.
Plugins com frameworks pesados ou outra versão da API
Um plugin escrito para uma CounterStrikeSharp.API mais antiga pode compilar e mesmo assim falhar num servidor mais novo, ou o contrário. Se o console citar um método ou tipo ausente, as versões da API não combinam. Nosso guia sobre incompatibilidade de versões explica qual opção de compilação escolher. Lembre também que frameworks grandes, como o ASP.NET, não são suportados dentro de um plugin de servidor de jogo.
O que incluir ao pedir ajuda
Se ainda não resolveu, pergunte ao autor do plugin ou à comunidade do CounterStrikeSharp e informe: a saída de meta list e css_plugins list, o erro completo do console, a versão do CounterStrikeSharp e como você compilou o plugin. Com isso, a maioria dos problemas é resolvida numa única resposta.
Este tutorial foi útil?
Barlap para a comunidade.