Перейти к содержанию

Есть ли перевод на русский main.lua


Рекомендуемые сообщения

CE v. 6.3 (ru).

Сделал себе тренер с 12 функциями с горячими кнопками (активирующими и деакт. скрипты из таблицы). таких примеров на форуме много. Огромное спасибо!!!

В программировании и английском к сожалению "0".

Для дальнейшего изучения возможностей СЕ, нужны переводы main.lua и описание на русском всего что входит в "свой дизайн" при создании тренера, если есть. Если нет, придётся (как я понял, продолжая ломать игру) ещё много вопросов позадавать на форуме.

Более конкретно (с чем сейчас встрял),

Например, вернёмся к Туториал CE v. 6.3 шаг 9.

Допустим, у меня есть адрес с цепочкой указателей на здоровье наших союзников.

Мне нужно вытащить значение в адресе в тренер, в окошко, с возможностью редактировать значение в самом тренере (без СЕ).

Как это можно сделать?

Здоровье Дейва (Игрок 1) [[[006313a0]+4b8]+4], здоровье Эрика (Игрок 2) [[[006313a0]+4bc]+4].

В main.lua увидел такую функцию writeFloatLocal(address,value), думаю, что скорее всего её нужно в данном примере использовать, но как не знаю. Примеров не нашёл.

Ссылка на комментарий
Поделиться на другие сайты

CE v. 6.3 (ru).

Сделал себе тренер с 12 функциями с горячими кнопками (активирующими и деакт. скрипты из таблицы). таких примеров на форуме много. Огромное спасибо!!!

В программировании и английском к сожалению "0".

Для дальнейшего изучения возможностей СЕ, нужны переводы main.lua и описание на русском всего что входит в "свой дизайн" при создании тренера, если есть. Если нет, придётся (как я понял, продолжая ломать игру) ещё много вопросов позадавать на форуме.

Более конкретно (с чем сейчас встрял),

Например, вернёмся к Туториал CE v. 6.3 шаг 9.

Допустим, у меня есть адрес с цепочкой указателей на здоровье наших союзников.

Мне нужно вытащить значение в адресе в тренер, в окошко, с возможностью редактировать значение в самом тренере (без СЕ).

Как это можно сделать?

Здоровье Дейва (Игрок 1) [[[006313a0]+4b8]+4], здоровье Эрика (Игрок 2) [[[006313a0]+4bc]+4].

В main.lua увидел такую функцию writeFloatLocal(address,value), думаю, что скорее всего её нужно в данном примере использовать, но как не знаю. Примеров не нашёл.

Почти попал. Обрати внимание на readFloat(address) и writeFloat(address,value). read'ом читаешь и заносишь в объект класса edit(для возможности редактирования) будет так

ИМЯ_ОБЪЕКТА.Text = readFloat(address)

Ссылка на комментарий
Поделиться на другие сайты

readFloat(address) и writeFloat(address,value).

Что "ридом" читаем, а "врайтом" пишем это-то понятно. и что в инструкции должен быть Float тоже понятно, т.к. у нас значение здоровья float.

Меня интересует как всё это вытащить в тренер, а точнее в форму.

A1t0r

Сейчас можно сделать так, я открою СЕ, Туториал и таблицу и попробуем создать тренер, где будут два окошка со здоровьем игроков и горячая клавиша с God_Mod.

Так будет проще по-моему.

Ссылка на комментарий
Поделиться на другие сайты

Что "ридом" читаем, а "врайтом" пишем это-то понятно. и что в инструкции должен быть Float тоже понятно, т.к. у нас значение здоровья float.

Меня интересует как всё это вытащить в тренер, а точнее в форму.

A1t0r

Сейчас можно сделать так, я открою СЕ, Туториал и таблицу и попробуем создать тренер, где будут два окошка со здоровьем игроков и горячая клавиша с God_Mod.

Так будет проще по-моему.

Зачем тебе два окошка? Там и одного достаточно. Я как-то делал форму и эдитом в который можно было писать название процесса ручками и коннектиться к нему. Это не намного сложнее)

Ссылка на комментарий
Поделиться на другие сайты

Зачем тебе два окошка? Без разницы можно и одно. Неважно. Туториал эт я для примера взял.

A1t0r

Ну что попробуем так сделать? Извини, нужно было выйти в Скайп - звонила сестра.

Сначала добавил горячую кнопку на Бессмертие.

Затем я перешёл в "Пользовательский дизайн".

Что нужно сделать дальше?

Точнее, что выбираем в FormDesigner:

Ссылка на комментарий
Поделиться на другие сайты

Ты будешь внедрять бессмертие в игру, а я бессмертие в виндовый калькулятор))) Так проще)

У тебя появилась стандартная форма с хоткеями справа.

Внешний вид менять не будем.

Кидай на форму элемент Edit

Ссылка на комментарий
Поделиться на другие сайты

Теперь понял тебя: выбрали "Едит"

Дальше переходим в "Инспектор Объектов"

Стирай Text из него

Теперь, чтение из памяти будет производиться по нажатию кнопки?

Ссылка на комментарий
Поделиться на другие сайты

Где Name?

Фу ты нашёл техт ниже

Стёр

Хотелось бы в данном случае автоматически, а в игре я буду актировать другой скрипт и после него должно появиться значение в окне.

Ссылка на комментарий
Поделиться на другие сайты

Где Name?

Фу ты нашёл техт ниже

Стёр

Хотелось бы в данном случае автоматически, а в игре я буду актировать другой скрипт и после него должно появиться значение в окне.

Идея уже появилась, но давай через лилчные сообщения делать, а то унас получится тема на несколько страниц. А потом опишешь свои шаги в этой теме неспеша.

Ссылка на комментарий
Поделиться на другие сайты

Алло. Дальше что делать?

Ок перехожу в личные сообщения.

Пока решения нет.

Повторю.

Более конкретно (с чем сейчас встрял),

Например, вернёмся к Туториал CE v. 6.3 шаг 9.

Допустим, у меня есть адрес с цепочкой указателей на здоровье наших союзников.

Мне нужно вытащить значение в адресе в тренер, в окошко, с возможностью редактировать значение в самом тренере (без СЕ).

Как это можно сделать?

Здоровье Дейва (Игрок 1) [[[006313a0]+4b8]+4], здоровье Эрика (Игрок 2) [[[006313a0]+4bc]+4].

Ссылка на комментарий
Поделиться на другие сайты


Form = createForm(true)
Btn1 = createButton(Form)
Btn2 = createButton(Form)
Edit1 = createEdit(Form)
Edit2 = createEdit(Form)
Label1 = createLabel(Form)
control_setCaption(Form, 'trainer')
control_setCaption(Edit1, 'Player 1')
control_setCaption(Edit2, 'Player 2')
control_setCaption(Btn1, 'load')
control_setCaption(Btn2, 'save')
control_setCaption(Label1, 'Здоровье Дейва и Эрика')
control_setPosition(Btn1, 10, 40)
control_setPosition(Btn2, 96, 40)
control_setPosition(Edit1, 10, 5)
control_setPosition(Edit2, 90, 5)
control_setPosition(Label1, 23, 65)
control_setSize(Form, 180, 80)
openProcess("Tutorial-x86_64.exe")
form_centerScreen(Form)
function Load()
Player1 = readFloat('[[006313a0]+4b8]+4')
Player2 = readFloat('[[006313a0]+4bc]+4')
if (Player1 ~= nil) and (Player1 ~= nil) then
control_setCaption(Edit1, Player1)
control_setCaption(Edit2, Player2)
else
messageDialog('Не найден процесс или неверная цепочка указателей!', 1, 2)
end
end
function Save()
Player1 = control_getCaption(Edit1)
Player2 = control_getCaption(Edit2)
check = readInteger('[[006313a0]+4b8]+4')
if (check ~= nil) then
writeFloat('[[006313a0]+4b8]+4', Player1)
writeFloat('[[006313a0]+4bc]+4', Player2)
else
messageDialog('Не найден процесс или неверная цепочка указателей!', 1, 2)
end
end
function CloseTrainer()
closeCE()
return caFree
end
form_onClose(Form, CloseTrainer)
control_onClick(Btn1, Load)
control_onClick(Btn2, Save)
form_show(Form)

Что не понятно, спрашивай)

  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

  • 1 год спустя...

Наконец то нашёл время и с помощью NullAlex доразобрался. 

Собственно, что мне, как новичку, нужно было тогда объяснить:

1. СЕ/Файл/Создать трейнер, используя текущую таблицу.

2. Пользовательский дизайн.

2. Кидаем на форму трейнера две формы "Edit" и две формы "Button"

3. Выделяем первую кнопку CEButton1 (она будет отвечать за чтение значений из памяти), переходим во вкладку "Evants",  выбираем событие "OnClick'. два раза жмём на пустое поле с права, и в открывшемся окне пишем обработчик этого события:

function CEButton1Click(sender)Player1 = readFloat('[["Tutorial-i386.exe"+2453A0]+4b4]+4')Player2 = readFloat('[["Tutorial-i386.exe"+2453A0]+4b8]+4')if (Player1 ~= nil) and (Player2 ~= nil) thencontrol_setCaption(CETrainer.CEEdit1, Player1)control_setCaption(CETrainer.CEEdit2, Player2)elsemessageDialog('Не найден процесс или неверная цепочка указателей!', 1, 2)endend

4. Выделяем вторую кнопку CEButton2 (она будет отвечать за запись новых значений из трейнера в  память игры), переходим во вкладку "Evants",  выбираем событие "OnClick'. два раза жмём на пустое поле с права, и в открывшемся окне пишем обработчик этого события:

function CEButton2Click(sender)Player1 = control_getCaption(CETrainer.CEEdit1)Player2 = control_getCaption(CETrainer.CEEdit2)check = readInteger('[["Tutorial-i386.exe"+2453A0]+4b4]+4')if (check ~= nil) thenwriteFloat('[["Tutorial-i386.exe"+2453A0]+4b4]+4', Player1)writeFloat('[["Tutorial-i386.exe"+2453A0]+4b8]+4', Player2)elsemessageDialog('Не найден процесс или неверная цепочка указателей!', 1, 2)endend

5. Вернитесь в "Создатель Трейнера" и создайте трейнер  :-D .

6. Всё.

7. Полученный трейнер прикрепил:

tut9garik66.rar

  • Плюс 2
Ссылка на комментарий
Поделиться на другие сайты

Функция control_setCaption неудобная из-за того что длинная

Можно не писать 

control_setCaption(CETrainer.CEEdit1, Player1)
А писать

 

CETrainer.CEEdit1.Text = 'твой текст'CETrainer.CELabel1.Caption = 'твой текст'
  • Плюс 1
Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.