YENİ 📢 Sınırlı lansman teklifi: Tüm oyunlarda ilk aya %70'e varan indirim!Paketleri görün

C# (.NET) Discord botu nasıl barındırılır

Discord botlarıUpdated Oct 23, 20263 min read

Bu rehber, C# ya da başka bir .NET dilinde yazılmış botlar içindir, örneğin Discord.Net ya da DSharpPlus ile.

Türü seçin

  1. Sunucunuzu panel'de açın, Genel bakış sayfasında kalın ve Sunucu türünü düzenle'ye tıklayın.
  2. .NET Bot'u seçin. Türü değiştirmek sunucuyu yeniden kurar ve varsayılan olarak dosyalarını siler, bu yüzden bunu yeni bir sunucuda yapın. Bkz. Botunuzu Node.js, Python ve Java arasında nasıl geçirirsiniz.
  3. Ayarlar, Docker imajı bölümünde .NET sürümünü seçebilirsiniz (8 varsayılandır, 6, 9 ve 10 mevcuttur).

Küçük bir örnek proje

MyBot.csproj

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net8.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
  </PropertyGroup>
  <ItemGroup>
    <PackageReference Include="Discord.Net" Version="3.*" />
  </ItemGroup>
</Project>

Program.cs

using Discord;
using Discord.WebSocket;

var client = new DiscordSocketClient(new DiscordSocketConfig { GatewayIntents = GatewayIntents.Guilds });
client.Log += msg => { Console.WriteLine(msg); return Task.CompletedTask; };

await client.LoginAsync(TokenType.Bot, Environment.GetEnvironmentVariable("DISCORD_TOKEN"));
await client.StartAsync();
await Task.Delay(Timeout.Infinite);

Yayınlamanın iki yolu

Projeyi yükleyin. Files bölümünde .csproj dosyanızı ve kaynak dosyalarınızı yükleyin (bin ve obj klasörlerini değil). Her başlangıçta sunucu projenizi dotnet publish ile derler ve sonra çalıştırır. İlk derleme NuGet paketlerini indirir, bu yüzden bir dakika sürer. Ana klasördeki tek .csproj dosyasını kullanmak için Proje veya dll alanını boş bırakın, birkaç tane varsa dosya adını yazın.

Yayımlanmış dosyaları yükleyin. Bilgisayarınızda dotnet publish -c Release çalıştırın ve çıktı klasörünün içeriğini yükleyin. Proje veya dll alanını .dll adına ayarlayın, örneğin MyBot.dll. Daha hızlı başlar ve daha az bellek gerektirir.

Bunun yerine git mi kullanıyorsunuz? Bkz. Discord botunuzu GitHub'dan nasıl yayınlar ve güncellersiniz.

Token ve başlatma

Token'ınızı Discord bot token'ı alanına yapıştırın. Kodunuz onu DISCORD_TOKEN ortam değişkeni olarak okur. Console'u açın ve başlatın. Console botun bağlandığını gösterdiğinde bot çevrimiçidir.

Bilmeniz gerekenler

  • Derleme bellek kullanır. Çok sayıda paketi olan bir proje, derlenirken 1 GB ya da daha fazlası olan bir paket gerektirebilir. Yayımlanmış bir .dll çok daha azına ihtiyaç duyar. Bkz. Bir Discord botunun ne kadar RAM'e ihtiyacı var.
  • Bir derleme hatası sunucuyu durdurur ve derleyici mesajlarını Console'da gösterir. Onları düzeltin ve Başlat'a basın.
  • TargetFramework değerini seçtiğiniz .NET sürümüyle eşleştirin (.NET 8 için net8.0).

Sunucun başka bir yerde mi? Bize taşı

OYUN SUNUCUNUZU OLUŞTURUN
BAŞLAMAYA HAZIR MISINIZ?

Yeni oyun sunucunuzda %30’a varan tasarruf sağlayın.
Premium performans, anında aktivasyon ve rakipsiz güvenilirlik. Hepsi daha iyi bir fiyatla.

EN YENİ BLOG YAZILARIMIZ