Yak's Tetris Plus
Version 1.00
Document 1
by CodeMaster
«Ô rage, ô désespoir,
ô pièce plus! ennemie,
N'ai-je tant vécu que pour cette...
[BLAM !]
Three frags left !...»
Ax et CodeMaster se tapent un délire en ßéta-testant le jeu
Tables des matières :
Introduction :
La naissance :
Soucieux d'assurer la sauvegarde du bien-être et de l'équilibre
mental des ces condisciples, le Yak a entrepris de remettre au goût du
jours quelques vieux jeux.
Et entre deux éboulement de livres titanesques à lire,
je consacre un peu de mon temps libre à la programmation.
Ainsi, un vieux moteur de tetris pour deux joueurs - résultat d'un
délire que je m'étais tapé avec deux copine une nuit il
y a environ 2 ans - s'est vu renaître, en un futur petit hit de
l'Université de Genève.
But du jeu :
On ne rappellera pas ici, le plus que connu principe du Tetris original, qui à lui seule a donné le nom de Tetris-like à tous ces jeux de chute où il faut compléter de lignes ou des couleurs.
Principe du Jeu :
Le Plus de Tetris Plus :
Lorsque vous pressez votre touche Plus, votre quantité de
Plus augmente (les petit `+' colorés en haut de chaque zone de
jeu).
Plus vous avez de Plus, plus souvent vous tombez sur des pièces
Plus composée de 5 blocs au lieu de 4 (comme les pièces
de Block Out)
Pièces de base :
[][] [][] [][][] [][][]
[][] [][] [] []
[] [][] [] [][][][]
[][][] [][] [][][]
Pièces Plus :
[][][] [][][]
[][] [][] [][] []
[] [][][]
[][] [][] [][] []
[][][] [][][]
[][] [][] [] []
[] [] [][][] [][][]
[][] [][] [] []
Pièces auxquelles vous avez échappé :
[][][][] [][][][] [][][][][]
[] []
[][][]
[][][][] [][][][] []
[] [] []
On peut également modifier cette option pour chaque joueur dans leur
menu respectif (option Plus! dans le
sous-menuPlayer x Setup du
menu)
Le jeu à deux :
Les règles sont en principes inspirées du mode de jeu
à deux du GameBoy.
(Je n'ai pas TetriNet, je n'y ai jamais joué,
et de toute façon je suis conservateur.
Donc vous ne verrez pas fleurir de si tôt d'innombrable options)
Une différence majeur (et pratique) cependant :
Chaque joueur peut à tout moments commencer une nouvelle partie
en pressant sa touche Restart, sans pour autant que cela
gène le joueur restant.
(Pratique pour les tournois le-gagnant-reste, comme à la maison)
Difficulté de jeu :
Outre l'option Plus! précédemment discutée, un autre option s'offre a vous : modifier la vitesse de chute pour chaque joueur.
Ceci se fait en modifiant le nombre de frames qu'attend le jeu avant
de faire avancer une pièce. C'est une valeur inversément
proportionnelle à la vitesse du jeu.
On peut la modifier pour chaque joueur dans leur menu respectif
(option Falling delay dans le
sous-menu Player x Setup du
menu) ou modifier la valeur par défaut
(option Default Falling delay dans le
sous-menuSystem Setup du
menu ou la variable
Speed dans la section GameDefault du
fichier de configuration)
On peut régler le jeu pour que la difficulté augmente à chaque victoire. (options increase Plus,increase Speed et increase Speed Step dans le sous-menu System Setup du menu ou les variables WinPlus, WinSpeed et WinSpeedStep dans la section GameDefault du fichier de configuration)
Informations importantes :
Un atavisme de Windows :
Dans les temps reculés de Windows 3.0 et des processeurs 386,
la mise à jour du contenu d'une fenêtre MS-DOS était
très lente, et Windows ne pouvait pas assurer 60 images par seconde.
Afin d'éviter que le programme perde encore d'avantage de temps en
essayant de se synchroniser - ce qui d'ailleurs était inutile puisque
le réaffichage de la fenêtre ne pouvait se faire en rythme avec
l'écran - les requêtes de la carte graphiques étaient
déviées et Windows simulait un écran à vitesse
d'affichage infinie.
Mais de nos jour, les applications tournant dans une fenêtre
ne sont plus ralenties par les rafraîchissements de cette
dernière.
Or, Yak's Tetris Plus utilise une synchronisation à
la vitesse d'affichage de l'écran pour fournir des graphisme
fluide, sans hachure ni saccade.
Dans une fenêtre MS-DOS, cette synchronisation est impossible
et la vitesse devient trop grande pour que le jeu reste jourable. (Comme ce
fut le cas avec les premières versions ßéta du jeu).
Pour l'en empêcher, Yak's Tetris Plus tante de se synchroniser
en utilisant l'horloge interne (Real Time Clock) de votre ordinateur.
| !!! Quoi qu'il en soit, penser à passer en mode plein écran avec |
| + |
| !!! |
En effet, l'affichage est meilleur s'il n'est pas relayé par une fenêtre MS-DOS
Synchronisation de type différent :
Certaines vieilles cartes graphiques utilisent une méthode de
synchronisation non standard.
Dans ce cas, les premières lignes de l'affichage peuvent être
brouillées, les pièces s'affichent mal, etc...
Utiliser l'option Alternate WaitRetrace dans le sous-menu
System Setup du menu de Yak's Tetris Plus ou la variable
WaitRetraceType dans la section System du fichier de
configuration.
Confusion de synchronisation :
Lorsque le jeu tente de déterminer la fréquence d'horloge
à laquelle se synchroniser, il peux faire une erreure.
Ou encore, la valeur devinée peu se révéler
inadéquate, surtout si l'on a changé de mode d'affichage.
Dans ce cas la vitesse d'affichage peut s'effondrer en dessous de 40 Fps ou
au contraire dépasser les 100 Fps
Si cela arrive, exécuter simplement, utiliser l'option ReSync screen dans le sous-menu System Setup du menu de Yak's Tetris Plus
Menus :
Menu principal :
Play the Game - Retourne au jeu
Player x Setup - Réglagles des paramè de chaque joueur
System Setup - Réglagles des options du jeu
Menu Player x Setup :
Set Keys - Réglages des touches, cf fichier de configuration.
Falling delay (1/speed) - Jauge pour régler la vitesse de chute. Jauge pleine : lent, vide : rapide
Insert delay (frames) - Jauge pour régler le temps pendant lequelle on peut encore bouger une pièce ayant atteind le fond, avant d'en envoyer une nouvelle.
Plus ! - Jauge réglant la quantité de Plus !.
Restart - Fait redémarrer le joueur sélectionné
Menu System Setup :
increase Plus (0=Off, n=Victories) - Détermine au bout de combien de victoire le nombre de Plus! augmente. Un zéro désactive l'augmentation.
increase Speed (0=Off, n=Victories) - Détermine au bout de combien de victoire la vitesse augmente. Un zéro désactive l'accélération.
increase Speed Step - Indique la largeur des pas aux quels la vitesse augmente. Un zéro désactive l'accélération.
Default Falling delay - Jauge pour régler la vitesse de chute qu'obtiennent les nouveaux joueurs.
Default Insert delay - Jauge pour régler l'Insert Delay pour les nouveaux joueurs.
ReSync screen - Recalcule la vitesse de synchronisation de l'écran. Executer si brusquement la vitesse d'affichage tombe en dessous de 40 Fps ou au dessus de 100 fps après un passage en pleine écran ou en fenêtre
Alternate WaitRetrace -
si non-enclenché - synchronise l'affichage de manière classique,
en attendant que VertTrace soit sur Lo
si enclenché - synchronise l'affichage de manière alternative,
en attendant que VertTrace soit sur Hi
Draw debugging data - si enclenché - affiche les info de déboggage
Fichier de configuration :
Avant de s'executer, Tetris Plus rechercher des options
de configurations dans deux fichiers : tetris.auto et tetris.ini.
Cette section explique le format de ces deux fichiers
(en attendant que je programme un systeme de configuration In-Game.
Par la suite, tetris.auto sera automatiquement crée à
partir des configurations actuelles)
Format général :
[nom_de_section]
nom_option=valeure
Section «GameDefault» :
option «WinPlus» :
Détermine au bout de combien de victoire le nombre de Plus!
augmente. Un zéro désactive l'augmentation.
option «WinSpeed» :
Détermine au bout de combien de victoire la vitesse augmente.
Un zéro désactive l'accélération.
option «WinSpeedStep» :
Indique la largeur des pas aux quels la vitesse augmente.
Un zéro désactive l'accélération.
option «Speed» :
Détermine le nombre de frame à attendre avant d'avancer un
pièce. Influe sur la vitesse du jeu.
option «InsertTime» :
Détermine le nombre de frame pendant les quelles on peut encore
déplacer un pièce arrivé au fond, avant de
l'insérer dans le tableau et d'enovyer la suivante.
Sections «Keys.1» et «Keys.2» :
Configure les touches du clavier de chaque joueur.
On peut indiquer aussi bien le nom d'une touche, que son ScanCode
(mais il est préférrable d'indiquer les noms, car il ne risque pas de changer
d'une version à l'autre du program)
Pendant le jeu, seul les ScanCodes sont affiché
juste sous l'espace Next ou est affiché la piece suivante.
option «Left» :
Touche pour déplacer la pièce à gauche
option «Right» :
Touche pour déplacer la pièce à droite
option «Drop» :
Touche pour faire tomber la pièce
option «Rot» :
Touche pour faire tourner la pièce
(si on ne veut utiliser qu'une touche, comme sur la version initiale d'Alexeï)
option «RotC» :
Touche pour faire tourner la pièce dans le sens des aiguilles d'une montre
option «RotAC» :
Touche pour faire tourner la pièce dans le contre des aiguilles d'une montre
(si on veux utiliser deux touches, comme sur GameBoy)
option «Restart» :
Touche pour recommencer à jouer
option «Plus» :
Touche Plus pour augmenter la difficulté du Jeu
Section «Key.Sys» :
Configure les touches du clavier du jeu en général.
Elles ne sont pas affichée pendant lejeu
option «Abort» :
Touche pour quitter le program
option «Menu» :
Touche pour appeler le menu
options «MenuUp» et «MenuDown» :
Touche de navigation dans les menus
options «MenuLess» et «MenuMore» :
Touche pour modifier les valeurs dans les menus
options «MenuGo» et «MenuOops» :
Touche pour valider/annuler dans les menus
option «Debug» :
Touche pour (dés-)enclencher l'affichage des valeurs dedéboggage,
pendant une partie.
(C'est le bloc de chiffres gris sombre en bas de la zone de chaque joueur)
option «ChgWRT» :
Touche pour changer le type de synchronisation d'affichage
pendant une partie.
Normalement la routine de synchronisation attend
que VertTrace soit sur Lo.
Mais si les pièces sont invisibles, lorsequ'elle sont
en haut de la zone de chaque joueur, il faut obliger la routine à
attendre que VertTrace soit sur Hi.
Section «System» :
sert à enregistrer les options générale.
La plupart des utilisateurs n'ont que peu faire de ces options.
De toutes façon, il est possible de régler ces options au clavier,
pendant l'execution du program.
option «DebugValue» :
si enclenché - affiche les info de déboggage
sinon - ne les affichepas
les informations de déboggages sont ces notes en gris sombre
en bas de la zone de chaque joueurs
option «WaitRetraceType» :
si non-enclenché - synchronise l'affichage de manière classique,
en attendant que VertTrace soit sur Lo
si enclenché - synchronise l'affichage de manière alternative,
en attendant que VertTrace soit sur Hi
Options par défaut 102/105 touche :
Ces options sont précodées dans le programme et seront utilisées
si vous ne spécifiez rien d'autre.
[GameDefault] WinPlus=0 WinSpeed=1 WinSpeedStep=1 Speed=45 InsertTime=30 [System] Debug=No WaitRetraceType=No [Keys.Sys] Menu=ESC Debug=F11 ChgWRT=F12 Abort=F10 MenuUp=UP MenuDown=DOWN MenuLess=LEFT MenuMore=RIGHT MenuGo=ENTER MenuOops=ESC [Keys.1] Left=LEFT Right=RIGHT Drop=DOWN Rot=PAD5 RotC=INS RotAC=DEL Plus=F6 Restart=F5 [Keys.2] Left=ELEFT Right=ERIGHT Drop=EDOWN Rot=ECENTR RotC=EINS RotAC=EDEL Plus=F2 Restart=F1
Configuration 85 touche :
Ces touches sont conseillées pour être utilisées
si avez un portable.
Left=0x1e (touche A) Right=0x20 (touche D) Drop=0x2d (touche X) Rot=0x1f (touche S) RotC=0x10 (touche Q) RotAC=0x12 (touche E)
Todo List
Liste de options pas encore implémenté
Copyrights
Original Tetris game by A. Pajitnov & V. Gerasimov (© AcademySoft CCAS USSR Moscow, 1986)
All other products are registered trade marks of their respective company
À deux de mes régulières clientes de cours de ratrapages nocturnes...