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

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

всем привет. Имеется вот этот код на языке asm. Его нужно зациклить

Спойлер

[ENABLE]

alloc(EffectID,4)
registersymbol(EffectID)
alloc(ApplyEffect,128,DarkSoulsIII.exe)
registersymbol(ApplyEffect)
createthread(ApplyEffect)

EffectID:
dd #130134131

ApplyEffect:
 mov    edx, [EffectID]
 mov    rbx, [DarkSoulsIII.exe+4768E78]
 mov    rbx, [rbx+80]
 mov    r8, rbx
 mov    rcx, rbx
 sub    rsp, 48
 call   140886C40
 add    rsp, 48
 ret

[DISABLE]

dealloc(ApplyEffect)
unregistersymbol(ApplyEffect)
dealloc(EffectID)
unregistersymbol(EffectID)

Пытался его зациклить на языке lua ничего не вышло. Вот как все выглядело. Скрипт выполнялся всего лишь один раз

Спойлер

[ENABLE]
{$lua}
if syntaxcheck then return end
disableMemrec(memrec)

local t=createTimer(nil)
t.OnTimer=disableSelf
t.Interval=100
t.Enabled=true
for i = 0, 14 do
autoAssemble([[
alloc(EffectID,4)
registersymbol(EffectID)
alloc(ApplyEffect,128,DarkSoulsIII.exe)
registersymbol(ApplyEffect)
createthread(ApplyEffect)

EffectID:
dd #130134131

ApplyEffect:
 mov    edx, [EffectID]
 mov    rbx, [DarkSoulsIII.exe+4768E78]
 mov    rbx, [rbx+80]
 mov    r8, rbx
 mov    rcx, rbx
 sub    rsp, 48
 call   140886C40
 add    rsp, 48
 ret
]])
end
[DISABLE]
{$asm}

dealloc(ApplyEffect)
unregistersymbol(ApplyEffect)
dealloc(EffectID)
unregistersymbol(EffectID)
 

пытался зациклить на языке asm, ничего не получилось. Помогите пожалуйста, нужно сделать так, чтобы код, который выше всех, работал 14 раз. Надеюсь на вашу помощь

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, пердейкин сказал:

Имеется вот этот код

Что делает этот код в игре?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, пердейкин сказал:

Пытался его зациклить на языке lua ничего не вышло. Вот как все выглядело. Скрипт выполнялся всего лишь один раз

 

а зачем ты делаешь именно так? Смотри: ты написал асм команды, записал их в оперативку, сделал registersymbol. Верно?
Почему бы теперь ещё одним скриптом не создать там новый поток? Это можно делать столько раз, сколько тебе нужно. Можно ещё что-то вроде синхронизации сделать, чтобы потоки не работали одновременно.

Изменено пользователем youneuoy

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
21 час назад, Garik66 сказал:

Что делает этот код в игре?

 

Накладывает эффект на человека по нажатию кнопки

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
21 час назад, youneuoy сказал:
 

а зачем ты делаешь именно так? Смотри: ты написал асм команды, записал их в оперативку, сделал registersymbol. Верно?
Почему бы теперь ещё одним скриптом не создать там новый поток? Это можно делать столько раз, сколько тебе нужно. Можно ещё что-то вроде синхронизации сделать, чтобы потоки не работали одновременно.

Можешь помочь с этим пожалуйста. Я не очень понял как это сделать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 15.09.2020 в 19:08, пердейкин сказал:

Можешь помочь с этим пожалуйста. Я не очень понял как это сделать

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, youneuoy сказал:

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

этот скрипт накладывает определенный эффект на человека один раз. Нужно сделать так чтобы эффект накладывался 14 раз. Я попробовал зациклить с помощью loop но все вылетало. Может быть я просто не правильно написал. Я просто не знаю уже что делать. Помоги пожалуйста. Вот кстати скрипт задержки

Спойлер

push rax
sub rsp,28
mov rcx,#1
call sleep
add rsp,28
pop rax

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
27 минут назад, пердейкин сказал:

этот скрипт накладывает определенный эффект на человека один раз. Нужно сделать так чтобы эффект накладывался 14 раз. Я попробовал зациклить с помощью loop но все вылетало. Может быть я просто не правильно написал. Я просто не знаю уже что делать. Помоги пожалуйста. Вот кстати скрипт задержки

 

а ты уверен, что этот эффект вообще можно сразу 14 раз наложить? Если просто несколько раз активировать скрипт то всё нормально работает?
И какое к этому имеет отношение твой скрипт задержки?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Только что, youneuoy сказал:

а ты уверен, что этот эффект вообще можно сразу 14 раз наложить? Если просто несколько раз активировать скрипт то всё нормально работает? И какое к этому имеет отношение твой скрипт задержки?

если несколько раз наложить то все работает нормально. Нужно накладывать с задержкой что бы эффекты накладывались. Я забыл это написать. Ну как сможешь помочь сделать цикл?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, пердейкин сказал:

если несколько раз наложить то все работает нормально. Нужно накладывать с задержкой что бы эффекты накладывались. Я забыл это написать. Ну как сможешь помочь сделать цикл?

Попробуй по тупому:

Спойлер

[ENABLE]

alloc(EffectID,4)
registersymbol(EffectID)
alloc(ApplyEffect,128,DarkSoulsIII.exe)
registersymbol(ApplyEffect)


EffectID:
dd #130134131

ApplyEffect:
 mov    edx, [EffectID]
 mov    rbx, [DarkSoulsIII.exe+4768E78]
 mov    rbx, [rbx+80]
 mov    r8, rbx
 mov    rcx, rbx
 sub    rsp, 48
 call   140886C40
 add    rsp, 48
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
createthread(ApplyEffect)
 ret

[DISABLE]

dealloc(ApplyEffect)
unregistersymbol(ApplyEffect)
dealloc(EffectID)
unregistersymbol(EffectID)

 

Спойлер

 

 

Поделиться сообщением


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

Что же у вас столько рассуждений в такой теме, особенно у кое кого...

Одну строчечку добавить...

Спойлер

[ENABLE]

alloc(EffectID,4)
registersymbol(EffectID)
alloc(ApplyEffect,128,DarkSoulsIII.exe)
registersymbol(ApplyEffect)
createthread(ApplyEffect)

EffectID:
dd #130134131

ApplyEffect:
 mov    edx, [EffectID]
 mov    rbx, [DarkSoulsIII.exe+4768E78]
 mov    rbx, [rbx+80]
 mov    r8, rbx
 mov    rcx, rbx
 sub    rsp, 48
 call   140886C40
 add    rsp, 48
 jmp ApplyEffect // <----------------- Вот эту
 ret

[DISABLE]

dealloc(ApplyEffect)
unregistersymbol(ApplyEffect)
dealloc(EffectID)
unregistersymbol(EffectID)

 

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

А ты @Garik66 совсем странное что то пишешь, пытаешься выполнить в ассемблерном коде команды для Cheat Engine

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
4 минуты назад, imaginary сказал:

jmp ApplyEffect

попробуй

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, Garik66 сказал:

попробуй

Что мне пробовать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
3 часа назад, imaginary сказал:

Одну строчечку добавить...

 

кажется нужно, чтобы это не сразу срабатывало, а с задержкой🤔
Думаю можно сделать как-то так(lua):

Спойлер

 


function thr()
	i=14
	while i do
		sleep(1000)
		autoAssemble
		(
			[[
			createThread(ApplyEffect)
			]]
		)
		i=i-1
	end
end


function func()
	autoAssemble
	(
		[[
		alloc(EffectID,4)
		registersymbol(EffectID)
		alloc(ApplyEffect,128,DarkSoulsIII.exe)
		registersymbol(ApplyEffect)

		EffectID:
		dd #130134131

		ApplyEffect:
		 mov    edx, [EffectID]
		 mov    rbx, [DarkSoulsIII.exe+4768E78]
		 mov    rbx, [rbx+80]
		 mov    r8, rbx
		 mov    rcx, rbx
		 sub    rsp, 48
		 call   140886C40
		 add    rsp, 48
		 ret
		]]
	)
end

func();
createThread(thr)

 

 

 

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

 

3 часа назад, imaginary сказал:

Что же у вас столько рассуждений в такой теме, особенно у кое кого...

😛
почему бы и не поговорить, если тема подходящая?

Изменено пользователем youneuoy

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 час назад, youneuoy сказал:

почему бы и не поговорить, если тема подходящая?

не обращай внимания.
imaginary по=видимому не с той ноги встала, наехала, всех опустила и ушла :)))

Поделиться сообщением


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

Чего не так то? Что я не так говорю? Я всё сказала что можно использовать, сделать проверку выхода на ret любую вместо jmp со счётчиком, например :

inc [schetchik]
cmp [schetchik],#14
jl ApplyEffect

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 14.09.2020 в 18:30, пердейкин сказал:

ничего не получилось.

Короче ТС, мой способ 

Спойлер

 

полное Г....
способ  youneuoy   проверь сам.
лучший и более простой способ imaginary

Поделиться сообщением


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

Всем спасибо кто помог мне с этой темой. Кто пытался помочь. Скрипт работает как надо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
28 минут назад, пердейкин сказал:

Всем спасибо кто помог мне с этой темой. Кто пытался помочь. Скрипт работает как надо.

какой скрипт у тебя в итоге получился?🤨

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, пердейкин сказал:

Всем спасибо кто помог мне с этой темой. Кто пытался помочь. Скрипт работает как надо.

какой?

 

Поделиться сообщением


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

default_offtopic.gif 

4 часа назад, youneuoy сказал:

какой скрипт у тебя в итоге получился?🤨

Скорее всего ответа не дождемся - чел свое получил  и ушел ...................:)))
а вообще то интересно - моя лабуда сработала, твой скрипт взял или все же дописал то что imaginary предложила

Поделиться сообщением


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

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Предпросмотр

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

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

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