- Katılım
- 26 Şubat 2020
- Mesajlar
- 64
- En iyi cevaplar
- 1
- Tepki puanı
- 14
- Puanları
- 1,080
- Discord
- BloodyX#4069
Bu bot, belirli komutlarla Minecraft sunucusunu başlatma, durdurma, yeniden başlatma ve sunucu durumunu kontrol etme işlevlerini içerir.
Not Test Edilmemiştir)
Not Test Edilmemiştir)
Gereksinimler:
- Node.js ve Discord.js kurulumu
- Minecraft sunucusunun çalıştırılacağı bir ekran (screen) oturumu
Kurulum:
- Node.js ve Discord.js Kurulumu:
npm install discord.js
- Bot Kodu:
Açıklama:
- Sunucu Başlatma: !sunucubaslat komutu verildiğinde, bot sunucuyu başlatır.
- Sunucu Durdurma: !sunucudurdur komutu verildiğinde, bot sunucuyu durdurur.
- Sunucu Yeniden Başlatma: !sunucuyenidenbaslat komutu verildiğinde, bot sunucuyu yeniden başlatır.
- Sunucu Durumu Kontrolü: !sunucudurum komutu verildiğinde, bot sunucunun çalışıp çalışmadığını kontrol eder ve durumu bildirir.
- Sunucuya Mesaj Gönderme: !sunucumesaj mesaj komutu verildiğinde, bot belirtilen mesajı Minecraft sunucusuna gönderir.
Kod:
const { Client, GatewayIntentBits } = require('discord.js');
const { exec } = require('child_process');
const client = new Client({ intents: [GatewayIntentBits.Guilds, GatewayIntentBits.GuildMessages, GatewayIntentBits.MessageContent] });
client.once('ready', () => {
console.log('Bot is online!');
});
client.on('messageCreate', message => {
if (message.content === '!sunucubaslat') {
exec('screen -S minecraft -d -m java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui', (error, stdout, stderr) => {
if (error) {
message.channel.send(`Sunucu başlatılamadı: ${error.message}`);
return;
}
message.channel.send('Minecraft sunucusu başlatıldı!');
});
} else if (message.content === '!sunucudurdur') {
exec('screen -S minecraft -X stuff "stop\n"', (error, stdout, stderr) => {
if (error) {
message.channel.send(`Sunucu durdurulamadı: ${error.message}`);
return;
}
message.channel.send('Minecraft sunucusu durduruldu!');
});
} else if (message.content === '!sunucuyenidenbaslat') {
exec('screen -S minecraft -X stuff "stop\n"', (error, stdout, stderr) => {
if (error) {
message.channel.send(`Sunucu yeniden başlatılamadı: ${error.message}`);
return;
}
exec('screen -S minecraft -d -m java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui', (error, stdout, stderr) => {
if (error) {
message.channel.send(`Sunucu yeniden başlatılamadı: ${error.message}`);
return;
}
message.channel.send('Minecraft sunucusu yeniden başlatıldı!');
});
});
} else if (message.content === '!sunucudurum') {
exec('screen -ls', (error, stdout, stderr) => {
if (error) {
message.channel.send(`Sunucu durumu kontrol edilemedi: ${error.message}`);
return;
}
if (stdout.includes('minecraft')) {
message.channel.send('Minecraft sunucusu çalışıyor.');
} else {
message.channel.send('Minecraft sunucusu çalışmıyor.');
}
});
} else if (message.content.startsWith('!sunucumesaj')) {
const serverMessage = message.content.slice(13).trim();
exec(`screen -S minecraft -X stuff "say ${serverMessage}\n"`, (error, stdout, stderr) => {
if (error) {
message.channel.send(`Mesaj gönderilemedi: ${error.message}`);
return;
}
message.channel.send('Mesaj sunucuya gönderildi!');
});
}
});
client.login('YOUR_BOT_TOKEN');