Программа для нажатия клавиш

Теория и практика Diablo 3, техническая информация и ПО

Сообщение hukutka94 » 29 апр 2015, 16:07

DmitryOlenin, упс, не смотрел первое сообщение. :)
Аватара пользователя
hukutka94
В первых рядах Одиннадцать друзей стеклопушки
Сообщения: 5671
Откуда: Чернигов, Украина
Репутация: 2698
Статус: Не в сети

Сообщение DmitryOlenin » 29 апр 2015, 16:16

Если интересует именно модуль проверки новой версии, то он не очень объёмный.

Код двух методов
Код: Выделить всё
        private void lb_ver_check_Click(object sender, EventArgs e)
        {
            var send = (Label)sender;
            ver_click = "";
            if (send != null) ver_click = send.Name;

            System.Timers.Timer ver_timer = new System.Timers.Timer();
            ver_timer.AutoReset = false;
            ver_timer.Interval = 10;
            ver_timer.Elapsed += ver_timer_Tick;
            ver_timer.Start();
        }

        public void ver_timer_Tick(object sender, EventArgs eventArgs)
        {
            System.Net.WebRequest req_ver = System.Net.WebRequest.Create(@"https://github.com/DmitryOlenin/D3Hot");
            System.Net.WebResponse resp1 = null;

            bool ver_ok = true;

            try
            {
                resp1 = (HttpWebResponse)req_ver.GetResponse();
            }
            catch
            {
                ver_ok = false;
            }

            if (ver_ok)
            {
                System.IO.Stream stream1 = resp1.GetResponseStream();
                System.IO.StreamReader sr1 = new System.IO.StreamReader(stream1);
                string version = sr1.ReadToEnd();
                string[] pars_ver = version.Split('\n');  //парсим строку и получаем стринговый массив

                for (int i = 0; i < pars_ver.Length; i++)
                {
                    if (pars_ver[i].Contains("Diablo3 Hotkeys"))
                    {
                        string vers = pars_ver[i].Substring(pars_ver[i].IndexOf("title=\"Diablo3 Hotkeys") + 23, 3).Trim();
                        double new_ver = 0;
                        try { new_ver = Convert.ToDouble(vers.Replace(".", sep)); }
                        catch
                        {
                            MessageBox.Show(lng.ver_err_nover, lng.ver_cap, MessageBoxButtons.OK, MessageBoxIcon.Error);
                            break;
                        }
                        if (vers != string.Format("{0:F1}", ver).ToString().Trim().Replace(sep, ".") && new_ver > ver)
                        {
                            if (ver_click == "lb_ver_check")
                            {

                                if (MessageBox.Show(lng.download, lng.new_ver + vers, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk, MessageBoxDefaultButton.Button1, (MessageBoxOptions)0x40000 //0x40000 is the "MB_TOPMOST"-Flag.
                                ) == DialogResult.Yes)
                                    System.Diagnostics.Process.Start("http://bit.ly/d3hotkeys");
                            }
                            else
                                if (MessageBox.Show(new Form(), //Пустая форма, чтобы не было ничего в панели задач
                                lng.download, lng.new_ver + vers, MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk
                                ) == DialogResult.Yes)
                                    System.Diagnostics.Process.Start("http://bit.ly/d3hotkeys");
                        }
                        else
                            if (ver_click == "lb_ver_check") MessageBox.Show(lng.no_new, lng.ver_cap, MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                        break;
                    }
                }
                stream1.Dispose();
                sr1.Dispose();
            }
            else
                MessageBox.Show(lng.ver_err_open + "https://github.com/DmitryOlenin/D3Hot", lng.ver_cap, MessageBoxButtons.OK, MessageBoxIcon.Error);

            if (resp1 != null) resp1.Close();
        }
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

  • 1

Сообщение DmitryOlenin » 30 апр 2015, 15:51

Какое-то волшебство творится...
Круто. Зарелизил версию, тут же сообщение было удалено.
Это что было? :? Ладно, ещё разок...

Обновление программы. Встречайте. Версия 2.0.
Большое обновление, много нового!

Update 30.04.2015 (15:15):

1. Добавлена пауза для карты. Принцип работы такой же, как у телепорта.
2. Сделана подстановка по-умолчанию имени профиля при сохранении в файл.
3. Добавлена опция персонализации интерфейса. В директорию программы можно положить:
  • ico-файл: меняется иконка.
  • jpg-файл (465x261): меняется фон.
  • txt-файл (первая строка): меняется заголовок окна.
4. Кардинально улучшена система предупреждений об ошибках (отсутствие пауз, триггеров, отсутствие выбранного процесса, пересечение глобальных хоткеев).
5. Добавлено меню по нажатию правой клавиши мыши на иконку в трее: Start/Stop и Exit.
6. Сделан выбор "Процесс" или "Область действия" в настройках (называется Процесс/Зажатие).
В том числе, это позволяет запретить запуск программы без выбора процесса.
7. Добавлена возможность проверки обновления версии.
По нажатию на соответствующий пункт и/или при старте программы (при установке галочки).
8. Добавлена возможность назначать произвольные клавиши для прожатия, а также для карты/телепорта/остановки по кнопке. Активируется возможность при использовании пункта "Выбор..." или нажатием правой клавишей мыши на элемент выбора кнопки.
9. Переработан интерфейс, исправлены ошибки и недоработки.


Изображение

Скачать.
D3H.exe MD5: 757BA4DB2A5E172E868AF6A5314215CD

Прошу проверять. Жду багрепортов, пожеланий, предложений.

Статистика скачиваний программы до версии 2.0
Изображение
Последний раз редактировалось DmitryOlenin 30 апр 2015, 21:21, всего редактировалось 2 раз(а).
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Сообщение lordep » 30 апр 2015, 16:09

При назначении клавиш, пробел в две строчки между стандартными клв. и назначенной.
Изображение

Закрыл программу, удалил все профили, запустил программу и первый профиль "Крест Саппорт". Так и должно быть ?
Изображение
Аватара пользователя
lordep
Юбилейная стеклопушка В центре внимания (II-го уровня)
Сообщения: 3238
Откуда: Киев
Репутация: 5224
Статус: Не в сети

  • 1

Сообщение DmitryOlenin » 30 апр 2015, 16:19

Пустые строчки - это ошибка, поправил.
Файл можно перекачать, новая MD5: 9B82728FAA2D8CEA3C8D1D37CA331775.

Название профиля берётся из временного файла (если нет файла профиля).
Он ассоциируется с названием программы (чтобы можно было запоминать настройки безо всяких профилей вообще).
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Сообщение lordep » 30 апр 2015, 20:19

Критическая ошибка!!! Если поставить триггер - Shift а клавишу RMouse нажать Старт то триггер сбрасывается.
P.S. Если осталась версия 1.9 скиньте пожалуйста.
Аватара пользователя
lordep
Юбилейная стеклопушка В центре внимания (II-го уровня)
Сообщения: 3238
Откуда: Киев
Репутация: 5224
Статус: Не в сети

  • 1

Сообщение DmitryOlenin » 30 апр 2015, 21:12

Что-то такое было с шифтом, да. Но это только если процесс не использовать.
Поставили галку Процесс/зажатие и вперёд.
Так что не такая уж она и КРИТИЧЕСКАЯ! :)

Кстати, если ещё какие-то проблемы будут обнаруживаться, прошу сразу их проверять в обоих режимах. То есть и в режиме выбора процесса и в режиме без его выбора.

Поправил. Перекачайте. MD5: 757BA4DB2A5E172E868AF6A5314215CD

Спасибо за оперативные багрепорты.
К версии 2.0 пришлось основательно код перелопатить, потому такие моменты и обнаружились.
А отдельного тестера программы у меня нет, к сожалению...
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Сообщение lordep » 30 апр 2015, 21:40

Спасибо за оперативность, теперь работает :)
P.S. Процесс/зажатие - не использую ;)
Аватара пользователя
lordep
Юбилейная стеклопушка В центре внимания (II-го уровня)
Сообщения: 3238
Откуда: Киев
Репутация: 5224
Статус: Не в сети

Сообщение blackinmind » 06 май 2015, 09:56

DmitryOlenin писал(а):Прошу проверять. Жду багрепортов, пожеланий, предложений.

Привет!
Традиционно - большое спасибо за работу! Аж захотелось немного задонатить :oops:

Скорее, не багрепорт, а вопрос.
В 1.9 повесил на капс клавиши 1 и 2 с одинаковым интервалом - 20 секунд. Исправно работало, одновременно срабатывали обе кнопки.
В 2.0 почему-то прожимается только клавиша 1. В чем м.б. дело?
Аватара пользователя
blackinmind
В первых рядах Девять с половиной стеклопушек Танец с пушками Семь раз отмерь, один раз стеклопушка Восьмое чудо Санктуария
Сообщения: 227
Откуда: Москва
Репутация: 115
Статус: Не в сети

Сообщение DmitryOlenin » 06 май 2015, 10:19

Спасибо на добром слове :)
Можно скриншот с настройками? Проверю у себя, если что - поправлю.
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Сообщение blackinmind » 06 май 2015, 10:29

Сделаю, как с работы вернусь. Т. е., часам к 9 вечера (
Аватара пользователя
blackinmind
В первых рядах Девять с половиной стеклопушек Танец с пушками Семь раз отмерь, один раз стеклопушка Восьмое чудо Санктуария
Сообщения: 227
Откуда: Москва
Репутация: 115
Статус: Не в сети

  • 1

Сообщение DmitryOlenin » 06 май 2015, 10:43

Вот так у меня всё нормально прожимается.
Обе клавиши строго раз в 20 секунд.

Изображение
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Сообщение Extremer » 06 май 2015, 11:06

Спасибо за новую версию.
Мне кажется, что для персонализации лучше использовать файлы с именем экзешника, а не первые попавшиеся в папке.
Аватара пользователя
Extremer
В первых рядах Юбилейная стеклопушка
Сообщения: 184
Репутация: 46
Статус: Не в сети

  • 1

Сообщение DmitryOlenin » 06 май 2015, 11:15

Полагаю, что это не столь принципиально.
В том плане, что большей части пользователей, я полагаю, это вообще не нужно.
А кому нужно, тот уж как-нибудь сможет exe-файл положить в отдельную папку.
Это, кстати, ничуть не сложнее, чем файлы называть как-то по-особенному, я даже думаю, что проще.
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Сообщение Extremer » 06 май 2015, 11:36

Ну мое дело предложить.
Просто у меня программа лежит в папке с Д3.
Аватара пользователя
Extremer
В первых рядах Юбилейная стеклопушка
Сообщения: 184
Репутация: 46
Статус: Не в сети

Сообщение mrPhilL » 06 май 2015, 19:13

DmitryOlenin писал(а): софт для мыши/клавиатуры

Нет, за родной софт для клав/мышей (те же Рэйзер) не банят, а даже есть официальные дополнения для WOW и т.д.
Если брать софт А4теч для мышек, то там макрос записывается в память мыши и уже оттуда управляется, это их отличительная особенность и ни варден, ни еще кто-либо не способен отличить кто нажимает - программа или человек.
@mrphill82
Аватара пользователя
mrPhilL
В первых рядах Юбилейная стеклопушка
Сообщения: 360
Откуда: Нальчик
Репутация: 213
Статус: Не в сети

Сообщение blackinmind » 06 май 2015, 20:03

DmitryOlenin,
Скрины:
Изображение Изображение

Не прожимается кнопка "2", на которую повешена "Боевая ярость". Может быть дело в механизме накопления/траты ярости?
Аватара пользователя
blackinmind
В первых рядах Девять с половиной стеклопушек Танец с пушками Семь раз отмерь, один раз стеклопушка Восьмое чудо Санктуария
Сообщения: 227
Откуда: Москва
Репутация: 115
Статус: Не в сети

Сообщение DmitryOlenin » 06 май 2015, 21:22

blackinmind
На картинке выше выбрана одна кнопка для прожатия. Это кнопка "1".
Никакой 2 тут не выставлено. То есть вообще, совсем не выставлено.
Если нужно прожимать кнопку "2", то над Клавишей 3 должен быть выставлен Триггер 3.
И установлено время. Или, как вариант, выбрана какая-то клавиша в Клавише 1 (например "2").
Это же очевидно, нет? :)

mrPhilL
Нет, за родной софт для клав/мышей (те же Рэйзер) не банят, а даже есть официальные дополнения для WOW и т.д.

Это ерунда. Нет никакого "официального" софта для Близзард.
Им всё равно, чем вы пользуетесь: программой, что идёт в комплекте к вашей клавиатуре/мыши или чем-то ещё. Официально запрещено всё. Единственную оговорку синие выдавали на тему, что можно одной кнопкой запускать одно действие, если больше - нарушаете еулу и вот это всё.

И, да, никакой разницы для системы/игры нет, нажимается кнопка программно (любой программой) или вручную, если всё правильно запрограммировано. Можно себя успокаивать "памятью", но на деле это та же программа, просто запущенная иным способом.

Впрочем, как я уже неоднократно писал, за программы для автоматизации (если это не боты) не банят. Никогда и никого не банили, по крайней мере. Но, повторюсь, отвечать за компанию Близзард я не могу.
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Сообщение mrPhilL » 06 май 2015, 21:40

DmitryOlenin писал(а):Впрочем, как я уже неоднократно писал, за программы для автоматизации (если это не боты) не банят. Никогда и никого не банили, по крайней мере. Но, повторюсь, отвечать за компанию Близзард я не могу.

Мне кажется что тот же рэйзер может официально сотрудничать в метелицей, ибо на их сайтах указаны лэйблы метелки.
Против вашей программы я ничего против не имею, но так как вы не сотрудничаете официально с близзами, то лично я бы не стал пользоваться таким софтом. В любой момент метелка может влепить банан за такой софт, вы даже не узнаете причину банана, просто свершится сей факт и все.
А вот если пользоваться (к примеру) продуктами рэйзер, то метелка не захочет терять такого партнера и не будет лепить бананы за макросы с рейзеров.

А так, конечно, пользуйтесь на здоровье. Но Вы не можете утверждать, что не было банов за стороннюю автоматизацию, либо пруфы.
@mrphill82
Аватара пользователя
mrPhilL
В первых рядах Юбилейная стеклопушка
Сообщения: 360
Откуда: Нальчик
Репутация: 213
Статус: Не в сети

  • 0

Сообщение blackinmind » 06 май 2015, 21:53

DmitryOlenin,
:facepalm: :facepalm: :facepalm:
я ппц..
пойду на МРТ мозга..
сорри.
Аватара пользователя
blackinmind
В первых рядах Девять с половиной стеклопушек Танец с пушками Семь раз отмерь, один раз стеклопушка Восьмое чудо Санктуария
Сообщения: 227
Откуда: Москва
Репутация: 115
Статус: Не в сети

  • 1

Сообщение DmitryOlenin » 07 май 2015, 01:24

mrPhilL
Пруфы, что баны за макросы были. Иначе Вы не можете утверждать, что за это банят.
Равно как интересны пруфы насчёт разрешения пользоваться софтом от мышей/клавиатур.
Подозреваю, что их нет. Впрочем, на деле, никаких банов не дают ни за какие проги подобные.

Я неоднократно уже писал, что пользуетесь программой вы на свой страх и риск.
Боитесь - не пользуйтесь. Тут такая же ситуация, как с турбохудом.
-Запрещено? -Формально, да.
-Могут забанить? -В теории, могут.
-Банили хоть кого-то хоть когда-то? -Нет.

И, повторюсь, всякие там "сотрудничества" - это не более чем досужие домыслы.
Никакой разницы для системы/диаблы нет, при помощи моей программы нажата кнопка или волшебной утилиты от Рейзора/A4Tech или какой угодно ещё.

Уже не первый раз сталкиваюсь с этим заблуждением и каждый раз поражаюсь наивности говорящих про "софт от производителя клавиатур/мышей".

Ну и не понимаю смысла писать в тему, если вам эта тема не интересна. Предостеречь других?
Ну ладно, предостерегли. Вон DimonamoN всё ждёт окончания второго сезона и волны банов :D

blackinmind
Да ничего, бывает :)
Жду предложений/пожеланий/багрепортов по программе.
А то версия с реально большим количеством изменений, а отзывов кот наплакал :grumpy:
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Сообщение hukutka94 » 07 май 2015, 08:19

DmitryOlenin, просто сейчас её юзают только для прожатия 1-2-х кнопочек, и то не все люди. :)
Аватара пользователя
hukutka94
В первых рядах Одиннадцать друзей стеклопушки
Сообщения: 5671
Откуда: Чернигов, Украина
Репутация: 2698
Статус: Не в сети

Сообщение DmitryOlenin » 07 май 2015, 09:19

Huk
Монки-саппорты да и саппорты вообще не в почёте? Ну ничего, настанет и их время :)
Ты пока продолжай для SOOPAH DOOPAH POOPAH её использовать :lol:

Extremer
Попробую сделать, чтобы программа в первую очередь подхватывала файлы со своим именем.
К следующей версии, например.
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Сообщение Extremer » 07 май 2015, 16:32

Было бы неплохо сделать в окне программы идентификацию, что нажат сколлл или капс, т.к. у меня клавиатура без этих лампочек и не всегда понятно нажаты они или нет.
Аватара пользователя
Extremer
В первых рядах Юбилейная стеклопушка
Сообщения: 184
Репутация: 46
Статус: Не в сети

  • 4

Сообщение DmitryOlenin » 08 май 2015, 13:20

Изменения на 08.05.2015:

1. Сделал индикацию триггеров. Также сделал возможность активировать их мышкой.
2. Сделал выбор файлов с именем программы для персонализации. Если их нет, берутся любые.
3. Поправил ситуацию с появляющимся окном ввода кнопки при сворачивании/разворачивании программы.

На очереди переосмысление настроек кнопок паузы:
некоторое изменение вида и добавление отдельного включения/выключения паузы по нажатию Enter.

Изображение

Жду новых идей к релизу.
Программа для автоматического нажатия клавиш Diablo 3 Hotkeys
Школьники ушли в школы, больше за 10 минут никто калькуляторы не пишет...
Программа для расчёта DPS - Diablo 3
Аватара пользователя
DmitryOlenin
В первых рядах В центре внимания (II-го уровня) Юбилейная стеклопушка
Сообщения: 1622
Откуда: Москва
Репутация: 1208
Статус: Не в сети

Пред.След.

Вернуться в Игровая механика



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 9