Как напрямую переписать код Варкрафт?
Меня идея с дамми-кастерами не устраивает, я хочу чтобы способности работали как ванильные - а не через костыли и триггеры на определенных картах.
Версия 1.26

мемхак в помощь, ищем адресс который оносится к конкретной абилке и делаем патч, чтобы изменить логику его работы. Драколич делал это лет 10 назад, пример:
globals
    integer pCycloneFixCondition=0
	constant integer CycloneFixCondition026a=0x808B08EB
	integer CycloneFixBaseValue=0
	constant integer CycloneFixCondition027a=0x458B16EB
endglobals
function FixAllCyclones takes nothing returns nothing
	local integer oldprotection
	if CycloneFixBaseValue!=0 then
		return
	endif
	set oldprotection = ChangeOffsetProtection((pCycloneFixCondition),4,0x40)
	set CycloneFixBaseValue=RMem(pCycloneFixCondition)
	if GameVersion == 0x26a then
		call WMem(pCycloneFixCondition,CycloneFixCondition026a)
	elseif GameVersion == 0x27a then 
		call WMem(pCycloneFixCondition,CycloneFixCondition027a)
	endif
	call ChangeOffsetProtection((pCycloneFixCondition),4,oldprotection)
endfunction
Что изменяло внутренний фильтр целей для всех циклонов, разрешая применять циклоны в летающих юнитов (по умолчанию только наземные).
Хз зачем тебе такой гемор?
`
ОЖИДАНИЕ РЕКЛАМЫ...
32
Принятый ответ
мемхак в помощь, ищем адресс который оносится к конкретной абилке и делаем патч, чтобы изменить логику его работы. Драколич делал это лет 10 назад, пример:
globals
    integer pCycloneFixCondition=0
	constant integer CycloneFixCondition026a=0x808B08EB
	integer CycloneFixBaseValue=0
	constant integer CycloneFixCondition027a=0x458B16EB
endglobals
function FixAllCyclones takes nothing returns nothing
	local integer oldprotection
	if CycloneFixBaseValue!=0 then
		return
	endif
	set oldprotection = ChangeOffsetProtection((pCycloneFixCondition),4,0x40)
	set CycloneFixBaseValue=RMem(pCycloneFixCondition)
	if GameVersion == 0x26a then
		call WMem(pCycloneFixCondition,CycloneFixCondition026a)
	elseif GameVersion == 0x27a then 
		call WMem(pCycloneFixCondition,CycloneFixCondition027a)
	endif
	call ChangeOffsetProtection((pCycloneFixCondition),4,oldprotection)
endfunction
Что изменяло внутренний фильтр целей для всех циклонов, разрешая применять циклоны в летающих юнитов (по умолчанию только наземные).
Хз зачем тебе такой гемор?
1
Ладно. Надеюсь тот мемхак будет работать даже с 1.26а или еще более поздними патчами.
32
Неруб, раз такие вопросы задаешь - явно тема не для тебя...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.