remal
нечто
offline
Опыт:
2,087Активность: |
Реализация дополнительных данных в объектах карты
Реализация дополнительных данных в объектах карты Вступление
На написание данной статьи меня подтолкнула наработка PitzerMike на WC3Jass.com – Interpreter Engine. В указанной теме он ссылается на "исследования" KaTTaNa – New Object Editor Fields. Я посчитал данную тему интересной и решил выложить сюда вольное истолкование-перевод.Начало экспериментов
Есть native функцияКод:
Берём файл Units\UnitMetaData.slk и добавляем в конец следующую строчку: Код:
Поехали
Берём любую абилу. В Графика-Цель заносим что-нибудь типа "hello". Смотрим что вернёт в игре такой вызов:Код:
Продолжаем. Заносим второй строкой в то же многострадальное поле нечто а-ля "TT". На этот раз в качестве последнего параметра в указанном выше вызове ставим 1. Результат ожидаем – "TT". Вывод: последний параметр в функции указывает на номер строчки в нашем поле. Дополнение: если последний параметр больше, чем максимальное кол-во строчек, то будет возвращаться последняя. Едем дальше
Хочется поиметь дополнительных данных для предметов и юнитов. Пробуем. Повторяем эксперимент из предыдущего раздела. ОБЛОМ. Функция ничего не возвращает. Читаем указанные вверху ссылки и видим, что, если импортировать в карту измененный Units\UnitMetaData.slk, то всё начинает работать. Пробуем. Работает.Теперь нюансы
MetaData slk-таблицы грузятся при подгрузке ПЕРВОЙ МАПЫ. Т.е., если человек играет в нашу карту после, например, доты, то у него ничего работать не будет, КРОМЕ АБИЛ И БАФФОВ. К сожалению, пока что не нашли способ это преодолеть.Примеры
Карты из аттачей
Выводы
Технология хороша для абил. Например – есть в команде штатный абильщик. Для него разрабатывается небольшой скриптовый язык на примере PitzerMike-ого и он может делать, не влезая в триггеры, разные удобные вещи, типа добавления скрытых абил при изучении геройской. При этом можно использовать несколько полей для данных EFFECT_TYPE_AREA_EFFECT и т.п. (смотрим common.j) Если на каждое повесить какое-либо событие (добавление, увеличение уровня и тп), то можно очень сильно облегчить работу абильщика.Если мы делаем мод, то тут перед нами открываются огромные возможности. Как пример – удобство при создании типов вещей. ЗЫ: технология работает в мультиплеере. ЗЗЫ: также в аттаче лежит пример такого UnitMetaData.slk ЗЗЗЫ: этим двиглом форума из постов вырезаются табуляции!!! Отредактировано remal, 28.06.2006 в 19:47. |
17.06.2006, 01:00 | #1
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
AnD
Weighted Companion Cube
offline
Опыт:
7,351Активность: |
О... я джас только изучаю, а вымне такую статью... =) Ну ладно, не отвечай. Отредактировано AnD, 17.06.2006 в 01:16. |
17.06.2006, 01:10 | #2
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
remal
нечто
offline
Опыт:
2,087Активность: |
Цитата:
извини, но статья не расчитана на новичков. не так давно я писал NETRAT-y, что пусть напишет что-нить, что было бы интересно читать профи.... но вот написал я. ЗЫ: на вопросы отвечу, но не на "мне ничего не понятно", а по конкретике. |
|
17.06.2006, 01:12 | #3
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
Van Damm
wait... what?
offline
Опыт:
22,268Активность: |
про способности знаю давно, вещь очень полезная. сам использую для сохранения в абиле параметров жассового спелла. очень удобно особенно если потом другой человек будет балансить мапу. (чтобы не лезть в жасс-код самой абилы) про итемы не знал. жаль только ограничение это, из-за которого не получится нормально использовать |
17.06.2006, 02:28 | #4
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
DioD
offline
Опыт:
45,134Активность: |
Это пошло от витригизера |
17.06.2006, 03:15 | #5
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
remal
нечто
offline
Опыт:
2,087Активность: |
беру пример с AnD-a.
АП. |
17.06.2006, 19:26 | #6
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
vlad_C0M
Босс DarkSkyTeam
offline
Опыт:
10,459Активность: |
Ого! .... Ремал, все достаточно круто, непонятно.... Но можно по Русски? Из всего прочитанного, я понял , что ты открыл нечто новое замечательное, и знаешь как это использовать... А как это работает, и что из себя представляет ты это не упомянул...
Примеры смотреть - это отнимает много времени...Опиши подробней пожалуйста! |
17.06.2006, 21:29 | #7
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
remal
нечто
offline
Опыт:
2,087Активность: |
vlad_C0M, ок. скажи где конкретно пояснить? |
17.06.2006, 21:31 | #8
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
remal
нечто
offline
Опыт:
2,087Активность: |
короче, накатал карту-пример:)
из вулкана лезут уродцы, задача их не пустить к хумам. нага изначально принадлежит другому игроку, контроль дан, чтобы можно было нагляднее смотреть.
ЗЫ: да, я знаю, что каст старфола сбивается. исправить это легко, но тут главное пример, а не изыски:) |
21.06.2006, 21:26 | #9
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
remal
нечто
offline
Опыт:
2,087Активность: |
неужели никому не интересно? |
22.06.2006, 03:52 | #10
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
remal
нечто
offline
Опыт:
2,087Активность: |
всего 5 просмотров 0 комментов. забавно:) даже на бру кто-то комментировал)))) |
23.06.2006, 19:18 | #11
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
DeT
offline
Опыт:
5,715Активность: |
да..я прокоментировал и еще рас скажу - что прикольно..дает неплохие возможности и уменьшает гемморой с триггерами условий..плюс еще парачка идей(кажем у спелла мона в графике-цель прописать что будет писаться над челом кастующим спел)и никаких условий=-)
DeT добавил: это еще например для итемоФ...тока е ремал открыл а перевел=-) (вроде так) |
23.06.2006, 19:22 | #12
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
remal
нечто
offline
Опыт:
2,087Активность: |
Цитата:
|
|
23.06.2006, 19:23 | #13
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|
NETRAT
offline
Опыт:
83,712Активность: |
Неплохо, но, судя по всему стабильно работает только для баффов и абил. Гм, это может существенно уменьшить обьемы файлов конфигов, ибо в жассовом конфиге строка занимает
Код:
|
24.06.2006, 15:33 | #14
+0/−0
Профиль |
Приват |
Поиск |
IP: Записан
|