MY PROJECT WEBSITE

Bingo Maniac Game

bingo maniac window

Bingo Maniac game window


BINGO MANIAC is a bingo game written in C language and runs on Windows. It is a free and open source program distributed under GNU GPL version 3, which means you can use the program freely, make changes on the source code and distribute those copies. The game was developed in C and compiled using MinGW32. The IDE used for development was Orwell DevC++. It is a console application (TUI-Textual User Interface). Double-click the executable file to run the program and play the game.

How To Play


Actual bingo game is intended for two players. Here, the game is for a single player. The computer or the program itself will be your opponent. Playing bingo is easy. Both of the players have to fill squares containing 25 small cells with numbers from 1-25 without repeating any number, randomly and covertly. Players should not reveal their squares each other until the end. After filling the squares, anyone can start the game by calling any number. When one calls a number, both the players have to mark that number in their squares without showing it. Next chance to call the number goes to the next player. He can call any number that is not already called. Continue this. If any of your row or column gets fully filled or marked, you can write a B of BINGO. Going on with the game, the one who get a completed BINGO first wins.

The above is a general description of bingo game. Now let's see how to play it with Bingo Maniac. Bingo Maniac is a single player game. Computer/program is your opponent. On double-clicking the executable file, you see 'BINGO MANIAC' written in big letters. Press a there for information about the game, and s to disable the audio. Press any key to continue to the game.

bingo maniac welcome screen

Welcome screen


bingo maniac game begins

Game begins


On the initial screen, you see the above screen. Here, you'll see your square filled and the computer's unfilled. The computer's square is actually filled and it is hidden from you. Both you and computer will have entirely different squares filled in a random way. Then the game wait for an input. If it is your chance, you have to type a number you want to call and hit the Enter key once. After that, you can see that both yours and computer's squares are marked with $ sign accordingly.

Now it is the chance of the computer. The computer suggests/calls a number and you have to confirm it by hitting the Enter key once. If any one of you completes a row or column, you get a letter printed under your square. You can also see the remaining chances and last called numbers under the squares. If you complete the BINGO first, you win. Otherwise the computer wins.

bingo maniac player wins

When a player wins


bingo maniac computer wins

When the computer wins


bingo maniac previous square

Shows the previous square


After completing a game, you can see the two squares you just played. Press any key to continue to new game from there. If you defeat the computer three times in a row with the game staring with you, you will be awarded the rare TRIPLE BINGO screen which means you are now a "Bingo Maniac". Let's go maniac!

The following are some useful instructions.

  • If you want to call '1', just type '1' in the keyboard instead of '01'. The prefixed zeros are used for properly displaying the squares.
  • Do not enter any keys other than numeric values from 0-9. See yourself what happens.
  • If you want to win a TRIPLE BINGO, you have to play the game continuously. Closing the game will lose your data.
  • Some anti-virus softwares do not let you run console applications. You can add the program to exclusions or run it as administrator.
  • Pressing 9 on the welcome screen will display the version information.

bingo maniac about window

About window

Code Explanation


It all started from my class room. We were playing bingo together and I thought why don't write a program to play bingo. I've been learning C language then. I took my notebook and wrote about the basic design. The design logic is,

  1. Start two [5][5] matrices and fill them with values from 1-25 randomly and independently.
  2. Take an input from user and fill the corresponding cell with '0'.
  3. After taking the input from the user, generate a random value from numbers 1-25 which has not yet been called and fill it with '0'.
  4. Check if any row or column or any of the matrices has fully filled with '0' and if yes, print the first letter of the word 'BINGO'.
The one who completes the 'BINGO' first wins. Even though there are only five simple steps, you will find difficulties at some places because I did. The first difficulty will be with the first step. You can use the rand() function to fill the matrix, but it will fill numbers repeatedly. So you have to remove the duplicates and produce a usable matrix. I've done this in my code. I hope you will not find it difficult to read my code and understand it yourself. I'm not a professional programmer, but just a student who has started loving programming.

Other functions I used are the row/column counters, bingo counters, matrix printer and the intelligence. The intelligence which computer uses to play the bingo is important. I'll advice you to advance the program by adding more intelligent algorithms. I use fill the largest algorithm in which it checks for the largest uncompleted row or column to decide the next move. You can add intersection priority to make the program more intelligent.

I've used the Borland conio.h extension to produce the colors. You can download it from the DevC++ package repository. Please send any suggestions or details about your edits to my email.

GitHub


Downloads


Here is a link to an archive containing all the files. You can run the program directly by running the executable file. If you want to permanently install the game in your computer, use the installer. It will install all the necessary files, license, info, manual etc to a folder named 'Bingo Maniac'. The source code is provided as an html file exported from DevC++. The archive also contains the Inno Setup script file used to make the installer.

  1. Bingo Maniac Manual
  2. Bingo Maniac - All Files

Links


  1. Orwell DevC++ : http://orwelldevcpp.blogspot.in/
  2. DevC++ Packages : http://devpaks.org/
  3. Best Syntax Highlighting for C/C++
  4. Inno Setup Compiler : http://www.jrsoftware.org/isinfo.php

Timestamp


Date published : 12:01 PM, 19-12-2014, Friday
Last updated : 7:56 PM, 04-04-2017, Tuesday

Comments


Made with for Open Source
Copyright © 2014 - 2019  Vishnu M Aiea
Site last updated : IST 04:30 PM, 16-06-2019, Sunday
Page rendered in 0.0078 seconds. Version 1.2.5