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

Megaladon

Стажёры
  • Постов

    9
  • Зарегистрирован

  • Посещение

  • Победитель дней

    2

Сообщения, опубликованные Megaladon

  1. Почему можно сделать вклатки например хватит Control'ов с Visible и вот вам вкладки что там делать)

    Именно так я и поступил, сделал панели и менял их свойства:


    function TabControl_1()
    control_setVisible(UDF1_CEPanel1,false)
    control_setEnabled(UDF1_CEPanel1,false)
    control_setVisible(UDF1_CEPanel2,true)
    control_setEnabled(UDF1_CEPanel2,true)
    end
    function TabControl_2()
    control_setVisible(UDF1_CEPanel2,false)
    control_setEnabled(UDF1_CEPanel2,false)
    control_setVisible(UDF1_CEPanel1,true)
    control_setEnabled(UDF1_CEPanel1,true)
    end

    Трейнер с вкладками??? :-D

    А с чего вы взяли что использование Lua в Cheat Engine ограничевается только написанием тренеров?

    Я на lua сделал себе конвертер Hex->Dec Dec->Hex, ну и ещё пару вещей общего назначения, добавляющих удобств в повседневной жизни. :-D

  2. Всем привет!

    local Sme = 15448
    local Zna = 123
    writeInteger('[00030040]' + '0x' .. Sme, Zna)

    Помогите найти ошибку. Данный кусок кода должен записывать Значение из переменной Zna по поинтеру,Смещением которого является переменная Sme.

    Тоесть я хочу сам записать любое значение по смещению,которому я хочу из переменной.

    если я правильно понял то:

    '[00030040]' - адресс начала структуры

    Sme - указатель на параметр Zna.


    local Sme = 15448
    local Zna = 123
    Sme = string.format('0x%08X', Sme)
    readInteger(0x00030040, base_value)
    Sme_address = base_value + Sme
    writeInteger(Sme_address, Zna)

    К сожалению, я не телепат. Если это не то решение которое тебе нужно, то могу сказать только одно:

    "какой вопрос - такой и ответ."

    Что бы получить максимально исчерпывающий ответ надо и вопрос описывать подробнее.

    • Плюс 1
  3. получил ответ с http://forum.cheatengine.org

    должен быть следующий синтаксис.

    local text = ansiToUtf8(readString(textadr, 16,false))
    control_setCaption(label2, "считанный текст : "..text)

    тогда все работает.

    Пишу тут ответ, может кому нибудь пригодиться.

    вообще в main.lua не раскрыто какой должен быть синтаскис, у той или иной функции, и угадывание правильного написания комманды отнимает много времени.

    • Плюс 1
  4. Вот ответ Дарк Байта о не корректном отображении кирилицы в форме:

    according to the add address window it should be "readString(textadr, 16)"

    besides that I have no idea

    usually ansiToUtf8 does something, but I can't really test this

    Я так понимаю что проблемма кроется в неправильно работающей функции ansiToUtf8.

  5. Приветствую всех снова.

    Проблемму с


    value = readInteger([[EntitiesMP.dll+0x20F770]])

    удалось решить.

    Сперва нужно получить адрес модуля с помощью команды


    getAddress(string, local OPTIONAL): returns the address of a symbol. Can be a modulename or an export. set Local to true if you wish to querry the symboltable of the ce process

    и затем уже работать с полученным адресом.

    вот какой у меня получился рабочий код:



    function onTimer(senderTimer)
    speed = readInteger(speedadr)
    control_setCaption(label1, "1 status = "..status)
    control_setCaption(label2, "2 EntitiesMP.dll = "..EntitiesMP)
    control_setCaption(label3, "3 actionadr = "..actionadr)
    control_setCaption(label4, "4 action = "..action)
    control_setCaption(label5, "5 speedadr = "..speedadr)
    control_setCaption(label6, "6 speed = "..speed)
    end

    MyForm = createForm()
    label1 = createLabel(MyForm)
    label2 = createLabel(MyForm)
    label3 = createLabel(MyForm)
    label4 = createLabel(MyForm)
    label5 = createLabel(MyForm)
    label6 = createLabel(MyForm)

    control_setCaption(MyForm, "My First Lua ")
    control_setCaption(label1, "1 status = ")
    control_setCaption(label2, "2 EntitiesMP.dll = ")
    control_setCaption(label3, "3 actionadr = ")
    control_setCaption(label4, "4 action = ")
    control_setCaption(label5, "5 speedadr = ")
    control_setCaption(label6, "6 speed = ")

    control_setPosition(label1, 10, 5)
    control_setPosition(label2, 10, 30)
    control_setPosition(label3, 10, 55)
    control_setPosition(label4, 10, 80)
    control_setPosition(label5, 10, 105)
    control_setPosition(label6, 10, 130)

    timer = createTimer(MyForm)
    timer_setInterval(timer, 1000)
    timer_onTimer(timer, onTimer)
    -------- offsets text ----------------------------
    status = readInteger(0x1073D248)
    textadr2 = status + 0x10E1B8
    textadr1 = readInteger(textadr2)
    textadr = textadr1 + 0

    ----------- offsets memoryModul ----------------
    EntitiesMP = getAddress('EntitiesMP.dll')
    actionadr = EntitiesMP + 0x20F770
    action = readInteger(actionadr)
    speedadr = action + 0xDD8
    -------------------------------------------

    Что косается прогрессбара, то я решил остановиться на варианте выводить значения переменных max и current в лабеле перед полоской. Что касаеться возможности покрасить цвет полосы прогрессбара, хотелось бы конечно, но это не принципиально. главное что бы работало. Пошарился в main.lua и не нашел там ни строчки о color или rgb в progressbar.

    Проблему с функцией readString() пока решить не удалось.

    То ли потому что


    ansiToUtf8(string)

    в параметре string должна быть строка и туда нельзя подставлять переменную, то ли потому что функция выполняет другие задачи, Не знаю, но приведенный ниже код выдает внутри сгенернированной формы:

    Пример считанного текста из памяти процесса

    считанный текст : ???????


    function onTimer(senderTimer)
    text = readString(textadr, 16, true) --[[пробовал несколько вариантов
    1. text = readString(textadr, 16, true) результат всегда один и тот же
    2. text = readString(textadr, 16, false)
    3. text = readString(textadr, 16)]]
    ansiToUtf8(text)
    control_setCaption(label2, "считанный текст : "..text)
    end
    MyForm = createForm()
    label1 = createLabel(MyForm)
    label2 = createLabel(MyForm)
    control_setCaption(MyForm, "My First Lua ")
    control_setCaption(label1, "Пример считанного текста из памяти процесса ")
    control_setCaption(label2, "Тут будет то что СЕ считает из памяти...")
    control_setPosition(label1, 10, 5)
    control_setPosition(label2, 10, 30)
    timer = createTimer(MyForm)
    timer_setInterval(timer, 2000)
    timer_onTimer(timer, onTimer)
    -------- offsets text ----------------------------
    status = readInteger(0x1073D248)
    textadr2 = status + 0x10E1B8
    textadr1 = readInteger(textadr2)
    textadr = textadr1 + 0
    ----------- offsets memoryModul ----------------
    EntitiesMP = getAddress('EntitiesMP.dll')
    actionadr = EntitiesMP + 0x20F770
    action = readInteger(actionadr)
    speedadr = action + 0xDD8

    По поводу кодировки. Если значение в игре по адресу в ANSI, то нужно конвертировать в UTF и передать строку в GUI. Не нужно работать с кодировкой в/из log консоли, там кажется только ANSI. Нужно экспериментировать с компонентами формы и значением в игре, а не с консолью.

    И советую работать с дизайнером форм по созданию окон - ускоряет процесс написания кода.Если текст русский есть в Lua скрипте, я сохранял таблицу как .CT или .CETRAINER открывал NotePad++ и ставил кодировку UTF-8(без BOM) тогда русский текст у меня отображался корректно.

    Проблеммы с отображение русского текста в консоле набора Lua (Ctrl+Alt+L) нет, русский текст и в Lua-консоли и в Notepad++ отображаеться корректно. А считанный из памяти текст на форме отображаеться в виде ????????, причем структура


    control_setCaption(label, "текст на русском языке: "..text)

    дает результат: текст на русском языке: ????????? .

    Как я понимаю проблема не в неправильной кодировке на компьютере, а в том что в памяти текст лежит в ansi, а в GUI-Label этот текст надо отправить в юникоде. Причем в главной таблице СЕ текст отображается корректно.

    И советую работать с дизайнером форм по созданию окон - ускоряет процесс написания кода.

    Полностью с вами согласен, когда нужен сложный интерфейс то дизайнер форм сэкономит много времени, чем прописывать все формы и элементы в ручную, да и работать будет корректнее, но я пока что тока на стадии освоения Lua-Engine. и мне проше работать с формой с одним элементом, так получаеться быстрее. и меньше пространстра для ошибок.

    Вожможно, что бы содержимое переменной text отображалось корректно, надо как-то подгружать кодовую страницу-1251. Буду писать ДаркБайту, надеюсь найдеться решение данной проблеммы.

    И напоследок: как установить положение трэкбара в нужное?

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

    первый раз trackbar_setPosition(progressbar, integer) почему-то не отрабатываеться, а после того как подвигаю трэкбар и нажму сброс, то эта же команда в функции ResetZ срабатывает, я думал сперва что дело в том что переменная standart являеться числом с точкой и я строку standart = memoryrecord_getValue(memoryrec1) (значение переменной = 9,5) заменил на standart = 9, но это не помогло. При запуске скрипта ползунок не смотря на это все равно оказывается на нуле.


    --[[TrackBar Class : (Inheritance: WinControl->Control->Component->Object)
    createTrackBar(owner): Creates a TrackBar class object which belongs to the given owner. Owner can be any object inherited from WinControl
    trackbar_getMax(trackbar)
    trackbar_setMax(trackbar, integer)
    trackbar_getMin(trackbar)
    trackbar_setMin(trackbar, integer)
    trackbar_getPosition(progressbar)
    trackbar_setPosition(progressbar, integer)
    trackbar_onChange(trackbar, function)]]


    addresslist = getAddressList()
    description1= [[Zoom]]
    memoryrec1 = addresslist_getMemoryRecordByDescription(addresslist, description1)
    standart = memoryrecord_getValue(memoryrec1)
    function ResetZ(sender)
    zoom = standart
    memoryrecord_setValue(memoryrec1, zoom) --sets value for the memoryrecord
    control_setCaption(label1, zoom)
    trackbar_setPosition(TrackBar, zoom)
    end
    MyForm = createForm()
    label1 = createLabel(MyForm)
    TrackBar = createTrackBar(MyForm)
    ResetZoom = createButton(MyForm)
    control_setCaption(MyForm, "My First Lua ")
    control_setCaption(ResetZoom, "Сброс")
    control_setPosition(label1, 100, 5)
    control_onClick(ResetZoom, ResetZ)
    control_setPosition(ResetZoom, 130, 5)
    control_setCaption(label1, zoom)
    trackbar_setMin(TrackBar, 1)
    trackbar_setMax(TrackBar, 210)
    function ZoomHack()
    zoom = trackbar_getPosition(TrackBar)
    memoryrecord_setValue(memoryrec1, zoom)
    control_setCaption(label1, zoom)
    end
    setMethodProperty(TrackBar , "OnChange" , "ZoomHack")

    Зарание благодарю всех откликнувшихся.

  6. по поводу вопроса о выводе текста внутри полоски прогресс бара,

    на форуме в примерах нашел способ вывести свойства класса:

    print(strings_getText(getPropertyList(UDF1_CEProgressbar1)))


    Name
    Tag
    AnchorSideLeft
    AnchorSideTop
    AnchorSideRight
    AnchorSideBottom
    Cursor
    Left
    Height
    Hint
    Top
    Width
    HelpType
    HelpKeyword
    HelpContext
    Align
    Anchors
    BorderSpacing
    BorderWidth
    Constraints
    Enabled
    Max
    Min
    Position
    Orientation
    ParentShowHint
    ShowHint
    Smooth
    Step
    Style
    TabOrder
    TabStop
    Visible
    BarShowText -- этот параметр видимо мне и нужен

    вопрос какой синтаксис должен быть у BarShowText?

    пробовал progressbar_setBarShowText(progressbar1,true)

    и progressbar_BarShowText(progressbar1,true)

    выдает ошибку, к ДаркБайту писать пока не хочу, так как английским языком не владею, и не факт что он правильно поймет мою писанину, коряво переведенную на английский гугл-переводчиком, и уж совсем не факт что я пойму переведенный гуглом его ответ.

    Ещё вопрос имеется ли возможность менять цвет полосы у прогрессбара?

    по поводу readString() нашел функцию:


    ansiToUtf8(string): Converts a string in Ansi encoding to UTF8
    utf8ToAnsi(string): Converts a string in UTF8 encoding to Ansi
    Note: GUI components mainly show in UTF8, some other functions use Ansi, try to find out which ones...

    Но ожидаемого результата не получил, видимо нужно именно строку вводить как аргумент, а не подставлять переменную,


    MyForm = createForm()
    control_setCaption(MyForm, "My First Lua ")
    label1 = createLabel(MyForm)
    form_show(MyForm)
    text = readString(adress, 16)
    ansiToUtf8(text)
    control_setCaption(label1, text)
    print(text)

    все равно выдает ????????? вместо кирилицы.

    Возник ещё один вопрос как правильно написать код чтобы работало:


    value = readInteger([[EntitiesMP.dll+0x20F770]])


    adress = [[EntitiesMP.dll+0x20F770]]
    value = readInteger(adress)


    adress1 = [[EntitiesMP.dll]]
    adress2 = adress1 + 0x20F770
    value = readInteger(adress2)

    все варианты выдают ошибку, в главной таблице адресс EntitiesMP.dll+0x20F770 работает правильно, а в скрипте не могу использовать такой формат адресса, проблемма в том что у меня Win-7 x64, и почему-то этот адресс после перезапуска программы меняеться (адресс зеленый, и меняеться у него всегда только 2 байт, 0x00**5A4D ), Cheat Engine находит его всегда если привести адресс к такому виду как привел выше EntitiesMP.dll+0x20F770.

  7. Привет всем. Я долго и нудно, разбирался на примерах как работает "ProgresBar".

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

    Вот что получилось:

    lB.png

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

    http://imgfast.ru/51cdf46db3c53/qB/

    Lua-скрипт привожу:


    <?xml version="1.0" encoding="utf-8"?>
    <CheatTable CheatEngineTableVersion="14">
    <CheatEntries>
    <CheatEntry>
    <ID>0</ID>
    <Description>"base"</Description>
    <ShowAsHex>1</ShowAsHex>
    <Color>80000008</Color>
    <VariableType>4 Bytes</VariableType>
    <Address>Engine.dll+73D248</Address>
    </CheatEntry>
    <CheatEntry>
    <ID>1</ID>
    <Description>"full"</Description>
    <Color>80000008</Color>
    <VariableType>4 Bytes</VariableType>
    <Address>Engine.dll+73D248</Address>
    <Offsets>
    <Offset>10E214</Offset>
    </Offsets>
    </CheatEntry>
    <CheatEntry>
    <ID>2</ID>
    <Description>"current"</Description>
    <Color>80000008</Color>
    <VariableType>4 Bytes</VariableType>
    <Address>Engine.dll+73D248</Address>
    <Offsets>
    <Offset>10E1F0</Offset>
    </Offsets>
    </CheatEntry>
    <CheatEntry>
    <ID>3</ID>
    <Description>"full2"</Description>
    <Color>80000008</Color>
    <VariableType>4 Bytes</VariableType>
    <Address>Engine.dll+73D248</Address>
    <Offsets>
    <Offset>10E210</Offset>
    </Offsets>
    </CheatEntry>
    <CheatEntry>
    <ID>4</ID>
    <Description>"current2"</Description>
    <Color>80000008</Color>
    <VariableType>4 Bytes</VariableType>
    <Address>Engine.dll+73D248</Address>
    <Offsets>
    <Offset>10E1F4</Offset>
    </Offsets>
    </CheatEntry>
    </CheatEntries>
    <UserdefinedSymbols/>
    <LuaScript>function progresbar01(senderTimer)
    full1 = readInteger(full1adr)
    current1 = readInteger(current1adr)
    control_setCaption(label2, current1.." / "..full1)
    progressbar_setMax(progressbar1, full1)
    progressbar_setPosition(progressbar1, current1)
    end
    function progresbar02(senderTimer)
    full2 = readInteger(full2adr)
    current2 = readInteger(current2adr)
    control_setCaption(label4, current2.." / "..full2)
    progressbar_setMax(progressbar2, full2)
    progressbar_setPosition(progressbar2, current2)
    end
    function CloseForm(sender)
    form_close(MyForm)
    MyForm = nil
    end
    MyForm = createForm()
    label1 = createLabel(MyForm)
    label2 = createLabel(MyForm)
    label3 = createLabel(MyForm)
    label4 = createLabel(MyForm)
    progressbar1 = createProgressBar(MyForm)
    progressbar2 = createProgressBar(MyForm)
    btnExit= createButton(MyForm)
    control_setCaption(MyForm, "My First Lua ")
    control_setCaption(label1, "Progressbar 1")
    control_setCaption(label2, "Current1/Full1")
    control_setCaption(label3, "Progressbar 2")
    control_setCaption(label4, "Current2/Full2")
    control_setCaption(btnExit, "Exit")
    control_setSize(progressbar1, 120, 15)
    control_setSize(progressbar2, 120, 15)
    progressbar_setMin(progressbar1, 0)
    progressbar_stepBy(progressbar1, 1)
    progressbar_setMax(progressbar1, full1)
    progressbar_setMin(progressbar2, 0)
    progressbar_stepBy(progressbar2, 1)
    progressbar_setMax(progressbar2, full2)
    control_onClick(btnExit, CloseForm)
    x = 10
    y = 10
    dy = 20
    control_setPosition(label1, x+200, y+0*dy)
    control_setPosition(progressbar1, x+78, y+0*dy)
    control_setPosition(label2, x, y+0*dy)
    control_setPosition(label3, x+200, y+1*dy)
    control_setPosition(progressbar2, x+78, y+1*dy)
    control_setPosition(label4, x, y+1*dy)
    control_setPosition(btnExit, x + 220, y+9*dy)
    form_show(MyForm)
    timer1 = createTimer(MyForm)
    timer_setInterval(timer1, 200)
    timer_onTimer(timer1, progresbar01)
    timer2 = createTimer(MyForm)
    timer_setInterval(timer2, 200)
    timer_onTimer(timer2, progresbar02)
    -------- offsets -------------------
    status = readInteger(0x1073D248)
    full1adr = status + 0x10E214
    current1adr = status + 0x10e1f0
    full2adr = status + 0x10e210
    current2adr = status + 0x10e1f4
    -------------------------------------------
    </LuaScript>
    </CheatTable>

    Вопрос второй.

    при поиске текста в главной таблице СЕ текст на кирилице отображаеться правильно, но если считать этот текст в скрипте

    text = readString(textadr, 76)

    print(text)

    то цифры и латиница отображаются как надо, а кирилица в виде вопросительных знаков

    ??????????????????????

    http://imgfast.ru/51cdf46db3c53/pB/

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

  8. Andrey, подскажите тогда может возможен такой вариант. Делаем на основном окне тренера кнопки "вкладка-1", "вкладка-2", "вкладка-3". и при нажатии на кнопки появляется окно поверх основного окна тренера желательно привязанное к координатам внутри основного окна, закрывается вкладка или по второму нажатию на кнопку вкладка, если не возможно так, то на окне "вкладки" сделать кнопку закрыть, по которой бы мы возвращались в основное окно.

    63f62a434660.jpg

    2. в программировании я не силен, база информатика в 9 классе, изучал бейсик на электронике 1850 =). еще неплохо знаком и синтаксисом батником *.bat WinXP.

    подскажите пожалуйста, как ячейку памяти из таблицы привязать к активному элементу тренера, желательно используя только возможности самого Cheat Engine 6.1 и по возможности разжуйте в комментариях шаги, зачем то или иная строка и что она выполняет

    Пример файла *.CETRAINER выкладываю, и отталкивался от примера телепорта, на нем же и пробовал добавлять елементы,


    <?xml version="1.0" encoding="utf-8"?>
    <CheatTable CheatEngineTableVersion="13">
    <Forms>
    <trainerMainForm>8555CF6F1B45145EAF8BD789230715A40A21A4A9D41B10D96E43D31C901A3751AB26AD894D0151148DE371BCEA7AD7AC3728A197C4555BA10482E81FC0999B1B70E3264D72E53873299CB970E502E2C89B1FBBEB4D1D5691323BBB6FDEF7CDF7BDF73C3EA26995D25CCEA81467E71CB739EEB9D8B489BB00FFF9FECC3CA97BC91FF5D47562AE34BCE4F78964C569251F68AF7D62D6BC46F2652233E3B835E2DE5876EC7666AC6A96D7DB1E692E107B75B46A2E98B6D934BF269A8A2A7BEB1631D2D5F635135BCE8A51C42DCF74ECD449D8B1A26512DB0B403372EF631AB7EDA2E5B48931C283C5A396861BCCE32AB1D26ACD0BEEFA05455D7F9D33D7B38AF8132D007F273F81CAF82B825A4EDBE46FA651CB25ED36BA89EE91F54C09BB005D742CC74D6BAFC21486C2E415CC0F0330855360E687C06401A6E43A2B3C6006BBD97057C5AEBC59F26CC2C77C5360AE494CBD96AEE0EA6D2EB7AE0D217C51126EF987B3E2705D113E9B0808CF0C1040F4981ED17DDAA57B6C8BEED22EFB8E7D43FBF439A2CF60D9A3876C9BC7F4D806DB84C843887C46BB63738EED4D141BD82D13CF185FFCB85CBE71F5D652F1FAD5C5F26C2523BE2A1A7F8F88DD2DDC2429E30E716BD8C6A3E255C9F4961BC668BD7507BB26AE5A4466FD68155BA6B76E18F52FAFB9B8EE45141C951B1E38CCB44B52C15FB5A86BF795826F041A240BB95C5C054CCA647F9C922C15244BDC8D4BF5814CF5573CAFFCC5C9B86497A5D10B915C50F8CA691696E665B8257A1FB16F59871E21EE2618FC98F660EDD31E623B62F31CFCEFA34F97EAAB96D520D8F21A710CA624835294C14F3E83F9B0D63E87FB0083FF87FE6C49C222D81D71AA6C034AAD87E80B1ECF76A0FA3A6C9B6DB21DC4BF2379AB93FEF151375B333D432EAA993A41339D13245F2A92FA85B09B12672A64CD4BE9F99CA665204BC5C5CBF7A03932E1A3CA762EC8F696C8F69B16F4664975BFAE8589F521DA5D91997AD15248FEEE67AA04DABD0D1DB72FC580BB7778233E05417EA65D347D9A4323FE90CC498B4814E55FDFA20F438BBE78D59C082E1814E08AC08760CE2F6060E0C92E2AB708A92DAEDAFC194E74E1C001EDB347B4174B548DF346946836A188FE1956F31531A7F6611C01B53EDD85C2D8033A5C1834E014A2FDBBF019F091AA04144BA23094C4799FC4CD50AD1A7B2C9BE929DB0A0AF4447D4B4DC4D3435EFC7E191F0829F9B921E1031D112F9A9AF5CD28DF699FEF3FA16885D09A634EBB0BD66D40436DC2DF03B4EC9ACDB6635BD8AE4D9035F2EED4D4E4A5622CBA9CB2FAF928FAA28FFE2454EB7E8827AB078A0B76F0F6806D83265BB4F7DE808A7D583AFCB70644017ABCEF793176E90BDFF443F6080E1D8BCB88A6109342A9C8EB56441DF31A3C710DED3F</trainerMainForm>
    </Forms>
    <CheatEntries>
    <CheatEntry>
    <ID>4</ID>
    <Description>"X_fullhealth"</Description>
    <Color>80000008</Color>
    <VariableType>Float</VariableType>
    <Address>crimsonland.exe+8853C</Address>
    </CheatEntry>
    <CheatEntry>
    <ID>5</ID>
    <Description>"Y_heath"</Description>
    <Color>80000008</Color>
    <VariableType>Float</VariableType>
    <Address>crimsonland.exe+8853C+4</Address>
    </CheatEntry>
    <CheatEntry>
    <ID>6</ID>
    <Description>"SpeedRun"</Description>
    <Color>80000008</Color>
    <VariableType>4 Bytes</VariableType>
    <Address>crimsonland.exe+8854C</Address>
    </CheatEntry>
    </CheatEntries>
    <UserdefinedSymbols/>
    <LuaScript>X = 0.0
    Y = 0.0
    local isUserAction = false
    function SavePosition()
    X = readFloat('crimsonland.exe + 8853C')
    Y = readFloat('crimsonland.exe + 8853C + 4')
    isUserAction = true
    end
    function LoadPosition()
    if isUserAction then
    writeFloat('crimsonland.exe + 8853C', X)
    writeFloat('crimsonland.exe + 8853C + 4',Y)
    end
    end
    function OnCheckHotkeys()
    if isKeyPressed(VK_K) then
    SavePosition()
    return
    end
    if isKeyPressed(VK_L) then
    LoadPosition()
    return
    end
    end
    form_show(trainerMainForm)
    control_setCaption(trainerMainForm, 'Teleport Crimsonland v1.9.8 RUS (game not found)')
    function FormClose(sender)
    closeCE()
    return caFree
    end
    processlist = getAutoAttachList()
    strings_add(processlist, 'crimsonland.exe')
    function onOpenProcess(processid)
    hotKeyTimer = createTimer(trainerForm)
    timer_setInterval(hotKeyTimer, 100)
    timer_onTimer(hotKeyTimer, OnCheckHotkeys)
    control_setCaption(trainerMainForm, 'Teleport Crimsonland v1.9.8 RUS (game is run)')
    end
    </LuaScript>
    </CheatTable>

    Заранее благодарю за проявленное ко мне терпение.

  9. Доброго времени суток всем, прошу помочь разобраться с дизайнером форм в Cheat Engine 6.1. я не знаю как сделать вкладки. подскажите ка можно реализовать такой вид тренера как на картинке.

    7cd0fe5495f1.jpg

    заранее благодарю, за помощь, если такая реализация формы не возможно, какая есть альтернатива вкладкам

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

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

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