[Гайд] Игра «Камень, ножницы, бумага» в Minecraft: разбор основных принципов работы механизма

[Гайд] Игра «Камень, ножницы, бумага» в Minecraft: разбор основных принципов работы механизма

Довольно давно я не публиковал никаких новостей. И, говоря откровенно, многие категории новостей я не выпускал не просто долго, а очень-очень долго. Сегодня я постараюсь исправить эту ошибку, разобрав один интересный механизм собственного «производства» — игру «Камень, ножницы, бумага» на классических элементах (кстати говоря, моя работа прекрасно себя чувствует на сервере — никаких нареканий нет). Сделал я её довольно давно, по личным причинам, когда хотел построить указанную схему на сервере, где некоторое время играл. В своё время я опубликовал ссылку на карту с этой игрой в группе Кронда, где мою работу неплохо оценили. Настало время рассмотреть предложенный механизм и в рамках данного сайта. Приступим!

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

  1. Версия на дешифровщике. Игроки выбирают свой вариант, он запоминается, после чего система определения победителя выдаёт результат на основе просчёта всех комбинаций выигрыша, проигрыша и ничьей;
  2. Версия на компараторах. Игроки выбирают свой вариант, он запоминается, после чего система определения победителя выдаёт результат на основе сравнения мощности сигналов с помощью компаратора.


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

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

№ вариантаВыбор I игрокаВыбор II игрокаПобеда
КНБКНБIII-
1+++
2+++
3+++
4+++
5+++
6+++
7+++
8+++
9+++

«К» — камень; «Н» — ножницы; «Б» — бумага; «I» — первый игрок; «II» — второй игрок; «-» — ничья; «+» — выбор или результат.

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

  1. Передача выбора игроков в систему запоминания. Некоторое количество проводящих путей, цель которых — довести сигнал выбора игроков до ячейки памяти.
  2. Система запоминания выбора игроков. Несколько ячеек памяти (по одной на каждый возможный выбор каждого игрока), которые запоминают текущий выбор игроков для дальнейшей обработки.
  3. Система защиты от изменения выбора. После активации как минимум одной ячейки памяти у данного игрока, дополнительная ячейка памяти запоминает совершение выбора и блокирует передачу нового выбора данного игрока в систему запоминания.
  4. Передача выбора игроков в систему расчёта победителя. Некоторое количество проводящих путей, цель которых — довести сигнал запомненного выбора игроков до дешифровщика.
  5. Система расчёта победителя в партии. Тот самый дешифровщик. Имеется число линий по числу возможных комбинаций решений игроков. Каждая линия — расшифровщик. Если подано два сигнала так, что оба красных факела данного расшифровщика погасли, дорожка перестаёт гореть и таким образом активируется передача победителя на панель результатов.
  6. Передача победителя на панель результатов. Некоторое количество проводящих путей, цель которых — довести сигнал победителя до панели результатов. Проводящие пути и линии дешифровщика сгруппированы так, чтобы разводка была максимально простой.
  7. Система сброса предыдущего выбора игроков. Некоторое количество проводящих путей, цель которых — довести сигнал сброса (соответствующая кнопка расположена на панели управления у каждого игрока) до ячеек памяти, запоминавших выбор игроков и то, что этот выбор был ранее совершён.
  8. Система звукового оповещения на разных этапах игры. Несколько нотных блоков, которые уведомляют игроков о том или ином этапе обработки данных.


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



Ссылка на скачиваниеhttps://sites.google.com/site/tetstq/list/rock-paper-scissors/.

До скорых встреч!

Реклама:




Голосуй за новость:
(+4.604,3-0.30)
  • Просмотров: 1 035
  • Комментариев: 6
Рекомендуемое для Вас:

  1. ТруЪ Олдфаги-с
    Зарегистрирован: 23.02.2014
    Репутация
    (+428.3306,8-121.5)
    ArtemkaFominLive | Пользователь offline | (9 мая 2017 13:32) | Комментариев: 201 | Новостей: 8 |
    • 0

    Можете меня поздравить, господа и дамы. Я стал видеоблогером.

    Beauty-блога, к сожалению, не будет.
    -----------------------------------------------------------------------------
    I have a website, but no one knows it.

    Some people assume that I'm dead. In fact, I am at a certain intermediate state between life and death.

    I hope that someday I will be resurrected.

    New Year is the time of miracles.


    1. Просто хорошие люди
      Зарегистрирован: 13.05.2016
      Репутация
      (+37.537,50.0)
      Crona | Пользователь offline | (9 мая 2017 15:48) | Комментариев: 25 | Новостей: 1 |
      • +3

      Я бы плакал на твоём месте.


      1. ТруЪ Олдфаги-с
        Зарегистрирован: 23.02.2014
        Репутация
        (+428.3306,8-121.5)
        ArtemkaFominLive | Пользователь offline | (9 мая 2017 15:53) | Комментариев: 201 | Новостей: 8 |
        • 0

        А идея-то здравая.
        -----------------------------------------------------------------------------
        I have a website, but no one knows it.

        Some people assume that I'm dead. In fact, I am at a certain intermediate state between life and death.

        I hope that someday I will be resurrected.

        New Year is the time of miracles.


  2. ТруЪ Олдфаги-с
    Зарегистрирован: 16.07.2012
    Репутация
    (+577.5549,3-28.2)
    GeXOn | Пользователь offline | (9 мая 2017 16:46) | Комментариев: 1 012 | Новостей: 36 |
    • +1

    Видеоблогер хуже незаслуженного главреда.


    1. ТруЪ Олдфаги-с
      Зарегистрирован: 23.02.2014
      Репутация
      (+428.3306,8-121.5)
      ArtemkaFominLive | Пользователь offline | (9 мая 2017 16:51) | Комментариев: 201 | Новостей: 8 |
      • 0

      Вы предельно точны в своих формулировках. Грешен я, верно. Правда, в силу моей лени, подобные разборы будут появляться не чаще раза в год…
      -----------------------------------------------------------------------------
      I have a website, but no one knows it.

      Some people assume that I'm dead. In fact, I am at a certain intermediate state between life and death.

      I hope that someday I will be resurrected.

      New Year is the time of miracles.


      1. Просто хорошие люди
        Зарегистрирован: 29.11.2012
        Репутация
        (+53.734,5-19.2)
        zit445 | Пользователь offline | (19 мая 2017 23:33) | Комментариев: 82 | Новостей: 2 |
        • 0

        Фома с IF ???

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Последние сообщения с форума

Название темы Автор Статистика Последнее сообщение
Краш сборки модов

Тема в разделе: Моддинг

nevikat

Просмотров: 28

Ответов: 1

Автор: mr_uzik

Сегодня, 06:33

Форумный чат

Тема в разделе: Чат флудилка

3JIou_Kpunep

Просмотров: 6747544

Ответов: 131542

Автор: anatolgol

Сегодня, 04:08

Большой русско-руминиевский и руминиевско-русский словарь

Тема в разделе: Флудильня

NIGHTDANGER

Просмотров: 3728

Ответов: 29

Автор: AndrewGreat

Вчера, 22:48

Краш сборки.

Тема в разделе: Моддинг

nevikat

Просмотров: 27

Ответов: 0

Автор: nevikat

Вчера, 22:26

ECHO - Terra Incognita

Тема в разделе: Карта "в разработке"

MrDanklark

Просмотров: 982

Ответов: 35

Автор: greggonate

Вчера, 21:28