NESmaker - Démarrage rapide (tuto en français)

Having trouble compiling code? Getting an unexpected error? Player not appearing on screen? Seeking answers on how to do a particular thing? This is the forum you're looking for, to ask other NESmaker users for assistance.
User avatar
dale_coop
Posts: 5364
Joined: Fri Feb 16, 2018 7:05 am
Location: France

NESmaker - Démarrage rapide (tuto en français)

Post by dale_coop » Fri Aug 17, 2018 1:19 pm

Image

INTRO

J'ai préparé ce tutorial basique pour aider un peu ceux et celles qui n'auraient pas tout compris aux vidéos tutoriels de Joe :
http://nesmakers.com/viewforum.php?f=25

Cela vient en complément. Joe montre plus de détails que ce que j'explique ici. Je vous conseille donc vivement de regarder les vidéos correspondantes à chacun des sujets, pour voir les manip.

J'ai juste mis l'essentiel, pour que ça tourne. Je peux revenir sur certains points et apporter des précisions, si besoin.



DEMARRER UN NOUVEAU PROJET

Exécuter NESMaker_xxx.exe. Puis, choisir le menu "File > New". Une boite de dialogue s'ouvre alors:

Image

Pour la création de votre nouveau projet, vous avez le choix entre plusieurs options :
- Use Existing Tilesets : votre projet utlisera directement les images se trouvant dans le dossier "GraphicAssets".
- Create Blank Tilesets : votre projet utlisera des images vierges qui seront placées dans le dossier "GraphicAssets\<NomDeVotreProjet>". Les images situées directement dans le dossier "GraphicAssets" ne seront pas impactées par vos modifications.
- Create Default Tilesets : votre projet utlisera une copie des images de "GraphicAssets" qui seront placées dans le dossier "GraphicAssets\<NomDeVotreProjet>". Les images situées directement dans le dossier "GraphicAssets" ne seront pas impactées par vos modifications.
Si vous avez choisi une des 2 dernières options, vous devez indiquer un nom de dossier pour créer le dossier "GraphicAssets\<NomDeVotreProjet>".

Je vous conseille de choisir "Create Blank Tilesets", pour partir avec des images vierges que vous pourrez modifier à loisir.
(Par exemple, si vous saisissez "JEU01", un dossier "JEU01" sera créé dans le dossier "GraphicAssets". Toutes les images nécessaire pour votre jeu seront situées dans le dossier "GraphicAssets\JEU01").

Une fois votre nouveau projet démarré, il faut l'enregistrer.
Pour cela, choisir "File > Save". Votre projet n'ayant jamais été enregistré auparavant, une boite de dialogue s'affiche vous demandant où enregistrer le fichier de votre projet (l'extension d'un projet est .MST). Par convention, il est recommandé donner le même nom à votre fichier projet qu'à votre dossier projet précédemment créé.

Je vous conseille de le placer dans le sous-dossier "Projects" se trouvant à la racine du dossier NESMaker (et de prendre l'habitude d'enregistrez tous vos projets dedans, c'est plus simple pour les retrouver et pour les sauvegardes).



PARAMETRAGE INITIAL DU PROJET

Le projet est créé, mais il est "vierge". Nous allons maintenant effectuer le paramétrage de base avant d'attaquer la création de notre "player" et d'assets pour nos écrans.

Paramérage de base du projet :
Tout d'abord, choisir le menu "Project > Project Settings". Ici se trouve tout le paramétrage du projet, les scripts utilisés par votre projet.

- Dans l'onglet "Project Labels", vous pouvez modifier le nom des différents éléments de votre projet, ce sont les éléments utilisés par l'éditeur (IHM) uniquement, aucun impacte sur le moteur de jeu lui-même. Nous allons laisser ce qui est renseigné par défaut.

- L'onglet "Tilesets" affiche tous les fichiers images utilisés par votre projet. Nous allons laisser ce qui est renseigné par défaut.

- Dans l'onglet "Emulator", vous pouvez spécifier un autre emulateur NES que celui natif à l'éditeur.
Je conseille de télécharger l'emulateur FCEUX, de le dezipper quelque part et dans ce cas, de renseigner dans cet onglet les informations comme suivent :

Image

Emulator : chemin d'accès à l'applicaiton fceux.exe (parcourrir et sélectionner là où vous l'avez installé).
Working Folder: chemin d'accès au dossier (et rom) du jeu qui sera généré, cliquer sur le bouton parcourir et sélectionner le fichier "game.nes" se trouvant dans le dossier "GameEngineData".
Parameters: "game.nes" (renseigné automatiquement lorsque vous sélectionner le Working Folder).

- Ensuite l'onglet "Scripts Settings", surement l'onglet le plus important, il indique quel script doit être utilisé par le moteur de jeu, pour les différents éléments: par exemple quel script pour la physique ou pour les collisions ou pour les déplacements des sprites, ou pour les objets ramassés, …

Par défaut, cet onglet ne contient pas beaucoup de scripts :

Image

Il est possible d'ajouter/modifier ces scripts à la main (indiquer le type d'element, le script associé…)
Cependant pour plus de facilité, des "MODULES" avec des scripts pré-définis ont été (et vont être) créés, un module pour les jeux d'Aventures, un pour les jeux de Plateformes, un pour les Shooters, les Beat'em All…
La version actuelle de NESMaker vient avec le "Module Adventure" qui permet de créer un jeu d'aventure "TopDown", vue du dessus, style Zelda 1 sur NES (il vient également avec un module plus basic lui aussi TopDown mais qui contient moins de fonctionalités).

Fermer la fenêtre des Paramètres du Projet, nous allons maintenant voir comment Importer un module, pour avoir tous les scripts nécessaires pour notre premier jeu.

Choisir le menu "Project > Import Project Module" et sélectionner le module "Modules\AdventureModule.MOD". Une boite de dialogue va informer de toutes les modifications qui seront effectuées sur votre projet par cet import.
Une fois validé, si vous retournez consulter vos "Scripts Settings" dans les paramètres du projet, vous vous apercevrez qu'il y en a beaucoup plus !



INFOS DU PROJET

Choisir maintenant "Project > Infos", dans la fenêtre qui s'ouvre et cocher la case "Skip start screen", et UNIQUEMENT cela, ne rien toucher d'autre.
Pour l'instant, notre jeu n'aura pas de Start Screen et il démarrera directement dans le jeu (le Player dans un écran). Si vous ne cochez pas cette case, vous aurez un écran gris lorsque vous lancerez le jeu (qui est en fait le Start Screen non paramètre).



PALETTES ET GROUPES DE PALETTES

Maintenant que le paramétrage de base est effectué, nous allons pouvoir créer nos différents éléments de jeu (Palettes de couleurs, Player, Tiles pour composer nos écrans Monstres,…).

Paramétrage des Palettes :
Avant de pouvoir s'attaquer au écrans et à notre Player, nous devons créer au moins une palette de couleurs et un groupe de palettes.
Les palettes de couleurs seront utilisées pour créer vos differents sprites (votre Player, les monstres), et Tiles (les éléments pour vos écrans).

Dans l'arborescence de NESMaker, sélectionner "Palettes > Palette Groups", faire un clic-droit et choisir "New palette group".

Image

Un petit [+] s'affiche maintenant au niveau des Palette Groups, vous permettant d'accéder à votre nouveau groupe de palettes (vous pouvez lui donner un autre nom si vous le desirez, par exemple "Palettes Niveau 1")

Ensuite, déplier l'élément "Palettes" pour faire apparaitre toutes les palettes utilisables (pour les tiles).
Sélectionner la première palette et renommer la en "Palette principale" par exemple, ensuite faire un clic-droit sur cette palette et l'assigner au groupe de palette "Palettes Niveau 1".

Chaque élément du jeu peut être associé 2 palettes (sauf les Tiles qui en ont 4). Chaque palette contient 3 couleurs + 1 couleur commune à toutes les palettes, qui sert à la transparence des sprites et est aussi la couleur de base des écrans. Par défaut, on utilise le noir en couleur de base, mais il est possible d'utiliser celle qu'on veut (dans super mario 1, la couleur de base est le bleue).



PIXEL EDITOR

Pour pouvoir créer vos éléments de jeu Player, Tiles, Monstres, … vous devez d'abord modifier les tilesets, des images (bmp) contenant les graphismes qui seront utlilsés pour vos éléments de jeu (actuellement ils sont vides). Pour créer/modifier ces tilesets, nous allons ouvrir le "Pixel Editor".

Utilisation du Pixel Editor :
Dans l'arborescence, sélectionner le "Pixel Editor". C'est ici qu'on dessinera les graphismes.
On retrouve sur la gauche nos palettes (par défaut, il sélectionne automatiquement la premiere palette du premier groupe de palettes): les 4 (sub) palettes de couleurs de votre "Palette principale" sont affichées ici, vous pouvez modifier, assigner d'autres couleurs pour vos 4 sub-palettes de votre palette principale.

A noter, que toute modification de couleurs effectuée sur vos palettes est valable dans tout le projet, pas uniquement dans le Pixel Editor.
Je choisis les couleurs pour mes sub-palettes sur un clic-droit, dans chaque case couleur.

Image
Voilà qui est mieux. Cela me servira pour mes Tiles (arbres, pierres,...)

Les tilesets pour la NES sont representés par 4 couleurs indexées (représentées par noir, rouge, vert, bleu, que j'appellera "RGB" durant tout ce tutorial), chaque personnage, monstre, arbre, pierre, sol, … doit être enregistré avec ces 4 couleurs dans les fichiers tileset BMP, sinon cela ne fonctionnera pas. Nous allons donc devoir dessiner, modifier les couleurs de nos images pour qu'il n'y ait que ces 4 couleurs.
Pour plus de facilité le Pixel Editor, vous permet de passer d'un affichage "couleurs RGB" à "couleurs de la palette sélectionnée" en cliquant sur les boutons situés dans la barre d'outils.


Maintenant créons notre "Player" :
Appuyer sur le bouton Ouvrir ("Load a BMP file") et aller chercher le fichier "GameObjectTiles.bmp" se trouvant dans le dossier "GraphicAssets\<NomDeVotreProjet>" (dans mon cas dans "GraphicAssets\JEU01").
Ceci est le fichier pour notre Player. Nous allons y dessiner notre héro.

Le Player est un élément de jeu constitué de blocs de 8x8 pixels. En fonction de vos idées, vous pouvez choisir de réaliser un héro qui fait 8x8 ou 16x8 ou 16x16 ou … ces blocs seront assemblés pour créer le Player.
Mais pour l'instant, nous devons dessiner ces blocs.

Afficher la grille en appuyant sur le bouton [8].
Pour commencer à dessiner, utliser les boutons situés dans la barre d'outils (crayon, rectangle,...). Cliquer sur le bouton correspondant à la couleur avec laquelle vous voulez dessiner (toujours dans la barre d'outils en haut!).
Je vous conseille de laisser le premier bloc vide en haut à gauche (noir), ensuite dessiner un petit personnage sur 1 ou plusieurs blocs.

Image
Je réalise ici un SMILEY en 16x16. Je fais que la "vue" de face pour le moment (les vues de coté, je reviendrai dessus plus tard lorsque je ferai les animations).

Des boutons permettent de basculer d'un affichage "couleurs RGB" à "couleurs de la palette sélectionnée".
Image


Voilà, il ne reste plus qu'à cliquer sur le bouton "Enregistrer" (la première disquette à gauche dans la barre d'outils).
(note: il est possible de les créer dans Paint et faire du coller/coller).



GAME OBJECT - PLAYER

Maintenant, dans "Games Objects", sélectionner "Player".
Voici l'élément Player du jeu. Par défaut, il n'est pas paramétré.

Commencer par lui donner la taille désirée. Dans mon exemple, je choisis 2 par 2 (blocs).
Vous pouvez choisir également le nombre de frames (pour animer votre Player). Je laisse sur "1", car je n'ai dessiné qu'une frame pour mon player.
Ensuite, on choisit 2 palettes différentes pour le Player, parmi la liste des palettes accessibles (le player, les monstres et les items se partagent la même liste de palettes).
On va sélectionner "MonsterPalette0" et "MonsterPalette1", que l'on va renommer respectivement en "Player Pal 1" et "Player Pal 2".
Puis choisir quelques couleurs à nos palettes (clic droit sur chaque case couleur).
Voilà qui est fait.

Image

Si votre tileset n'apparait pas en haut à droite, c'est qu'il ne s'est pas encore rafraîchit… Patienter 2 ou 3 secondes, ensuite dans l'arborescence, cliquer ailleurs, par exemple sur "Overworld", puis revenir sur "Player"… cela devrait se rafraîchir (1 ou 2 allez retour sont parfois nécessaires :p)

Maintenant, dans la partie centrale, pour chaque bloc composant le Player, indiquer le Tileset à utililiser (en sélectionnant dans la fenêtre située en haut à droite).
Vous pouvez également assigner une sub-palette (différente ou la meme) à chaque bloc.

Passons aux propriétés du Player :
Cliquer ensuite sur "Object Details", cette boite de dialogue sert à paramétrer les objets de jeu (ici, le Player. Mais vous retrouverez la meme interface lorsqu'on sera sur les monstres ou les items à collecter).

- Le premier onglet "Animations" sert à à paramétrer les différentes animations en fonction du type de mouvement.

Image
On va laisser comme c'est pour l'instant.

- Dans l'onglet "Details", vous devez commencer par cocher le type "Player" (parceque notre élémént est un player), ainsi que "PERSISTENT" (c'est objet sera toujours chargé en mémoire, quelque soit l'écran du jeu).

Image

Ceci est très important, si vous ne cochez pas ces 2 cases, vous ne verrez pas votre Player lorsque jeu démarrera.
Vous pouvez également renseigner ici son niveau de santé "Health" (si 0, alors votre Player ne meurt jamais / i)
Vous DEVEZ renseigner sa vitesse de déplacement "Speed" ainsi que son "accélération", dans mon exemple, j'ai mis une vitesse de "40" et une accélération de "200". (Je vous laisse modifier ces valeurs par la suite, si vous voulez tester).
Le reste on ne touche pas pour l'instant.

- L'onglet "Actions", permet de paramétrer une suite d'actions, en commençant par l'action 0.
Dans le cas des monstres, cela permet de définir un comportement, une suite d'actions qui peuvent être enchaînées, leur IA. Cependant dans le cas du Player, c'est un peu différent.
Voici le comportement par défaut pour le Module Adventure :
L'action 0 : c'est l'état du Player immobile (lorsque le joueur ne touche pas les contrôles de déplacement).
L'action 1 : c'est l'état du Player en mouvement
L'action 2 : c'est l'état du Player en attaque
Pour chacun de ces états, il est possible de définir l'animation à utiliser, la vitesse de celle-ci, et si on doit changer d'état lorsqu'elle se termine.
Note: Comme nous utilisons le Module Adventure, nous devons paramétrer l'action 2 pour qu'à la fin de l'attaque, il revienne à l'état immobile. Pour cela :
Sélectionner l'étape "2", puis pour "End of animation", choisir "GoToFirst" et définir une vitesse d'animation différente de "0" (dans notre exemple, je vais mettre "1").

- L'onglet "Bounding box" permet de définir la zone de collision avec le Player. La plupart du temps, il suffit de definir un rectangle à l'intérieur de notre Player.

Image

Voilà pour le Player !



ECRAN - OVERWORLD

Nous allons maintenant indiquer dans quel écran le Player devra se trouver lorsque le jeu commence.
Cliquer sur "Overworld", s'affiche l'ensemble des écrans à notre disposition pour le jeu (en fait il y en plus, car nous avons accès à 3 "banks" d'écrans, ainsi qu'à l'Underworld).

Sélectionner un écran, par exemple l'écran 1,1 (on commence toujours à compter horizontalement, puis verticalement… et à partir de 0. Donc ici, sélectionner l'écran à l'intersection de la deuxième colonne et de la deuxième ligne).
Double-cliquer dessus pour l'ouvrir, il est noir c'est normal (il affiche en réalité, le tile 0 vide qui a actuellement la couleur de base, commune à toutes les palettes), nous n'avons pour l'instant posé aucun éléments dedans car nous n'en avons pas encore créés.

Sur l'écran noir, faire un clic-droit au milieu et choisir "Place Player". Un petit icone (une tête) indique l'emplacement de votre Player.



HUD

Dernière étape avant de pouvoir tester…

Definir le HUD :
Le HUD est la partie qui sert à afficher des informations durant le jeu (le score, la santé, le nombre de vies,…). Bien que tous les jeux n'affichent pas forcément de HUD, NESMaker a besoin que ce HUD soit paramétré ! (même si pas utilisé)
Sélectionner "HUD & Boxes", puis dans le premier onglet "HUD", définir à l'aide de la souris une zone pour le HUD.
Par exemple, classique:
2 lignes sur toute la hauteur et cliquer sur le bouton "HUD Area" pour definir la zone.
Ensuite sélectionner le reste de la zone, et je clique sur le bouton "Playable Area".

Image
]A noter !!! il faut impérativement que la zone de HUD fasse 2 lignes minimum (sinon bug…)

CF Partie plus détaillée concernant le HUD (notamment pour les TEXT-BOX): http://nesmakers.com/viewtopic.php?p=4323#p4323



EXPORT et TEST

Nous allons essayer de lancer le jeu pour vérifier que notre Player s'affiche bien:
Dans le menu "Test", sélectionner "Export & Test"… cela va lancer la compilation des scripts et paramètres du projet et générer le fichier game.nes ROM. La fenêtre de ligne de commmandes s'affiche...

Image

Et normalement "Appuyer sur une touche pour continuer".
(si des des erreurs, un message s'affichera et le détail des erreurs sera cette fenêtre de ligne de commandes)

Normalement, si vous avez suivi ce tutoriel à la lettre, le jeu doit se lancer, zapper le Start Screen et arriver directement sur notre écran (noir) avec notre Player dessus.

Image



SCRIPTS POUR LES CONTROLES

On se rend vite compte en jouant avec la manette (ou au clavier), que le Player ne bouge pas :p Va falloir lui ajouter des scripts de mouvements, qui se déclencheront lors de l'appui sur les boutons.
NESMaker fournit de base des scripts permettant le mouvement de notre player (ils viennent avec le "AdventureModule"). Tous les scripts se trouvent dans le dossier "GameEngineData\Routines\UserScripts\AdventureGame_Base", rangés dans des sous dossier. Nous allons utiliser certains de ces scripts.

De retour dans NESMaker, déplier "Scripts" et sélectionner "Inputs scripts". Puis dans la liste de droite, se déplacer jusqu'au dossier "UserScripts\BasicScripts\AdventureGame_Base\MovementScripts" et double-cliquer sur les fichiers "StartMovingPlayerDown.asm", "StartMovingPlayerLeft.asm", "StartMovingPlayerRight.asm", "StartMovingPlayerUp.asm" et "StopMovingPlayerDown.asm", "StopMovingPlayerLeft.asm", "StopMovingPlayerRight.asm", "StopMovingPlayerUp.asm".

Image
Ils devraient disparaitre de la fenêtre de droite et vous devriez les retrouver sous "Input Scripts".



CONTROLES

Maintenant, aller dans "Input editor", cet écran permet d'assigner des scripts (input scripts) à des actions sur boutons, en fonction de l'écran en cours (Start Screen, dans le jeu, ou lorsque sur l'écran de fin, ...)

Dans la liste déroulante "Game State", sélectionner "MainGame" (c'est à dire en cours de jeu). Dans "Target", sélectionner "NULL" (toujours choisir NULL pour tous les scripts, car actuellement ce paramètre n'est pas géré).
Dans "script to run", sélectionner le script "StartMovingPlayerDown.asm", sélectionner (à l'aide de la souris) le bouton concerné sur la manette (un rectangle rouge apparait sur le bouton), et cliquer sur le bouton "Press-Hold-Release." (qui correspond à l'état du bouton "appui", "maintient appuyé", "relâché") pour qu'il affiche "Hold".
Ensuite cliquer que "Add Script" pour associer le script de mouvement en bas lorsqu'on maintient du bouton bas de la manette pendant le jeu.

Image
Une ligne apparait dans la liste des commandes de contrôles assignées.

Effectuer la meme chose pour les autres boutons (Left, Right, Top).
Ensuite, faire de même pour les scripts "StopMovingPlayerxxx" (pour que le Player s'arrête lorsqu'on relâche les boutons) en choisissant "Release" pour le bouton Press-Hold-Release.

Image
Et voilà, vous devriez avoir cela.

Il n'y a plus qu'à tester... Menu "Test > Export & Test".
Voilà, votre player devrait pouvoir se déplacer librement.



N'hésitez pas à poser des questions, si quelque chose vos a échappé ...


>> La suite, "TILES - ECRANS", ici : http://nesmakers.com/viewtopic.php?p=3191#p3191
Last edited by dale_coop on Tue Aug 28, 2018 9:26 am, edited 3 times in total.
-----
Sorry about my poor english
All I need: A Damn Fine Cup of Coffee
My games: PRESS START GAME / UNDERGROUND ADVENTURE / UNDERGROUND ADVENTURE (Arcade version - Byte-Off-2019)
My son's game: KUBO 3
User avatar
LAZARUS
Posts: 26
Joined: Tue Aug 14, 2018 8:17 am

Re: NESmaker - Démarrage rapide (tuto en français)

Post by LAZARUS » Fri Aug 17, 2018 1:26 pm

Ca c'est de l'explication,merci bien.Même si je ne suis pas mauvais en anglais,j'avoue qu'avoir des explications en français aide quand même beaucoup. :P
User avatar
zouzzz
Posts: 13
Joined: Fri Feb 16, 2018 8:06 pm

Re: NESmaker - Démarrage rapide (tuto en français)

Post by zouzzz » Fri Aug 17, 2018 2:06 pm

Un taf impressionnant en quelques heures, je suis extrêmement impressionné. (et c'est un ancien tutomaker qui t'écrit).
Merci beaucoup !
Image
- Dev - Hacks - Homebrews - Games - Demos -
User avatar
dale_coop
Posts: 5364
Joined: Fri Feb 16, 2018 7:05 am
Location: France

Re: NESmaker - Démarrage rapide (tuto en français)

Post by dale_coop » Fri Aug 17, 2018 2:16 pm

Merci, j'ai fait ça un peu rapidement, en effet.
Je le modifierai pour ajouter quelques précisions surement dans les heures (et jours) qui viennent.
Je voulais rester le plus concis possible, une mise en route rapide, pour avoir un jeu qui se lance. Et revenir sur certains points ultérieurement (ou sur demande) pour détailler, et expliquer un peu plus.

Le but est juste d'éclairer ceux qui n'auraient pas (ou mal) compris les vidéos.
-----
Sorry about my poor english
All I need: A Damn Fine Cup of Coffee
My games: PRESS START GAME / UNDERGROUND ADVENTURE / UNDERGROUND ADVENTURE (Arcade version - Byte-Off-2019)
My son's game: KUBO 3
User avatar
Kitsune
Posts: 112
Joined: Thu Aug 09, 2018 6:14 am
Location: France
Contact:

Re: NESmaker - Démarrage rapide (tuto en français)

Post by Kitsune » Fri Aug 17, 2018 2:54 pm

Très bon travail.

Au niveau des précisions, revenir sur l'histoire des trois couleurs pour les palettes et expliquer le procédé de mise en conformité des couleurs pour la NES lorsqu'on importe un bmp fait via autre chose que NESMAKER. En utilisant le remplissage par couleur par exemple. Évoquer également le fait que rouge, vert, bleu ne doivent pas nécessairement correspondre à du rouge, du vert et du bleu. C'est un point important.
User avatar
LAZARUS
Posts: 26
Joined: Tue Aug 14, 2018 8:17 am

Re: NESmaker - Démarrage rapide (tuto en français)

Post by LAZARUS » Fri Aug 17, 2018 2:57 pm

Ca apporte de bonnes bases au tout débutant.Certains passages des vidéos me semblent déja plus clair(Ils l'étaient surement mais in french is good....... :oops: )
User avatar
triste
Posts: 28
Joined: Thu Aug 16, 2018 4:05 pm

Re: NESmaker - Démarrage rapide (tuto en français)

Post by triste » Fri Aug 17, 2018 2:59 pm

Excellent, merci !
Je vais lire ça calmement et commencer à toucher ensuite.
User avatar
dale_coop
Posts: 5364
Joined: Fri Feb 16, 2018 7:05 am
Location: France

Re: NESmaker - Démarrage rapide (tuto en français)

Post by dale_coop » Fri Aug 17, 2018 3:19 pm

TILES - PIXEL EDITOR

Pour réaliser les écrans, il faut commencer par créer des ASSETS / Tiles (des arbres, des pierres, des portes, …).

Dans le Pixel Editor, ouvrir le tileset "BckCHR_00.bmp" se trouvant dans votre dossier "GraphicAssets\<NomDeVotreProjet>".
Celui-ci est le 1er de vos tilesets utilisables pour vos créer vos Assets / tiles.

Informations: Il y a 6 tilesets (par Bank). A savoir que dans NESMaker, chaque écran ne peux accéder qu'à 1 tileset à la fois. Donc bien reflechir pour l'organisation des Tiles. Mais à noter que chaque écran a accès à des Tiles spéciales ("Screen special tiles") dont les tilessets sont beaucoup plus petits mais aussi plus nombreux (10 "Screen tilesets" par Bank).

Les Tiles sont composés de blocs de 16x16 pixels. Commencer donc par cliquer sur le bouton [16] de la barre d'outils, pour afficher les différents blocs possibles.
Sélectionner la couleur à utiliser (toujours dans la barre d'outils).
Et dessiner le Tile.

A noter que le premier block (16x16) est le tile "vide" par defaut. Lorsqu'on affiche un écran vierge, par défaut, c'est ce bloc qui recouvre tout l'écran.
Donc pour le cas d'un jeu TopDown, il est judicieux de modifier ce 1er bloc pour en faire, le "Sol" (herbe ou terre ...)!

Je dessine donc de l'herbe me servira de Tile "Sol".

Image
J'en profite pour également dessiner un rocher, sur d'autres blocs.

Une fois terminé, ne pas oublier d'enregistrer le fichier Tileset (la 1ère petite disquette).



TILES - ASSETS

Dans l'arborescence de NESMaker, sélectionner maintenant "Graphics Banks > Graphics Bank 1 > Assets".
Ceci est la fenêtre de Tile. Par defaut, pour créer un nouveau tile, il suffit de se placer sur "Assets" dans l'arborescence.

Tout comme le Player précedemment, on commence par choisir la taille du Tile que l'on veut créer.
Dans mon exemple, je vais créer un Tile constitué d'1 unique block, que je vais appeler "Sol" (en lieu et place de "New Asset").
Sur la partie gauche de la fenêtre, ma "Palette principale" est déjà sélectionnée (je pourrais en choisir un autre, ici, si j'en avais paramétré d'autres). Je sélectionne quelle sub-palette (jeu de couleurs) je veux utiliser pour mon "Sol".

Dans la liste déroulante en haut à gauche, j'indique quel type de collision je souhaite pour CHACUN des blocs qui constituent le Tile que je suis en train de réaliser.
Dans le cas d'un Tile pour le sol, le player peut marcher dessus, donc choisir "Null - Walkable".

Image
Enfin, créer le Tile en cliquant sur "Save New".

Note: pour modifier ce Tile, il faut déplier "Assets" dans l'arborescence et selectionner le tile "Sol".

Pour créer mon Tile "Rocher", je choisis 2 x 2 blocs. Ensuite, dans la partie centrale, pour chaque bloc composant le monstre, je sélectionne le Tileset à utililiser (en haut à droite), puis la sub-palette de couleurs qui correspondrait mieux à mon "Rocher".
Le type de collision, pour CHACUN des blocs qui constituent le Tile, je choisis "Solid - simple" : le Player sera bloqué par mon rocher.

Image

Créer le Tile en cliquant sur "Save New".

Voilà, j'ai deux tiles pour dessiner mon écran de jeu.



ECRANS

Dans l'arborsecence de NESMaker, sélectionner "Overworld", et double-cliquer sur l'écran de jeu où vous se trouve placé le Player.
L'écran ne devrait plus être noir, car le bloc vide par défaut est maintenant mon Sol :p

Vous avez maintenant accès aux différents Assets / Tiles, que vous pouvez utiliser pour dessiner sur votre écran.

Notes : Vous pouvez passer d'un écran à un autre adjacent (écran au-dessus, au-dessous, écran à droite ou celui à gauche) à l'aide des touches de direction de votre clavier.
Une petite zone fantôme autour de l'écran en cours (1 colonne/ligne), vous permet de visualiser comment sont placés les Assets/Tiles dans les écrans adjacents. Vous pouvez ainsi mieux évaluer les collisions aux changement d'écran (mettre un rocher en face d'un autre rocher, pour ne pas que le Player reste coincé en passant d'un écran à l'autre par exemple)

Image
Je mets quelques rochers un peu partout (possibilité t'utiliser les touches CTRL et SHIFT du clavier pour décaler le tile par rapport au curseur)


Il n'y a plus qu'à tester... via le menu "Test > Export & Test".
Voilà, votre player devrait pouvoir se déplacer un peu moins librement :p



>> La suite "LES MONSTRES", ici http://nesmakers.com/viewtopic.php?p=3462#p3462
Last edited by dale_coop on Tue Aug 28, 2018 9:32 am, edited 2 times in total.
-----
Sorry about my poor english
All I need: A Damn Fine Cup of Coffee
My games: PRESS START GAME / UNDERGROUND ADVENTURE / UNDERGROUND ADVENTURE (Arcade version - Byte-Off-2019)
My son's game: KUBO 3
User avatar
triste
Posts: 28
Joined: Thu Aug 16, 2018 4:05 pm

Re: NESmaker - Démarrage rapide (tuto en français)

Post by triste » Fri Aug 17, 2018 7:44 pm

Merci beaucoup, j'avance progressivement grâce à toi !
Comment fait-on pour supprimer ou déplacer un Tile mal placé ?
(Lors de l'export j'ai un écran gris sur l'émulateur.)
User avatar
dale_coop
Posts: 5364
Joined: Fri Feb 16, 2018 7:05 am
Location: France

Re: NESmaker - Démarrage rapide (tuto en français)

Post by dale_coop » Fri Aug 17, 2018 7:52 pm

Sur un écran, pour supprimer un tile, tu as juste à poser un tile "sol" par dessus. Il n'y a pas de notion d'objet sur les écrans, les tiles c'est comme de la peinture, tu sélectionnes et cliques pour le dessiner à l'endroit voulu. Tu peux également supprimer en appuyant sur la touche "5" de ton clavier (ça remplace le bloc sous lequel est ton le cursor de ta souris par le bloc vide (bloc0)).

Pour l'écran gris, assures toi d'avoir coché la case "skip start screen" dans Project > Infos.
-----
Sorry about my poor english
All I need: A Damn Fine Cup of Coffee
My games: PRESS START GAME / UNDERGROUND ADVENTURE / UNDERGROUND ADVENTURE (Arcade version - Byte-Off-2019)
My son's game: KUBO 3
Post Reply