Новичок
			
			
				
					
				
			
		Новичок
		- Статус
- Оффлайн
- Регистрация
- 28 Авг 2025
- Сообщения
- 1
- Реакции
- 0
Заголовок: Как я сделал Aternos 24/7 через GeyserMC + Replit (простой скрипт)
Привет! Делюсь рабочим способом держать сервер Aternos всегда онлайн (у меня сервер с GeyserMC). Идея простая: на Replit запускаем bot-скрипт, который подключается к серверу как Bedrock-клиент и держит соединение. Пока бот подключён — Aternos считает, что есть игрок, и не засыпает.
В посте — пошаговая инструкция и готовый код для Replit (Node.js + bedrock-protocol). (Дальше вставляешь весь код и инструкции из гайда выше.)
Если кому нужно — могу выложить готовый Repl template (с настройками env) — скажите, кто захочет.
ПОЛНЫЙ КОД NODE JS:
	
	
	
	
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
надеюсь был полезен
при поддержке chatgpt.com
				
			Привет! Делюсь рабочим способом держать сервер Aternos всегда онлайн (у меня сервер с GeyserMC). Идея простая: на Replit запускаем bot-скрипт, который подключается к серверу как Bedrock-клиент и держит соединение. Пока бот подключён — Aternos считает, что есть игрок, и не засыпает.
В посте — пошаговая инструкция и готовый код для Replit (Node.js + bedrock-protocol). (Дальше вставляешь весь код и инструкции из гайда выше.)
Если кому нужно — могу выложить готовый Repl template (с настройками env) — скажите, кто захочет.
ПОЛНЫЙ КОД NODE JS:
Быстрый порядок действий
- Создаёшь новый Replit → выбираешь шаблон Node.js.
- В package.json добавь зависимость bedrock-protocol (или установи через терминал npm i bedrock-protocol).
- Создай файл index.js и вставь код (ниже).
- В коде поменяй значения SERVER_IP и SERVER_PORT (у тебя сначала меняется порт, потом IP — см. примечание ниже).
- Запусти Replit. Скрипт попытается подключиться и будет автоматически переподключаться при разрыве.
- Если Replit у тебя требует «Always on» — используй свой способ удержания Repl (у тебя уже получалось).
			
				Код node.js:
			
		
		
		// index.js
// Простой "держатель онлайна" для Bedrock (GeyserMC на Java-сервере).
// Перед запуском поменяй SERVER_IP и SERVER_PORT на реальные значения.
// Установка: npm i bedrock-protocol
const bedrock = require('bedrock-protocol');
const SERVER_IP = process.env.SERVER_IP || 'PUT_SERVER_IP_HERE';     // <-- сюда IP сервера Aternos / Geyser
const SERVER_PORT = parseInt(process.env.SERVER_PORT || '19132');   // <-- сюда порт (обычно 19132 для Bedrock)
const BOT_NAME = process.env.BOT_NAME || 'KeepAliveBot';
let client = null;
let reconnectDelay = 5000; // ms
function connect() {
  console.log(`[${new Date().toISOString()}] Попытка подключиться к ${SERVER_IP}:${SERVER_PORT} как ${BOT_NAME}...`);
  try {
    client = bedrock.createClient({
      host: SERVER_IP,
      port: SERVER_PORT,
      username: BOT_NAME,
      // В зависимости от версии библиотеки и сервера могут потребоваться дополнительные опции.
      // Если нужно, можно указать `offline: true` или другие поля. Оставим базовые.
    });
    client.on('spawn', () => {
      console.log(`[${new Date().toISOString()}] Успешно подключились — держим соединение.`);
    });
    client.on('end', () => {
      console.log(`[${new Date().toISOString()}] Соединение закрыто. Переподключаемся через ${reconnectDelay} ms.`);
      setTimeout(connect, reconnectDelay);
    });
    client.on('error', (err) => {
      console.log(`[${new Date().toISOString()}] Ошибка клиента:`, err && err.message ? err.message : err);
      // если ошибка — попробуем переподключиться
      try { client.close && client.close(); } catch(e){}
      setTimeout(connect, reconnectDelay);
    });
    // Иногда сервер "режет" без события error/end — на всякий отправляем пинг раз в 30 сек
    setInterval(() => {
      try {
        client && client.raw && client.raw.write && client.raw.write(); // безопасная попытка вызвать что-то (необязательно)
      } catch (e) {}
    }, 30_000);
  } catch (e) {
    console.log(`[${new Date().toISOString()}] Ошибка при подключении:`, e.message || e);
    setTimeout(connect, reconnectDelay);
  }
}
connect();надеюсь был полезен

при поддержке chatgpt.com
			
				Последнее редактирование модератором: 
			
		
	
								
								
									
	
								
							
							 
				 
	 
 
		 
 
		 
 
		 
 
		 
 
		