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

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

всем привет. Имеется вот этот код на языке 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 часа назад, пердейкин сказал:

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

 

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

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

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

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

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 предложила

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

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

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

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