Исходник Funtime Bot nik / niks parser +ss NAKOLYAKAL prod mineflayer

Начинающий
Статус
Оффлайн
Регистрация
5 Ноя 2022
Сообщения
23
Реакции[?]
0
Поинты[?]
0

Перед прочтением основного контента ниже, пожалуйста, обратите внимание на обновление внутри секции Майна на нашем форуме. У нас появились:

  • бесплатные читы для Майнкрафт — любое использование на свой страх и риск;
  • маркетплейс Майнкрафт — абсолютно любая коммерция, связанная с игрой, за исключением продажи читов (аккаунты, предоставления услуг, поиск кодеров читов и так далее);
  • приватные читы для Minecraft — в этом разделе только платные хаки для игры, покупайте группу "Продавец" и выставляйте на продажу свой софт;
  • обсуждения и гайды — всё тот же раздел с вопросами, но теперь модернизированный: поиск нужных хаков, пати с игроками-читерами и другая полезная информация.

Спасибо!

Парсер ников с фт с привилегиями бла бла бла стоит много этот парсер в чекерах (где-то под 3к навсегда подписка)

В общем и целом сливаю эту хуйню из за того что в итоге не получил деньги с ее продажи потому что я тормоз и заказчик нанял другого кодера :3

Ну как бы налетайте чекеры - для умный байпас каптчи и не нужен (секрет фирмы) а лишний мусор в коде - мой т.к для своих целей а убирать его для темы как-то ну очень лень

Перед запуском пройдите за бота каптчу

Source Code
JavaScript:
const mineflayer = require('mineflayer');
const fs = require('fs');
const { exit } = require('process');
const bot = mineflayer.createBot({
    host: 'mc.funtime.su',
    version: '1.16.5',
    username: 'hjyklhjvghfg',
    hideErrors: true
});
let currentIndex = 0;
let loop = 0;
let isParsing = false

function generateAnarchyValues(start, end, prefix = 'an') {
    const anarchyValues = [];
    for (let i = start; i <= end; i++) {
        anarchyValues.push([ICODE]${prefix}${i}[/ICODE]);
    }
    return anarchyValues.map(value => parseInt(value.replace(prefix, '')));
}

const allowedAnarchyValues = [
    ...generateAnarchyValues(102, 108),
    ...generateAnarchyValues(203, 227),
    ...generateAnarchyValues(302, 316),
    ...generateAnarchyValues(502, 509),
    ...generateAnarchyValues(602, 605),
];

function loadExistingData() {
  try {
      const data = fs.readFileSync('output.json', 'utf8');
      return JSON.parse(data);
  } catch (error) {
      console.error('Ошибка при загрузке данных:', error);
      return { dump: { Принц: [], Титан: [], Князь: [] } };
  }
}
function loadExistingDataOther() {
  try {
      const data = fs.readFileSync('output_other.json', 'utf8');
      return JSON.parse(data);
  } catch (error) {
      console.error('Ошибка при загрузке данных:', error);
      return { dump: { Барон: [], Страж: [], Герой: [], Аспид: [], Сквид: [], Глава: [], Элита: [] } }; // Возвращаем пустую структуру в случае ошибки
  }
}
bot.on('spawn', () => {
  if (isParsing) return; // If parsing is already in progress, exit
  isParsing = true;
  let niks = [];
  let niks_other = []
  let niks_all = []
  let userFT = []
  const existingData = loadExistingData(); // Загружаем существующие данные
  const existingNicks = new Set();
  const existingDataOther = loadExistingDataOther(); // Загружаем существующие данные
  const existingNicksOther = new Set();

  // Заполняем множество существующими никами
  for (const title in existingData.dump) {
      existingData.dump[title].forEach(nick => existingNicks.add(nick));
  }
  for (const title in existingDataOther.dump) {
      existingDataOther.dump[title].forEach(nick => existingNicksOther.add(nick));
  }

  function getPlayerNames() {
      setTimeout(() => {
          let acc_added = 0;
          let add_users = 0;
          let write_other = 0
          let write_niks = 0
          let write_add_users = 0
          const code = allowedAnarchyValues[currentIndex];
          bot.chat([ICODE]/an${code}[/ICODE]);
          console.log([ICODE]Anarchy ${code}[/ICODE]);
          setTimeout(async () => {
            const playerNames = Object.keys(bot.players).map(playerName => bot.players[playerName].displayName.extra);
            const UsersFuntime_all = Object.keys(bot.players).map(playerName => bot.players[playerName].username)
            UsersFuntime_all.forEach((name) => {
              niks_other.push(name)
            })
            playerNames.forEach((msgArray) => {
                if (Array.isArray(msgArray)) {
                    const playerNameText = msgArray.map(msg => msg.text).join('');
                    const colors = msgArray.map(msg => msg.color);
                    userFT.push(playerNameText)
                    playername = playerNameText
                    add_users++
                    if (playerNameText.includes('Титан') && colors.includes('#FF4600')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Князь') && colors.includes('#FF0000')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Герцог') && colors.includes('#840303')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Герцог') && colors.includes('#CB0000')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Принц') && colors.includes('#FF2300')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Сквид') && colors.includes('#00FFF7')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Глава') && colors.includes('#FF7800')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Аспид') && colors.includes('#00CDFF')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Барон') && colors.includes('#5CFFE5')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Герой') && colors.includes('#00FF66')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Элита') && colors.includes('#CD00FF')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Страж') && colors.includes('#CDFF00')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                }
            });
            const filePath = 'UsersFuntime.txt';
            await fs.readFile(filePath, 'utf8', (err, data) => {
                if (err) {
                    console.error('Ошибка чтения файла:', err);
                    return;
                }

                userFT.forEach(nik => {
                    const parts = nik.trim().split(" ");
                    if (parts.length > 2) {
                        const title = parts[1]; // Получаем титул
                        const playerName = parts[2]; // Получаем имя игрока
                        const fullNick = [ICODE]${parts[0]} ${title} ${playerName}[/ICODE];

                        // Проверяем, содержится ли полный ник в файле
                        if (!data.includes(fullNick)) {
                            write_add_users++
                            fs.appendFile(filePath, fullNick + '\n', (err) => {
                                if (err) {
                                    console.error('Ошибка записи в файл:', err);
                                } else {
                                }
                            });
                        }
                    }
                });
            });
            await fs.promises.readFile('all_user_ft.txt', 'utf8')
              .then(async (data) => {
                  for (const nik of niks_other) {
                      if (!data.includes(nik) && !nik.includes('⚡')) {
                          write_other++;
                          await fs.promises.appendFile('all_user_ft.txt', nik + '\n')
                              .catch(err => console.error('Ошибка записи в файл:', err));
                      }
                  }
              })
              .catch(err => console.error('Ошибка чтения файла:', err));


            niks.forEach(nik => {
                const parts = nik.trim().split(" ");
                if (parts.length > 2) {
                    const title = parts[1];
                    const playerName = parts[2];

                    if (existingData.dump[title] && !existingNicks.has(playerName)) {
                        existingData.dump[title].push(playerName);
                        write_niks++
                        existingNicks.add(playerName);
                    }
                }
            });
            niks_other.forEach(nik => {
              const parts = nik.trim().split(" ");
              if (parts.length > 2) {
                  const title = parts[1];
                  const playerName = parts[2];

                  if (existingDataOther.dump[title] && !existingNicksOther.has(playerName)) {
                    existingDataOther.dump[title].push(playerName);
                    write_niks++
                    existingNicksOther.add(playerName);
                  }
              }
            });

            await fs.writeFile('output.json', JSON.stringify(existingData, null, 2), (writeErr) => {
              if (writeErr) {
                  console.error('Ошибка при записи файла:', writeErr);
              } else {
              }
            });
            await fs.writeFile('output_other.json', JSON.stringify(existingDataOther, null, 2), (writeErr) => {
              if (writeErr) {
                  console.error('Ошибка при записи файла:', writeErr);
              } else {
              }
          });
          console.log([ICODE]Акков добавленно ${write_niks}/${acc_added} за эту анархию всех ников - ${write_add_users}/${add_users} без фильтров добавленно: ${write_other}[/ICODE])
          acc_added = 0
          add_users = 0
          write_niks = 0
          write_add_users = 0
          currentIndex++;
          if (code >= 604) {
            currentIndex = 0
          }
          getPlayerNames();
        }, 1000);
      }, 1500);
  }
  getPlayerNames();
});

bot.on('packet', (packet) => {
  try {
      if (packet.metadata && packet.metadata.length > 1) {
          bot.oxygenLevel = Math.round(packet.metadata[1].value / 15);
      }
  } catch (error) {
      console.error('Ошибка при обработке пакета:', error);
  }
});

bot.on('kicked', console.log)
bot.on('error', console.log)
Дааа может где то накосячил но не суть, в придачу закину текстовик тупо с никами без привилегий) думаю много ума не надо что бы получить их донаты и на сколько донат :3 в нем 16к ников так за 3-4 часа афк

TXT workupload (no ad)
Пожалуйста, авторизуйтесь для просмотра ссылки.

VT думаю не нужен на текстовик)
Основные ники которые были мне нужны сохраняются так
JSON:
{
  "dump": {
    "Принц": [
      "R225",
      "mishaex338"
    ],
     "Титан": [
      "Sopex_0",
      "VOVAKRU2021",
      "ImperatRRR"
    ],
    "Князь": [
      "dakirof",
      "Dofightprof",
      "qwertik7242123"
    ],
    "Герцог": [
      "kawapka",
      "dartfan"
    ]
  }
}

Ники сортируются по их цвету в табе и тексту из массива получемого из bot.players[playerName].displayName.extra почему я так сделал?, объясню любойтот же самый герцог может поставить префикс игрока и т.п или страж может поставить героя или главы, пришлось извратиться

ВАЖНО К ПРОЧТЕНИЮ
Бот иногда крашит с ошибками, пытался пофиксить (сделал обработку пакетов) но не понятно почему он так себя видет :(
Так же я что то напутал с выводом в консоль (подсчет того сколько он сохранил ников, не считая тех которые уже в файле), но чет мне стало лень исправлять все и я забил на это

Люди продаю ники с фт 300руб. 100 шт не актив навсгда привы от титана-герцога, мб слить способ заработка на ботах в фул афк под 500кк в сутки?
 
expenis 3.1 paster
Пользователь
Статус
Оффлайн
Регистрация
20 Апр 2021
Сообщения
1,417
Реакции[?]
34
Поинты[?]
46K
Парсер ников с фт с привилегиями бла бла бла стоит много этот парсер в чекерах (где-то под 3к навсегда подписка)

В общем и целом сливаю эту хуйню из за того что в итоге не получил деньги с ее продажи потому что я тормоз и заказчик нанял другого кодера :3

Ну как бы налетайте чекеры - для умный байпас каптчи и не нужен (секрет фирмы) а лишний мусор в коде - мой т.к для своих целей а убирать его для темы как-то ну очень лень

Перед запуском пройдите за бота каптчу

Source Code
JavaScript:
const mineflayer = require('mineflayer');
const fs = require('fs');
const { exit } = require('process');
const bot = mineflayer.createBot({
    host: 'mc.funtime.su',
    version: '1.16.5',
    username: 'hjyklhjvghfg',
    hideErrors: true
});
let currentIndex = 0;
let loop = 0;
let isParsing = false

function generateAnarchyValues(start, end, prefix = 'an') {
    const anarchyValues = [];
    for (let i = start; i <= end; i++) {
        anarchyValues.push([ICODE]${prefix}${i}[/ICODE]);
    }
    return anarchyValues.map(value => parseInt(value.replace(prefix, '')));
}

const allowedAnarchyValues = [
    ...generateAnarchyValues(102, 108),
    ...generateAnarchyValues(203, 227),
    ...generateAnarchyValues(302, 316),
    ...generateAnarchyValues(502, 509),
    ...generateAnarchyValues(602, 605),
];

function loadExistingData() {
  try {
      const data = fs.readFileSync('output.json', 'utf8');
      return JSON.parse(data);
  } catch (error) {
      console.error('Ошибка при загрузке данных:', error);
      return { dump: { Принц: [], Титан: [], Князь: [] } };
  }
}
function loadExistingDataOther() {
  try {
      const data = fs.readFileSync('output_other.json', 'utf8');
      return JSON.parse(data);
  } catch (error) {
      console.error('Ошибка при загрузке данных:', error);
      return { dump: { Барон: [], Страж: [], Герой: [], Аспид: [], Сквид: [], Глава: [], Элита: [] } }; // Возвращаем пустую структуру в случае ошибки
  }
}
bot.on('spawn', () => {
  if (isParsing) return; // If parsing is already in progress, exit
  isParsing = true;
  let niks = [];
  let niks_other = []
  let niks_all = []
  let userFT = []
  const existingData = loadExistingData(); // Загружаем существующие данные
  const existingNicks = new Set();
  const existingDataOther = loadExistingDataOther(); // Загружаем существующие данные
  const existingNicksOther = new Set();

  // Заполняем множество существующими никами
  for (const title in existingData.dump) {
      existingData.dump[title].forEach(nick => existingNicks.add(nick));
  }
  for (const title in existingDataOther.dump) {
      existingDataOther.dump[title].forEach(nick => existingNicksOther.add(nick));
  }

  function getPlayerNames() {
      setTimeout(() => {
          let acc_added = 0;
          let add_users = 0;
          let write_other = 0
          let write_niks = 0
          let write_add_users = 0
          const code = allowedAnarchyValues[currentIndex];
          bot.chat([ICODE]/an${code}[/ICODE]);
          console.log([ICODE]Anarchy ${code}[/ICODE]);
          setTimeout(async () => {
            const playerNames = Object.keys(bot.players).map(playerName => bot.players[playerName].displayName.extra);
            const UsersFuntime_all = Object.keys(bot.players).map(playerName => bot.players[playerName].username)
            UsersFuntime_all.forEach((name) => {
              niks_other.push(name)
            })
            playerNames.forEach((msgArray) => {
                if (Array.isArray(msgArray)) {
                    const playerNameText = msgArray.map(msg => msg.text).join('');
                    const colors = msgArray.map(msg => msg.color);
                    userFT.push(playerNameText)
                    playername = playerNameText
                    add_users++
                    if (playerNameText.includes('Титан') && colors.includes('#FF4600')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Князь') && colors.includes('#FF0000')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Герцог') && colors.includes('#840303')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Герцог') && colors.includes('#CB0000')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Принц') && colors.includes('#FF2300')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Сквид') && colors.includes('#00FFF7')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Глава') && colors.includes('#FF7800')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Аспид') && colors.includes('#00CDFF')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Барон') && colors.includes('#5CFFE5')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Герой') && colors.includes('#00FF66')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Элита') && colors.includes('#CD00FF')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Страж') && colors.includes('#CDFF00')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                }
            });
            const filePath = 'UsersFuntime.txt';
            await fs.readFile(filePath, 'utf8', (err, data) => {
                if (err) {
                    console.error('Ошибка чтения файла:', err);
                    return;
                }

                userFT.forEach(nik => {
                    const parts = nik.trim().split(" ");
                    if (parts.length > 2) {
                        const title = parts[1]; // Получаем титул
                        const playerName = parts[2]; // Получаем имя игрока
                        const fullNick = [ICODE]${parts[0]} ${title} ${playerName}[/ICODE];

                        // Проверяем, содержится ли полный ник в файле
                        if (!data.includes(fullNick)) {
                            write_add_users++
                            fs.appendFile(filePath, fullNick + '\n', (err) => {
                                if (err) {
                                    console.error('Ошибка записи в файл:', err);
                                } else {
                                }
                            });
                        }
                    }
                });
            });
            await fs.promises.readFile('all_user_ft.txt', 'utf8')
              .then(async (data) => {
                  for (const nik of niks_other) {
                      if (!data.includes(nik) && !nik.includes('⚡')) {
                          write_other++;
                          await fs.promises.appendFile('all_user_ft.txt', nik + '\n')
                              .catch(err => console.error('Ошибка записи в файл:', err));
                      }
                  }
              })
              .catch(err => console.error('Ошибка чтения файла:', err));


            niks.forEach(nik => {
                const parts = nik.trim().split(" ");
                if (parts.length > 2) {
                    const title = parts[1];
                    const playerName = parts[2];

                    if (existingData.dump[title] && !existingNicks.has(playerName)) {
                        existingData.dump[title].push(playerName);
                        write_niks++
                        existingNicks.add(playerName);
                    }
                }
            });
            niks_other.forEach(nik => {
              const parts = nik.trim().split(" ");
              if (parts.length > 2) {
                  const title = parts[1];
                  const playerName = parts[2];

                  if (existingDataOther.dump[title] && !existingNicksOther.has(playerName)) {
                    existingDataOther.dump[title].push(playerName);
                    write_niks++
                    existingNicksOther.add(playerName);
                  }
              }
            });

            await fs.writeFile('output.json', JSON.stringify(existingData, null, 2), (writeErr) => {
              if (writeErr) {
                  console.error('Ошибка при записи файла:', writeErr);
              } else {
              }
            });
            await fs.writeFile('output_other.json', JSON.stringify(existingDataOther, null, 2), (writeErr) => {
              if (writeErr) {
                  console.error('Ошибка при записи файла:', writeErr);
              } else {
              }
          });
          console.log([ICODE]Акков добавленно ${write_niks}/${acc_added} за эту анархию всех ников - ${write_add_users}/${add_users} без фильтров добавленно: ${write_other}[/ICODE])
          acc_added = 0
          add_users = 0
          write_niks = 0
          write_add_users = 0
          currentIndex++;
          if (code >= 604) {
            currentIndex = 0
          }
          getPlayerNames();
        }, 1000);
      }, 1500);
  }
  getPlayerNames();
});

bot.on('packet', (packet) => {
  try {
      if (packet.metadata && packet.metadata.length > 1) {
          bot.oxygenLevel = Math.round(packet.metadata[1].value / 15);
      }
  } catch (error) {
      console.error('Ошибка при обработке пакета:', error);
  }
});

bot.on('kicked', console.log)
bot.on('error', console.log)
Дааа может где то накосячил но не суть, в придачу закину текстовик тупо с никами без привилегий) думаю много ума не надо что бы получить их донаты и на сколько донат :3 в нем 16к ников так за 3-4 часа афк

TXT workupload (no ad)
Пожалуйста, авторизуйтесь для просмотра ссылки.

VT думаю не нужен на текстовик)
Основные ники которые были мне нужны сохраняются так
JSON:
{
  "dump": {
    "Принц": [
      "R225",
      "mishaex338"
    ],
     "Титан": [
      "Sopex_0",
      "VOVAKRU2021",
      "ImperatRRR"
    ],
    "Князь": [
      "dakirof",
      "Dofightprof",
      "qwertik7242123"
    ],
    "Герцог": [
      "kawapka",
      "dartfan"
    ]
  }
}

Ники сортируются по их цвету в табе и тексту из массива получемого из bot.players[playerName].displayName.extra почему я так сделал?, объясню любойтот же самый герцог может поставить префикс игрока и т.п или страж может поставить героя или главы, пришлось извратиться

ВАЖНО К ПРОЧТЕНИЮ
Бот иногда крашит с ошибками, пытался пофиксить (сделал обработку пакетов) но не понятно почему он так себя видет :(
Так же я что то напутал с выводом в консоль (подсчет того сколько он сохранил ников, не считая тех которые уже в файле), но чет мне стало лень исправлять все и я забил на это

Люди продаю ники с фт 300руб. 100 шт не актив навсгда привы от титана-герцога, мб слить способ заработка на ботах в фул афк под 500кк в сутки?
на будущее, можешь использовать код бота:

JavaScript:
const mineflayer = require('mineflayer')

const bot = mineflayer.createBot({
host: 'айпи',
port: 25565,
username: 'ник',
version: '1.16.5'
})

bot.once('spawn', () => {
console.log('Bot connected to the server')

bot.on('message', (message) => {
console.log(message.toAnsi())
})

process.stdin.on('data', (data) => {
const command = data.toString().trim()
bot.chat(command)
})
})

bot.on('kicked', (reason) => console.log('Кикнут:', reason))
bot.on('error', (err) => console.log('Ошибка:', err))
как базу, если ещё будешь делать что то
 
Начинающий
Статус
Онлайн
Регистрация
26 Дек 2023
Сообщения
777
Реакции[?]
10
Поинты[?]
4K
Парсер ников с фт с привилегиями бла бла бла стоит много этот парсер в чекерах (где-то под 3к навсегда подписка)

В общем и целом сливаю эту хуйню из за того что в итоге не получил деньги с ее продажи потому что я тормоз и заказчик нанял другого кодера :3

Ну как бы налетайте чекеры - для умный байпас каптчи и не нужен (секрет фирмы) а лишний мусор в коде - мой т.к для своих целей а убирать его для темы как-то ну очень лень

Перед запуском пройдите за бота каптчу

Source Code
JavaScript:
const mineflayer = require('mineflayer');
const fs = require('fs');
const { exit } = require('process');
const bot = mineflayer.createBot({
    host: 'mc.funtime.su',
    version: '1.16.5',
    username: 'hjyklhjvghfg',
    hideErrors: true
});
let currentIndex = 0;
let loop = 0;
let isParsing = false

function generateAnarchyValues(start, end, prefix = 'an') {
    const anarchyValues = [];
    for (let i = start; i <= end; i++) {
        anarchyValues.push([ICODE]${prefix}${i}[/ICODE]);
    }
    return anarchyValues.map(value => parseInt(value.replace(prefix, '')));
}

const allowedAnarchyValues = [
    ...generateAnarchyValues(102, 108),
    ...generateAnarchyValues(203, 227),
    ...generateAnarchyValues(302, 316),
    ...generateAnarchyValues(502, 509),
    ...generateAnarchyValues(602, 605),
];

function loadExistingData() {
  try {
      const data = fs.readFileSync('output.json', 'utf8');
      return JSON.parse(data);
  } catch (error) {
      console.error('Ошибка при загрузке данных:', error);
      return { dump: { Принц: [], Титан: [], Князь: [] } };
  }
}
function loadExistingDataOther() {
  try {
      const data = fs.readFileSync('output_other.json', 'utf8');
      return JSON.parse(data);
  } catch (error) {
      console.error('Ошибка при загрузке данных:', error);
      return { dump: { Барон: [], Страж: [], Герой: [], Аспид: [], Сквид: [], Глава: [], Элита: [] } }; // Возвращаем пустую структуру в случае ошибки
  }
}
bot.on('spawn', () => {
  if (isParsing) return; // If parsing is already in progress, exit
  isParsing = true;
  let niks = [];
  let niks_other = []
  let niks_all = []
  let userFT = []
  const existingData = loadExistingData(); // Загружаем существующие данные
  const existingNicks = new Set();
  const existingDataOther = loadExistingDataOther(); // Загружаем существующие данные
  const existingNicksOther = new Set();

  // Заполняем множество существующими никами
  for (const title in existingData.dump) {
      existingData.dump[title].forEach(nick => existingNicks.add(nick));
  }
  for (const title in existingDataOther.dump) {
      existingDataOther.dump[title].forEach(nick => existingNicksOther.add(nick));
  }

  function getPlayerNames() {
      setTimeout(() => {
          let acc_added = 0;
          let add_users = 0;
          let write_other = 0
          let write_niks = 0
          let write_add_users = 0
          const code = allowedAnarchyValues[currentIndex];
          bot.chat([ICODE]/an${code}[/ICODE]);
          console.log([ICODE]Anarchy ${code}[/ICODE]);
          setTimeout(async () => {
            const playerNames = Object.keys(bot.players).map(playerName => bot.players[playerName].displayName.extra);
            const UsersFuntime_all = Object.keys(bot.players).map(playerName => bot.players[playerName].username)
            UsersFuntime_all.forEach((name) => {
              niks_other.push(name)
            })
            playerNames.forEach((msgArray) => {
                if (Array.isArray(msgArray)) {
                    const playerNameText = msgArray.map(msg => msg.text).join('');
                    const colors = msgArray.map(msg => msg.color);
                    userFT.push(playerNameText)
                    playername = playerNameText
                    add_users++
                    if (playerNameText.includes('Титан') && colors.includes('#FF4600')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Князь') && colors.includes('#FF0000')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Герцог') && colors.includes('#840303')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Герцог') && colors.includes('#CB0000')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Принц') && colors.includes('#FF2300')) {
                      niks.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Сквид') && colors.includes('#00FFF7')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Глава') && colors.includes('#FF7800')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Аспид') && colors.includes('#00CDFF')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Барон') && colors.includes('#5CFFE5')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Герой') && colors.includes('#00FF66')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Элита') && colors.includes('#CD00FF')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                    if (playerNameText.includes('Страж') && colors.includes('#CDFF00')) {
                      niks_other.push(playerNameText);
                      acc_added++
                    }
                }
            });
            const filePath = 'UsersFuntime.txt';
            await fs.readFile(filePath, 'utf8', (err, data) => {
                if (err) {
                    console.error('Ошибка чтения файла:', err);
                    return;
                }

                userFT.forEach(nik => {
                    const parts = nik.trim().split(" ");
                    if (parts.length > 2) {
                        const title = parts[1]; // Получаем титул
                        const playerName = parts[2]; // Получаем имя игрока
                        const fullNick = [ICODE]${parts[0]} ${title} ${playerName}[/ICODE];

                        // Проверяем, содержится ли полный ник в файле
                        if (!data.includes(fullNick)) {
                            write_add_users++
                            fs.appendFile(filePath, fullNick + '\n', (err) => {
                                if (err) {
                                    console.error('Ошибка записи в файл:', err);
                                } else {
                                }
                            });
                        }
                    }
                });
            });
            await fs.promises.readFile('all_user_ft.txt', 'utf8')
              .then(async (data) => {
                  for (const nik of niks_other) {
                      if (!data.includes(nik) && !nik.includes('⚡')) {
                          write_other++;
                          await fs.promises.appendFile('all_user_ft.txt', nik + '\n')
                              .catch(err => console.error('Ошибка записи в файл:', err));
                      }
                  }
              })
              .catch(err => console.error('Ошибка чтения файла:', err));


            niks.forEach(nik => {
                const parts = nik.trim().split(" ");
                if (parts.length > 2) {
                    const title = parts[1];
                    const playerName = parts[2];

                    if (existingData.dump[title] && !existingNicks.has(playerName)) {
                        existingData.dump[title].push(playerName);
                        write_niks++
                        existingNicks.add(playerName);
                    }
                }
            });
            niks_other.forEach(nik => {
              const parts = nik.trim().split(" ");
              if (parts.length > 2) {
                  const title = parts[1];
                  const playerName = parts[2];

                  if (existingDataOther.dump[title] && !existingNicksOther.has(playerName)) {
                    existingDataOther.dump[title].push(playerName);
                    write_niks++
                    existingNicksOther.add(playerName);
                  }
              }
            });

            await fs.writeFile('output.json', JSON.stringify(existingData, null, 2), (writeErr) => {
              if (writeErr) {
                  console.error('Ошибка при записи файла:', writeErr);
              } else {
              }
            });
            await fs.writeFile('output_other.json', JSON.stringify(existingDataOther, null, 2), (writeErr) => {
              if (writeErr) {
                  console.error('Ошибка при записи файла:', writeErr);
              } else {
              }
          });
          console.log([ICODE]Акков добавленно ${write_niks}/${acc_added} за эту анархию всех ников - ${write_add_users}/${add_users} без фильтров добавленно: ${write_other}[/ICODE])
          acc_added = 0
          add_users = 0
          write_niks = 0
          write_add_users = 0
          currentIndex++;
          if (code >= 604) {
            currentIndex = 0
          }
          getPlayerNames();
        }, 1000);
      }, 1500);
  }
  getPlayerNames();
});

bot.on('packet', (packet) => {
  try {
      if (packet.metadata && packet.metadata.length > 1) {
          bot.oxygenLevel = Math.round(packet.metadata[1].value / 15);
      }
  } catch (error) {
      console.error('Ошибка при обработке пакета:', error);
  }
});

bot.on('kicked', console.log)
bot.on('error', console.log)
Дааа может где то накосячил но не суть, в придачу закину текстовик тупо с никами без привилегий) думаю много ума не надо что бы получить их донаты и на сколько донат :3 в нем 16к ников так за 3-4 часа афк

TXT workupload (no ad)
Пожалуйста, авторизуйтесь для просмотра ссылки.

VT думаю не нужен на текстовик)
Основные ники которые были мне нужны сохраняются так
JSON:
{
  "dump": {
    "Принц": [
      "R225",
      "mishaex338"
    ],
     "Титан": [
      "Sopex_0",
      "VOVAKRU2021",
      "ImperatRRR"
    ],
    "Князь": [
      "dakirof",
      "Dofightprof",
      "qwertik7242123"
    ],
    "Герцог": [
      "kawapka",
      "dartfan"
    ]
  }
}

Ники сортируются по их цвету в табе и тексту из массива получемого из bot.players[playerName].displayName.extra почему я так сделал?, объясню любойтот же самый герцог может поставить префикс игрока и т.п или страж может поставить героя или главы, пришлось извратиться

ВАЖНО К ПРОЧТЕНИЮ
Бот иногда крашит с ошибками, пытался пофиксить (сделал обработку пакетов) но не понятно почему он так себя видет :(
Так же я что то напутал с выводом в консоль (подсчет того сколько он сохранил ников, не считая тех которые уже в файле), но чет мне стало лень исправлять все и я забил на это

Люди продаю ники с фт 300руб. 100 шт не актив навсгда привы от титана-герцога, мб слить способ заработка на ботах в фул афк под 500кк в сутки?
годно
 
Начинающий
Статус
Оффлайн
Регистрация
17 Сен 2024
Сообщения
2
Реакции[?]
0
Поинты[?]
0
ошибка при запуске
anarchyValues.push(${prefix}${i});
^

SyntaxError: missing ) after argument list
←[90m at Object.compileFunction (node:vm:352:18)←[39m
←[90m at wrapSafe (node:internal/modules/cjs/loader:1033:15)←[39m
←[90m at Module._compile (node:internal/modules/cjs/loader:1069:27)←[39m
←[90m at Object.Module._extensions..js (node:internal/modules/cjs/loader:1159:10)←[39m
←[90m at Module.load (node:internal/modules/cjs/loader:981:32)←[39m
←[90m at Function.Module._load (node:internal/modules/cjs/loader:822:12)←[39m
←[90m at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:77:12)←[39m
←[90m at node:internal/main/run_main_module:17:47←[39m
 
Новичок
Статус
Оффлайн
Регистрация
12 Май 2021
Сообщения
1
Реакции[?]
0
Поинты[?]
0
выдает ошибку
anarchyValues.push(${prefix}${i});
^

SyntaxError: missing ) after argument list
at internalCompileFunction (node:internal/vm:73:18)
at wrapSafe (node:internal/modules/cjs/loader:1178:20)
at Module._compile (node:internal/modules/cjs/loader:1220:27)
at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
at Module.load (node:internal/modules/cjs/loader:1119:32)
at Module._load (node:internal/modules/cjs/loader:960:12)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:81:12)
at node:internal/main/run_main_module:23:47
 
Начинающий
Статус
Оффлайн
Регистрация
5 Ноя 2022
Сообщения
23
Реакции[?]
0
Поинты[?]
0
если со своего айпи хостишь, просто на фт с любого ника зайди и пройди капчу, если с дедика, хз
если с Дедика, юзай прокси в коде, а уже с своего ПК тоже используй прокси и заходи на сервер
 
Сверху Снизу