Current time: 25.11.2024, 12:42 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
ERA II
» WoG Era 2: Русская и Английская версии
Author Message
igrik Offline

Posts: 2819
Post: #4831

(15.10.2020 14:12)XEPOMAHT Wrote:  Для меня в любом виде ERM - такая же слабочитаемая лапша
Да, ERM1 это слабочитаемая лапша.
ERM2.0 это уже вполне читаемый код (конечно, если пользоваться именованиями).

(15.10.2020 14:12)XEPOMAHT Wrote:  Считаю, что если человек хочет программировать на высоком уровне, то он и должен конкретно изучать высокоуровневое программирование. Если хочет делать скрипты по принципам низкоуровнего языка - то использовать !!SN:G с умом. А если хочет делать "как получится" и "так сойдёт", как обычно получается у большинства скрипёров, то тут уже работает человеческий фактор: что-то проще сделать на !!re:;, ну а что-то и на !!SN:G, если !!re:; покажется слишком сложным или неудобным. Или наоборот.
Да, ты прав. Но в любом случае нужно стремиться к "правильному". Иначе у нас опять будет что-то наподобие "WoG Scripts", который написан через жопу.
15.10.2020 14:26
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #4832

XEPOMAHT, всё правильно пишу. Вредные или мешающие развитию конструкции, функции или элементы поведения сперва объявляются устаревшими, а в следующих мажорных версиях (4.Х) могут (есть вероятность) быть удалены. Такие формулировки я всегда использую по примеру других проектов. Это делается с тем, чтобы новые скрипты не использовали указанный функционал (и всегда можно сослаться на документацию с предупреждением), а в самых важных старых можно было сделать замену. Посмотри на эволюцию PHP, например. Она именно такая, плавная.

Quote:Для меня в любом виде ERM - такая же слабочитаемая лапша
Это личное уже. Я Феникс более десяти лет назад писал на ЕРМ + SCVS. Все именованные переменные и функции, макросы. И всё читаемо. Равно как и читаем код на ERM 2.0. Знание английского сейчас практически обязательное в кодинге, кроме 1С. Так код понимают люди из разных стран и регионов. Тут тоже ничего не поделаешь. Но писать можно для себя хоть на транслите.
!!VR(kolvoMonstrov):S(BAZOVOE_KOLVO_MONSTROV);

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


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
15.10.2020 14:34
Find all posts by this user Quote this message in a reply
XEPOMAHT Online
Moderators

Posts: 2356
Post: #4833

(15.10.2020 14:08)Berserker Wrote:      !!re i/0/(numStacks)/1/-1:;
    ...
    !!en:;

Лично для меня более-менее идеальным было бы так:

while...do

Code:
!!re y1/от/до/шаг&условие_продолжения_цикла:;
      ...
    !!en:;

do...while

Code:
!!re y1/от/до/шаг:;
      ...
    !!en&условие_выхода_из_цикла:;

Тогда и от !!SN:G в скриптах можно избавиться без особых напрягов.

(15.10.2020 14:26)igrik Wrote:  Иначе у нас опять будет что-то наподобие "WoG Scripts", который написан через жопу.

При том состоянии языка, в котором он был в 2001-2004 годы, по-другому вроде и не напишешь. Поэтому я и жду, когда ERM окончательно устаканится и можно будет со 100% уверенностью переписать все скрипты в нормальный вид без опасений их будущих отторжений в какой-нибудь ERA 4.0.

(15.10.2020 14:34)Berserker Wrote:  а в следующих мажорных версиях (4.Х) могут (есть вероятность) быть удалены. Такие формулировки я всегда использую по примеру других проектов. Это делается с тем, чтобы новые скрипты не использовали указанный функционал (и всегда можно сослаться на документацию с предупреждением), а в самых важных старых можно было сделать замену. Посмотри на эволюцию PHP, например. Она именно такая, плавная.

А заниматься обновлением скриптов, использующим старые erm-команды, кому придётся? Тут недавно обещали, что в ERA 3 на эволюции ERM наконец-то будет поставлена точка. Или всё-таки ждать ERA 4, в которой и будет итоговый набор erm-команд и триггеров, который уже никогда не поменяется?

(15.10.2020 14:34)Berserker Wrote:  Все именованные переменные и функции, макросы. И всё читаемо. Равно как и читаем код на ERM 2.0.

Помню, лет 5 назад скопировал несколько опций из ФМ в ERA+, которые потом пришлось методом научного тыка заставлять работать вне ФМ, т.к. была куча неявных зависимостей и так наскоком сложно было понять что-куда-зачем-почему (т.к. по каждой команде приходилось ворошить erm-хелп, а это считай что разбирать код вручную, что тогда это было легко читаемо для меня - не сказал бы так, скорее наоборот - код ФМ всячески ставил меня тогда в тупик, т.к. опыта в ERM тогда было очень мало).

(15.10.2020 14:34)Berserker Wrote:  Но писать можно для себя хоть на транслите.

Транслит - зло. Тот же WERD наполовину на кириллице, в ERM так же предпочитаю кириллицу.
(This post was last modified: 15.10.2020 15:39 by XEPOMAHT.)
15.10.2020 15:36
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #4834

Quote:А заниматься обновлением скриптов, использующим старые erm-команды, кому придётся? Тут недавно обещали, что в ERA 3 на эволюции ERM наконец-то будет поставлена точка. Или всё-таки ждать ERA 4, в которой и будет итоговый набор erm-команд и триггеров, который уже никогда не поменяется?
Обновлений ЕРМ не планирую существенных, но формулировки в документации оставлю и настаиваю, чтобы Бес это отразил в руководстве, чтобы новых SN:G неофитов не было Sm

Quote:Помню, лет 5 назад скопировал несколько опций из ФМ в ERA+,
Я неудачно отформатировал жёсткий диск и потерял исходники. После чего вынужден был из сжатой каши кода всё восстанавливать. Увы.

Quote:Транслит - зло.
На ERM 2 строгие правила для идентификаторов функций, констант и локальных переменных. a-zA-Z0-9 + для констант и функций _.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
15.10.2020 17:11
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #4835

(15.10.2020 17:11)Berserker Wrote:  
XEPOMAHT Wrote:Тут недавно обещали, что в ERA 3 на эволюции ERM наконец-то будет поставлена точка. Или всё-таки ждать ERA 4, в которой и будет итоговый набор erm-команд и триггеров, который уже никогда не поменяется?
Обновлений ЕРМ не планирую существенных, но формулировки в документации оставлю и настаиваю, чтобы Бес это отразил в руководстве, чтобы новых SN:G неофитов не было Sm
одна загвоздка... Бесу команда SN:G вполне импонирует и чёт он совсем не хочет её хоронить формулировками от разраба. 144 Я даж по секрету скажу, я добавил FU(OnRemoteEvent) в описаниях, но с аттрибутом на абзаце "display:hidden" 148 и скрытым местом клика с действием 'visible'. Ибо негоже скрывать некие "небезопасные" плюшки от людей (как это было с тем же XX:Z)
Короче, диссидент я ещё тот, таких надо из коллектива выгонять, по-хорошему
15.10.2020 19:04
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #4836

Если добавлять в документацию детали реализации, которые должны быть скрыты, то тогда и справедливо получать в лоб от условного Валерия, который поверил такой документации или использовал неподдерживаемую в будущих версиях особенность реализации. Доберусь я до тебя ещё 116


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
15.10.2020 19:37
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #4837

за 10 лет не добрался, и вряд ли щас это у тебя получится 103
15.10.2020 19:46
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #4838

Я отомщу. Укажу твой email на всех ресурсах в секции: «По вопросам вылетов и багов обращаться к Bes: ...@...» 85


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
15.10.2020 19:48
Find all posts by this user Quote this message in a reply
Bes Offline

Posts: 5422
Post: #4839

я ящик раз в неделю, если повезёт, смотрю, так что даж не страшно
15.10.2020 19:51
Visit this user's website Find all posts by this user Quote this message in a reply
Night Offline

Posts: 462
Post: #4840

Berserker, Посмотри работу команды !!SN:O всё таки. Она багает. Это так выглядит:

Достаточно использовать в скрипте такое(вариант из ERM-help'a):
Этого кода достаточно - герой исчезает при ПКМ на здании в любом месте, если сам Герой стоит на входе. Кликать нужно либо другим героем, либо можно сделать активным замок и кликать.



igrik,
Quote:Читайте про цикл for, который есть во всех языках программирования. Это самый простой и понятный цикл из всех возможных. Это базовые основы. Их важно знать!
Сам по себе цикл for простой до безобразия.

Понял, почитаю. Сяпки Yes

Вот Berserker недавно интересное сообщение про GOTO скидывал, почитал и даже понял основное.
Отличная статья и автор умнейший человек был - лаконично и довольно доходчиво написал всё, даже для не сильно посвященного в специфику программирования умудрился донести мысль. По себе оценил.

Так вот, если будет подобное, смежное или связанное с ERM'ом, его синтаксисом или подобное около-скрипто-геройское, то кидайте так же ссылки, указания, не стесняйтесь. Я уж точно прочитаю.

В годы обучения, программирование как-то мимо прошло, далеко не самый лучший был в изучении, если только с конца...Так ещё и времени с тех пор прошло, окончательно забылось.
Последние годы интересно стало, но прям целенаправленно изучать - нету такого сильного желания, склад ума не тот. А вот местами, для игр скрипты писать или по мелочи, сломать что-то если - пригодится. Занимаясь скриптами в Героях, тут приятное с полезным. Пишешь и изучаешь по мелочи программирование, принципы работы тех или иных функций, команд. Названия пусть и разные, а суть выполнения по большей части одна.

Quote:Что тут сложного?
В примере - ничего. Это у меня с !!co затык случился. Вот на тот момент я в сердцах резковато высказался.

Того описания в ERM-хелпе очень мало оказалось, а я циклы тогда мучил 3 дня подряд. Сложная для меня задачка одна оказалась.
Кстати, когда с утра сообщение ответа продумывал, как-то в голове щелкнуло, сравнил такое же использование в скрипте Algor'а и общее описание и понял, зачем нужно. В справке желательно конечно более развернутое описание дать. Например, что использование !!co поможет пропустить ненужное срабатывание в процессе выполнения !!re без остановки всего цикла. Это я уже как-то для себя так обозначил, а формулировка может и иной быть. Тем более Bes мне тут подобное оформил, можно и оттуда взять.
Просто без доп.пояснения для человека далекого от знаний подобного формата (как я...) суть команды совсем не очевидна была, без примера.

P.S. И это, igrik, может на "Ты"? Если конечно нету каких-либо особых предпочтений. А то я на год так-то младше и если Вы'кать, то с моей стороны Sm

Я конечно верен идеи, что в незнакомом месте с незнакомыми людьми нужно с вежливого и нейтрального "Вы" начинать общение, но я тут уже 7 месяцев обретаюсь активно, а посещал форум ещё с 2019, вроде не незнакомое место уже, да и с людьми пообщался.
Как-то сейчас, когда мне на "Вы", а я на "Ты", подобное на мой взгляд неуважительно выглядит, а если я на "Вы" начну - то излишне официально, хотя причин для такого казалось уже нету.Rolleyes
(This post was last modified: 16.10.2020 09:11 by Night.)
16.10.2020 05:00
Find all posts by this user Quote this message in a reply
XEPOMAHT Online
Moderators

Posts: 2356
Post: #4841

(16.10.2020 05:00)Night Wrote:  Этого кода достаточно - герой исчезает при ПКМ на здании в любом месте, если сам Герой стоит на входе. Кликать нужно либо другим героем, либо можно сделать активным замок и кликать.

Это не баг, а так работает оригинальная содовская функция. Если не умеете пользоваться !!SN:O и продолжаете игнорировать советы по использованию showhero и hidehero - 105
16.10.2020 11:05
Find all posts by this user Quote this message in a reply
Night Offline

Posts: 462
Post: #4842

XEPOMAHT,
Quote:Если не умеете пользоваться !!SN:O и продолжаете игнорировать советы по использованию showhero и hidehero - 105
Это очевидно, Ватсон, очевидно!)

Если бы умел, не спрашивал.

Всё, что не описано(или описано недостаточно понятно) в справке, поверь, это тёмный лес для меня, из-за чего такие моменты и проскакивают. По SN:O ранее спрашивал в теме про Вопросы по ЕРМ скриптам, там тоже никто не дал конкретное описание, как этот ресивер работает и что требуется - из этого логично следует, что раз у меня герой пропадает и ещё туда на его место другой герой влазит и они оба стоят в одной клетке, то воспринимается это как баг ресивера, а не мой недочёт в скрипте.


Или имелся ввиду другой смысл сообщения?

P.S. Указание нашёл, но конкретного применения не разумею.
У меня основная задача в скрипте, сделать так, чтобы показывало НАВЫКИ на ЛЮБОМ месте при клике на университет. То есть не только на Входе (желтом квадрате), а на красном также. И SN:O как бы прямо для этого и создана. При SN:O по проверке возвращает не 0 0 0 0, а значения навыков. Если одной команды мало и нужно ещё что-то подшаманивать, то хотелось бы узнать более конкретные предложения.

По ссылке, там 1 и 3 вариант я вообще хз как использовать, а вот 2 вариант не ясен ДЛЯ ЧЕГО именно нужно получать контрольное слово. Получить то можно, а дальше?
Хотя и 1 (showhero и hidehero) по смыслу перевода фраз вроде как-то поможет, но конкретики кроме названия значений нема. Что, куда, откуда?
(This post was last modified: 16.10.2020 13:18 by Night.)
16.10.2020 11:53
Find all posts by this user Quote this message in a reply
igrik Offline

Posts: 2819
Post: #4843

Berserker, проблема SN:O в том, что она не возвращает стуктуру героя/лодки, если они есть!
Вот такая должна быть реализация, чтобы герой не исчезал
16.10.2020 13:12
Visit this user's website Find all posts by this user Quote this message in a reply
XEPOMAHT Online
Moderators

Posts: 2356
Post: #4844

(16.10.2020 11:53)Night Wrote:  У меня основная задача в скрипте, сделать так, чтобы показывало НАВЫКИ на ЛЮБОМ месте при клике на университет. То есть не только на Входе (желтом квадрате), а на красном также. И SN:O как бы прямо для этого и создана. При SN:O по проверке возвращает не 0 0 0 0, а значения навыков. Если одной команды мало и нужно ещё что-то подшаманивать, то хотелось бы узнать более конкретные предложения.

Зачем это всё делать самому, когда есть готовый скрипт? Утащите у Хероманта и просто добавьте туда свой университет, не забыв указать автора.
16.10.2020 13:21
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16657
Post: #4845

igrik, спасибо, я обновлю. У меня реализация от gamecreator. Там же hide/show без обновления экрана, надеюсь?


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
16.10.2020 14:57
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group