Привет всем, передо мной стоит такая задача.
Есть игра, в ней у меня создано много аккаунтов. У меня имеется два открытых текстовых блокнота, в одном хранятся логины для авторизации в лаунчере, в другом рандомные никнеймы которые должны вводится уже непосредственно в игре, пароли от всех аккаунтов одинаковые, поэтому пароль уже я думаю просто можно в код вшить. Должна выделяться и копироваться первая запись с блокнота и после того как скопируется она должна затираться, и вводиться в соответствующие поля игрового лаунчера. После того как мы создали аккаунт, создали персонажа, запускаем игру. Игровой персонаж должен выполнить движение по стартовой локации и дойти до игрового почтового ящика, и на указанный аккаунт по никнейму отправить игровую валюту, далее закрыть игру, выйти с аккаунта и авторизоваться в следующий аккаунт чтобы выполнить всё тоже самое. Записи в блокнотах я буду сам периодически пополнять, нужно сделать это зацикленно все.
Вопрос, возможна ли реализация подобной идеи в этой программе?
Я уже делал подобную реализацию через обычный макрос встроенный в A4tech мыши, просто запоминая нужные мне координаты все в ручyую прописывал, но этот макрос периодически даёт сбои, и я наткнулся на эту программу, и вот интересно возможна ли и на сколько сложна будет подобная реализация.
1. che4len - 27 Октября, 2020 - 01:25:37 - перейти к сообщению
2. Zireael - 27 Октября, 2020 - 03:33:17 - перейти к сообщению
На счёт действий персонажа трудно что-то сказать, не видя что он должен сделать. Всё остальное можно сделать.
3. che4len - 27 Октября, 2020 - 03:38:37 - перейти к сообщению
Zireael пишет:
На счёт действий персонажа трудно что-то сказать, не видя что он должен сделать. Всё остальное можно сделать.
Движения персонажа производятся мышью и всегда он проходит по одному и тому же сценарию.
(Добавление)
Zireael пишет:
На счёт действий персонажа трудно что-то сказать, не видя что он должен сделать. Всё остальное можно сделать.
Через визуальный генератор это все сделать получится или ещё нужно будет самостоятельно писать код?
4. Zireael - 27 Октября, 2020 - 03:43:36 - перейти к сообщению
Цитата:
Через визуальный генератор это все сделать получится или ещё нужно будет самостоятельно писать код?
Чтение и запись в блокнот надо будет написать в блоке кода вручную.
5. che4len - 27 Октября, 2020 - 03:50:17 - перейти к сообщению
Zireael пишет:
Цитата:
Через визуальный генератор это все сделать получится или ещё нужно будет самостоятельно писать код?
Чтение и запись в блокнот надо будет написать в блоке кода вручную.
Я просто примерно думал для чтения и записи с блокнота выполнить поиск по изображению, а конкретно использовать 2 различных текстовых редактора с различимыми иконками, notepad++, и vscode, с нумерациями строк. То есть для ввода логина мы октрываем notepad++, ищем изображение с первой нумерованной строкой, копируем её, затираем и на место прошлого логина вставал бы следующий по спику логин. Примерно как то так я себе это представлял
6. Zireael - 27 Октября, 2020 - 03:58:01 - перейти к сообщению
Не надо его вообще открывать.
CODE:
string path = "C:\account1.txt"; // путь к файлу
string array[9999]; // массив, в которой запишется содержимое файла
int i;
if(fopen(path, "r")) // открыть файл для чтения
{
for(i=0; freadline(array[i])!=0 && i<sizearray(array)-1; i++){} // прочитать файл в массив
fclose(); // закрыть файл
int count_line = i;
messagebox("Всего строк в файле: "+format(count_line));
// тут нужные действия
for(i=0; i<count_line; i++)
{
messagebox(array[i]); // если файл в формате ansi
//messagebox(utf8toansi(array[i])); // если файл в формате uft8
}
}
else messagebox("Файл не найден");
string array[9999]; // массив, в которой запишется содержимое файла
int i;
if(fopen(path, "r")) // открыть файл для чтения
{
for(i=0; freadline(array[i])!=0 && i<sizearray(array)-1; i++){} // прочитать файл в массив
fclose(); // закрыть файл
int count_line = i;
messagebox("Всего строк в файле: "+format(count_line));
// тут нужные действия
for(i=0; i<count_line; i++)
{
messagebox(array[i]); // если файл в формате ansi
//messagebox(utf8toansi(array[i])); // если файл в формате uft8
}
}
else messagebox("Файл не найден");
7. che4len - 27 Октября, 2020 - 04:47:31 - перейти к сообщению
Zireael пишет:
Не надо его вообще открывать.
CODE:
string path = "C:\account1.txt"; // путь к файлу
string array[9999]; // массив, в которой запишется содержимое файла
int i;
if(fopen(path, "r")) // открыть файл для чтения
{
for(i=0; freadline(array[i])!=0 && i<sizearray(array)-1; i++){} // прочитать файл в массив
fclose(); // закрыть файл
int count_line = i;
messagebox("Всего строк в файле: "+format(count_line));
// тут нужные действия
for(i=0; i<count_line; i++)
{
messagebox(array[i]); // если файл в формате ansi
//messagebox(utf8toansi(array[i])); // если файл в формате uft8
}
}
else messagebox("Файл не найден");
string array[9999]; // массив, в которой запишется содержимое файла
int i;
if(fopen(path, "r")) // открыть файл для чтения
{
for(i=0; freadline(array[i])!=0 && i<sizearray(array)-1; i++){} // прочитать файл в массив
fclose(); // закрыть файл
int count_line = i;
messagebox("Всего строк в файле: "+format(count_line));
// тут нужные действия
for(i=0; i<count_line; i++)
{
messagebox(array[i]); // если файл в формате ansi
//messagebox(utf8toansi(array[i])); // если файл в формате uft8
}
}
else messagebox("Файл не найден");
Спасибо за код, думаю он мне сильно упростит, то как я задумывал сделать чтение записей.
А не найдется ли у тебя немного времени для того чтобы некоторые моменты которые я хотел реализовать показал, и посмотрел бы как это можно было проще реализовать. Могу даже после этого немного за помощь заплатить да и за потраченное время))
8. che4len - 27 Октября, 2020 - 10:49:06 - перейти к сообщению
Zireael пишет:
Не надо его вообще открывать.
CODE:
string path = "C:\account1.txt"; // путь к файлу
string array[9999]; // массив, в которой запишется содержимое файла
int i;
if(fopen(path, "r")) // открыть файл для чтения
{
for(i=0; freadline(array[i])!=0 && i<sizearray(array)-1; i++){} // прочитать файл в массив
fclose(); // закрыть файл
int count_line = i;
messagebox("Всего строк в файле: "+format(count_line));
// тут нужные действия
for(i=0; i<count_line; i++)
{
messagebox(array[i]); // если файл в формате ansi
//messagebox(utf8toansi(array[i])); // если файл в формате uft8
}
}
else messagebox("Файл не найден");
string array[9999]; // массив, в которой запишется содержимое файла
int i;
if(fopen(path, "r")) // открыть файл для чтения
{
for(i=0; freadline(array[i])!=0 && i<sizearray(array)-1; i++){} // прочитать файл в массив
fclose(); // закрыть файл
int count_line = i;
messagebox("Всего строк в файле: "+format(count_line));
// тут нужные действия
for(i=0; i<count_line; i++)
{
messagebox(array[i]); // если файл в формате ansi
//messagebox(utf8toansi(array[i])); // если файл в формате uft8
}
}
else messagebox("Файл не найден");
В общем я проделал действия до момента входа в игру, у меня уже нажимается кнопка войти в игру, а дальше почему то в игровом уже окне у меня не хочет срабатывать считывание изображения и клик по кнопкам уже в игре, с чем это может быть связано? Делал всё полностью через визуальный редактор, так и не разобрался куда вставить эту часть кода, но и без него вроде бы всё копирует и вставляет куда нужно.
И ещё во время того как делал всё это у меня возник вопрос есть ли какой то здесь встроенный инструмент, который позволил бы мне узнать координаты нужного мне места, для того чтобы их потом вручную прописать на клик мыши?
9. Zireael - 27 Октября, 2020 - 17:43:37 - перейти к сообщению
Цитата:
есть ли какой то здесь встроенный инструмент, который позволил бы мне узнать координаты нужного мне места
Вкладка 'Шпион', получение параметров Ctrl+Shift+S.