Arduino Mastermind Game

Introduction: Arduino Mastermind Game

About: Artista brasileiro interessado em gambiarras no geral!

I created this little game as a hobby for my children during the Covid-19 quarantine. I had already seen some versions for two players on the Internet. But I wanted a version in which the player would challenge Arduino itself, because then I could turn the game into a puzzle for Escape Room.

===

Eu criei esse jogo como um passatempo para os meus filhos durante a pandemia de Covid-19. Eu já vi algumas versões do jogo para dois jogadores, usando o Arduino como tabuleiro. Mas eu queria uma versão em que o jogador pudesse desafiar o próprio Arduino, porque pensei que poderia tornar esse jogo um quebra-cabeça para Escape Room.

Supplies

Arduino Leonardo x 1

NeoPixel NeoMatrix x 2

Rotary Encoder with Push-Button×1

Buzzer x 1

Battery Holder, 18650 x 2

Step 1: Schematics and Code

The game works like this: there are seven colors available and a code with four colors, without any of them being repeated. The player's goal is to find out what is the sequence of four colors in a maximum of sixteen attempts. When the player hits one of the colors, but misses the position, the computer lights up a red LED. When the color and position are correct, the computer lights up a green led. With these tips and some strategy, the player must discover the password.

In my research, I found some versions of this game, but I decided to create one using the fewest possible Arduino pins, in order to create other puzzles on the same board.

==

O jogo funciona assim: existem sete cores disponíveis e um código com quatro cores, sem que nenhuma delas se repita. O objetivo do jogador é descobrir qual é a seqüência de quatro cores em no máximo dezesseis tentativas. Quando o jogador acerta uma das cores, mas erra a posição, o computador acende um led vermelho. Quando acerta a cor e a posição, o computador acende um led verde. Com essas dicas e alguma estratégia, o jogador deve descobrir qual o código correto.
Em minha pesquisa, eu encontrei algumas versões desse jogo, mas eu resolvi criar uma usando o menor número possível de pinos do Arduino, para poder criar outros quebra-cabeças numa mesma placa.

Step 2: The Best Player in the World

Here is my son Chico, playing the game!

===

E aqui o Chico, se divertindo com o jogo!

Arduino Contest 2020

Participated in the
Arduino Contest 2020

Be the First to Share

    Recommendations

    • Backyard Contest

      Backyard Contest
    • On a Stick Speed Challenge

      On a Stick Speed Challenge
    • Colors of the Rainbow Contest

      Colors of the Rainbow Contest

    4 Comments

    0
    filiperhodes
    filiperhodes

    1 year ago on Step 2

    Olá Guilherme, boa noite.
    Montei e está tudo ok, porém me acontece algumas situações.
    Importante, ao invés de um Leonardo, uso um Nano ok ?

    1) O Botão do Enconder, está com atrasos, só considera o moviento depois de 2 ou clicks rodando.
    2) A cada linha nova, o pixel aceso e na cor que vier, se confirmarmos, sem fazer alteração os 4 pixels, ele não considera nada e pula para a próxima tentativa sem resultado na anterior.

    Alguma idéia do que pode ser ?
    Obrigado, e ótimo protótipo, parabens.

    0
    nicolaudosbrinquedos
    nicolaudosbrinquedos

    Reply 1 year ago

    Filipe, talvez valha a pena fazer uma rotininha de "debounce" para o botão do Encoder. Provavelmente o click deve estar sendo breve demais para o Arduino. Vou olhar isso aqui. O meu está funcionando bem. Mas vale a pena pensar nisso para o código ficar portável mesmo.

    Eu não sei se entendi a segunda questão. Pelo que eu entendi você está repetindo a mesma escolha em duas linhas e ele pula sem exibir os leds vermelhos ou verdes que indicam as pistas, é isso? Se for, eu não botei isso no código mesmo. Nem pensei nessa possibilidade.

    Mas acho que seria simples. Eu armazeno uma array com a última alternativa digitada pelo usuário e se for igual a atual, repito a indicação, sei lá. Ou apago tudo. E permito que ele escolha novamente as cores.

    0
    filiperhodes
    filiperhodes

    Reply 1 year ago

    Olá Guilherme, bom dia.
    Obrigado pelo retorno.
    Não sou muito bom em código, entao se chegar a verificar estes itens, seria perfeito e agradeço a atualização.
    Em tempo, estou trabalhando em uma case com a impressora 3D para o projeto, logo que terminar disponibilizo para você anexar ao projeto.
    Forte abraço.

    0
    Shreevatsa18
    Shreevatsa18

    1 year ago

    Superb!!! i have voted you.😊😊😊