first commit

This commit is contained in:
Bad
2025-10-07 20:29:02 +03:00
commit 74b91e4a9b
10 changed files with 236 additions and 0 deletions

75
rlcraft.js Normal file
View File

@ -0,0 +1,75 @@
const mineflayer = require('mineflayer');
const autoVersionForge = require('minecraft-protocol-forge').autoVersionForge;
const fs = require('fs');
const servers = fs.readFileSync('rlcraft.txt', 'utf-8')
.split('\n')
.map(line => line.trim())
.filter(Boolean);
const results = [];
function checkServer(server, callback) {
const [host, portStr] = server.split(':');
const port = parseInt(portStr, 10) || 25565;
const bot = mineflayer.createBot({
host,
port,
auth: 'microsoft',
version: false
});
autoVersionForge(bot._client, fs.readFileSync('rlcraft.json'));
let finished = false;
bot.on('spawn', () => {
if (!finished) {
results.push(`${server}`);
bot.quit();
finished = true;
callback();
}
});
bot.on('kicked', (reason) => {
if (!finished) {
results.push(`${server} X (Kicked: ${JSON.stringify(reason)})`);
finished = true;
callback();
}
});
bot.on('error', (err) => {
if (!finished) {
results.push(`${server} X (Error: ${err.message})`);
finished = true;
callback();
}
});
setTimeout(() => {
if (!finished) {
results.push(`${server} X (Timeout)`);
if (typeof bot.quit === 'function') bot.quit();
finished = true;
callback();
}
}, 15000);
}
function checkAllServers(index = 0) {
if (index >= servers.length) {
fs.writeFileSync('rlcraft_RESULTS.txt', results.join('\n'));
console.log('Done! Results written to rlcraft_RESULTS.txt');
return;
}
checkServer(servers[index], () => {
setTimeout(() => {
checkAllServers(index + 1);
}, 5000);
});
}
checkAllServers();