Суть в том, что там вводится дополнительная фиктивная координата и те пересчитываются в обычные x,y. Там есть все формулы, правда не сказано, что ещё нужна поправка, если мы хотим в каждом ряду отсчитывать с нуля, но её легко вывести из наблюдений.
Если же просто по быстрому перебирать соседей отталкиваясь от x,y, то нужно использовать смещения координат для четных и нечетных рядов.
Это вам повезло, если в вашей комнате сейчас, как и 30 лет назад, находится человек, готовый с вами сыграть. Если между вами тысячи километров, то это уже сложнее, надо шарить экран или вебкамеру ставить или ещё что-то придумывать. Согласитесь, это не очень удобно.
Но это, на самом деле, ерунда. Проблема в том, что среди всех ваших знакомых может вообще не найтись человека, согласного сыграть прям щас. А ради незнакомого человека вы вряд ли будете всё это городить. Да и как вообще на него выйти.
Идея же в чём: играешь себе в браузере, крошишь мобов, а когда появляется свободный человек онлайн, перекидывает на битву с ним.
Лучше даже смотреть на netlify, на itch как-то странно работает на мобилках и это я ещё отключил флаг «mobile friendly», с ним вообще на мобилках не запускается.
Вот как раз таки бензольное кольцо без проблем объясняется валентностью 4. Это потом уже спектроскопией выяснили, что все связи в кольце равнозначные (но и в этом случае можно объяснить). А уж резонансные формулы всякие и т.п. поди в школе объясни. Да и никто не обещал, что валентность есть величина постоянная.
Да, какой вопрос, такой и ответ, извините. Полный вопрос должен был звучать так:
Допустим мы не делаем такой глупости, как сто раз вычисляем синус одного и того же угла. Допустим, нам достаточно только одной проекции, нет нужды вращать камеру. Наше решение обязательно браузерное, так что никаких Си. Пускай у нас нет поверхностей, только проволочные каркасы. Пускай нам нужно отрисовать порядка тысячи линий. Имеет ли смысл подобный движок или всё равно WebGL будет эффективнее?
for (const v of vs) { point(screen(project(translate_z(rotate_xz(v, angle), dz)))) }
тут бы хорошо из rotate вынести за скобку вычисление синуса и косинуса. И вообще, как у этой штуки с производительностью? Поди с WebGL как-нибудь будет более производительно?
Это и не RL в привычном понимании, а попытка взглянуть на задачу RL с немного другого ракурса. С небольшим экспериментом. А что касается терминологии, там используются разве что "агент", "действие", "окружение" и "траектория", но это настолько общие термины, что их можно использовать и в этом контексте.
+ инициатива, атака, защита, "геройская" формула для вычисления урона, ответка
Добавил бары с количеством и с индикацией текущего здоровья.
Добавил свойства мин и макс урон, заменил заглушку атаки на нанесение урона в диапазоне с учетом кол-ва
скрин
да, такого донатного добра полно
p.s. судя по всему, это рекламный бот-коммент
спасибо!
ну вот типа такого, только в браузере
про гексагональные сетки есть хороший сайт https://www.redblobgames.com/grids/hexagons/.
Суть в том, что там вводится дополнительная фиктивная координата и те пересчитываются в обычные x,y. Там есть все формулы, правда не сказано, что ещё нужна поправка, если мы хотим в каждом ряду отсчитывать с нуля, но её легко вывести из наблюдений.
Если же просто по быстрому перебирать соседей отталкиваясь от x,y, то нужно использовать смещения координат для четных и нечетных рядов.
Спасибо большое за поддержку!
Да, тяжело делать что-то нудное. Но для меня как раз графическая часть кажется наиболее нудной. Остальное должно пойти пободрее.
Про паттерны интересно, посмотрю, спасибо. Вряд ли я их буду реализовывать, но информация ценная.
Это вам повезло, если в вашей комнате сейчас, как и 30 лет назад, находится человек, готовый с вами сыграть. Если между вами тысячи километров, то это уже сложнее, надо шарить экран или вебкамеру ставить или ещё что-то придумывать. Согласитесь, это не очень удобно.
Но это, на самом деле, ерунда. Проблема в том, что среди всех ваших знакомых может вообще не найтись человека, согласного сыграть прям щас. А ради незнакомого человека вы вряд ли будете всё это городить. Да и как вообще на него выйти.
Идея же в чём: играешь себе в браузере, крошишь мобов, а когда появляется свободный человек онлайн, перекидывает на битву с ним.
Сорри, ссылку на проект на потыкать то я не прикрепил. Сейчас добавил в статью и здесь продублирую:
на itch.io: https://titanplayers.itch.io/heroes
на netlify: https://nheroes.netlify.app/
Лучше даже смотреть на netlify, на itch как-то странно работает на мобилках и это я ещё отключил флаг «mobile friendly», с ним вообще на мобилках не запускается.
я склоняюсь к тому, что нужно ограничение на время хода
Возможно, попробую другие генераторы или найму человека.
Кнопки такой не будет, ведь если команда уйдёт на сервер её уже не отменить. Если есть совет как сделать удобнее - пишите.
а как играть с другими людьми?
Вот как раз таки бензольное кольцо без проблем объясняется валентностью 4. Это потом уже спектроскопией выяснили, что все связи в кольце равнозначные (но и в этом случае можно объяснить). А уж резонансные формулы всякие и т.п. поди в школе объясни. Да и никто не обещал, что валентность есть величина постоянная.
спасибо
Да, какой вопрос, такой и ответ, извините. Полный вопрос должен был звучать так:
Допустим мы не делаем такой глупости, как сто раз вычисляем синус одного и того же угла. Допустим, нам достаточно только одной проекции, нет нужды вращать камеру. Наше решение обязательно браузерное, так что никаких Си. Пускай у нас нет поверхностей, только проволочные каркасы. Пускай нам нужно отрисовать порядка тысячи линий. Имеет ли смысл подобный движок или всё равно WebGL будет эффективнее?
тут бы хорошо из rotate вынести за скобку вычисление синуса и косинуса. И вообще, как у этой штуки с производительностью? Поди с WebGL как-нибудь будет более производительно?
Это и не RL в привычном понимании, а попытка взглянуть на задачу RL с немного другого ракурса. С небольшим экспериментом. А что касается терминологии, там используются разве что "агент", "действие", "окружение" и "траектория", но это настолько общие термины, что их можно использовать и в этом контексте.
Посмотрел. Это довольно старый метод, но от него пошло много других, который и сейчас активно используются. Меня больше всего заинтересовал TD-MPC2.
Ценное замечание. Посмотрю обязательно