Sergey1337 Опубликовано: 28 сентября 2018 Автор Опубликовано: 28 сентября 2018 апи вайма не показывает точное местоположение модератора, мб он играет в такой же режим как и я, какой смысл?Просто предупреждает, что в вашу мини-игру зашёл модер (Мб и следит) и что вы должны быть осторожны в юзанье софта.
LoganFrench Опубликовано: 29 сентября 2018 Опубликовано: 29 сентября 2018 для читерков, которые не хотят чтобы их забанили)ты выкладываешь софт для читеров вайма на форуме вайма?
Sergey1337 Опубликовано: 29 сентября 2018 Автор Опубликовано: 29 сентября 2018 ты выкладываешь софт для читеров вайма на форуме вайма?da)0))0)00)0)00))0))00)
Sergey1337 Опубликовано: 1 октября 2018 Автор Опубликовано: 1 октября 2018 -NEW-Получение информации о топе в мини-играх Ссылка: https://yadi.sk/d/5LlxCk0ufTwBbQVtotal: https://www.virustotal.com/#/file/67a229473892e09c1e1c0a32dd9d24678444b5ba705a2d526820d98ee6b66b39/detection Исходник(DevelNext): https://yadi.sk/d/0db_BMRr_RxWWgПлюсы программы:-Жрёт мало трафика-Не нужно заходить в браузер-Любое(почти) количество записей (от 15 до 1000)Минусы программы:-Нету дизайна-Туча говно-кода-Неудобно располагаются строчки (Легко решить, но мне лень c:)
Sergey1337 Опубликовано: 9 октября 2018 Автор Опубликовано: 9 октября 2018 ---===NEW===---Получение информации о игроке в VK До первого запроса: После 1 запроса:Исходник(DEVELNEXT): https://yadi.sk/d/-eY6gegSGfY9yAПрограмма: https://yadi.sk/d/fjswBStElbxtYQКод самой функции: function doButtonClickLeft(UXMouseEvent $e = null){VK::longPollConnect(function ($updates) { //Подключаемся с лонгполуforeach ($updates as $update) {if($update[6]) {$peer_id = $update[3];$body = explode(" ", $update[6]);if (str::contains($body[0], 'Инфа,')) { //Проверяем будет ли в сообщениях слово 'Инфа,'$this->edit->text = $body[0]; //Если есть то в edit вбиваем фулл сообщение$string = $this->edit->text; //в $string заносим данные из edit$newString = str::replace($string, 'Инфа,', ''); //Заменяем 'Инфа,' для получения ника$string5 = $newString; //Хз зачем это но есть))$hh = str::trim($string5); //Попытка убрать пробелы но что-то не удалось ;D$this->textArea->text = ''; //Очищаем поле для текста$response = $this->httpClient->get("https://api.vime.world/user/name/". $hh); //Берём информацию о игроке исходя из полученной информации из сообщения $out = $response->body(); if ($out == ''){ //Проверяем сообщениеVK::Query('messages.send', ['peer_id' => $peer_id, 'message' => 'Игрок не найден в базе данных']); // Если ник не найден в API то пишется это} else { if ($out[0]['guild']["name"] == ''){ //Если найден то след.проверка на наличие гильдии, если нет то дальше$arr = ['---===Статистика игрока===---', '[' . $out[0]["rank"] . '] ' . $out[0]["username"], 'Номер аккаунта (ID) - ' . $out[0]["id"], 'Уровень - ' . $out[0]["level"],'Гильдия отсутствует',];$this->textArea->text = Str::join($arr, "\n"); //Заносим информацию в textAreaVK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->textArea->text]); //Отправляем информацию обратно тому, кто написал} else { //Если гильдия найдена то дальше$arr = ['---===Статистика игрока===---','[' . $out[0]["rank"] . '] ' . $out[0]["username"],'Номер аккаунта (ID) - ' . $out[0]["id"],'Уровень - ' . $out[0]["level"],'--Гильдия игрока--','Название гильдии - ' . $out[0]['guild']["name"],'ID гильдии - ' . $out[0]['guild']["id"],'Уровень гильдии - ' . $out[0]['guild']["level"],];$this->textArea->text = Str::join($arr, "\n"); //Заносим информацию в textAreaVK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->textArea->text]); //Отправляем сообщение с данными обратно тому, кто отправил запрос боту}}} } } }); }}
Anarchy Опубликовано: 9 октября 2018 Опубликовано: 9 октября 2018 ---===NEW===---Получение информации о игроке в VK До первого запроса: После 1 запроса:Исходник(DEVELNEXT): https://yadi.sk/d/-eY6gegSGfY9yAПрограмма: https://yadi.sk/d/fjswBStElbxtYQКод самой функции: function doButtonClickLeft(UXMouseEvent $e = null){VK::longPollConnect(function ($updates) { //Подключаемся с лонгполуforeach ($updates as $update) {if($update[6]) {$peer_id = $update[3];$body = explode(" ", $update[6]); if (str::contains($body[0], 'Инфа,')) { //Проверяем будет ли в сообщениях слово 'Инфа,'$this->edit->text = $body[0]; //Если есть то в edit вбиваем фулл сообщение$string = $this->edit->text; //в $string заносим данные из edit$newString = str::replace($string, 'Инфа,', ''); //Заменяем 'Инфа,' для получения ника$string5 = $newString; //Хз зачем это но есть))$hh = str::trim($string5); //Попытка убрать пробелы но что-то не удалось ;D$this->textArea->text = ''; //Очищаем поле для текста$response = $this->httpClient->get("https://api.vime.world/user/name/". $hh); //Берём информацию о игроке исходя из полученной информации из сообщения$out = $response->body(); if ($out == ''){ //Проверяем сообщениеVK::Query('messages.send', ['peer_id' => $peer_id, 'message' => 'Игрок не найден в базе данных']); // Если ник не найден в API то пишется это} else { if ($out[0]['guild']["name"] == ''){ //Если найден то след.проверка на наличие гильдии, если нет то дальше$arr = ['---===Статистика игрока===---', '[' . $out[0]["rank"] . '] ' . $out[0]["username"], 'Номер аккаунта (ID) - ' . $out[0]["id"], 'Уровень - ' . $out[0]["level"],'Гильдия отсутствует',];$this->textArea->text = Str::join($arr, "\n"); //Заносим информацию в textAreaVK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->textArea->text]); //Отправляем информацию обратно тому, кто написал} else { //Если гильдия найдена то дальше$arr = ['---===Статистика игрока===---','[' . $out[0]["rank"] . '] ' . $out[0]["username"],'Номер аккаунта (ID) - ' . $out[0]["id"],'Уровень - ' . $out[0]["level"],'--Гильдия игрока--','Название гильдии - ' . $out[0]['guild']["name"],'ID гильдии - ' . $out[0]['guild']["id"],'Уровень гильдии - ' . $out[0]['guild']["level"],];$this->textArea->text = Str::join($arr, "\n"); //Заносим информацию в textAreaVK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->textArea->text]); //Отправляем сообщение с данными обратно тому, кто отправил запрос боту}}} } } }); }} А если я изменил код на свой, как мне сделать что бы сама программа изменилась и при запуске не через DevelNext она была такой же как я её делал?
Sergey1337 Опубликовано: 9 октября 2018 Автор Опубликовано: 9 октября 2018 А если я изменил код на свой, как мне сделать что бы сама программа изменилась и при запуске не через DevelNext она была такой же как я её делал?Ответил в вк)
Sergey1337 Опубликовано: 10 октября 2018 Автор Опубликовано: 10 октября 2018 (изменено) ---===Обновление===----Добавил 2 функции:--Информация о гильдии по ID--Статус игрока (Онлайн/Не онлайн)-Изменил все команды на вид 'команда*информация' для APIСсылка на программу: https://yadi.sk/d/J6Gq_adequi2mwСсылка на исходник(DevelNext):https://yadi.sk/d/m6TFoXgxYTEnrgКод 2-х новых функций:if (str::contains($body[0], '/guild*')) { //Проверяем слово$this->edit->text = $body[0];$string = $this->edit->text;$hh = str::replace($string, '/guild*', ''); //убираем это слово оставляя другие$content228 = fs::get('https://api.vime.world/guild/get?id='. $hh); //берём данные с api для проверкиif ($content228 == '{"error":{"error_code":12,"error_msg":"Guild not found"}}'){VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => 'Гильдия в базе данных не найдена']);} else {$result = Json::decode(file_get_contents('https://api.vime.world/guild/get?id='. $hh)); //если проверку прошли то берём нормально$res = $result;if ($res['tag'] == '') { //ещё одна проверка на тэг)$this->listView->items->clear();$perks = $result['perks'];$this->listView->items->add('Тэг отсутствует. ' . $res['name']);$this->listView->items->add('Уровень: ' . $res['level']);$this->listView->items->add('Внесено коинов: ' . $res['totalCoins'])$this->listView->items->add('Перк(Участники): ' . $perks['MEMBERS']['name'] . '. Уровень: ' . $perks['MEMBERS']['level']);$this->listView->items->add('Перк(Коины): ' . $perks['COINS']['name'] . '. Уровень: ' . $perks['COINS']['level']);$this->listView->items->add('Перк(Группы): ' . $perks['PARTY']['name'] . '. Уровень: ' . $perks['PARTY']['level']);$this->listView->items->add('Перк(Приветственное сообщение): ' . $perks['MOTD']['name'] . '. Уровень: ' . $perks['MOTD']['level']);$this->listView->items->add('Перк(Тэг): ' . $perks['TAG']['name'] . '. Уровень: ' . $perks['TAG']['level']);$this->listView->items->add('Перк(Цвет): ' . $perks['COLOR']['name'] . '. Уровень: ' . $perks['COLOR']['level']);$this->listView->items->add('Перк(Войны): ' . $perks['GUILD_WAR']['name'] . '. Уровень: ' . $perks['GUILD_WAR']['level']);$this->listView->items->add('Подробнее: https://vimetop.ru/guild/'. $hh);VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->listView->itemsText]); //берём нужную информацию без тэга и отсылаем} else {$this->listView->items->clear();$perks = $result['perks'];$this->listView->items->add('[' . $res['tag'] . '] ' . $res['name']);$this->listView->items->add('Уровень: ' . $res['level']);$this->listView->items->add('Внесено коинов: ' . $res['totalCoins'])$this->listView->items->add('Перк(Участники): ' . $perks['MEMBERS']['name'] . '. Уровень: ' . $perks['MEMBERS']['level']);$this->listView->items->add('Перк(Коины): ' . $perks['COINS']['name'] . '. Уровень: ' . $perks['COINS']['level']);$this->listView->items->add('Перк(Группы): ' . $perks['PARTY']['name'] . '. Уровень: ' . $perks['PARTY']['level']);$this->listView->items->add('Перк(Приветственное сообщение): ' . $perks['MOTD']['name'] . '. Уровень: ' . $perks['MOTD']['level']);$this->listView->items->add('Перк(Тэг): ' . $perks['TAG']['name'] . '. Уровень: ' . $perks['TAG']['level']);$this->listView->items->add('Перк(Цвет): ' . $perks['COLOR']['name'] . '. Уровень: ' . $perks['COLOR']['level']);$this->listView->items->add('Перк(Войны): ' . $perks['GUILD_WAR']['name'] . '. Уровень: ' . $perks['GUILD_WAR']['level']);$this->listView->items->add('Подробнее: https://vimetop.ru/guild/'. $hh);VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->listView->itemsText]);//берём нужную информацию с тэгом и отсылаем}}}if (str::contains($body[0], '/active*')) { //Проверяем сообщение со словом /active*$this->edit->text = $body[0];$string = $this->edit->text;$hh = str::replace($string, '/active*', ''); //убираем это слово и оставляем те, которые после него$response = $this->httpClient->get("https://api.vime.world/user/name/". $hh); //берём данные с API$out = $response->body();$this->textArea3->text = '';$arr = [$out[0]['id'], //Берём ID с функции];$this->textArea3->text = Str::join($arr, "\n");$response = $this->httpClient->get("https://api.vime.world/user/session/". $this->textArea3->text); //Вставляем ID в нужный API (Тот нужен был чтобы ID не вводить)$out = $response->body();$this->textArea3->text = '';$arr = ['[' . $out[0]['rank'] . '] ' . $out[0]['username'],'ID: ' . $out[0]['id'],'Уровень: ' . $out[0]['level'],'Статус: ' . $out[0]['online']['message'], //Берём нужную информацию];$this->textArea3->text = Str::join($arr, "\n");VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->textArea3->text]); //Передём} Не стал делать на последней функции проверку на подлинность ника (Если существует то выдаёт инфу, если нет то нет, просто если не будет - выдаст пустые значение ID:, Уровень:, Статус: =))UPD функция с проверкой:if (str::contains($body[0], '/active*')) {$this->edit->text = $body[0];$string = $this->edit->text;$hh = str::replace($string, '/active*', '');$response = $this->httpClient->get("https://api.vime.world/user/name/". $hh); $out = $response->body();$this->textArea3->text = '';$arr = [$out[0]['id'],];$this->textArea3->text = Str::join($arr, "\n");if ($this->textArea3->text == ''){VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => 'Такой ник не найден в базе данных']);} else {$response = $this->httpClient->get("https://api.vime.world/user/session/". $this->textArea3->text); $out = $response->body();$this->textArea3->text = '';$arr = ['[' . $out[0]['rank'] . '] ' . $out[0]['username'],'ID: ' . $out[0]['id'],'Уровень: ' . $out[0]['level'],'Статус: ' . $out[0]['online']['message'],];$this->textArea3->text = Str::join($arr, "\n");VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->textArea3->text]);}} Изменено 10 октября 2018 пользователем Sergey1337
Anarchy Опубликовано: 10 октября 2018 Опубликовано: 10 октября 2018 ---===Обновление===----Добавил 2 функции:--Информация о гильдии по ID--Статус игрока (Онлайн/Не онлайн)-Изменил все команды на вид 'команда*информация' для APIСсылка на программу: https://yadi.sk/d/J6Gq_adequi2mwСсылка на исходник(DevelNext):https://yadi.sk/d/m6TFoXgxYTEnrgКод 2-х новых функций:if (str::contains($body[0], '/guild*')) { //Проверяем слово$this->edit->text = $body[0];$string = $this->edit->text;$hh = str::replace($string, '/guild*', ''); //убираем это слово оставляя другие$content228 = fs::get('https://api.vime.world/guild/get?id='. $hh); //берём данные с api для проверкиif ($content228 == '{"error":{"error_code":12,"error_msg":"Guild not found"}}'){VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => 'Гильдия в базе данных не найдена']);} else {$result = Json::decode(file_get_contents('https://api.vime.world/guild/get?id='. $hh)); //если проверку прошли то берём нормально$res = $result;if ($res['tag'] == '') { //ещё одна проверка на тэг)$this->listView->items->clear();$perks = $result['perks'];$this->listView->items->add('Тэг отсутствует. ' . $res['name']);$this->listView->items->add('Уровень: ' . $res['level']);$this->listView->items->add('Внесено коинов: ' . $res['totalCoins'])$this->listView->items->add('Перк(Участники): ' . $perks['MEMBERS']['name'] . '. Уровень: ' . $perks['MEMBERS']['level']);$this->listView->items->add('Перк(Коины): ' . $perks['COINS']['name'] . '. Уровень: ' . $perks['COINS']['level']);$this->listView->items->add('Перк(Группы): ' . $perks['PARTY']['name'] . '. Уровень: ' . $perks['PARTY']['level']);$this->listView->items->add('Перк(Приветственное сообщение): ' . $perks['MOTD']['name'] . '. Уровень: ' . $perks['MOTD']['level']);$this->listView->items->add('Перк(Тэг): ' . $perks['TAG']['name'] . '. Уровень: ' . $perks['TAG']['level']);$this->listView->items->add('Перк(Цвет): ' . $perks['COLOR']['name'] . '. Уровень: ' . $perks['COLOR']['level']);$this->listView->items->add('Перк(Войны): ' . $perks['GUILD_WAR']['name'] . '. Уровень: ' . $perks['GUILD_WAR']['level']);$this->listView->items->add('Подробнее: https://vimetop.ru/guild/'. $hh);VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->listView->itemsText]); //берём нужную информацию без тэга и отсылаем} else {$this->listView->items->clear();$perks = $result['perks'];$this->listView->items->add('[' . $res['tag'] . '] ' . $res['name']);$this->listView->items->add('Уровень: ' . $res['level']);$this->listView->items->add('Внесено коинов: ' . $res['totalCoins'])$this->listView->items->add('Перк(Участники): ' . $perks['MEMBERS']['name'] . '. Уровень: ' . $perks['MEMBERS']['level']);$this->listView->items->add('Перк(Коины): ' . $perks['COINS']['name'] . '. Уровень: ' . $perks['COINS']['level']);$this->listView->items->add('Перк(Группы): ' . $perks['PARTY']['name'] . '. Уровень: ' . $perks['PARTY']['level']);$this->listView->items->add('Перк(Приветственное сообщение): ' . $perks['MOTD']['name'] . '. Уровень: ' . $perks['MOTD']['level']);$this->listView->items->add('Перк(Тэг): ' . $perks['TAG']['name'] . '. Уровень: ' . $perks['TAG']['level']);$this->listView->items->add('Перк(Цвет): ' . $perks['COLOR']['name'] . '. Уровень: ' . $perks['COLOR']['level']);$this->listView->items->add('Перк(Войны): ' . $perks['GUILD_WAR']['name'] . '. Уровень: ' . $perks['GUILD_WAR']['level']);$this->listView->items->add('Подробнее: https://vimetop.ru/guild/'. $hh);VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->listView->itemsText]);//берём нужную информацию с тэгом и отсылаем}}}if (str::contains($body[0], '/active*')) { //Проверяем сообщение со словом /active*$this->edit->text = $body[0];$string = $this->edit->text;$hh = str::replace($string, '/active*', ''); //убираем это слово и оставляем те, которые после него$response = $this->httpClient->get("https://api.vime.world/user/name/". $hh); //берём данные с API$out = $response->body();$this->textArea3->text = '';$arr = [$out[0]['id'], //Берём ID с функции];$this->textArea3->text = Str::join($arr, "\n");$response = $this->httpClient->get("https://api.vime.world/user/session/". $this->textArea3->text); //Вставляем ID в нужный API (Тот нужен был чтобы ID не вводить)$out = $response->body();$this->textArea3->text = '';$arr = ['[' . $out[0]['rank'] . '] ' . $out[0]['username'],'ID: ' . $out[0]['id'],'Уровень: ' . $out[0]['level'],'Статус: ' . $out[0]['online']['message'], //Берём нужную информацию];$this->textArea3->text = Str::join($arr, "\n");VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->textArea3->text]); //Передём} Не стал делать на последней функции проверку на подлинность ника (Если существует то выдаёт инфу, если нет то нет, просто если не будет - выдаст пустые значение ID:, Уровень:, Статус: =))UPD функция с проверкой:if (str::contains($body[0], '/active*')) {$this->edit->text = $body[0];$string = $this->edit->text;$hh = str::replace($string, '/active*', '');$response = $this->httpClient->get("https://api.vime.world/user/name/". $hh);$out = $response->body();$this->textArea3->text = '';$arr = [$out[0]['id'],];$this->textArea3->text = Str::join($arr, "\n");if ($this->textArea3->text == ''){VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => 'Такой ник не найден в базе данных']);} else {$response = $this->httpClient->get("https://api.vime.world/user/session/". $this->textArea3->text);$out = $response->body();$this->textArea3->text = '';$arr = ['[' . $out[0]['rank'] . '] ' . $out[0]['username'],'ID: ' . $out[0]['id'],'Уровень: ' . $out[0]['level'],'Статус: ' . $out[0]['online']['message'],];$this->textArea3->text = Str::join($arr, "\n");VK::Query('messages.send', ['peer_id' => $peer_id, 'message' => $this->textArea3->text]);}} А почему вместо "Пробела" -> "*"
QuickSilver Опубликовано: 10 октября 2018 Опубликовано: 10 октября 2018 (изменено) Она в оффлайне может работатьИ типо в чём тут смысл, если она будет работать офлайн как она будет взаимодействовать с api, бред какой-то. Изменено 10 октября 2018 пользователем QuickSilver
Sergey1337 Опубликовано: 11 октября 2018 Автор Опубликовано: 11 октября 2018 А почему вместо "Пробела" -> "*"С пробелом работать не хочет.
Sergey1337 Опубликовано: 14 октября 2018 Автор Опубликовано: 14 октября 2018 ---Final(Скорее всего :) )---Собрал все функции в одну программуВсе команды этой версии (Скорее всего финальной)"Команды" - показывает команды"/friends*nick" - показывает друзей игрока"/ip*ip" - показывает информацию об IP (Просто решил вставить)"/active*nick" - даёт информацию о онлайне игрока (Онлайн или нет, если онлайн то где находится)"/guild*id" - даёт информацию о гильдии исходя из её ID"/nick*nick" - даёт информацию о игроке"/online" - показывает онлайн на сервере (Как общий так и на всех мини-играх по отдельности)"/staff" - показывает модераторов онлайн"/streams" - показывает включенные стримы<><><><><><><><><><>Нововведения:-Добавил возможность узнавать информацию из API с токеном (300 запросов в минуту будет лимит)В программе должно работать, но это не точно)<><><><><><><><><><>Ссылка на исходник(DevelNext): Тык по мнеСсылка на программу: Тык по мну==================================Сразу задаю вопрос, что мне делать в дальнейшем? (Какой софт)
Anarchy Опубликовано: 16 октября 2018 Опубликовано: 16 октября 2018 Теперь бота для Discord можешь сделать, раз пошло дело до финала..
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВойти
Уже зарегистрированы? Войдите здесь.
Войти сейчас