8-Bit BASIC Retro-programming Projects and Classic BASIC Games
Friday, 22 March 2013
Scrabble Helper Beta
I have a working version of a Scrabble game/simulation for the TRS-80 MC-10. It's not single player, but with the [H]elp function you can have the computer search for up to 5 word suggestions. It searches the tiles (or those in front of the left arrow, which is what I call the "terminator" symbol). It can only search real letters and not "blank tiles." Its dictionary is about 1750 words long, and includes some of the killer Scrabble words like "aa" (which is a form of scoriaceous lava). Hitting any key cancels the search.
There are two modes for using the game. If you enter [Y] to the prompt about "using a real game" you can input the tiles you wish to play. If you have any blank tiles you will have to bury these between other letters and then re-arrange the tiles to get at the blank tile. For some reason the INPUT command in basic doesn't take single blank spaces as input. I have too little time and inclination to do away with this limitation. If you make a mistake, just have the next player hit [F] to forfeit her turn, and then re-input your tiles.
The other mode is regular play. You are given 7 tiles from a virtual bag. When you play tiles, your compliment is restored to 7 from the virtual bag, until the bag is empty. Once the bag is empty, up-arrow characters are used to fill out your shelf. These up-arrow tiles cannot be played, so keep them behind the terminator symbol. The game is completed after six [F]orfeit commands are issued by either or both players after the bag has been emptied. So, once you both can't make any more words, or someone has played all her last tiles, just keep hitting [F] until the final score card comes up, or hit [*] key to end immediately. The score card represents the scores of each player after subtracting any tiles remaining on the players' shelves.
Another command is [E]xchange, which will swap any of your letters before the terminator symbol for ones in the virtual bag. This option only works if there are at least 7 tiles left in the bag. The number of tiles left in the bag are listed in the bottom right corner of the screen in the score "key" description space, just above the double letter score DLS information. The key also contains information on the values of the letter tiles and the other bonuses (triple word score TWS, double word score DWS, triple letter score TLS).
Manipulating the 7 tiles and terminator symbol on your virtual "shelf" of tiles is accomplished by using the [A] and [S] keys to move a cursor left and right through the tiles. It wraps when it reaches either end of the shelf. You can move any letter under the cursor left or right by using the [,] and [.] keys. These also wrap at each end. When you have a "word" you wish to place on the board (the letters in front of the terminator symbol on you shelf) just hit [ENTER] and your cursor will switch to the game board. Move your cursor to where you wish to begin the word and hit either [D] or [R] to place the tiles down or to the right. If there are any existing tiles on the board these will be jumped over until your entire word is placed. If there is not enough space on the board, or if your word is not touching any existing words, or you start on top of an existing tile, then your word will not be placed. If your word can be placed, your potential score will be displayed along with a prompt "OK?". Press [Y] to place your word and take your score or [N] to return to the board. If you hit [ENTER] while on the board, you will be taken back to the shelf.
If at any point you wish to complete the game and have the final scores computed, just hit the [*] key. See my previous postings for information about the scoring algorithm. As far as I can see from testing and playing few games with my son, it seems to work. Please let me know, though, if you find anything fishy, or would like added features. The beta is called "SCRABBLE13.TXT" and it can be found at the Yahoo MC-10 site:
http://tech.groups.yahoo.com/group/TRS80MC10Club/
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment