Wake of Gods Forum | Форум Во Имя Богов

Full Version: ERA Scripts 1.46f
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
(29.02.2020 18:54)XEPOMAHT Wrote: [ -> ]Надо будет попросить Берсеркера включить в состав хелпа по ERA полезный описатель контрольных слов за авторством Миханика двенадцатилетней давности, чтобы он у всех скриптёров всё-таки был.
В контрольном слове сада нет такой информации. Зато там можно давать не только драг.камни из ресурсов Sm
Но описатель контрольных слов конечно не помешает.

(29.02.2020 19:36)igrik Wrote: [ -> ]А эта функция сработает?
Хз, первый раз такую вижу. Надо будет попробовать.

(29.02.2020 22:13)Mr.S Wrote: [ -> ]Улучшение Алебардщиков аж в Кавалеристов (Алебарда->Мечник->Кавалерист) - жесткий абуз
Весь этот скрипт, на самом деле, жесткий треш с точки зрения баланса.
Я уже и забыл, что он есть в сборке (и почему). Навскидку даже не могу сказать, можно ли его как-то внятно переделать...
(29.02.2020 23:38)Algor Wrote: [ -> ]Весь этот скрипт, на самом деле, жесткий треш с точки зрения баланса.
Я уже и забыл, что он есть в сборке (и почему). Навскидку даже не могу сказать, можно ли его как-то внятно переделать...

Там простой скрипт в 44 строчки кода от Gamecreator (orig., 2012г.). Как по мне, хорошо вписывается с большим кол-вом других скриптов на утяжеление/изменение игры.
   Может когда-то и будет по другому, с еще большим кол-во апгрейдов по замкам (Есть мод, не совместимый с ES - "Amethyst Upgrades", если память не изменяет). Но пока для равноправия с ИИ только так..

P.s. Просто удалить лишние апгрейды будет достаточно, чтобы косяков не появилось?
Mr.S, в чтандартных вог-опциях, кстати, тоже есть подобный скрипт, но попроще. Но да, удаления строки должно быть достаточно.
(29.02.2020 22:18)Berserker Wrote: [ -> ]скинь rtf-файл, пожалуйста.

В понедельник только, сам файл с дроббокса давно стёрли уже какие-то гады.

(29.02.2020 23:38)Algor Wrote: [ -> ]В контрольном слове сада нет такой информации.

Конечно нет, но оно используется при установке флага "посещено". Написано ж выше, что в структуре игрока оно. Вот пример из кода игры:

Code:
mov     eax, o_ActivePlayer
mov     edx, 1          ; MType
mov     cl, [ebx]
shl     edx, cl         ; Shift Logical Left
mov     esi, [eax+0B8h]
or      esi, edx        ; Logical Inclusive OR
mov     [eax+0B8h], esi

Можете попробовать переписать это на ERM (Игрик точно сможет).
XEPOMAHT, спасибо, нужно обязательно сохранить.
(01.03.2020 00:10)XEPOMAHT Wrote: [ -> ]
(29.02.2020 23:38)Algor Wrote: [ -> ]В контрольном слове сада нет такой информации.
Конечно нет, но оно используется при установке флага "посещено". Написано ж выше, что в структуре игрока оно. Вот пример из кода игры:
Я в курсе, что нет. Отвечал в контексте предложения про справочник слов объектов от Механика

(01.03.2020 00:10)XEPOMAHT Wrote: [ -> ]Можете попробовать переписать это на ERM (Игрик точно сможет).
Подозреваю, в том коде, что igrik выше привел, как раз это и реализовано.
(01.03.2020 00:35)Algor Wrote: [ -> ]Подозреваю, в том коде, что igrik выше привел, как раз это и реализовано.

Подозреваю, что содовская функция MapItem_SetAsVisited умеет устанавливать посещённость только в структуре объекта карты, но никак не в структуре игрока. Т.е. это то же самое, что можно делать c помощью OB:C.
XEPOMAHT, да, не работает.
(01.03.2020 01:00)Algor Wrote: [ -> ]XEPOMAHT, да, не работает.
Значит щас напишем Ab

Berserker, вот чего лично мне явно не хватает в ERM, так это побитовых сдвигов.
Справка по OB:C от Миханика: Скачать
igrik, посмотрю, возможно можно модификатором сделать.
!!VRy3:Sd>3; сдвинуть на 3 вправо.
(01.03.2020 01:14)Berserker Wrote: [ -> ]igrik, посмотрю, возможно можно модификатором сделать.
!!VRy3:Sd>3; сдвинуть на 3 вправо.
А двумя никак? !!VRy3:Sd>>3;
На самом деле лишь бы возможность была, а как она оформлена - не важно.
igrik, за справку спасибо.
Bes, я думаю, всю ее содержимое можно не мудрствуя засунуть в ERM-help даже "как есть" - оно достаточно структурировано. Просто ссылкой из описания OB:C на отдельную страничку.

(01.03.2020 01:17)igrik Wrote: [ -> ]А двумя никак? !!VRy3:Sd>>3;
Если все имеющиеся d-операнды однознаковые, то зачем нагружать парсер и плодить разнообразие? Только для визуального отличия от операции сравнения?
(01.03.2020 01:23)Algor Wrote: [ -> ]
(01.03.2020 01:17)igrik Wrote: [ -> ]А двумя никак? !!VRy3:Sd>>3;
Если все имеющиеся d-операнды однознаковые, то зачем нагружать парсер и плодить разнообразие? Только для визуального отличия от операции сравнения?
Не только. Основная причина - потому что общепринятый стандарт отображения побитового сдвига.
igrik, тоже подумал про два. Можно, конечно. Будут логическими битовыми сдвигами, аналогами SHL/SHR команд ассемблера.

Вот смотрю на реализацию системы опыта и грущу. Линейный массив на 10000 элементов, линейный поиск любого объекта (по сложному ID, например номер героя + номер слота). Теперь понимаю, что сравнивать производительность ЕРМ по HE:C нельзя ни в коем случае. Там ещё по несколько раз одни и те же поиски на одну ЕРМ команду. Реализация ассоциативного массива в виде обычного массива — обычно юмор, а в ЕРМ — обыденность BadSorryMoral
(01.03.2020 01:23)Algor Wrote: [ -> ]igrik, за справку спасибо.
Bes, я думаю, всю ее содержимое можно не мудрствуя засунуть в ERM-help даже "как есть" - оно достаточно структурировано. Просто ссылкой из описания OB:C на отдельную страничку.
igrik, спасибо, хорошая статья. 132
Миханику огромная благодарность, где бы он нибыл

Algor, там даже если и брать всюстатью как есть мороки с форматированием станет не меньше, но обязательно включу, хотя я бы раскидал описание объектов по их ресиверам в комментарии, так удобнее при поиске б было,имхо, но я работаю на дядю, и он не одобрит Stop
Reference URL's