DONKEY.SMS: Un jeu pour Master System inspiré par DONKEY.BAS

Introduction

écran titre screenshot du jeu Fausse boite

Ayant créé un système de cartouche de jeu SMS reprogrammables, je souhaitais pouvoir pré-programmer quelque chose dans celles que je vendrais, histoire d'abord d'en vérifier le fonctionnement, mais aussi de permettre à l'acheteur de vérifier la marchandise, avant d'en réécrire le contenu.

Au lieu de me contenter de faire un ROM de test simple qui n'afficherait que des données techniques à l'écran, je me suis dit pourquoi pas un jeu!

N'ayant pas d'expérience de développement de jeu pour SMS, je voulu faire quelque chose de pas trop ambitieux, mais à la fois pas trop simple, afin d'en apprendre tout de même un peu sur la console et ses limites.

J'ai décidé de réaliser un remake de DONKEY.BAS. Cela m'a permit d'avoir un background défilant, de jouer avec la palette pour faire des transitions, d'utiliser les sprites, et même de manquer de sprites! À quelques occasions, j'essayais d'afficher plus de sprites par ligne que peut le faire la SMS, et j'ai contourné le problème en modifiant l'emplacement de certains éléments du jeu et en programmant pour éviter de dépasser les limites. Tout ceci est exactement ce que j'espérais: Avoir quelques défis à relever, mais que des trucs surmontables.

Conclusion: J'ai un jeu complet, avec 3 modes de jeu, musique, mode démo, les scores enregistrés sur la cartouche, et je pense même que cette version est un peu plus amusante que l'originale (vous pouvez ne pas être d'accord). Et très important, c'est MON jeu, je peux donc l'utiliser comme test à préprogrammer sur mes cartouches reprogrammables.



Commandes

L'original (DONKEY.BAS) est un jeu pour PC qui se joue au clavier en utilisant uniquement la touche ESPACE pour changer de voie. J'ai d'abord fait la même chose en passant par le bouton 1 de la manette SMS.

Mais plus tard, lorsque j'ai ajouté un mode 3 voies, cela ne fonctionnait plus: On change de voie vers quelle voie? J'ai donc modifié le programme pour que ce soit les directions gauche et droite qui permettent un déplacement latérale d'une voie.

À force de tester le jeu, j'ai fini par trouver qu'au début la cadence n'était pas assez élevée. J'ai donc transformé le bouton 1 en accélérateur. Ainsi, en appuyant sur le bouton 1, il est possible de doubler temporairement la vitesse. En résumé:

  • Pavé directionnel: Changement de voies (Droite/Gauche)
  • Bouton 1: Boost de vitesse


Paddle Sega et Homemade

Paddle Sega et Homemade

Le jeu supporte aussi le "Paddle Control" HPD-200 de Sega, et ma version homemade. Lorsqu'un Paddle est présent, le bouton rotatif contrôle directement la position de la voiture, qui se déplace alors librement horizontalement, plutôt que de toujours se centrer sur une des voies. Ceci m'a d'ailleurs inspiré le mode de jeu sans voies, où les obstacles sont aussi libres que la voiture dans leur choix de position horizontale.

La voiture réagit instantanément à tout mouvement. Joué sur un écran cathodique avec aucun lag, la sensation de contrôle est très agréable, et le jeu semble même un peu plus facile! Si vous avez un Paddle, c'est ainsi que je recommande de jouer!



Screenshots

Au début l'apparence du jeu est calquée sur celle de l'original, DONKEY.BAS:
Original theme

Mais dès le deuxième niveau, les capacités de la SMS sont un peu mieux utilisées. Le thème de couleur change encore au cours du jeu. Il y a quatre variations:
Grass theme Desert theme Snow theme

Dans le mode de nuit, je me suis amusé avec l'interruption horizontale pour assombrir la palette de couleur au bas de l'écran, afin de faire un peu comme si des phares (installés plutôt vers l'arrière de la voiture) éclairait ce qu'il y a devant. (Ouais... ce n'est pas fameux, mais je voulais absolument expérimenter avec l'interruption horizontale et c'est tout ce que j'ai trouvé)
Night theme

Le jeu exploite la mémoire flash (si présente) ou la mémoire SRAM pour enregistrer les scores, et la disponibilité des modes, dont deux sont initialement à déverrouiller:
New best score message Menu with two modes locked

Par exemple, un score au dessus de 100 donne accès au mode 3 voies. En plus de la voie supplémentaire, la vitesse du jeu est plus élevée dès le début.
New mode unlocked message Menu with only one locked mode 3-lane mode screenshot

Passer le niveau 16 permet d'accéder au mode sans voies, dans lequel ni les obstacles, ni la voiture ne sont confinés à des voies. Il faudra faire preuve de beaucoup de doigté pour contrôler la voiture avec une manette... (Un Paddle est fortement recommandé ici!)
All modes unlocked Game without lanes

Gameover message


Téléchargement

Version 1.2
12 février 2021 (Vendredi)
Correction d'une incompatibilité avec les manettes pour Megadrive
Fichier(s):
donkey-1.2.sms (64 KB)
Afficher les versions précédentes
Version 1.1
10 février 2021 (Mercredi)
  • Cesse de donner des vies à chaque 4 niveaux complétés (trop facile)
  • Donne une vie après le niveau 16.
Fichier(s):
donkey-1.1.sms (64 KB)
Version 1.0
28 janvier 2021 (Jeudi)
Première version
Fichier(s):
donkey-1.0.sms (64 KB)


Version cartouche

Ayant déjà des boîtiers, des circuits programmables et un programmeur de cartouche en stock, je me suis fait plaisir en créant un étiquette au nom du jeu!

Une version cartouche ça vous dit? Le jeu est en vente sur raphnet-tech.com!

(si jamais vous vous lassez du jeu, la cartouche peut être reprogrammée)




Inspiration DONKEY.BAS

Ce jeu est inspiré du jeu DONKEY.BAS qui était fourni avec les premières versions de MS-DOS. Bill Gates lui-même était un des auteurs du jeu!

Je n'ai pas voulu faire un jeu identique, même qu'avant de commencer, j'ai choisi de ne pas rejouer à l'original. Mon "document de référence" était un screenshot, la description du jeu sur Wikipedia, et mon souvenir d'y avoir joué il y a environ 25 ans.

Dans ma version, plutôt que d'augmenter la difficulté en modifiant la position de la voiture, qui se rapproche du haut de l'écran à chaque obstacle évité, j'ai opté pour une augmentation graduelle de la vitesse combinée à un nombre d'obstacles croissant (parfois jusqu'à 3 en simultané dans l'écran).

Afin de varier un peu, j'ai également introduit de nouveaux concepts, comme le mode à 3 voies et le mode "libre" où la voiture peut se déplacer horizontalement en toute libertée (il n'y a plus de voies). Naturellement, les capacités de la console SMS permettent facilement de donner un look plus coloré au jeu et de faire défiler la route et le décor de manière fluide.

Voici le jeu original en action, tournant sur un PCjr. D'abord du point de vue du joueur:



En ensuite une vue plus rapprochée de l'écran:



Outils utilisés

Réaliser ce petit jeu pour SMS a été relativement facile grace à l'existence de plusieurs outils sans lesquels il m'aurait fallu faire beaucoup plus d'efforts!

Un gros merci aux auteurs de ces outils!



Version pour Game Gear DONKEY.GG

La console portative Game Gear possède une architecture extrêmement similaire à celle de la SMS et est supportée par devkitSMS. Alors pourquoi pas! Voici donc DONKEY.GG!

Écran titre DONKEY.GG

La différence la plus importante est la résolution de l'écran. Alors que la SMS affiche 256 par 192 pixels, la Game Gear n'offre que 160 par 144. Cela fait un peu serré:



J'ai pendant un court moment pensé déplacer les indicateurs de score, de record et de vies restantes vers la partie visible de l'écran, mais il me semblait que cela surchagerait la zone de jeu et serait distrayant. Dans la zone supérieure droite, j'ai conservé le strict minimum: Le score actuel.

J'ai complètement lassé tombé l'affichage permanent en jeu du nombre de vie. Le nombre de vies restantes est désormais affiché temporairement au centre de l'écran en début de jeu, et après chaque vie perdue.

Affichage des vies Écran de jeu Écran de jeu

Pour le choix du mode de jeu, j'ai ajouté du défilement horizontal et fait quelques ajustements mineurs (hauteur de la voiture, position et longueur du texte, etc).

Menu Menu Menu

J'ai utilisé une de mes cartouches reprogrammables pour tester le jeu sur ma console Game Gear:

Le jeu sur Game Gear

Le jeu sur Game Gear

Le jeu sur Game Gear

Le jeu sur Game Gear

Le jeu sur Game Gear

Le jeu sur Game Gear

Le jeu sur Game Gear

Le jeu sur Game Gear



Ma console est malheureusement en mauvais état, on le reconnait à plusieurs signes. L'angle de visionnement de l'écran, les lignes verticales, l'absence de son...

Alors que le premier niveau (le thème DONKEY.BAS original en blanc sur gris) est assez jouable, les obstacles en brun sur fond gris dans le niveau suivant sont pratiquement invisibles et ce n'est pas du tout amusant. Est-ce en raison de l'état de ma console (clairement je dois changer les condensateurs) ou est que même sur un système en parfait état, les movements rapides aux couleurs contrastant relativement peu sont à déconseiller?

Je me dit qu'il faudrait peut-être que j'ajuste les couleurs pour m'adapter aux limite de la console, et ajuster la vitesse du jeu pour compenser pour la difficulté accrue par le manque d'espace, mais d'abord j'aimerais tester le jeu sur une console en parfait état...

En attendant, voici le ROM!

Version 1.0
25 février 2021 (Jeudi)
Première version pour Game Gear
Fichier(s):
donkey-GG-1.0.gg (64 KB)