@danko1307

Кто может объяснить как создаётся софт для игр?

Где-то читал, что для того, чтобы создавать ПО для игр...читы, нужно знать C++ и Assembler. Хочу начать, но всё-таки, кто может поверхностно объяснить как всё выполнятся?
  • Вопрос задан
  • 776 просмотров
Пригласить эксперта
Ответы на вопрос 4
Nipheris
@Nipheris Куратор тега C++
Поверхностно: вам должны быть в состоянии ответить на следующие вопросы:
- что такое процесс в ОС;
- что такое поток и чем отличается от процесса;
- что такое адресное пространство процесса;
- как пользоваться системным API в выбранном вами языке программирования.
Разумеется, общее понимание процесса вычислений на современных машинах должно присутствовать.

После этого можно переходить к более частным проблемам. Процесс изучения языка программирования - вопрос отдельный.
Ответ написан
Комментировать
saboteur_kiev
@saboteur_kiev Куратор тега C++
software engineer
Чтобы создавать ПО, нужно уметь программировать.

Чтобы создавать ПО для игр - для начала тоже нужно уметь программировать, ведь игры - это тоже ПО.

Ассемблер не обязательно, но полезно знать принципы и основы.
С++ не обязательно, но полезно знать основы.

Было бы неплохо знать основы того языка программирования, на котором написана игра, которую вы хотите взломать.
Ответ написан
Если пользовались ArtMoney или CheatEngine - вот вам и план действий. Ищется уязвимая ячейка памяти процесса(в которой хранится значение денег/хп/маны и т.д) и модифицируется под свои нужды. Как - уже другой вопрос с индивидуальным подходом к каждой программе.
C/C++/Assembler - ибо это лучшие варианты для работы непосредственно с памятью.
Опять же, зависит от того, что именно вы хотите делать. Есть просто невинные "трейнера" для оффлайн-игр, есть атака на сервера, есть "крякинг", есть трейнера для онлайн-игр - для всего этого используются совершенно разные подходы и технологии.
Сейчас защита игр от взлома находится на крайне высоком уровне(та же система Denuvo), так что придется учить до кучи безопасность систем. А это и перехват пакетов, и низкоуровневое программирование, и дата инжекты и еще много чего интересного. Пожалуй, одно из самых сложных направлений программирования, требующего нехилого багажа знаний и практики.
Ответ написан
@poslannikD
Java/C/C++ Programmer
Писал комент но вышел пост)))
ПО для игр...читы
-- если говорить о серьезных играх, тогда нужен asm. От этого не уйти ну ни как. Ах да artmoney можно засунуть себе в долгий ящик с устаревшими знаниями, так как уже есть игры на которых artmoney бессилен. И пригоден он только для правки значений в памяти на данной машине в данном сеансе, а если мы хотим написать ЧИТ который работает на всех машинах и даже после перезагрузки игры то увы asm, с++.
С++ заменяется легко на C#, rust, go, python.... - в зависимости от того какая вам нужна итоговая производительность и нужны ли вставки на асме. Чит можно разбить на несколько программ это уже из области разработки по.
Для веб игрушек javascript будет нужен.
Общий начальный бэкграунд примерно такой:
1) петцольд код
2) карпов основы операционных систем. старая книга но даст общее представление об ос это то что вам нужно. потом иртегов и таненбаум(основы ос и распределенные системы)
3) курс молодого бойца на ютубе. + курс по wireshark
4) TCP/IP Illustrated/тык/ cisco cnna/ учебник олиферов
_____До этого момента была просто теоритическая подготовка______
5) Универсальным выбором по языку будет с++. Поэтому учить нужно его. Здесь рекомендация в пользу курсов на степике. Если в программировании плохи учите с# он легче, намного.
6) После того как освоитесь с этим учите асм.
7) Спец литра по реверсингу, крэкингу.

Есть путь проще ищите видосы от gamthacklab на ютубе и учитесь по ним.

кто может поверхностно объяснить как всё выполнятся
- методик и подходов очень много, поверхностное объяснение здесь не катит
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы