Math Elimination
This was a simple game, that started with 128 players and each round consisted of a series of arithmetic questions. The first person to get five correctly moved on to the next round, the loser being eliminated.

You can download the program here.
Moving on From Single Elimination
About Seven years ago, in 2005, I was at a retreat with some of the men from our congregation, and it was during one snack time that I got to talking with my brother about the concept of an elimination contest where instead of the losers being eliminated, they would be given a chance to "fight back" and make up for their mistakes. The concept was simple enough, but I knew that I wanted to impliment the idea in a computer program sometime in the future, and so I had on my mind ways of figuring out how many players would be in each group, so given a round r and group g, I could easily calculate the number of players in the group. this led me to the following formula, where N is the number of active players, r is the current round, and g is the group in query:The irony of the whole situation is that the preceding formula, though it works, is entirely unnecessary with the current implementation of Bible Elimination.
Now that I had the concept in my head, I set out to work on an implementation of it. I chose Java because it was the language I felt the most comfortable with at the time. I used the Eclipse IDE, and set out to work. I was very fresh at programming still: I had to learn what a Vector was and how to use them, and it is the use of Vectors that allowed me to bypass the above mentioned formula.
It took me many weeks to finish the implementation of my concept. While I was working on it, I realized that I needed some sort of competition that could be easily coded, a contest between two players declaring a winner and a loser. For my first implementation I simply randomized the winner. I can still remember the day when I completed the program and worked out all the bugs. I needed a name for my newly created program, and so I chose "Battle Game" . You can download my first test run here, where I simply run the program with 32 players and let the program declare a winner. There was no human player at this point. If you run the program, the only output you'll see is the name of a file and some player's stats. For the early tests, I used a file list as my name bank, so that filename is really the name of the player. The fact that only one player's stats were printed spelled success for this early test.
(BattleGame output - first attempt)
Remembering Math Elimination, I quickly wrote a "Battle" that put an arithmetic question to the two players, and used a simple dialog box for human input. It was during this time that I also created a simple user interface to allow the human player to see the other players with some drop down combo boxes.
Remembering Math Elimination, I quickly wrote a "Battle" that put an arithmetic question to the two players, and used a simple dialog box for human input. It was during this time that I also created a simple user interface to allow the human player to see the other players with some drop down combo boxes.
![]() |
| Battle Game - Second Test |
You can download my second test here.
After many trial runs, I concluded that the code responsible for the elimination concept I had written was bug-free, and with confidence I began to focus on the user interface.
One day at school I was bored, and I thought I might play Battle Elimination (which BattleGame had commonly become referred to as). I played with thousands of players, and I ended up winning, only suffering one or two losses the entire game. It took me well over an hour to complete, and as a sat there staring at my name displayed on the screen as the winner, I realized that Battle Elimination just wasn't all that fun anymore. No matter how fancy the user interface was, the fact still remained that arithmetical questions were still really boring. It was shortly after that day that I began to develop a new version with a new contest idea. The problem I came against first, though, was that I was not a professional, nor a proficient, programmer, and anything more enjoyable than math questions would take some sort of artificial intelligence. I wanted something that was easy to program, that would be easy to think through, and that was possible for me to lose at. The idea that finally stuck was a game of black jack, and thus, Battle Jack was born. You can download Battle Jack here.
![]() |
| Battle Jack |
Battle Jack finally made it possible for me to lose a battle, and made it near impossible to win an entire game. It brought a level of excitement to the game, because whereas arithmetic questions were based solely on skill, black jack added a random component. It was fun, but I did not develop the idea any further than the first implementation. I wanted to move on from black jack.
Bible Elimination
The initial idea for Bible Elimination came to me one day as I was sitting on my couch, and my wife was in the next room working on her painting. I was bored, and so I picked up a Bible and began to read verses to her and asked her if she knew which book they were from. I tried to pick verses that gave a clue so as not to be too ambiguous. It was shortly after that that the idea hit me: I could incorporate this into Battle Elimination!
And that is how Bible Elimination got started. So many things had to be created to make it work, not the least of which was a Bible. I remember the day I created a piece of running code that printed a random verse of the Bible on the screen. That made me very excited. I also remember that was the day I worked for over 5 hours during the day getting that code to work, that I neglected to clean up the kitchen, or turn the toaster oven off, and I ended up melting the chocolate chips in the cupboard. My wife was not too impressed with me. I learned that there are more important things in life than working on Bible Elimination.
After seven long years in the making, I am glad to be able to announce the completion of Bible Elimination!







