Hangword!
A downloadable game
Hangword! is a game written in ugBASIC and that runs on various 8-bit home computers like AMSTRAD CPC 664, ATARI 400/800, ATARI XL/XEGS, COMMODORE 128, COMMODORE 64, DRAGON 32/64, MSX, OLIVETTI PRODEST PC128, TRS-80 COLOR COMPUTER 1/2/3, THOMSON TO8.
Hangword! is the electronic version of a guessing game for one player. The computer chooses a word and the player tries to guess it by suggesting letters within seven (7) guesses. The game contains a vocabulary of 2.048 English words, and the repository contains more vocabularies that could be alternatively used, if recompiled.
This game is participating in the Retro Programming Inside Challenge. The game has been written by Marco Spedaletti in ugBASIC. It was developed starting from just one single source code, and it supports many ugBASIC's targets.
GAME PLAY
The aim is to guess the word chosen by the computer within a limit of 7 attempts. For each failed guess, an additional element of the hanging man will be drawn. When the man is drawn in its entirely, the game ends.
To select a letter to guess, simply press the corresponding key (A...Z).
Each time a letter is guessed, the player earns one point. After that, each time the letter appears in the word, an additional point is earned. Repeating the insertion of a letter already entered does not entail any advantage, in terms of points, as well as if a letter is incorrect. If the word is guessed, 24 points are earned. On the contrary, after 7 wrong attempts, 6 points are lost.
HOW MUCH HAS ugBASIC HELPED?
This cross-platform game would not have been possible without using ugBASIC: it is an isomorphic language and it has cross compilers that works on Linux and Windows, that directly converts high level algorithms into the assembly equivalent for the given CPU / computer.
ugBASIC is able to handle graphics with double buffering, to use directly PNG/JPG and other standard image formats, to manage additional RAM banks, to read multiple keyboard keys at the same time and to do inline assembly. The labor and time saving is such that it allows to create professional and high performance games in a short time.
Developing for multiple platforms requires very little effort because the source does not have to be adapted or, like this case, it can be adapted limited to the hardware dependent aspects.
With a single source code you can obtain programs for multiple retro computers, even very different from each other. Moreover, each target can have a dedicated optimizer, which allows to achieve very interesting results while leaving the BASIC code fully readable.
Download
Click download now to get access to the following files:
Comments
Log in with itch.io to leave a comment.
There seems to be bug: Complete correct word is not determined. Tested english C64 version (d64 & prg).
Hi Umpftata, and thank you for your bug report!
You are right, there was a bug in the English version, which did not occur with the Italian one, and it depended on the length of the word to guess.
I apologize for the problem.
I just fixed it(for the C64 target, both prg and d64 format). As soon as possible I will publish an update for the other executables too. In the meantime you can download the game again.I fixed the issue.
Thank you again!
Thanks for the fix. Works with first word now. Now you win immediately on the second word after entering the first letter, no matter if correct or incorrect.
Hi Umpftata, and thank you again for the testing!
I don't know if it's noticeable, but I could never win with English. :)
Anyway, I fixed the error, you can download the game again.
Thank you again!
OK, works. But I am very sorry to have another one: Score is not reset after Game Over.
Hi Umpftata, thank you again for testing!
Currently, this is not a bug since score is incremental. In other words, whether you win or lose, the score will remain so as to ensure that you can provide feedback on a certain number of games played. At the moment there is no other way to reset the score than to reload the game from the beginning. This could be one of the next improvements.
Thank you again!