Гость Опубликовано 29 июля, 2014 Поделиться Опубликовано 29 июля, 2014 Всем доброго времени суток. Начнем с того, что я заметил, что ветка форума "Трейнми" не обновлялась уже давно. А ведь это интересно, как написание ТрейнМи, так и их взлом Скажу сразу, что с фантазией у меня на данный момент туговато, т.к. не спал уже почти сутки, и все никак не спится, поэтому я не совсем честно спионерил идею Xipho с реализацией старой доброй игры "Пинг Понг", в которую, думаю, играли все, во времена существования такой приставки, как Sega Для игрока 1:Клавиша "Q" - перемещение ракетки вверхКлавиша "A" - перемещение ракетки внизДля игрока 2:Стрелка вверх - перемещение ракетки вверхСтрелка вниз - перемещение ракетки внизКлавиша "Пробел" - активация режима "игрок против игрока" Найти и сделать инъекцию с увеличением счетчика очков, для обоих игроков.Найти указатели на счетчики обоих игроков.Найти и изменить скорость движения ракеток.Найти и изменить скорость движения мячика.Заморозить ракетку игрока 1.Заморозить ракетку игрока 2.Сделать инъекцию для остановки мячика.Сделать опцию на переключение режима игры с "игрок против компьютера" на "игрок против игрока", и наоборот.Сделать опцию, которая будет добавлять очки противоположному игроку при пропускании мяча.Изменить размер мячика вдвое.Изменить размер ракетки игрока 1 вдвоеИзменить размер ракетки игрока 2 вдвое На этом, вроде, пока-что все. Удачного взлома Обновление 30.07.2014Убрано мерцание объектовСлегка улучшена физикаСложность ТрейнМи повышенаОбновление 1.08.2014ТрейнМи почти полностью переписанИсправлены многие недочеты и ошибкиДобавлен режим "игрок против игрока" (чтобы его включить - нужно нажать клавишу "Пробел")Мячик теперь сбрасывается в центр поля после попадания в защищаемую игроками стенуПримечание #1: в этой версии, в основном, был сделан упор на игровую составную. Сложность взлома понижена. Примечание #2: прошлые версии удалены, т.к. в них существовала критическая ошибка, которая валила игру. Обновление 2.08.2014При присоединении отладчика ошибок больше не возникаетНемного улучшена производительностьИзменен интерфейс, добавлены надписи с описанием кнопок управленияPingPong.zip Ссылка на комментарий Поделиться на другие сайты Поделиться
Coder Опубликовано 29 июля, 2014 Поделиться Опубликовано 29 июля, 2014 Ну что ж, ракетки мне было лень искать...А так более менее пойдёт, разве что стоит использовать более объектный подход для работы с очками (должа быть одна функция, которая прибавляет какому-то игроку очки).Также не стоит забывать, что логика работы трейнми должа быть приближённой к реальной игре, но при этом нужно препятствовать взлому.И еще нужно не забывать про двойную буфферезацию (весь контекст в окне мерцает).P.S. Ещё дельфи непонятно для чего вообще прицепил, тут же обычная работа с GDI, а твоя прога тянет кучу ненужных зависимостей за собой.На C++ такой пинг понг будет килобайт 20-30 весить без UPX'а.P.P.S. От меня получаешь плюс Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 29 июля, 2014 Поделиться Опубликовано 29 июля, 2014 Coder, таблица понравилась. Сколько времени ушло на весь взлом, если не секрет? Это только проба пера, целью было реализовать основу. Плюс, хотелось начать с самых азов, чтобы ТренМи подошел всем Про двойную буферизацию совсем забыл, каюсь P.S. #1 Увы, но С++ не знаю, т.е. код на сях могу понять, но изучать С++ меня как-то отталкивает из-за обилия IDE, и программ для разработки GUI. Все никак не могу решить, что выбрать. P.S. #2 Посмотрим, может кто-то еще взломает этот ТрейнМи. Ссылка на комментарий Поделиться на другие сайты Поделиться
Coder Опубликовано 29 июля, 2014 Поделиться Опубликовано 29 июля, 2014 Coder, таблица понравилась. Сколько времени ушло на весь взлом, если не секрет? Это только проба пера, целью было реализовать основу. Плюс, хотелось начать с самых азов, чтобы ТренМи подошел всем Про двойную буферизацию совсем забыл, каюсь P.S. #1 Увы, но С++ не знаю, т.е. код на сях могу понять, но изучать С++ меня как-то отталкивает из-за обилия IDE, и программ для разработки GUI. Все никак не могу решить, что выбрать. P.S. #2 Посмотрим, может кто-то еще взломает этот ТрейнМи.Около 10-15 минут, началось всё со строки, в которую выводится счёт) Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 29 июля, 2014 Поделиться Опубликовано 29 июля, 2014 Обновление TrainMe:Убрано мерцание объектовСлегка улучшена физикаСложность ТрейнМи повышенаСсылка на скачивание в первом сообщении.P.S.Намутил так, что у меня взломать не вышло Ссылка на комментарий Поделиться на другие сайты Поделиться
Coder Опубликовано 30 июля, 2014 Поделиться Опубликовано 30 июля, 2014 Обновление TrainMe:Убрано мерцание объектовСлегка улучшена физикаСложность ТрейнМи повышенаСсылка на скачивание в первом сообщении. P.S. Намутил так, что у меня взломать не вышло За час исследований дальше не продвинулся, может у других получится.// формирование строки для вывода очковunsigned int __usercall sub_407B6A<eax>(unsigned int result<eax>, unsigned int a2<edx>, int a3<esi>){unsigned int v3; // ett@2unsigned __int8 v4; // dl@2int v5; // edx@5int i; // esi@6int v7; // [sp-8h] [bp-8h]@1unsigned int v8; // [sp-4h] [bp-4h]@1v8 = a2;v7 = a3;do{v3 = result;result /= 0xAu;--a3;v4 = v3 % 0xA + 48;if ( v4 >= 0x3Au )v4 += 7;*(_BYTE *)a3 = v4;}while ( result );v5 = v8 - (v7 - a3);if ( v8 > v7 - a3 ){LOBYTE(result) = 48;for ( i = a3 - v5; ; *(_BYTE *)(v5 + i) = 48 ){--v5;if ( !v5 )break;}*(_BYTE *)i = 48;}return result;} Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 1 августа, 2014 Поделиться Опубликовано 1 августа, 2014 Обновление TrainMe(1.08.2014):ТрейнМи почти полностью переписанИсправлены многие недочеты и ошибкиДобавлен режим "игрок против игрока" (чтобы его включить - нужно нажать клавишу "Пробел")Мячик теперь сбрасывается в центр поля после попадания в защищаемую игроками стенуОбновление TrainMe (2.08.2014):При присоединении отладчика ошибок больше не возникаетНемного улучшена производительностьИзменен интерфейс, добавлены надписи с описанием кнопок управленияВся информация и ссылка на скачивание в первом посте. Ссылка на комментарий Поделиться на другие сайты Поделиться
RisimO Опубликовано 8 августа, 2014 Поделиться Опубликовано 8 августа, 2014 Ну почти всё сделал, размеры завтра найду.->Скачать<-//Мне имеет смысл делать трейнми с защитой подобно которую ставят на полноценные проекты? (только без хуков и дров) 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 9 августа, 2014 Поделиться Опубликовано 9 августа, 2014 //Мне имеет смысл делать трейнми с защитой подобно которую ставят на полноценные проекты? (только без хуков и дров)Имеет. Интересно будет поковырять. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 9 августа, 2014 Поделиться Опубликовано 9 августа, 2014 2. Найти указатели на счетчики обоих игроков.Эврика.-090-------=--=-=PingPong.exe+52BD8. Ссылка на комментарий Поделиться на другие сайты Поделиться
Гость Опубликовано 10 августа, 2014 Поделиться Опубликовано 10 августа, 2014 2. Найти указатели на счетчики обоих игроков.А остальные задания? Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 10 августа, 2014 Поделиться Опубликовано 10 августа, 2014 А остальные задания? Не не ща уже не тот момент мой мозг не выдержит. Вспомнил трейнми от Xipho он делал если не ошибаюсь на c++. Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 10 августа, 2014 Поделиться Опубликовано 10 августа, 2014 Так я уже новую версию сделал ) И скоро будет продолжение уже новой версии. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 10 августа, 2014 Поделиться Опубликовано 10 августа, 2014 Так я уже новую версию сделал ) И скоро будет продолжение уже новой версии.Смотрел новую версию, давненько не заходил в форум вот и пропустил. Ждем продолжение/ Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения