Войти на сайт

Авторизация, ждите ...
×
  • Страница:
  • 1
  • 2
  • 3

ТЕМА: Лаборатория Амфилохия

Лаборатория Амфилохия 7 года 4 мес. назад #95047

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 688
  • Спасибо получено: 350
Скачал твою демку, как ты советовал, но что-то не нашел в ней урока по считыванию ноте-тегов
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95048

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
Внезапно, в странной теме.
Соль в том, что другие мои скрипты опираются на этот парсер. Самого урока именно по тегам может и не быть (каюсь). Но по сути там самое главное в моем недомануле
Amphicore::TextParser.parse_text("
Файербол требует газ, конечно же
<item> require_item 16 => 1 <end>
Ну и анимация конечно же
<item> cast_animation 4 
<+> fail_animation 7 <end>
Я забыл что делает этот ключ, но без него все ломается
<item> sacrifice_to_baal blood of virgin", 
Amphicore::TextParser::NOTE_PARSEKIT)
# => {:require_item => "16 => 1", :cast_animation => "4", :fail_animation => "7", :sacrifice_to_baal => "blood of virgin"}
А для нотов есть чисто
Amphicore::TextParser.get_note(item)
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95051

  • strelokhalfer
  • strelokhalfer аватар
  • Вне сайта
  • Архитектор Миров
  • Знатный грамотей
  • Сообщений: 1640
  • Спасибо получено: 1078
  • 2 место Организатор конкурсовПереводчикДаритель Стимкея2 место Сбитая кодировкаПрограммист Ruby
Amphilohiy пишет:
Кто-нибудь тут?
А что бы сразу хешем не принимать?
"Стрелок, что-то ты неочень похож на свой аватар..."(с)
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95052

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
Amphicore::MapFactory.apply_roller(pattern: 5, brush: 1, map: id, region: 1, layers: [0, 3])
Местами может быть неудобно.
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Последнее редактирование: 7 года 4 мес. назад от Amphilohiy.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95066

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 688
  • Спасибо получено: 350
И еще вопрос. Удаление эвента происходит точно так же как обычная команда или же нет? Очень интересен этот вопрос.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95067

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
Не совсем понятен вопрос, но перезаход на карту не вернет событие... Ничто его уже не вернет... Во всяком случае такие инструменты не предусмотрены.
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95069

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 688
  • Спасибо получено: 350
Не знаю как в асе, но в мв событие продолжает так сказать существовать, то есть оно все еще где-то там на карте, у него есть ид и прочее. А мне бы хотелось чтоб прям тру удаление, никаких следов.

И такая проблемка, демка запускается только через редактор, иначе выдает Еррор. Сохранение вообще не дает запустить, будто его нет.
Последнее редактирование: 7 года 4 мес. назад от Paranoid.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Amphilohiy

Лаборатория Амфилохия 7 года 4 мес. назад #95070

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
Егора выдает если пытаться загрузить а потом начать новую игру. Этот баг буду ловить, а сама сохраненка... Ну, она от старой версии и просто не рабочая, тут извините.
По хорошему события больше быть не должно, хотя учитывая некоторый ньюанс подгрузки карт надо понимать, что они подменяются по загрузке. Но в загруженной быть не должно.
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95072

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 688
  • Спасибо получено: 350
А где в скрипте указывается карта с шаблонами?
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95074

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
#===============================================================================
#                                                                    CONFIG CORE
#===============================================================================
module Amphicore
  EVENT_FACTORY_TEMPLATES = [2, 7]
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95075

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 688
  • Спасибо получено: 350
А, есть разница между картами? Или можно грузить все шаблоны с одной.

Сори за тупые вопросы.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95076

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
Особой нет, можно и с одной. Но есть один подвох тем не менее - из за устройства работы тайлсетов события, которые имеют графику тайлсета карты (B, C и др.) конвертируются из того, какими они были в шаблонной карте в те, которые будут на используемой карте (надеюсь понятно выразился). Тем не менее, если шаблон и используемая карта имеет один и тот же тайлсет, то разницу не будет. Если будешь использовать события, графика которых берется из тайлеста, то просто будет удобно иметь по карте шаблона на тайлест, в котором и будут события с тайлсетовой графикой.
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Последнее редактирование: 7 года 4 мес. назад от Amphilohiy.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95077

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 688
  • Спасибо получено: 350
Ну это и так понятно, спасибо. Заберу твой скрипт, очень поможет.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95178

  • Paranoid
  • Paranoid аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 688
  • Спасибо получено: 350
Амфи, возникла небольшая сложность, ты не мог бы сделать фикс для своей фабрики эвентов. Так как команда erase_event(@event_id) не хочет работать в маршруте события.
Администратор запретил публиковать записи гостям.

Лаборатория Амфилохия 7 года 4 мес. назад #95181

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
Ну, конкретно по скрипту лучше и писать в тему с фабрикой (который находится тут).
Собственно по самому фиксу - это еще не совсем ошибка. Судя по всему, по исполнению маршрута код выполняется не в интерпретаторе, а в событии. Для события я не дублировал интерфейс, но в будующем обновлении сделаю. Тем не менее интерпретатор не является главным исполнителем кода, можно обратиться напрямую к модулю фабрики.
Amphicore::EventFactory.erase(@id)
И да, для события id находится в @id, а для интерпретатора в @event_id. Это большой вопрос - буду ли я возится с окружением исполнения.
Тем не менее я по наводке поймал баг зависания, и над ним уже буду работать.
Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
Администратор запретил публиковать записи гостям.
За этот пост поблагодарили: Paranoid

Лаборатория Амфилохия 5 года 1 мес. назад #109615

  • Amphilohiy
  • Amphilohiy аватар
  • Вне сайта
  • Светлый дракон
  • Сообщений: 547
  • Спасибо получено: 666
  • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
*Сметает пыль с парты в коробочку*
Так!
Некоторое время назад я увидел в интернетах драму по поводу божественных программистских скилов YandereDev (тот, что пилит Yandere simulator). Все негодование выражается в этой картинке:
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]

Это подняло много криков, в том числе, что switch работает лучше, быстрее и вообще. Как по мне беда не в этом, но собрал я вас тут из-за этого. В общем я решил пустить парочку бенчмарков на nodejs чтобы проверить парочку альтернатив. Итого у меня набралось 4 варианта (примеры из 4 состояний под катом):
  1. if (value ==
ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]

  • if (value ===
  • ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]

  • switch(value){case
  • ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]

  • map[value]
  • ВНИМАНИЕ: Спойлер! [ Нажмите, чтобы развернуть ]



    Результат покажу в графике по ссылке. Результаты даже... радуют. Хочу отметить что шкала экспоненциальная, а падение линейное. По умолчанию я предполагаю что в таких случаях if и switch ищет по дереву. А вот объект вообще имеет константное время. По умолчанию я виню во всем хэш таблицы.

    Скачать пакет для ноды можно тут.
    *Вываливает пыль из коробки обратно на стол*
    Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
    Администратор запретил публиковать записи гостям.
    За этот пост поблагодарили: yuryol, Rude, Noxmils

    Лаборатория Амфилохия 5 года 1 мес. назад #109616

    • DK
    • DK аватар
    • Вне сайта
    • Светлый дракон
    • DKPlugins
    • Сообщений: 946
    • Спасибо получено: 1129
    • Даритель СтимкеяПрограммист JavaScript Проект месяца 3 местоПаладинВетеранПроект месяца 1 местоУчительРазработчикПроект месяца 2 местоПрограммист Ruby
    Что по осям расположено ?
    Администратор запретил публиковать записи гостям.

    Лаборатория Амфилохия 5 года 1 мес. назад #109617

    • Amphilohiy
    • Amphilohiy аватар
    • Вне сайта
    • Светлый дракон
    • Сообщений: 547
    • Спасибо получено: 666
    • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
    Долговато парился с графиком, что забыл их подписать.
    По Y количество операций в секунду (Герц), по X количество состояний а в скобках комбинаций (самих ифов, свитчей, ключей)
    Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
    Администратор запретил публиковать записи гостям.
    За этот пост поблагодарили: Noxmils

    Лаборатория Амфилохия 5 года 1 мес. назад #109618

    • yuryol
    • yuryol аватар
    • Вне сайта
    • Архитектор Миров
    • Сообщений: 1704
    • Спасибо получено: 2729
    • Оратор2 место 1 место в ГотвУчительКомпозиторОрганизатор конкурсовПобедитель конкурса3 место Готв
    Amphilohiy пишет:
    Долговато парился с графиком, что забыл их подписать.
    По Y количество операций в секунду (Герц), по X количество состояний а в скобках комбинаций (самих ифов, свитчей, ключей)

    я не понял итог:(

    типа чем больше вариантов, тем лучше себя показывает объект?
    а свитч всегда медленнее чем ифы?

    если так,то я рад за объект, ибо болел за него =З свитч аще дурацкая конструкция, какая-то инородная
    Администратор запретил публиковать записи гостям.

    Лаборатория Амфилохия 5 года 1 мес. назад #109621

    • Amphilohiy
    • Amphilohiy аватар
    • Вне сайта
    • Светлый дракон
    • Сообщений: 547
    • Спасибо получено: 666
    • 2 место ГотвПрограммист RubyУчительПобедитель Сбитой кодировкиОратор
    yuryol пишет:
    типа чем больше вариантов, тем лучше себя показывает объект?
    а свитч всегда медленнее чем ифы?

    если так,то я рад за объект, ибо болел за него =З свитч аще дурацкая конструкция, какая-то инородная
    Я бы скорее сказал что скорость у if и switch скорее одинаковая, но объект их догоняет только где-то на 30 ключах, и обгоняет где-то на 60.
    Lekste пишет:
    По-моему кто-то бенчмаркил неправильно.
    Мощное заявление, проверять, кончено же, ты его не будешь? Там архив валяется, всегда можно ткнуть пальцем где именно неправ.
    Lekste пишет:
    Насколько помню, в JS свитч использует хеш
    По-моему кто-то помнит неправильно. И что? Обнимемся и вместе пойдем?
    Вообще как по мне так не факт, что все реализации js имеют одинаковые решения (в конечном счете таких движков гора). А если предположить, что объект в данном случае работает на хэшах, то уже видно, почему для switch эта затея не очень - вычисление хэша довольно трудоемкое дело, относительно простого сравнения. А кейсов по 30-60 штук писать в коде мало кто удосужится в целом, кроме как в академических целях.
    Я верю, что иногда компьютер сбоит, и он выдает неожиданные результаты, но остальные 100% случаев это чья-то криворукость.
    Администратор запретил публиковать записи гостям.
    За этот пост поблагодарили: Noxmils
    • Страница:
    • 1
    • 2
    • 3
    Время создания страницы: 0.281 секунд