0
13
6 месяцев назад
0

» WarCraft 3 / Divine Roguelike

0
13
9 месяцев назад
0

» WarCraft 3 / Посоветуйте что прочесть про динамическое создание триггеров

Спасибо. Но вопрос я пока подержу немного открытым, на случай, если кто закинет ссылку на тематические статьи.
Я сам кое-что поискал из разных источников, но иногда информация противоречит друг другу. Возможно из-за большой разницы в датах.
0
13
9 месяцев назад
0

» WarCraft 3 / Посоветуйте что прочесть про динамическое создание триггеров

Тебе уже два раза написали: TriggerClearActions не работает, поэтому пишешь все действия в Condition и не паришься.
Я отвечал пользователям на их комментарии. Разве это плохо?

Забивать действия в условия я ещё не пробовал. Буду пробовать.
0
13
9 месяцев назад
0

» WarCraft 3 / Посоветуйте что прочесть про динамическое создание триггеров

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

Берёшь микроскоп, желательно электронный, и забиваешь. Не вижу проблемы.
Юморист. Я не думал, что это рубрика для квн
0
13
9 месяцев назад
Отредактирован Cancel
0

» WarCraft 3 / Посоветуйте что прочесть про динамическое создание триггеров

Задумка важна, т.к. для реализации одних же задач можно использовать разные методы
Не спорю. Но мой вопрос не заключался в том, какой метод лучше выбрать.
Вопрос касается работы с динамическими триггерами.
Я спрашиваю о том, как забивать гвозди, а не о том, уместно ли мне пользоваться гвоздями.
0
13
9 месяцев назад
0

» WarCraft 3 / Посоветуйте что прочесть про динамическое создание триггеров

А в чем собственно задумка?
На карте переодически создаются локации с генерящимся сюжетом, обладающие своими механиками, и для каждой локации генерятся свои пулы триггеров.
Да и разве задумка важна, вопрос же был про то, как работать с динамическими триггерами.
0
13
9 месяцев назад
Отредактирован Cancel
0

» WarCraft 3 / Посоветуйте что прочесть про динамическое создание триггеров

Нашёл такое вот обсуждение. warcraft3ft.clan.su/forum/60-40146-1

Всё просто, TriggerClearActions тупо не работает.
т. е. в теории, каждое действие при добавлении можно сохранять в массив, и при удалении триггера удалять каждое действие из этого массива. Правильно?
2
13
9 месяцев назад
Отредактирован Cancel
2

» WarCraft 3 / Группы или таблицы в луа?

Проверить наличие разного порядка в варе довольно просто. Создать карту на несколько человек. Разместить на карте N разных юнитов. Во время инициализации вызывать такой код:
Да, спасибо, примерно такую проверку я и собирался провести когда в следующий раз соберу людей.
Но сейчас я уже не вижу в этом тесте необходимости, как я уже писал выше.
Может я и доходяга, но не настолько, чтобы упорствовать когда три опытнейших разработчика мне говорят одно и то же.
Hate, nazarpunk, PT153, Ещё раз спасибо за уделённое время и вложенные усилия на разжёвывание. Мне теперь даже неловко стало за ваше время, которое я потратил.
Постараюсь компенсировать это выдачей интересной карты для сообщества 👍

Cancel, там есть код, запусти его несколько раз подряд и понаблюдай за выводом.
Этот момент я понял, но я не был уверен, что в рамках запуска одной карты при однократном и одновременном вызове паирса одной и той же таблицы для разных игроков будет выдана разная последовательность. А чтобы это проверить я намеревался собрать людей для тестирования. Но теперь уже не вижу в этом необходимости.
0
13
9 месяцев назад
0

» WarCraft 3 / Группы или таблицы в луа?

Или ты мой коммент проигнорил?
Нет, не проигнорил. Я его не понял.
0
13
9 месяцев назад
Отредактирован Cancel
0

» WarCraft 3 / Группы или таблицы в луа?

PT153, спасибо за развёрнутый ответ!
Но я, если честно, не понял, как из приведённой выдержки документации ты сделал вывод о том, что порядок может быть не идентичным на разных машинах? Где намёк на то, что next ведёт себя непредсказуемо? Увидел лишь намёк на то, что не стоит добавлять ключи во время прогонки, так как поведение при этом не будет предопределено. Возможно, здесь проблема в языковом барьере, так как я пропускаю такие тексты через переводчик, но из выдержки я такой информации не нашёл. Но, опять же, это не значит, что это не правда, просто уточняю.
или "порядок перечисления индексов не указан" == "порядок непредсказуем"?
Хотя на самом деле, если кто-то проводил реальные полевые тесты, то этого достаточно. Также достаточно и того, что три профессионала выразили общую точку зрения.
Поэтому - всем спасибо за разъяснения.
Загруженные файлы
0
13
9 месяцев назад
0

» WarCraft 3 / Группы или таблицы в луа?

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

Хм, ну, кстати, может быть из-за того, что эти действия происходят в одном кадре, проблем и не возникало.
У меня отдельно функции, которые меняют данные в таблицах, и отдельно, которые переодически актуализируют эти данные на игровой сцене по мере востребованности (например, локации появляются только когда к ним подходит кто-то из игроков).
Надо будет произвести вывод информации, чтобы потом сравнить между игроками в какой последовательности что вызывалось за одну сессию.

Сейчас пересматриваю код, и думаю, что возможно вы и правы, я так не нахожу где логика может поломаться, что значени явызовутся в разной последовательности, так что мои сегодняшние проверки могут оказаться не валидными.
Если это так, то приношу извинения перед Hate за то, что преждевременно вспылил.
Как соберу людей для тестирования, перепроверю другие алгоритмы.
0
13
9 месяцев назад
Отредактирован Cancel
0

» WarCraft 3 / Группы или таблицы в луа?

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

» WarCraft 3 / Группы или таблицы в луа?

ну правило одно, уже писал. пейрсы и логика игры завязанная на этом вылетет в отстрел филейной части.
если ты решаешь что делать с юнитами например, кого то похилить, или подвинуть. это все меняет логику игры
у меня они постоянно участвуют в изменении логики: над юнитами из списка происходит воздействие, связенное с перемещением по карте
0
13
9 месяцев назад
0

» WarCraft 3 / Группы или таблицы в луа?

рандомный заскринил
рандомный, просто показал, что я не использую IDE для варика. Хотя и на этом рандомном скрине на 4-й строке с конца можешь увидеть присовение нечисловых ключей, но это случайно попало, не преднамеренно.
я тоже в карте использую pairs, и я не говорил о том, что при 100% использовании пейрсов у тебя 100% десинков. речь шла о том, что пейрсы с логикой игры могут привести к разному результату у разных игроков что означает десинк. до тех пор, пока это не приводит к изменению логики игры, можно использовать пейрсы
Вот это уже конкретнее, спасибо.
Если в каких-то определённых кейсах паирсы вызывают проблему, хотелось бы отловить эти кейсы.
Если я с таковыми встречусь - обязательно дам знать.
Также буду благодарен, если кто-то поделится конкретными кейсами использования, после которого начинают происходить проблемы.
Пока что могу сказать, что у меня все данные в карте хранятся через вложенные таблицы, часть из которых используют в качестве ключей самые разные данные - от строк до юнитов и таблиц.
Пересчёты происходят регулярно и в больших объёмах.
Первые тесты показывают, что проблем с десинками нет.
Но не исключено, что это может быть плавающей багой. Так как опыт подсказывает, что некоторые кейсы могут начать всплывать в определённых ситуациях (например - если используются разные версии локализации)
0
13
9 месяцев назад
0

» WarCraft 3 / Группы или таблицы в луа?

Запусти этот код несколько раз прям из IDE
С чего ты взял, что я пользуюсь IDE для варика?
Мне, как пещерному человеку, хватает дефолтного редактора.
Загруженные файлы
0
13
9 месяцев назад
Отредактирован Cancel
0

» WarCraft 3 / Группы или таблицы в луа?

Я так понимаю, что ты видный специалист по системе и у тебя есть выдержка из документации и тесты?
Давай говорить откровенно: я не стремаюсь чего-то не знать, и в этой беседе несколько раз это подчеркнул.
Не стрнёмно чего-то не знать.
Знаешь что стрёмно? Стрёмно выдавать неподтверждённую инфу как кладезь знаний, а потом ещё и не признавать огда обсираешься. Вот это уже признак идиотизма.
Чел утверждал, что использование паирсов вызывает десинки, игнорировал слова о том, что в идентичных ситуациях для всех игроков порядок значений будет одним и тем же. Пять раз, ромашка, проигнорил.
В итоге он не смог доказать ни теорией (отссылая в гугл), ни практикой.
Я не поленился, вытащил людей, чтобы устроить стресс-тест в варике, и знаешь что? Последовательность значений всегда была одинаковой.
Я использовал в качестве ключей и индексы, и юнитов, и даже другие таблицы, с разной степень вложенности - и летает на ура.
Может, конечно, я не проверял какие-то особые ситуации. Как я подчёркивал выше, я не обладаю всей экспертизой, и потому запросил кейсы (если человек что-то утверждает и обвиняет других в глупости, то явно же он не настолько глуп, чтобы не иметь при этом пруфов, верно?)
Но нет, человек продолжил обсираться, хотя если он прав - доказать это достаточно просто - привести хотя бы один кейс, пример, по которому паирсы вызывают десинку. Но он этого не сделал. А знаешь почему? Потому что балабол, который считает, что раз он на этом сайте находится долго и его тут многие уважают, то может нести вскую пургу и агриться, если его мнение подвергается сомнению.

Несколько часов мне доказывал, что я непробиваемый, вместо того, чтобы взять и проверить свои слова. Что паирсы вызывает десинки. Он даже ляпнул, что и без паирсов в вышеприведённом коде будут десинки, только почему-то не уточнил в каком месте.

Но на этом человек не остановился, и пошёл дальше, откопал мой январский вопрос про десинки текстов и стал его обсмеивать, что у меня "даже тексты вызвали десинки", xgm.guru/p/wc3/Mogut-li-stroki-vyzyvat-rassinkhron-5ak
И знаешь что? Тексты действительно вызывают десинки если установить первого юнита взяв за основу имя второго юнита если ты играешь с пользователями, использующими разную локализацию.
Ты это знал? Я вот не знал. Столкнулся, искал, нашёл. И смысл раскапывать старые темы? Что он этим пытался доказать?
0
13
10 месяцев назад
0

» WarCraft 3 / Группы или таблицы в луа?

думаем
ты глупенький, вот сам и думай.
Мы только что перепроверили всё - нет никаких десинков. Играли час, за это время таблицы пересоздавались сотни раз, и в каждой были сотни значений. Всё прошло чисто.
Я повторял тебе 5 раз, повторю и шестой - для всех пользователей последовательность ключей одинаковая.
Знаешь почему?
Потому что это для тебя ключи беспорядочны, а для системы они упорядочены в байтовом представлении, это нужно для того, чтобы быстрее осуществлялся поиск ключей системой.
Мало того, что ты не знаешь, как работает система, так ты ещё и настаиваешь на своей непроверенной точки зрения, намекая на то, что я думать не умею.
Да ещё и мои старые темы откапываешь. Клоунада, не иначе.

особенно смешно читать, что у меня нет экспертизы)
Ты на меня наехал и сам обосрался. Я из-за твоей дезинфы потратил время, на то, чтобы её перепроверить и на практике убедиться, что ты балабол. Надеюсь, я с твоей "экспертизой" сталкиваться больше не буду.
0
13
10 месяцев назад
0

» WarCraft 3 / Могут ли строки вызывать рассинхрон?

а, так у тебя уже были десинки, кекв. и зашла даже речь за строки. ляяя. только почему то в моей карте, где локализация под 2 языка ноль десинков :)
ну, как я писал уже - устанешь биться об стену из-за своего упрямства - напишешь
хватит балаболить, мы только что проверяли - не вызывают паирсы десинки. Учи матчасть. Мапы сортируют информацию по байтам, для того, чтобы был ускоренный доступ к данным. Это значит, что для всех игроков ключи имеют одинаковые последствия.
Мало того, что ты говоришь то, о чём не знаешь, так ещё и выкапыаешь мои старые темы, клоун.
0
13
10 месяцев назад
Отредактирован Cancel
0

» WarCraft 3 / Группы или таблицы в луа?

Собственно, буду проверять на тестах
1
13
10 месяцев назад
1

» WarCraft 3 / Группы или таблицы в луа?

просто поражён глупостью
не поражайся своей глупости, тебе с ней жить.
упорядочивание элементов происходит не по индексам, а по байтовым представлениям (это нормальная история для мапов), поэтому с точки зрения человека упорядоченность является хаотичной.
Но хаотичная упорядоченность одних и тех же элементов будет всегда одинаковой, сколько бы раз ты не запускал скрипт.
Ты заранее не сможешь сказать в каком порядке будут располагаться элементы, но многократное пересоздание мапов с одними и теми же элементами в итоге приведёт к идентичной последовательности пар.
Это по стандарту LUA и C.
Если, конечно, в самом варике нет каких-то подводных камней, которые для разных клиентов заставит в разной последовательности выдавать одни и те же элементы.
Я о таких подводных камнях в рамках варика не знаю, спросил у тебя - знаешь ли ты про них, на что ты высокомерно заявил, что нужно изучать таблицы. Ну так если брать вне варкрафтского контекста, то я тебе по стандарту языка могу сказать, что последовательность при одинаковом контексте будет одинаковой.
Если у тебя нет экспертизы - так и скажи: "я не проверял, но мне кажется что...", а не бросайся словами о чужой глупости.
Отрефлексируй это.
Далее, ты сказал, что и без pairs будет ошибка синхронизации.
Возможно, я не проверял (пока не с кем проверить), и нюансов варкрафта знаю явно меньше, чем большинство здешних пользователей.
Так где же может возникнутьошибка? На этапе объявления таблицы; добавления в неё элемента?
1
13
10 месяцев назад
1

» WarCraft 3 / Группы или таблицы в луа?

возвращайся
даже если твои ответы верны, без аргументов и пояснений они не многого стоят и задачи не упрощают.
без приведённых пруфов всё равно придётся набирать людей и тестировать.
если бы я не слушал, я бы сказал что ты всё врёшь, а я лишь запросил подтверждения, и тебя это выбесило (видимо, привык, что тебе все на слово верят)
Если у тебя проблемы с агрессией, прошу обходить меня стороной.
0
13
10 месяцев назад
0

» WarCraft 3 / Группы или таблицы в луа?

нет, ну если ты слушать людей не хочешь
Я слушаю людей, в отличие от некоторых. Сорян, что фильтрую поступающую от них информацию. Это я, конечно же, зря.
0
13
10 месяцев назад
Отредактирован Cancel
0

» WarCraft 3 / Группы или таблицы в луа?

причем ты сам в курсе что это не сортированный список. это для тебя не аргумент? или что
До тебя всё никак не дойдёт, что отсутствие сортировки не означает разную упорядоченность.
На всех устройствах порядок будет одним и тем же, просто не отсортированным.
Для тебя это слишком сложная концепция?
0
13
10 месяцев назад
Отредактирован Cancel
0

» WarCraft 3 / Группы или таблицы в луа?

раз ты сам знаешь что это не сортированный список, почему спрашиваешь?
вообще сюр какой то, знаешь что оно упорядочено как попало и удивляешься что может пойти не так)
Ты заявил, что это путь к синку и не дал аргументаций, вот я и спросил - может у тебя есть эти аргументы или экспертиза. Но, видимо, их нет.
Упорядочено как попало - не аргумент к синку.
Аргументом было бы, если бы была инфа что в разных ситуациях при идентичных случаях она сортируется по-разному.
Но ты оба раза оставил за скобками этот важный фактор.
Значит ты, скорее всего, сам этого не знаешь, и почему-то не способен этого принять.
Ну а я тебя спрашивал не с целью завалить, потому что я и сам не знаю подводные камни взаимодействия варика с луа. Я подумал, что ты дашь какую-то инфу по теме, окторую сам же обозначил.
0
13
10 месяцев назад
0

» WarCraft 3 / Группы или таблицы в луа?

потому что гуглите как работают таблицы в луа
Я знаю как работают таблицы в lua (это один из самых популярных скриптовых языков). Pairs даёт не отсортированные ключи, не отсортировано <> нестабильно упорядочено.
Может у тебя есть пруфы, что на разных устройствах в идентичной ситуации pairs будет выдавать разные последовательности?
Или, может, ты опираешься на кейсы, согласно которым в рамках варкрафта pairs ведёт себя нестабильно и вызывает синки?