आपका पहला CounterStrikeSharp प्लगइन: Hello World
CounterStrikeSharp प्लगइन लिखने के लिए अनुभवी प्रोग्रामर होना ज़रूरी नहीं। चलता हुआ प्लगइन एक छोटी C# क्लास और एक प्रोजेक्ट फ़ाइल है। यह गाइड आपको शून्य से सर्वर कंसोल में Hello World दिखने तक ले जाती है, और यहाँ जो सीखेंगे वह बड़े प्लगइनों पर भी लागू होता है।
.NET 8 SDK इंस्टॉल करें
CounterStrikeSharp प्लगइन .NET 8 पर C# में लिखे जाते हैं। अपने कंप्यूटर पर .NET 8 SDK इंस्टॉल करें, फिर टर्मिनल खोलकर जाँचें कि वह चल रहा है। कमांड इंस्टॉल किया वर्शन दिखाती है, जो 8 से शुरू होना चाहिए।
dotnet --version
प्रोजेक्ट बनाएँ
एक ख़ाली फ़ोल्डर बनाएँ, उसमें टर्मिनल खोलें और क्लास लाइब्रेरी जनरेट करें। यहाँ चुना गया नाम आपके प्लगइन की DLL का नाम बनता है, इसलिए स्पष्ट नाम चुनें जिसमें स्पेस न हो।
dotnet new classlib --name HelloWorldPlugin
प्रोजेक्ट फ़ाइल बदलें
बनी हुई .csproj फ़ाइल खोलें और उसकी सामग्री नीचे दी गई सामग्री से बदल दें। ज़रूरी हिस्सा CounterStrikeSharp.API का रेफ़रेंस है, जो आपको गेम तक पहुँच देता है। बनी हुई Class1.cs फ़ाइल हटा दें, उसकी ज़रूरत नहीं पड़ेगी।
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="CounterStrikeSharp.API" Version="1.0.*" />
</ItemGroup>
</Project>
प्लगइन लिखें
HelloWorldPlugin.cs बनाएँ। हर प्लगइन एक क्लास होती है जो BasePlugin से बनती है और ख़ुद को एक नाम व वर्शन देती है। Load मेथड एक बार चलती है, जब सर्वर प्लगइन लोड करता है, और आपका अपना कोड वहीं से शुरू होता है।
using CounterStrikeSharp.API.Core;
namespace HelloWorldPlugin;
public class HelloWorldPlugin : BasePlugin
{
public override string ModuleName => "Hello World Plugin";
public override string ModuleVersion => "1.0.0";
public override void Load(bool hotReload) { Console.WriteLine("Hello World!"); }}
इसे कंपाइल करें
आप dotnet build -c Release से लोकल कंपाइल कर सकते हैं, या सेटअप छोड़कर फ़ोल्डर (प्रोजेक्ट फ़ाइल और .cs फ़ाइल) को zip करके हमारे कंपाइलर पर अपलोड कर सकते हैं। यह पैकेज रीस्टोर करता है, प्लगइन बनाता है और इस्तेमाल के लिए तैयार zip देता है।
सर्वर पर कॉपी करें
zip में से सिर्फ़ प्लगइन का फ़ोल्डर अपने सर्वर के addons/counterstrikesharp/plugins में कॉपी करें। फ़ोल्डर और DLL का नाम एक जैसा होना चाहिए। हमारे zip का dependencies फ़ोल्डर CounterStrikeSharp पहले से देता है, इसलिए उसे छोड़ दें।
कंसोल जाँचें
सर्वर रीस्टार्ट करें, या चलते सर्वर पर प्लगइन लोड करें। सर्वर कंसोल में आपका संदेश दिखना चाहिए। न दिखे तो css_plugins list चलाकर देखें कि प्लगइन मिला या नहीं, और हमारी "प्लगइन लोड नहीं हो रहा" गाइड पढ़ें।
Hello World!
CounterStrikeSharp.API Loaded Successfully.
बदलें और दोबारा लोड करें
प्लगइन चल जाए तो संदेश बदलें, फिर कंपाइल करें और DLL बदल दें। CounterStrikeSharp hot reload का समर्थन करता है, इसलिए डेवलपमेंट सर्वर पर आप अक्सर बिना रीस्टार्ट के नया वर्शन आज़मा सकते हैं। अगले क़दम हैं कमांड और गेम इवेंट, जो हमारी दूसरी गाइडों में हैं।
क्या यह ट्यूटोरियल उपयोगी था?
Barlap समुदाय के लिए।