Как создавать читы для игр.
Многих начинающих программистов
волнует вопрос о том, как же создавать
читы для игр. На самом деле этот вопрос не сложен по сути. Изначально Читы
используются разработчиками игр для тестирования игры на этапе разработки.
Затем данные Читы используются геймерами (пользователями) для облегчения
прохождения игры или разблокирования скрытых возможностей.
Предлагаю рассмотреть вариант как создавать читы для игр, созданных
на Delphi (делфи). Данные примеры можно аналогично сделать и для
других языков программирования, поэтому это не принципиально.
Итак, например у нас есть игра, в
которой персонаж может передвигаться по игровому миру, сражаться с монстрами и
т.д. Для него обычно существуют какие-то характеристики, которые в свою очередь
представляют из себя обычные переменные например:
Var
Sila, Skorost,
Zhizni:integer;
Обычно такие характеристики
заносятися в класс, но поскольку классы тяжелы для понимания новичков, то я
предлагаю либо оставить так как есть, либо перенести все в запись таким
образом:
Type
THero=record
Sila, Skorost,
Zhizni:integer;
End;
И какой-нибудь переменной
присваиваем данный тип данных:
var
Hero:THero;
Далее характеристики персонажа
заполоняются в игре например:
Sila:=2;
Skorost:=5;
Zhizhi:=50;
Если Вы воспользовались
занесением данных в запись, то пример будет выглядеть так:
Hero.Sila:=2;
Hero.Skorost:=5;
Hero.Zhizhi:=50;
А теперь перейдем непосредственно
к читам и разберемся как их создавать для игр. Можно для читов сделать
отдельное окошко, поле для ввода или просто в таймере проверять нажатую
комбинацию клавишь и так далее. Рассмотрим наиболее простой приме – тоесть
расположим на форме с игрой компонент Edit (поле для ввода) и Button (кнопка). Дважды кликаем по
кнопке и вписываем в нее например так:
If edit1.text=’aaa’
then Hero.Sila:=5;
Или так:
If edit1.text=’aaa’
then Sila:=5;
Теперь если игрок введет в поле
текст ааа и нажмет на кнопку, то
сила игрока увеличится до пяти (вместо изначальных двух).
Повторим данный эпизод и для
скорости, например:
If
edit1.text=’skorost’ then Hero.Skorost:=1;
Или так:
If
edit1.text=’skorost’ then Skorost:=1;
Теперь при вводе текста skorost в поле и нажатию на кнопку скорость персонажа
упадет до единицы вместо изначальных пяти.
Чтобы все это отображалось на экране не обходимо в таймере выводить на
экран графику или текстове данные. Но об этом если Вам будет интересно –
пишите, и я напишу как и что нужно сделать. Либо посмотрите наши уроки на этом
сайте в примерах по созданию игр есть и взвод графики.
Источник: delgame.at.ua
|