RATillery est un jeu d'artillerie simple inspiré par gorillas mais
programmé dans un souci de supporter même les tout premiers PCs. Dans RATillery, ce sont deux rats qui, armés du pouvoir
de lancer des balles de feu, s'affrontent sur un amoncellement de caisses dans un entrepôt.
Caractéristiques:
Pour un ou deux joueurs.
Possibilité de jouer seul contre l'ordinateur.
Bilingue: Français et Anglais.
Requis système:
Carte graphique compatible CGA ou Tandy.
Mémoire vive: 128 Kio (version CGA), 256 Kio (version Tandy).
Disque: 64 Kio.
Système: DOS optionnel (version « PC booter » aussi disponible).
Édition physique
Une édition physique, incluant boîte, manuel, jeu sur disquette et cartes postales est maintenant disponible
chez Côté Gamers.
La version du jeu dans cette édition est une version améliorée par rapport à l'édition gratuite:
Le chrono
Support VGA 256 couleurs (320x200)
Support VGA 16 couleurs haute résolution (640x480)
Support du son AdLib, OPL2LPT et Tandy
Chronomètre en jeu (ceux qui réfléchissent trop perdent leur tour!)
Mode pratique (raffinez votre jeu en relevant des défis!)
Adversaire IA beaucoup plus fort (pour le jeu seul)
Ne manquez surtout pas cette chance de vous procurer cette nouvelle version du jeu!
Et voici la version VGA 16 couleurs (640x480), qui offre un immense espace de jeu!:
Jouer en ligne
Il est possible d'essayer le jeu ici même sans installer quoi que ce soit. Mais c'est très lourd car il s'agit de l'émulateur
DosBox compilé pour une machine virtuelle écrite en Javascript... Ironiquement, il vous faut donc un PC très puissant
pour jouer à ce petit jeu tout simple...
Si le son est étrange (comme celui d'un tourne-disque dont la vitesse n'est pas constante) c'est que votre
PC est trop lent. Dans ce cas, téléchargez plutôt le jeu...
Télécharger
Vous pouvez télécharger le jeu ici. Deux formats sont disponibles:
Pour utilisation sur PC sous DOS, ou utilisation avec DOSBox: ratilr12.zip (contient les version CGA et Tandy pour DOS, ainsi que des images de disquette pour versions PC booter)
À propos du jeu
Si une image vaut mille mots, combien le GIF animé ci-contre en vaut-il?
À tour de rôle, les joueurs doivent saisir l'angle (0 à 90 degrés) et la force (0 à 255) de tir dans le but de toucher
(et détruire) l'adversaire. Si le tir sort de l'écran sur les côtés, le tour est fini. La boule de feu est naturellement
bloquée par les caisses qui cependant peuvent être détruites. La position des rats et des caisses est aléatoire et change
à chaque fois qu'un joueur est touché.
Le gagnant est le premier à toucher l'autre un certain nombre de tours, configurable de 1 à 99.
En plus de la base expliquée ci-dessus, le jeu offre quelques options supplémentaires pour faire
durer le plaisir:
Résistance de l'air
Le jeu offre trois niveaux de résistance de l'air: Vide (résistance nulle), Normale et Haute. Le comportement change assez d'un niveau à l'autre
pour imposer un certain défi à un joueur habitué à un mode différent. Parfait pour rééquilibrer les chances de matchs joués avec des débutants.
Caisse suspendue
Il y a une option pour qu'une caisse suspendue soit présente à un endroit aléatoire dans la zone de jeu, et bien sûr bien souvent en plein chemin du tir idéal! Le crochet et la chaîne
la retenant sont indestructibles, mais cette dernière laisse cependant la boule de feu passer, quoique pas tout le temps... Il faudra être chanceux, faire des tirs
en chandelle ou se brûler un chemin dans les caisses petit à petit.
Suivi des tirs à l'extérieur de l'écran
Il n'est pas rare qu'un tir prenne de l'altitude et sorte de l'écran un moment avant de retomber. Dans cette situation, un indicateur apparait pour
vous permettre de suivre son déplacement latéral. Ceci est bien mieux qu'un certain jeu où dans la même situation, après plusieurs secondes de silence
immobile, on vous apprend que le tir est sorti de l'écran...
Dissimulation des valeurs saisies
Vous manquez de près l'adversaire, et que fait ce dernier? Il utilise le même angle que vous et ajuste très légèrement la vélocité de sorte qu'il ne vous manque pas, lui!
Pour éviter d'aider ainsi votre adversaire, le jeu offre l'option de faire la saisie en style mode mot de passe. Si vous jouez seul contre l'ordinateur, cela
vous empêche de vous aider en regardant les nombres dont il se sert. Quant à l'ordinateur, aucune différence, il ne triche jamais.
Statistiques de fin de partie
Tout au long de la partie, vos tirs et résultats sont comptabilisés. Lorsque celle-ci prend fin, quelques statistiques vous sont présentés. N'oubliez pas: pour atteindre l'excellence, il faut atteindre l'adversaire.
L'ordinateur contre lui-même
Le jeu vous permet de faire jouer l'ordinateur contre lui-même. C'était au début simplement pour tester que le semblant d'intelligence artificielle aboutissait toujours,
tôt ou tard, à un tir qui ne manquait pas la cible... C'est que plutôt qu'un calcul direct du tir (avec victoire en un coup), j'ai opté pour un algorithme de
recherche par essais-erreur.
Screenshots (version CGA)
Voici la version CGA, qui fonctionne aussi sur les cartes EGA et VGA. J'ai choisi d'utiliser la palette
de couleurs Vert-Rouge-Brun-Noir qui convenait bien à l'idée de caisses en bois. Quant aux rats, disons que leur couleur
verte est un effet secondaire de leur pouvoir surnaturel de lancer des boules de feu?
Écran d'accueil
Options
L'histoire
Crédits
En jeu!
Screenshots (version Tandy)
Voici maintenant la version Tandy 16 couleurs, dans laquelle j'ai ajouté quelques types de caisses et tenté de donner au texte une allure camouflage.
Ne fonctionnera malheureusement pas avec les cartes CGA, EGA ou VGA. Il vous faudra un véritable ordinateur Tandy (ou PCjr?) pour jouer
à cette version plus colorée du jeu. Si vous utilisez Dosbox, servez simplement de l'option de configuration machine=tandy.
Écran d'accueil
Options
L'histoire
Crédits
En jeu!
En action
Voici quelques photos en action sur un Tandy 1000 EX et sur un clone d'IBM 5160 (XT) avec carte CGA.
Tandy 1000 EX
Clone XT: crédits
Clone XT: En jeu
Envoyez-moi vos photos!
Je serais très heureux de recevoir des photos du jeu fonctionnant sur d'autres vieux PC du même genre afin d'en rajouter ici. En particulier, j'aimerais
savoir si le jeu fonctionne du PCjr et sur IBM 5150, le PC original!
Mini « making of »
Quoi!? Pas assez de mémoire?
En janvier 2016, après avoir conçu un outil spécialement pour copier des fichiers vers mon Tandy 1000 EX,
j'y ai transféré qbasic et gorillas.bas dans l'espoir de faire une partie avec
mon frère dans un futur proche. Mais cela ne s'est pas passé ainsi, car 256 Kio de mémoire ne suffisaient pas pour lancer ce jeu...
« Totalement inacceptable! » me suis-je dit. Et comme je commençais justement à être un peu à l'aise en assembleur 8086/8088, dialecte
que j'avais du apprendre pour réaliser mon outil de transfert de fichiers,
j'ai fait le choix évident et bien naturel (tout le monde ferait ainsi dans la même situation pas vrai?) d'écrire un jeu similaire, mais qui,
grâce à du code assembleur réalisé avec soin, fonctionnerait sans problème sur mon Tandy 1000 à 7.16 MHz, et même sur des systèmes
moins rapides...
Quelques semaines plus tard, le jeu était fonctionnel. Ensuite ce fut de petites améliorations à temps perdu sur plusieurs mois,
comme l'ajout d'une autre langue, l'exploitation du mode vidéo Tandy 16 couleurs (pour mon Tandy 1000 EX!), la création d'un
bootloader
pour le release PC booter... pour aboutir enfin à un résultat « satisfaisant » en août 2016.
Développement:
Le développement a été fait entièrement sous Linux. Le jeu est programmé entièrement en assembleur (avec nasm), et les outils connexes
(conversion d'image, compression de la musique, etc.) sont tous faits en C. Lors du développement, j'ai beaucoup utilisé DosBox
pour tester (Je l'exécutais même directement depuis le Makefile).
Graphisme:
J'ai réalisé les dessins en utilisant un mélange de GrafX2 et
GIMP. L'illustration de l'écran d'accueil, réalisée par
Sion, a d'abord été tracée sur papier,
ensuite photographiée puis mise au propre dans GIMP. Les images passent par un outil maison qui réorganise les lignes
dans un ordre convenant mieux à CGA qui permet de simplifier (et d'accélérer) le code d'affichage (En mode CGA, les lignes
paires et impaires sont séparées par une distance de 8Kio). Même chose pour le mode Tandy (où c'est alors quatre
sections de mémoires qu'il faut gérer)...
Musique:
J'ai composé la musique dans MONOTONE. Je me sers de la fonction Disk Writer
qui permet d'exporter un fichier contenant les valeurs à écrire dans le registre de fréquence de l'haut-parleur du PC. C'est très
simple, mais ce sont des données répétitives qui occupent beaucoup d'espace. Je compresse donc le tout avec du RLE avant
l'intégration dans l'exécutable.
Tests:
Outre DosBox, j'ai utilisé le Tandy 1000 EX initiateur du projet, un clone d'IBM XT avec carte CGA, un Pentium 133 quelconque, et VMware.
Version pour Android™
Je me suis lancé un défi: Réaliser une version pour Android, mais sans rebâtir
le jeu. Pour y arriver, j'ai créé un émulateur de PC simple capable de charger
l'exécutable .COM original du jeu et d'y apporter des modifications pour le rendre
plus confortable sur un écran tactile.
J'ai baptisé l'émulateur au coeur de ce projet mobile8088 et j'en raconte le développement
sur une page dédiée.
Bien qu'elle est encore en développement, la version pour Android est disponible! Essayez-là
dès aujourd'hui.
Voici quelques screenshots:
L'écran d'accueil
En jeu
Les options de jeu
Google Play et le logo de Google Play sont des marques de commerce de Google LLC.