Motus Advance

François PESSAUX - 07 Oct 2004

Version 1.1.
    This documentation is subject to changes in order to reflect evolutions of the game. That's the reason why screen snapshots may differ a bit from the real version of the game, development being still running.


Legal stuff

    Motus Advance is a game developed for the Gameboy Advance™. It is aimed to distributed freely and at no cost. The author provides the software as it is and may not be responsible in any case in any direct or indirect damage due to the use of this software. The current software is not licensed by any institution. The author, although he distributes freely and at no cost his software, remains the owner  of this software. Nevertheless, he accepts that parts of the software may be freely reused or modified or that the software may be enhanced as long as the aim remains non-commercial.

After all this blabla that nobody read, annoys everybody, but always written by everybody to be bullet-proof... let's go to the interesting part !


Game rules

    Motus Advance is a thinking game based on logic and vocabulary.


    The aim is to guess, with at most 6 tries, a 6 letters word randomly chosen amongst a reference dictionary. Currently, three languages are available in the game: French, English (Great Britain and not US, that can lead to slight variations, especially on "z" and "s" ;-) and Italian. The language choice is performed as soon as the game is turned on by moving the cursor then pressing the A, SELECT or START buttons.

    In order to guess the hidden word, you will have to provide suggestions. Once a proposition is provided, the game will compare it against the hidden word, then will feedback you some clues. The word you will have proposed will turned coloured letter by letter according to the following colour code:

    Hence, on the abode picture, the first line indicates that no letter from the proposal matches letters of the hidden word, except the first and last ones (that are gratefully given at the beginning of the game). Thanks to the second line, you know that the "e" in third position is  right placed. The third line indicates that one "d" and one second "e" (different from the first one that is right placed) exist in the hidden word but that they are not at the position where you set them in your suggestion. With these clues that gets cumulated line after line, it's you job to discover which word was chosen !..

    At the beginning of a game, in order not to let you go in a fully unknown universe, the first and last letters of the word to discover are given to you. However, you can change them if you want to make your suggestion. For example, if you don't find any word beginning by the first indicated letter, you can replace it by another in order to form a new word from which the following letters may give you clues for the next turns. It's the same thing for the ending letter. This possibility is especially interesting in the game mode where it is mandatory that you propose words existing in the dictionary otherwise you lose your turn (c.f. section options).

    The game does not take into account the letter case (i.e. whether they are upper or lower case). In the same way, letters with accents and letters without accent are not considered as different. Hence, in languages using accents, an accentuated word written without accent will be considered as valid. Obviously, this currently only affects the game in French mode. Plurals and conjugated verbs are allowed.

A game is ended either :
    At the end of each game, you current stats will be displayed.

Controls summary

The input panel


    The input of your words is performed on the game area thanks to the letters panel shown in the lower right area of the screen. All the letters of the occidental alphabet without accent and in uppercase are present, with two little additional arrows (in the bottom right) .

The physical keys

    By default, while entering your proposition, when you select a letter with the A button, this one is directly inserted in the next empty place. Hence you do not need to enter again already right placed. In the same way, at the moment when you wish to validate your proposition, if the ending of the word was already compound of letters previously right placed, you won't have to enter again these letters before being able to validate your proposition.

    Conversely, while entering your proposition, when you decide to correct (suppress) one letter from your suggestion pressing the B button, the suppressed letter is the one immediately before the place where would have been inserted the next letter. This hence allows you to correct some letters you have entered, but also some letters that would have been put from the previous turns because they were at the right place, as well as the help letters from the beginning and the end of the hidden word.

Options



    At each beginning of a round, an option menu allows you to:
  1. Start a round using the current settings.
  2. Allow or disallow to propose words that do not exist in the dictionary. If this options is disabled, then you will be allowed to submit suggestions completely meaningless and the game will still analyse the positions of their letters in order to feedback you resulting clues. On the opposite, if this options is enabled and if you submit a word that does not exist in the dictionary, you will penalised and simply lose any benefit from you current turn: the line will remain empty (without clue) and you will go to the next turn. So bad !
  3. Enable or disable the time limit separating each of you proposition submission. If this option gets enabled, then you will have to  submit each proposition in less than 1 minute otherwise you will lose the benefit from your turn.
  4. Save the current stats. These statistics are not the state of a current running game, but the number of rounds  that you won, lost and surrendered. This is roughly a kind of simplified highscores. As an important fact, by this way it records a new seed for the random generator which guaranties that if you turn your console on later, you won't get the same sequence of hidden words to guess.
  5. Reset the current stats. This allows to revert back to 0 the number of rounds that you lost, won and surrendered. However, this does not reset the seed of the random generator, in opposite, this generates and records a new one, hence you will always get new words to guess.
    Options 2 and 3 behave like checkboxes. Pressing the A button above them allows to alternatively enable and disable them. By default when turning the game on, these options are disabled (as shows the little red flag). Once checked, the little flag before each of these options turns green as shown the pictures below.



    In the options menu, the B button allows to start the game with the current configuration independently of the location of the cursor. This allows to start quicker without having to go up back to the first item of the options list then press the A button.

    Activating the timer options starts a little animation during the game in order to show the remaining time before the expiration of the submission delay. In the upper right part of the screen is a small clock under which a progress bar is displayed. When playing in the mode without time limit, this progress bar remains empty. Conversely, in limited-time mode, this bar gets incrementally filled with one mark every 10 seconds.


    There are 6 marks. One every 10 seconds, this really leads to 60 seconds = 1 minute ! In other words, the first mark appears after 10 seconds, the second after that the 20th second is elapsed. And obviously, when the 6th and last mark appears, it's already too late !!!

Making off and thanks

    Motus Advance has been completely written in C, with the genius DevKit Advance under Linux and under Microsoft Windows. Graphics have been designed thanks to the excellent Gimp. BMP images BMP conversion to the binary format suitable for the Gameboy has been performed with a small tool I homemade in Objective Caml. Sound samples conversion has been done with Wav2raw written by Sylvain Rochette. Tests and debug have been done both on physical console and under the fabulous VisualboyAdvance emulator. I really want to thank all the free software community thanks to whom this little simple game could be released. That's also for this reason that it is freely distributable.

    This version of the game is a modified porting of the version I previously released on Ipaq. The internal engine used to model the dictionary originally comes my spelling checker Mérimé I developed some years ago. The first version was written in C, then I made a new and more efficient release developed ...in OCaml.

    The Italian dictionary and the messages translation have been kindly provided to me by Francesco Stano. Hence, thank's to him the Italian is now available in the game.

    As for my previous creations, my little wife accepted to act as the "mad-tester" in order to improve the quality of this game.

    Sources of this game will be soon freely available. I hope they will provide ideas and answers to other people. Currently, I don't release them yet because I still want to perform changes on Motus Advance. But patience, it will come !

Contact

    For any information, suggestions, flames I can be reached by email at :

francois_pessauxHATyahoo.fr

address in which, of course, you will straight replace "HAT" by the character "@" (it's just to prevent automated mail addresses scanners from registering me one more time, I still receive enough spam !)

History

07 Oct 2004 : Version 1.0
Nov 2004 : Version 1.1