Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
30 Oct 2010, 06:58
Сообщение
#1
|
|
|
Choziain Veteras Сообщений: 348 Спасибо сказали: 180 раз |
Не знал где открыть тему, но инфа вроде интересная.
http://heroescommunity.com/viewthread.php3?TID=33943 |
|
|
|
30 Oct 2010, 13:29
Сообщение
#2
|
|
![]() Immortal Сообщений: 1 468 Спасибо сказали: 1153 раза |
Ну вот и на этом поле у вогтим поражение.
-------------------- |
|
|
|
30 Oct 2010, 16:54
Сообщение
#3
|
|
|
Choziain Veteras Сообщений: 348 Спасибо сказали: 180 раз |
Похоже, что да.
|
|
|
|
30 Oct 2010, 22:47
Сообщение
#4
|
|
![]() допустим, мяў Сообщений: 24 131 Спасибо сказали: 13444 раза |
Берс, это имхо детский конструктор для начинающих скриптёров. Они же пишут, что охват триггеров 90% и ресиверов 40%. То есть, при имеющейся беспомощности ERM вообще, этот эмулятор и того не может...
-------------------- Вокруг столько фильмов, книг, музыки - а природа какая невероятная!
Если тебе скучно жить - ты совсем дурак. (Татьяна Черниговская) |
|
|
|
30 Oct 2010, 23:25
Сообщение
#5
|
|
![]() Immortal Сообщений: 1 468 Спасибо сказали: 1153 раза |
Цитата о есть, при имеющейся беспомощности ERM вообще, этот эмулятор и того не может... При имеющейся силе ЕРМ, превосходящей Луа в Героях 5 по выразительности (читать: возможностям), автор сможет дописать переходники к остальным триггерам и командам. Это не сложно, просто рутинно. Я предложил другую модель реализации на форуме, в десятки, если не сотни раз быстрее. -------------------- |
|
|
|
30 Oct 2010, 23:32
Сообщение
#6
|
|
![]() Etoslozhnostatus Сообщений: 8 681 Спасибо сказали: 16216 раз |
Я предложил другую модель реализации на форуме, в десятки, если не сотни раз быстрее. Имеешь в виду, писать скрипты на высокоуровневом языке, обрабатываемом потом PHP? -------------------- - Да ну!?
- Horn of the Argali гну! |
|
|
|
31 Oct 2010, 00:11
Сообщение
#7
|
|
![]() laughed as one fey Сообщений: 12 167 Спасибо сказали: 20605 раз |
Не, делать перехват триггеров не механикой "хуки вога - ерм - ангел.длл - луа.длл", а напрямую. Ну и ресиверы исполнять через нативный код.
|
|
|
|
31 Oct 2010, 00:46
Сообщение
#8
|
|
![]() допустим, мяў Сообщений: 24 131 Спасибо сказали: 13444 раза |
Цитата о есть, при имеющейся беспомощности ERM вообще, этот эмулятор и того не может... При имеющейся силе ЕРМ, превосходящей Луа в Героях 5 по выразительности (читать: возможностям), Сила ERM? Напиши на ERM скрипт, воскрешающий последний убитый отряд! Напиши на ERM скрипт, сажающий героя в лодку! Напиши на ERM скрипт, закрывающий карту-загадку! Напиши на ERM скрипт, обеспечивающий диалог герой-герой, или открывающий окно определённого города! Напиши на ERM скрипт, обеспечивающий посещение героем объекта без подтверждения! Напиши на ERM скрипт, ставящий на карту тюрьму! Не пиши про UN:C, с помощью UN:C можно всё, но всё это аналогично бинарной правке экзешника. C помощью UN:C можно написать геройский вирус. Слабо? Разве это не есть то, чего мы ждём от ЛУА - нормальной работы со всеми объектами, без исключений? -------------------- Вокруг столько фильмов, книг, музыки - а природа какая невероятная!
Если тебе скучно жить - ты совсем дурак. (Татьяна Черниговская) |
|
|
|
31 Oct 2010, 01:48
Сообщение
#9
|
|
![]() laughed as one fey Сообщений: 12 167 Спасибо сказали: 20605 раз |
Нет. От луа я жду нормальных именованных переменных, нормального синтаксиса и нормальной структуры программы. Ну и интерфейса для низкого уровня, да. А все функции реализовать всё равно невозможно.
|
|
|
|
31 Oct 2010, 08:43
Сообщение
#10
|
|
![]() Immortal Сообщений: 3 301 Спасибо сказали: 2643 раза |
Я не понял что это штука делает, но
Ограничения снимает эта штуковина или нет (127 лвл, 10 городов, 255 юнитов) -------------------- Удалено Администрацией. Браузеры жаловались на вредоносное ПО.
Ссылка на оригинальное изображение: http://herоeslibrary.nеt/Site_images/admin.jpg Ссылка на сайт по нажатию баннера: http://herоeslibrary.nеt (ссылки содержат кириллические символы вместо оригинальных) Видишь бяку, - упрости! (с) кто-то из выдающихся математиков) Учи матан & Сходи с ума (с) архидедус |
|
|
|
31 Oct 2010, 09:48
Сообщение
#11
|
|
![]() Immortal Сообщений: 1 437 Спасибо сказали: 2149 раз |
это язык скриптования, удобный и почти полноценный - не больше и не меньше.
|
|
|
|
31 Oct 2010, 13:47
Сообщение
#12
|
|
![]() Immortal Сообщений: 1 468 Спасибо сказали: 1153 раза |
Цитата Сила ERM? Напиши на ERM скрипт, воскрешающий последний убитый отряд! Напиши на ERM скрипт, сажающий героя в лодку! Напиши на ERM скрипт, закрывающий карту-загадку! Напиши на ERM скрипт, обеспечивающий диалог герой-герой, или открывающий окно определённого города! Напиши на ERM скрипт, обеспечивающий посещение героем объекта без подтверждения! Напиши на ERM скрипт, ставящий на карту тюрьму! Не пиши про UN:C, с помощью UN:C можно всё, но всё это аналогично бинарной правке экзешника. C помощью UN:C можно написать геройский вирус. Слабо? Разве это не есть то, чего мы ждём от ЛУА - нормальной работы со всеми объектами, без исключений? По твоим меркам все Герои должны быть написаны на ЕРМ. Иначе нельзя из ЕРМ управлять каждой возможностью игры. Достаточно того, что функционал позволяет реализовывать целые карты-миры-моды с абсолютно другой механикой, чего не сделать ни в четвёрке, ни в пятёрке. А Луа не панацея. Точно также нужно выполнять обратный реинжиниринг кода и писать переходники/функции для реализации нужных фич. -------------------- |
|
|
|
31 Oct 2010, 20:22
Сообщение
#13
|
|
![]() допустим, мяў Сообщений: 24 131 Спасибо сказали: 13444 раза |
Понятно. Я не знаю Луа, предполагал, что это си-подобный язык, дающий нам работу напрямую с классами. Примерно так (пишу на Делфи):
Код if Heroes[I].Owner in Alliances[0] then
begin Inc(Heroes[I].PrimarySkills[psSpellPower], 10); Heroes[I].DirectVisit(GetObject(0, 14, 52)); end else Heroes[I].ActiveSpells := Heroes[I].ActiveSpells or [spVisions]; -------------------- Вокруг столько фильмов, книг, музыки - а природа какая невероятная!
Если тебе скучно жить - ты совсем дурак. (Татьяна Черниговская) |
|
|
|
31 Oct 2010, 20:24
Сообщение
#14
|
|
![]() laughed as one fey Сообщений: 12 167 Спасибо сказали: 20605 раз |
Для этого классы надо расковырять.
А если они будут все разобраны - проще будет написать SDK для внешних DLL. Или вообще клон героев. |
|
|
|
01 Nov 2010, 09:35
Сообщение
#15
|
|
![]() Advanced Member Сообщений: 108 Спасибо сказали: 65 раз |
Цитата Понятно. Я не знаю Луа Понятно. Информацией не владеем, а громкие заявления и решительные суждения выносим. Ну-ну. Типично. -------------------- Голову долой, супостаты гнилородные!
|
|
|
|
01 Nov 2010, 14:13
Сообщение
#16
|
|
![]() Immortal Сообщений: 1 468 Спасибо сказали: 1153 раза |
hippocamus, есть делфи - пиши на нём, а ЕРМ команды вызывать функцией. Вот тебе и предполагаемый язык. Единственный недостаток - исходников не видно и не сохраняется в сейве.
-------------------- |
|
|
|
01 Nov 2010, 14:30
Сообщение
#17
|
|
![]() 😸🧡✊✌️ Сообщений: 16 496 Спасибо сказали: 3404 раза |
А зачем вызывать ERM-команды?
-------------------- Я слежу за тобой!
tolic.narod.ru![]() Цитата Всегда приятно осознавать, что кто-то делает что-то хуже, чем делал бы ты, если бы умел. Борис "Бонус" Репетур, "От винта!", выпуск 38. |
|
|
|
01 Nov 2010, 15:17
Сообщение
#18
|
|
![]() laughed as one fey Сообщений: 12 167 Спасибо сказали: 20605 раз |
Потому что искать родные функции иногда напрягает.
|
|
|
|
01 Nov 2010, 17:58
Сообщение
#19
|
|
![]() Immortal Сообщений: 1 468 Спасибо сказали: 1153 раза |
Потому что тысячи строк кода уже написаны в ЕРМ. Делать повторную работу = делать базу для замены ЕРМ. А от этого уже все отказались по понятным причинам. Собираюсь сделать плагин, реализующий описанный мною на HC метод. А там уж дело за модерами. Кто-то Луа, кто-то ЯП в DLL использует.
-------------------- |
|
|
|
01 Nov 2010, 21:35
Сообщение
#20
|
|
![]() Immortal Сообщений: 1 468 Спасибо сказали: 1153 раза |
Готово.
http://heroescommunity.com/viewthread.php3...mp;pagenumber=1 http://wogarchive.ru/category.php?id=9 -------------------- |
|
|
|
01 Nov 2010, 21:49
Сообщение
#21
|
|
![]() Etoslozhnostatus Сообщений: 8 681 Спасибо сказали: 16216 раз |
Berserker, можно поподробнее, что к чему?
-------------------- - Да ну!?
- Horn of the Argali гну! |
|
|
|
01 Nov 2010, 22:29
Сообщение
#22
|
|
![]() laughed as one fey Сообщений: 12 167 Спасибо сказали: 20605 раз |
На НС глянь, там вроде понятней.
Вроде как надо сначала создать "библиотеку" ERM-команд, которые нужно исполнять из длл. Выглядеть она должна примерно так: Код !?FU40741; !!ER:M^Needful erm receiver 1^; !!ER:M^Needful erm receiver 2^; Потом вызвать функции длл примерно так: SetErmExecTrigger(40741); ExecErmCmdByInd(1); |
|
|
|
02 Nov 2010, 00:02
Сообщение
#23
|
|
![]() Immortal Сообщений: 1 468 Спасибо сказали: 1153 раза |
Да, в таком ключе.
Код !?FU70000; !!HEv1:K; №0 убить героя с номером v1 !!HEv1:Ov2; №1 установить герою v1 хозяина v2 SetErmExecTrigger(70000); v1:=0; // Orrin ExecErmCmdByInd(0); выполнить 0-ую команду триггера v1:=1; v2:=RED; ExecErmCmdByInd(1); выполнить 1-ую команду триггера Переходники для Луа в итоге пишутся не сложно. Рутинно, конечно, из-за кол-ва ЕРМ команд и необходимости различать GET/SET синтаксис. И такой подход по быстродействию много предпочтительнее, чем выбрал GrayFace - натравливание объёмной процедуры FindErm на маленький кусочек текста, его анализ и динамическое выполнение. Хотя в таком случае можно выполнять команды любые, даже динамически сгенерированные. -------------------- |
|
|
|
![]() ![]() |
| Текстовая версия | Сейчас: 23 December 2025 - 07:12 |
|
Copyright by Алексей Крючков
Programming by Degtyarev Dmitry |
|