 |
Помогите кому не лень - Общение разработчиков - Программирование для Perfect World, общение и обсуждене разработок |
19.10.2013, 20:15
|
#1
|
|
|
|
Разведчик
|
 Регистрация: 15.11.2009
 Сообщений: 20
 Популярность: -11
 Сказал(а) спасибо: 14
Поблагодарили 0 раз(а) в 0 сообщениях
|
Помогите кому не лень
Хочу написать программу в borland builder c++
Не писал ботов ни разу, вообще не в курсе что да куда. Если кому хочется попробовать себя в роли педагога то пожалуйста:
Функционал программы простой до нельзя:
1. Выбор окна, работа с развернутым окном
2. Определение координат перса, его лвл
3. Лететь по заданным координатам
4. какое-нибудь оповещение после того как прилетит(не обязательно)
Нужны подсказки типа "чтобы выбрать окно нужно взять тот-то оператор, он делает то-то" "чтобы найти координаты нужно то-то то-то"
Вот. Я понимаю что если покопаться в форуме все это будет, но это адовый просто объем информации. Вообще хочу написать простенькую помощь ресокопам, а-ля "тык" полетел куда надо, сам копаешь рес "тык" полетел дальше  да прибудут дешевые ресы
вообще пытаюсь разобраться при помощи "как написать бота" но из-за отсутствия опыта и времени довольно не легко =/
Последний раз редактировалось vlad122; 19.10.2013 в 20:20.
|
|
|
19.10.2013, 21:55
|
#2
|
|
|
|
Пехотинец
|
 Регистрация: 13.08.2013
 Сообщений: 68
 Популярность: 829
 Золото Zhyk.Ru: 100
 Сказал(а) спасибо: 25
Поблагодарили 13 раз(а) в 6 сообщениях
|
Re: Помогите кому не лень
Информации действительно много. Ничего не мешает её поискать.
Учимся читать и писать память и все будет без труда понятно.
|
|
|
20.10.2013, 11:04
|
#3
|
|
|
|
Разведчик
|
 Регистрация: 22.09.2013
 Сообщений: 4
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Помогите кому не лень
пытаюсь заниматься тем же чем и ты, но на Delphi 2010. Постепенно разбираюсь. Скажи, а почему именно C++?
|
|
|
20.10.2013, 22:26
|
#4
|
|
|
|
Разведчик
|
 Регистрация: 15.11.2009
 Сообщений: 20
 Популярность: -11
 Сказал(а) спасибо: 14
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Помогите кому не лень
|
|
|
21.10.2013, 18:19
|
#5
|
|
|
|
Рыцарь-лейтенант
|
 Регистрация: 31.01.2011
 Сообщений: 413
 Популярность: 14489
 Золото Zhyk.Ru: 300
 Сказал(а) спасибо: 77
Поблагодарили 361 раз(а) в 145 сообщениях
|
Re: Помогите кому не лень
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
нам его в универе толкают пока 1 курс, на самом деле не знаю синтаксиса других языков
|
|
 |
|
 |
|
В универе не то толкают. Главное не язык знать, а алгоритмы. Синтаксис - дело последнее. Если знаешь, как реализовать, считай, что программа написана. А то первый пост звучит как: "Я хочу построить машину времени, но не знаю, с чего начать".
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
1. Выбор окна, работа с развернутым окном
|
|
 |
|
 |
|
Давайте думать. Чтобы выбрать окно, что нужно сделать? Как человек выбирает окно? Смотрит список всех окон пв, выбирает нужное. Как найти окна пв? По отличительному признаку: иконка (для человека легко, для программы сложнее), по названию процесса/заголовку окна (программе легко, человеку лишнее движение делать). Получить список процессов можем? Да. Найти среди них нужные можем? Да.
Продолжим. Нужно выбрать определенное окно. Как человек определяет среди окон пв нужное? Смотрит на ник перса. Но! Программа не может просто посмотреть ник перса. У неё есть PID (Process ID) или хэндл окна, по которому можно узнать айди процесса. Зато программа может подключиться к процессу, считать по цепочке от BA/GA имя перса и составить биекцию (чертов матан) "процесс" <-> "ник перса" поставить в соответствие каждому процессу ник перса. Пихаем это в массив двумерный array[N][2], где N - количество процессов и для i-того процесса array[i][0] = PID процесса, array[i][1] = ник перса. Но лучше сделать два массива char names[N] и int PIDs[N]. Теперь можно сделать ComboBox, в него засунуть все ники. И кнопочку рядом - Connect. А при нажатии кнопочки программа смотрит, какой ник выбран в Combo, смотрит его номер, находит процесс с тем же номером и объявляет этот PID как глобальный PID для дальнейшей работы.
Получится сделать аналогичный алгоритм для каждого пункта - 90% бота считай есть.
________________
Больше не занимаюсь читами, ушёл в серверную часть. Новый ник - int 3.
P.S. Но я всё такой же добрый модератор раздела PW.
Последний раз редактировалось Smertig; 21.10.2013 в 18:19.
Причина: Исправления
|
|
|
Пользователь сказал cпасибо:
|
|
23.10.2013, 14:57
|
#6
|
|
|
|
Разведчик
|
 Регистрация: 22.09.2013
 Сообщений: 4
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Помогите кому не лень
Супер, так здорово все расписал. Приятно когда знающие люди уделяют время новичкам, не сухими ответами типа юзай поиск и это уже где-то было. А еще лучше, то что ты дал направление в котором работать, а не готовое решение, гораздо лучше будет когда сам его получишь. Спасибо еще раз, хоть это и не моя тема.
|
|
|
23.10.2013, 23:06
|
#7
|
|
|
|
Разведчик
|
 Регистрация: 15.11.2009
 Сообщений: 20
 Популярность: -11
 Сказал(а) спасибо: 14
Поблагодарили 0 раз(а) в 0 сообщениях
|
Re: Помогите кому не лень
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
В универе не то толкают. Главное не язык знать, а алгоритмы. Синтаксис - дело последнее. Если знаешь, как реализовать, считай, что программа написана. А то первый пост звучит как: "Я хочу построить машину времени, но не знаю, с чего начать".
Давайте думать. Чтобы выбрать окно, что нужно сделать? Как человек выбирает окно? Смотрит список всех окон пв, выбирает нужное. Как найти окна пв? По отличительному признаку: иконка (для человека легко, для программы сложнее), по названию процесса/заголовку окна (программе легко, человеку лишнее движение делать). Получить список процессов можем? Да. Найти среди них нужные можем? Да.
Продолжим. Нужно выбрать определенное окно. Как человек определяет среди окон пв нужное? Смотрит на ник перса. Но! Программа не может просто посмотреть ник перса. У неё есть PID (Process ID) или хэндл окна, по которому можно узнать айди процесса. Зато программа может подключиться к процессу, считать по цепочке от BA/GA имя перса и составить биекцию (чертов матан) "процесс" <-> "ник перса" поставить в соответствие каждому процессу ник перса. Пихаем это в массив двумерный array[N][2], где N - количество процессов и для i-того процесса array[i][0] = PID процесса, array[i][1] = ник перса. Но лучше сделать два массива char names[N] и int PIDs[N]. Теперь можно сделать ComboBox, в него засунуть все ники. И кнопочку рядом - Connect. А при нажатии кнопочки программа смотрит, какой ник выбран в Combo, смотрит его номер, находит процесс с тем же номером и объявляет этот PID как глобальный PID для дальнейшей работы.
Получится сделать аналогичный алгоритм для каждого пункта - 90% бота считай есть.
|
|
 |
|
 |
|
1. Синтаксис важен. Т.к. не зная возможностей среды алгоритм для нее не сделаешь.
2. Выделил жирным то, что в принципе вроде понятно что значит, но хотелось бы знать точно.
3.В универе какраз-таки то толкают "основы алгоритмизации и программирования" просто среда с++, потому его синтаксис и какие-никакие возможности я знаю.
Мат. анализ говорят штука суровая, у нас пока просто векторы да матрицы
4. Спасибо за объяснение
|
|
|
29.10.2013, 15:45
|
#8
|
|
|
|
Пехотинец
|
 Регистрация: 03.02.2013
 Сообщений: 60
 Популярность: 10
 Сказал(а) спасибо: 12
Поблагодарили 26 раз(а) в 12 сообщениях
|
Re: Помогите кому не лень
У меня в универе преподавали немного C++ честно, я с ним даже не стал разбираться, синтаксис у него сложнее чем например в Delphi. Я сам на Delphi пишу, но раньше писал на VB 6. Написал 2 одинаковых программы, простой индикатор ХП/МП. на Delphi это оказалось даже проще, чем на VB.
________________
Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий). | Для просмотра ссылок или изображений в подписях, у Вас должно быть не менее 10 сообщение(ий). Сейчас у Вас 0 сообщение(ий).
|
|
|
01.11.2013, 01:10
|
#9
|
|
|
|
Пехотинец
|
 Регистрация: 11.12.2009
 Сообщений: 83
 Популярность: -270
 Сказал(а) спасибо: 7
Поблагодарили 26 раз(а) в 9 сообщениях
|
Re: Помогите кому не лень
почитай вот эту статью многое станет понятно http://zhyk.ru/forum/showthread.php?t=414162
Я же начинал ботописание с переделки под себя ботов, написаных на AutoIT т.к. были исходники. Потом попробовал C++ потому что захотелось многопоточности, но перешел на C# поскольку с C++ много чего глючило (видать руки кривые  )
В общем я сначала пытаюсь посмотреть кто что до меня придумал (чтоб велосипед не изобретать), потом уж юзаю справочники по интересующим функциям, а дальше алгоритм и по нему уж написание кода, тестирование, правка и в итоге что-то получается
Сейчас мой бот умеет автоматом входить в игру, делать облет, перезайти если дисконект или клиента сетофором выкинуло, реснуться в город если на облете грохнули, а также в нем есть куча кнопочек чтоб отдать разовые команды группе персонажей, типа полететь в точку такую, получить/сдать квест, войти/выйти с страны грез. Начал делать модуль фарма (пинания мобов) как доделаю, протестирую выложу свое творение на этом форуме, думаю через месяц будет не стыдно это сделать, выложил бы раньше, но занимаюсь им всего 2 дня в неделю когда выходные.
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 13:23.
|
 |