Может кто то наглядно(в карте), показать как изменять подказки в предметах. Есть ли информация на русском как пользоватся мемхаком?

Вводим в поиск XGM слово "мемхак"
Получаем результаты мемхак
Для самых новичков специально делал
там по максимуму разжевано
А как пользоваться?
Да никак, потому что нет мемхаке смены Описания Предмета, есть только смена описания способности...Но она фаталит при смене способности выше 2 уровня, А для второй не завезли

Но если разобраться можно самому всё сделать

По примеру способности это выглядело бы так
Если функция такая
function SetAbilityUbertip takes integer id, integer lvl, string s returns boolean
    return SetAbilityStringParam2(id,0x158, s, lvl)
endfunction
То чтобы поменять описание надо было сделать
SetAbilityUbertip(ID  способности или предмета, уровень (для предмета не будет уровня), описание)

quq_CCCP, если я не прав, то покажи функцию смены тултипа предмета для любой версии

А ещё судя по тому что смена тултипа не предусматривает юнита или конкретный хендл предмета, значить описание меняется глобально, и нужно использовать либо Гетлокал плеер либо работать с разными копиями предмата/способности
Всё тоже самое применимо к смене описания на Рефордж патче, но там по проще это всё делается
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
23
Похожие вопросы:

ответ
фатал после игры может быть вызван
а) использованием malloc
б) копированием внутриигровых структур (например, структуру сплеша перенес от одного юнита другому, при чистке один раз адрес зачистился, а на втором проходе произошел краш)
в) неизвестным мне образом
ответ
Сделай сам.
ответ
DracoL1ch:
офсет 2589 *4 , я ж только что сказал
Всё, немного поковырявшись у меня получилось, нужно было еще (id * 4) еще раз умножить на 4. Теперь строки извлекает идеально.
Если кому-то интересно, выглядит это вот так:
	DWORD ReadPointer(DWORD addr)
	{
		return *(DWORD*)(addr);
	}

	DWORD GetJassContext(int id)
	{
		DWORD pJassEnvAddress = DWORD(GetModuleHandle(TEXT("Game.dll"))) + 0xADA848;
		return ReadPointer(ReadPointer(ReadPointer(ReadPointer(pJassEnvAddress) + 0x14) + 0x90) + id * 4);
	}

	DWORD GetStringTable()
	{
		DWORD pJassContext = GetJassContext(1);
		return ReadPointer(ReadPointer(pJassContext + 0x2874) + 0x8);
	}

	std::string from_jString(jString jstrHandle)
	{
		DWORD pStringTable = GetStringTable();
		const char* sptr = (const char*)ReadPointer(ReadPointer(pStringTable + ((jstrHandle * 4)*4) + 0x8) + 0x1C);
		return sptr;
	}
ответ
Ну содержимое у restore само собой разное, в детекте урона новый хук на выход, вам нужна функция загрузки библиотеки?
Это же дело над:

function LoadLibrary takes string nDllName returns integer
    if pLoadLibraryA == 0 then
        set pLoadLibraryA = GetModuleProcAddress("Kernel32.dll", "LoadLibraryA" )
    endif
    if pLoadLibraryA != 0 then
        return CallStdcallWith1Args(pLoadLibraryA,GetStringAddress(nDllName))
    endif
 
    return 0
endfunction

32
ну есть же детект урона. ссылка

Примеров уйма, могу даже свою карту показать
33
Вводим в поиск XGM слово "мемхак"
Получаем результаты мемхак
Для самых новичков специально делал
там по максимуму разжевано
А как пользоваться?
Да никак, потому что нет мемхаке смены Описания Предмета, есть только смена описания способности...Но она фаталит при смене способности выше 2 уровня, А для второй не завезли

Но если разобраться можно самому всё сделать

По примеру способности это выглядело бы так
Если функция такая
function SetAbilityUbertip takes integer id, integer lvl, string s returns boolean
    return SetAbilityStringParam2(id,0x158, s, lvl)
endfunction
То чтобы поменять описание надо было сделать
SetAbilityUbertip(ID  способности или предмета, уровень (для предмета не будет уровня), описание)

quq_CCCP, если я не прав, то покажи функцию смены тултипа предмета для любой версии

А ещё судя по тому что смена тултипа не предусматривает юнита или конкретный хендл предмета, значить описание меняется глобально, и нужно использовать либо Гетлокал плеер либо работать с разными копиями предмата/способности
Всё тоже самое применимо к смене описания на Рефордж патче, но там по проще это всё делается
Принятый ответ
32
Новые функции для предметов завезли, лич вылечил проблемы с фаталами. Теперь можно менять описания у всего и вся.

Мемхак к себе в карту копируем, что надо - просим у лича или гуглим, что ненадо вырезаем.
18
Спасибо, разобрался. Описание меняется только на 1 уровень. А есть описание всех уже существующих функций, что они делают? А то попытался добавить call AddSilenceToAbility('AHds'), а у меня фатал...
33
AddSilenceToAbility ну сайленс это молчанка на отдельные способности, она станет затемнённой и неактивной, как буд-то не хватает требований, все функции интуитивно понятны, есть разбор функций в главной теме мемхака (у той что больше всего постов)
15
quq_CCCP:
Новые функции для предметов завезли, лич вылечил проблемы с фаталами. Теперь можно менять описания у всего и вся.

Мемхак к себе в карту копируем, что надо - просим у лича или гуглим, что ненадо вырезаем.
Прошу прощения за некропостинг, а где можно найти функции для изменения описания предметов? Поиск по сайту самым релевантным выдаёт ресурс с детектом физического урона.
32
JackFastGame, они есть в мемхаке, SetObjectTip\ubertip или как то так, для всех полей есть функции.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.