Perché il tuo plugin CounterStrikeSharp non si carica
Una compilazione riuscita dimostra solo che il codice è valido. Se il server carica davvero il plugin dipende dal server stesso: Metamod, la versione di CounterStrikeSharp, dove hai copiato i file e di cosa ha bisogno il plugin per girare. Segui i controlli qui sotto in ordine, perché i primi sono i più comuni.
Controlla che CounterStrikeSharp sia in funzione
Prima di dare la colpa al plugin, assicurati che il framework sia vivo. Scrivi meta list nella console del server. CounterStrikeSharp deve comparire nell’elenco. Se manca, il problema è nell’installazione di Metamod o di CounterStrikeSharp, non nel plugin. La nostra guida all’installazione di Metamod copre questa parte.
meta list
Leggi l’errore nella console
Quando un plugin fallisce, la console indica quale e perché. Una voce <ERROR> nell’elenco dei plugin significa che il file è stato trovato ma non si è potuto caricare. Copia il messaggio per intero, non solo la prima riga, perché il motivo vero è di solito qualche riga più in basso.
[META] Failed to load plugin addons/counterstrikesharp/bin/linuxsteamrt64/counterstrikesharp
Listing 1 plugin:
[01] <ERROR>
Il server è stato aggiornato e non funziona più niente
Dopo un aggiornamento di Counter-Strike 2, spesso vanno aggiornati anche CounterStrikeSharp e Metamod, perché sono cambiati i file del gioco a cui si agganciano. Se tutti i plugin si sono rotti nello stesso momento, è questa la causa. Aggiorna CounterStrikeSharp e Metamod alle ultime versioni e riavvia il server. La nostra guida all’aggiornamento di CounterStrikeSharp mostra il modo sicuro.
Guarda cosa crede di avere il server
Esegui css_plugins list nella console. Mostra ogni plugin trovato dal framework, con il suo stato. Se il tuo plugin non compare affatto, i file sono nel posto sbagliato oppure il nome della cartella non corrisponde a quello della DLL. Se compare con un errore, torna al passo due e leggi il messaggio.
css_plugins list
Controlla la struttura delle cartelle
Ogni plugin ha bisogno di una cartella tutta sua dentro plugins, e la DLL principale deve chiamarsi esattamente come quella cartella. I file accanto, come deps.json, devono restare insieme alla DLL.
Copia solo la cartella del plugin, non dependencies
Il nostro compilatore mette due cose nello zip: la cartella del plugin e una cartella dependencies. Copia sul server soltanto la cartella del plugin. La cartella dependencies contiene file che CounterStrikeSharp fornisce già, e copiarli può causare conflitti di versione.
Plugin con framework pesanti o un’altra versione dell’API
Un plugin scritto per una CounterStrikeSharp.API più vecchia può compilare e fallire comunque su un server più recente, o viceversa. Se la console segnala un metodo o un tipo mancante, le versioni dell’API non coincidono. La nostra guida sul conflitto di versioni spiega quale opzione di compilazione scegliere. Ricorda inoltre che framework grandi come ASP.NET non sono supportati dentro un plugin per server di gioco.
Cosa includere quando chiedi aiuto
Se ancora non ne vieni a capo, chiedi all’autore del plugin o alla community di CounterStrikeSharp e indica: l’output di meta list e css_plugins list, l’errore completo della console, la versione di CounterStrikeSharp e come hai compilato il plugin. Con questi dati la maggior parte dei problemi si risolve con una sola risposta.
Questo tutorial ti è stato utile?
Barlap per la comunità.