6

» WarCraft 3 / Вызов функций вк 3, через mix (dll)

Вскоре покажу как вызвать mix или dll которая содержится в самой карте
6

» WarCraft 3 / Отлов клавиш

Новая версия, будет работать без микса в папке варика. А внедренный в саму карту!
6

» WarCraft 3 / Пропадание скилов, после морфа.

DracoL1ch:
содержимое спелбуков тоже нужно вживлять через permanent, все до единой бонусные способности. а лучше не заниматься херней, скрыть иконки и вручать абилки напрямую, без спелбуков
со спелбуками все норм.. вложенные скилы остаюсться после морфа.... сейчас проблема, что UnitMakeAbilityPermanent не везде работает....
call UnitAddAbility(u , 'AZ00')
call UnitMakeAbilityPermanent(u, true, 'AZ00')
если это юзаю в коде под кастомной функции PermSkill, то после морфа мой скил пропадает, если это действия делаю в коде, над PermSkill, то все работает нормально.
А нет.
call UnitAddAbility(u , 'AZ00')
call UnitMakeAbilityPermanent(u, true, 'AZ00')
не работает, скил 'AZ00' пропадает.... мб есть ограничение на функцию UnitMakeAbilityPermanent ?
6

» WarCraft 3 / Blizzard выпустит 1.27 для WarCraft 3

как насчет коллективного письма? 99% шанс что пошлют.... но все-же 1% есть
6

» WarCraft 3 / Пропадание скилов, после морфа.

ssbbssc:
то есть ты убрал функции добавления способностей и оставил функции makepermanent, а потом удивился, что абилки пропали\не появились?

и пожалуйста, хватит накручивать себе рейтинг
Ты понял вопрос???
6

» WarCraft 3 / Слишком большой код карты, как это исправить?

Pippetz:
Alexander12, а можно ссылку на более подробную инфу?
Вся инфа в редакторе. Сделай бесконечный цикл,он через определенное время оборвется. причина в том, что у всех вызываемых функций, есть лимит действий, тоже самое видимо у автора в функции инициализации карты. автору нужно создавать часть триггеров через ExecuteFunc.
6

» WarCraft 3 / Слишком большой код карты, как это исправить?

Ничё там не конфликтует, если тригов слишком много, часть просто ОТРУБАЕТСЯ.
Это факт.
Выход один - сжимать и сжимать.
проблема, то что обрывается function main. Нужно добавлять триггеры через ExecuteFunc
6

» War Engine/Новые возможности для warcraft 3 / Какие бы функции, вы хотели бы видеть в warcraft3.

Molecyla:
Относится это к новым функциям или нет, но я бы хотел видеть нормальное управление мышкой и что бы персонаж мог двигаться
что это значит
6

» RenderEdge / [RenderEdge] Экспериментальная версия

koloff:
ENAleksey, Ну что, можно будет поддержку полноценного широкого формата Вару прикрутить? Для меня тема животрепещущая, я сделал пару синематик сериалов и лил их на Ютуб в формате 4:3, потому что при 16:9, Вар довольно существенно искажал картинку. И сейчас, я уже пересмотрел было своё решение и хотел плюнуть на искажения картинки и лить в 16:9, и вот, получается, возможен идеальный вариант?
=)
можно, но есть минус, переводом экранных координат в игровые, пытался это исправить, пока безуспешно, есть пару догадок, но пока Алексея нет в скайпе.
6

» War Engine/Новые возможности для warcraft 3 / Какие бы функции, вы хотели бы видеть в warcraft3.

Кристофер:
Тайлы не пиксельной кистью, карандаш для рисовки областей.
изменения редактора не планируется.
Планируется добавления новых функций и триггеров в варик (например отлов клавиш, создание файла для сейвов, изменения параметров стандартных скилов, атач изображения поверх варика)
6

» WarCraft 3 / Дополнительная дальность атаки.

Количество уровней у улучшений, не влияет на скорость загрузки игры или еще на что-то. Делал 2млрд уровней улучшений, правда не на прямую в редакторе, через слк таблицу
6

» WarCraft 3 / Вызов функций вк 3, через mix (dll)

JaBeN_Симфер:
Можно ли сделать обмен данными с сервером?
Конечно, любую функцию в нашей длл, можно вызывать из под варика.
6

» WarCraft 3 / Вызов функций вк 3, через mix (dll)

Насчет вызова игровых функций (пользовательские).
Есть несколько способов.
  1. ExecuteFunc (для 1 игрока)
  2. Пересылка адресса нужной нашей функции.
  3. Цикл 0.01. на проверку данных со стороны игры, если в хештаблицы опр значение не равно 0, то вызываем функцию.
так насчет 2 способа, как передать адресс ?
без хука не обойтись. возьмем какую нибудь функцию, которая получает код, например StartThread , которая принимает code.
		*(BYTE*)	(GameDll + 0x2de2a0+ 0x0)	= 0xE8;	
		*(DWORD*)	(GameDll + 0x2de2a0+ 0x1)	= (DWORD)hookCHS - (dwGameBaseAddress + 0x2de2a0+ 0x5);
		*(BYTE*)	(GameDll + 0x2de2a0+ 0x5)	= 0xC3;		
И в итоге вызывается наша функция hookCHS, в ней же получаем код функции. по адресу вызываем сию функцию
6

» WarCraft 3 / Некоторые нативки.

native DebugS takes string s returns nothing
native DebugFI takes string s,integer i returns nothing
native DebugUnitID takes string s, integer i returns nothing
скорее всего тут дебаг включается
6

» WarCraft 3 / Некоторые нативки.

quq_CCCP:
Первая - создание потока, аналог ExecuteFunc() или TriggerExecute()
Вторая -пауза потока в ИИ, нахрена вам еще 1 TriggerSleepAction да и скорее всего будет фатал если юзать в common.j
Третья хз, мне хватает DisplayTextToPlayer....
есть ещё DisplayTextI и DisplayTextIII они не где не встречались. Кстати, если внимательно посмотреть на функции game.dll, можно без внешних прог добавить "скрытые нативки" пробую найти их
6

» WarCraft 3 / Отлов клавиш

Планирую в январе-феврале выпустить версию, со всем функционалом sharpcraft, +доп функции на save/load и отрисовка интерфейса поверх варовского.
6

» WarCraft 3 / ExecuteFunc десинк?

Clamp:
Ты глупенький? Русским языком написали и на языке JASS, что экзекутится функция из строки ДЛЯ ВСЕХ ИГРОКОВ, но У НУЖНОГО ИГРОКА СТРОКА ДРУГАЯ
как я задам из файла, екзекут другому игроку?
6

» WarCraft 3 / ExecuteFunc десинк?

if GetLocalPlayer() == Player(0) then
call ExecuteFunc ("ClearFunc")
endif
вызывает десинк, если даже в функции ничего нет
6

» WarCraft 3 / ExecuteFunc десинк?

quq_CCCP:
Там не локальный экзикут, там локальная строка...
Т.е имя функции разное, а экзикуты по расписанию у всех. там либо DoNothing либо смена\чтение имени нейтрального игрока, можно так же баловатся с кешем...
так в загрузке, в самом файле экзекутик и на нем десинкает ?
6

» WarCraft 3 / Data Manager

ExecuteFunc для локального игрока не работает? поэтому десинкает, или я не прав?