[SMS] Rick Dangerous
+26
groovykid
vincent2105
Xorion x
Révo
Templeton
Hpman
Shaoth
F.L
Joe Akira
upsilandre
ob1
invité
drfloyd
Ricco59_59
erikrom2
nemokantio
kawickboy
ichigobankai
fanoplusplus64K
TotOOntHeMooN
vingazole
Stef
kogami
Tryphon
troudki
kikich
30 participants
Page 1 sur 6
Page 1 sur 6 • 1, 2, 3, 4, 5, 6
[SMS] Rick Dangerous
Cimmerian approchant de la fin (put*** de derniere arène qui me prend 10 plombes),
j'ai commencé à me bricoler un petit moteur de jeu de plateformes il y a 10 jours.
Comme base, j'ai jeté mon dévolu sur le bien connu Rick Dangerous ^^
En l'état j'ai mis au point la gestion metasprites (dérivée de Cimmerian - en simplifié -),
gestion de la collision vis à vis de la map (en utilisant les 3 bits supérieurs inutilisés),
codé un script d'export en python dans #TiledMapEditor (qui export au format SMS / ASM wladx),
scroller (par tranche de 64px mais "fluide" (au pixel), grâce au hard de la SMS),
gestion des interconnections in/out de zones au sein d'un level
et évidemment les déplacements/mouvements du perso principal (pour tester c'est plus facile )
La partie à venir sera certainement la plus interessante (pour moi) avec la gestion des entitées (objets/monstres/action) au sein d'une zone et les collisions entre sprites.
J'ai codé quelques fonctions en asm (lecture/récup tile VRAM, modulo, divers trucs de transfert/calcul de données),
du coup il me reste plein de scanlines/temps dispo
Je ne sais pas encore si je ferais le portage ou non de R&D, mais même si je le fais,
j'y apporterais ma touche perso (vu que j'ai encore pas mal de tiles libres rien que pour le décor).
Quand on avait fait la démo de Lost Raider avec Vingazole pour un concours SMSPower, j'avais fait plein de tiles grande chance que j'en récup.
#TombRaiderWithBalls
j'ai commencé à me bricoler un petit moteur de jeu de plateformes il y a 10 jours.
Comme base, j'ai jeté mon dévolu sur le bien connu Rick Dangerous ^^
En l'état j'ai mis au point la gestion metasprites (dérivée de Cimmerian - en simplifié -),
gestion de la collision vis à vis de la map (en utilisant les 3 bits supérieurs inutilisés),
codé un script d'export en python dans #TiledMapEditor (qui export au format SMS / ASM wladx),
scroller (par tranche de 64px mais "fluide" (au pixel), grâce au hard de la SMS),
gestion des interconnections in/out de zones au sein d'un level
et évidemment les déplacements/mouvements du perso principal (pour tester c'est plus facile )
La partie à venir sera certainement la plus interessante (pour moi) avec la gestion des entitées (objets/monstres/action) au sein d'une zone et les collisions entre sprites.
J'ai codé quelques fonctions en asm (lecture/récup tile VRAM, modulo, divers trucs de transfert/calcul de données),
du coup il me reste plein de scanlines/temps dispo
Je ne sais pas encore si je ferais le portage ou non de R&D, mais même si je le fais,
j'y apporterais ma touche perso (vu que j'ai encore pas mal de tiles libres rien que pour le décor).
Quand on avait fait la démo de Lost Raider avec Vingazole pour un concours SMSPower, j'avais fait plein de tiles grande chance que j'en récup.
#TombRaiderWithBalls
Re: [SMS] Rick Dangerous
vraiment très intéressant
kikich- Patient en incubation
- Nombre de messages : 92
Age : 46
Localisation : Romilly sur seine
Date d'inscription : 06/02/2015
Re: [SMS] Rick Dangerous
Super sympa !!
Mais avec ton niveau en pixel art, et pour sortir des sempiternels remake, tu pourrais nous concocter un petit jeu de plateforme original comme l'a fait Broke Studio avec son Twin Dragons !
Avec l'aide de ton moteur.
Je verrai bien un jeu de plateforme avec le monde de Cimmerian, un plateformer Barbarian !!
Bon courage pour la suite.
Mais avec ton niveau en pixel art, et pour sortir des sempiternels remake, tu pourrais nous concocter un petit jeu de plateforme original comme l'a fait Broke Studio avec son Twin Dragons !
Avec l'aide de ton moteur.
Je verrai bien un jeu de plateforme avec le monde de Cimmerian, un plateformer Barbarian !!
Bon courage pour la suite.
Invité- Invité
Re: [SMS] Rick Dangerous
Super Projet et bon début de portage..
C'est cool d'utiliser Tilemapeditor et son modele export en python.
Est ce qu'en plus du design de la map, tu rajoutes des infos complémentaires in/ou, placement des ennemis via tilemapeditor ?
pour ma comprehension technique, que signifie "gestion de la collision vis à vis de la map (en utilisant les 3 bits supérieurs inutilisés), "
C'est cool d'utiliser Tilemapeditor et son modele export en python.
Est ce qu'en plus du design de la map, tu rajoutes des infos complémentaires in/ou, placement des ennemis via tilemapeditor ?
pour ma comprehension technique, que signifie "gestion de la collision vis à vis de la map (en utilisant les 3 bits supérieurs inutilisés), "
Re: [SMS] Rick Dangerous
la définition de la map sur SMS sur fait sur 16bits (pour un tile) :
$0000, donnée qui comprend
- le numéro de tile dans le VDP ($0 à $1FF)
- l'effet appliquée ; miroir H, V , H+v ($200, $400 ou $600)
- palette utilisée ($800)
- priorité (pour passer par dessus les sprites) ($1000)
le mot est sur 16bits, mais n'en utilise que 13 (0-12), il reste donc 3 bits (13 à 15)
sur ces 3 bits, formant donc 8 possibilités, j'affecte un type à chaque valeur (solide, plateforme, mort, échelle, etc.) ainsi pas besoin d'avoir une autre map de collision en ram, les infos sont déjà dans la map affichée (juste à aller lire la map en vram)
Evidemment pour éviter de faire un truc complètement con, la mort ou le solide (infranchissable) sont ceux avec les poids les plus forts.
Pour TileMapEditor, j'avais déjà fait un script python de conversion tmx vers sms, mais là il est directement inclus dans Tiled. Juste a faire un raccourci touche pour exporter.
J'ai d'ailleurs fait remonter un problème à Thorbjørn Lindeijer (le créateur de Tiled) car il manquait des infos dans l'api python (les valeurs de miroir censées être sur 32bits n'était pas dans l'api). Il a ajouté le code manquant et cela sera présent à la prochaine maj.
$0000, donnée qui comprend
- le numéro de tile dans le VDP ($0 à $1FF)
- l'effet appliquée ; miroir H, V , H+v ($200, $400 ou $600)
- palette utilisée ($800)
- priorité (pour passer par dessus les sprites) ($1000)
le mot est sur 16bits, mais n'en utilise que 13 (0-12), il reste donc 3 bits (13 à 15)
sur ces 3 bits, formant donc 8 possibilités, j'affecte un type à chaque valeur (solide, plateforme, mort, échelle, etc.) ainsi pas besoin d'avoir une autre map de collision en ram, les infos sont déjà dans la map affichée (juste à aller lire la map en vram)
Evidemment pour éviter de faire un truc complètement con, la mort ou le solide (infranchissable) sont ceux avec les poids les plus forts.
Pour TileMapEditor, j'avais déjà fait un script python de conversion tmx vers sms, mais là il est directement inclus dans Tiled. Juste a faire un raccourci touche pour exporter.
J'ai d'ailleurs fait remonter un problème à Thorbjørn Lindeijer (le créateur de Tiled) car il manquait des infos dans l'api python (les valeurs de miroir censées être sur 32bits n'était pas dans l'api). Il a ajouté le code manquant et cela sera présent à la prochaine maj.
Dernière édition par ichigobankai le Mer 13 Juin 2018 - 0:06, édité 3 fois
Re: [SMS] Rick Dangerous
Tu peux écrire des plugins Tiled en Python ? J'utilise une vieille version et j'ai écrit des scripts pour les convertir sur MD, ça peut valoir le.coup d'en faire des plugins (si c'est pas déjà fait).
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: [SMS] Rick Dangerous
Le moteur a pas mal avancé ;
- fondu enchainé entre zones
- bombes/tir
- explosions (avec collisions items / monstres),
- items
- structure & mise en place des ennemis (mouvements, limites de zones, etc)
me reste grosso modo:
- interaction entre sprite hero et le reste du monde (ennemi, items, ...)
- maj placement sprites pendant les scroll Y (sprites autre que le hero, lui c'est déjà fait)
- score (le reste du HUD étant déjà mis à jour)
j'ai mis en place une rotation de la SAT (pour que cela clignote quand > à 8 sprites / scanline), mais a améliorer.
pour l'instant toujours en 60fps constants (avec 3 ennemis & 3 bonus, chose qui n'arrive jamais en vrai) et j'ai encore largement assez de temps restant pour loger ce qui reste à faire. Donc très logiquement ca restera en 60fps.
Rick est en chargement dynamique et bouffe ~50% du vblank rien qu'à lui (9 x 32bytes), mais grace à ca il me reste au moins 100 tiles de libres (en plus) pour le décor.
- fondu enchainé entre zones
- bombes/tir
- explosions (avec collisions items / monstres),
- items
- structure & mise en place des ennemis (mouvements, limites de zones, etc)
me reste grosso modo:
- interaction entre sprite hero et le reste du monde (ennemi, items, ...)
- maj placement sprites pendant les scroll Y (sprites autre que le hero, lui c'est déjà fait)
- score (le reste du HUD étant déjà mis à jour)
j'ai mis en place une rotation de la SAT (pour que cela clignote quand > à 8 sprites / scanline), mais a améliorer.
pour l'instant toujours en 60fps constants (avec 3 ennemis & 3 bonus, chose qui n'arrive jamais en vrai) et j'ai encore largement assez de temps restant pour loger ce qui reste à faire. Donc très logiquement ca restera en 60fps.
Rick est en chargement dynamique et bouffe ~50% du vblank rien qu'à lui (9 x 32bytes), mais grace à ca il me reste au moins 100 tiles de libres (en plus) pour le décor.
Re: [SMS] Rick Dangerous
Un petit HS mais concernant catt bomberman, c’est un projet abandonné ?
Ça fait un moment que tu en parle plus.
Ça fait un moment que tu en parle plus.
Re: [SMS] Rick Dangerous
Pour le Neko Blasters, c'est vingazole qui s'occup(ait) du code, pour l'instant on peut le considérer en "standbye".
Si je devais le reprendre ce serait quand même chaud car c'est du full asm...
De mémoire il restait surtout la gestion des Bots (IA) en "gros" morceaux.
Si je devais le reprendre ce serait quand même chaud car c'est du full asm...
De mémoire il restait surtout la gestion des Bots (IA) en "gros" morceaux.
Re: [SMS] Rick Dangerous
ichigobankai a écrit:la définition de la map sur SMS sur fait sur 16bits (pour un tile) :
$0000, donnée qui comprend
- le numéro de tile dans le VDP ($0 à $1FF)
- l'effet appliquée ; miroir H, V , H+v ($200, $400 ou $600)
- palette utilisée ($800)
- priorité (pour passer par dessus les sprites) ($1000)
le mot est sur 16bits, mais n'en utilise que 13 (0-12), il reste donc 3 bits (13 à 15)
sur ces 3 bits, formant donc 8 possibilités, j'affecte un type à chaque valeur (solide, plateforme, mort, échelle, etc.) ainsi pas besoin d'avoir une autre map de collision en ram, les infos sont déjà dans la map affichée (juste à aller lire la map en vram)
Je reviens sur ce schéma de l'encodage du tilemap, à quoi ça sert d'avoir 1 bit pour la palette puisqu'il me semblait que sur SMS tu avais une palette fixe pour le background et une palette fixe pour les sprites ?
A moins que le background a le droit aux 2 palettes et 1 seule pour les sprites ?
Sinon 3 bits inutilisés dans chaque entrée de tilemap, c'est mega pratique ! Sur MD forcément tu n'as pas un seul bit de libre (puisqu'il y a dejà 11 bit pour le numéro de tile et 2 bits pour la palette)
Stef- Interne
- Nombre de messages : 5087
Age : 45
Localisation : Sevres
Date d'inscription : 04/04/2007
Re: [SMS] Rick Dangerous
Voili.
Dernière édition par vingazole le Mar 26 Juin 2018 - 22:46, édité 1 fois
vingazole- Infirmier
- Nombre de messages : 4522
Age : 50
Localisation : Midian
Date d'inscription : 05/01/2012
Re: [SMS] Rick Dangerous
Voilà.
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18166
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Re: [SMS] Rick Dangerous
Tiens , j'étais passé à coté de ce sujet, très intéressant , j'espère que tu mènera à son terme
fanoplusplus64K- Patient contaminé
- Nombre de messages : 597
Age : 48
Date d'inscription : 16/01/2011
Re: [SMS] Rick Dangerous
Merci :)
1ere fois que je code un moteur de jeu de plateformes et c'est assez sympa.
1ere fois que je code un moteur de jeu de plateformes et c'est assez sympa.
Re: [SMS] Rick Dangerous
Petit "mockup" avec mes petits ajouts perso, mais mockup avec des palettes déjà étalées et les tiles présents sont déjà dans la planche. (me reste actuellement encore 97 tiles libres pour le bkg)
*la partie "haute" étant des essais de couleurs.
le moteur du jeu est quasi terminé, reste grosso modo les exceptions à faire pour chaque zone (genre boule qui roule ou autre event "particulier").
Mais de toute façon je ne compte pas faire un portage bête et méchant.
Vivement dans 3 semaines et mes 3 semaines de vacances, histoire de terminer (ou pas loin) Cimmerian avant d'aller plus loin sur RD.
*la partie "haute" étant des essais de couleurs.
le moteur du jeu est quasi terminé, reste grosso modo les exceptions à faire pour chaque zone (genre boule qui roule ou autre event "particulier").
Mais de toute façon je ne compte pas faire un portage bête et méchant.
Vivement dans 3 semaines et mes 3 semaines de vacances, histoire de terminer (ou pas loin) Cimmerian avant d'aller plus loin sur RD.
Re: [SMS] Rick Dangerous
Entre les pixels de Cimmerian, je peaufine/ajoute 2/3 trucs à Rick Dangerous
J'ai viré le HUD, histoire d'avoir un tilemap uniquement dédié au jeu.
Lors d'un tir, dépose de bombe et perte de vie, un petit indicateur s'élève désormais au dessus du perso (pendant ~1sec)
L'écran pause (animé), quant à lui, indique la totalité des infos
PS. C'est du gros wip qui tâche, donc la partie graphique n'est pas du tout finalisée.
J'ai viré le HUD, histoire d'avoir un tilemap uniquement dédié au jeu.
Lors d'un tir, dépose de bombe et perte de vie, un petit indicateur s'élève désormais au dessus du perso (pendant ~1sec)
L'écran pause (animé), quant à lui, indique la totalité des infos
PS. C'est du gros wip qui tâche, donc la partie graphique n'est pas du tout finalisée.
Re: [SMS] Rick Dangerous
Hâte de voir ça en mouvement !
Tryphon- Docteur *
- Nombre de messages : 26166
Age : 47
Localisation : Un peu plus à l'Ouest
Date d'inscription : 23/07/2016
Re: [SMS] Rick Dangerous
niveau gameplay tu permettras de jouer comme sur micro (saut avec le haut du contrôleur) et comme sur console (saut avec un bouton) ?
en tout cas cela fait bien envie.
en tout cas cela fait bien envie.
kawickboy- Interne
- Nombre de messages : 9885
Age : 46
Localisation : Paris / Eu - Le Tréport
Date d'inscription : 30/03/2008
Re: [SMS] Rick Dangerous
Merci
pour le saut, j'ai mis ca sur un bouton, plus simple (et intuitif) je trouve - sur console du moins -.
pour le saut, j'ai mis ca sur un bouton, plus simple (et intuitif) je trouve - sur console du moins -.
Re: [SMS] Rick Dangerous
Salut Ichigo,
Très joli.
Le metasprite de rick et des ennemis, ils font deux ou trois sprites de large ?
Très joli.
Le metasprite de rick et des ennemis, ils font deux ou trois sprites de large ?
nemokantio- Patient contaminé
- Nombre de messages : 345
Age : 48
Localisation : Delgastan
Date d'inscription : 23/01/2013
Re: [SMS] Rick Dangerous
Du coup tu verrouilles à un ennemi en face de rick.
Ce qui n'est pas gênant finalement.
Ce qui n'est pas gênant finalement.
nemokantio- Patient contaminé
- Nombre de messages : 345
Age : 48
Localisation : Delgastan
Date d'inscription : 23/01/2013
Re: [SMS] Rick Dangerous
"vérrouiller" ?, la, moi pas comprendre ^^
si c'est pour l'écran de "pause", y'a juste 2 metasprites.
(à une position fixe, c'est peut etre ce que tu appelles verrouillé)
on est à 6 tiles/sprites par scanline, donc pas de souci.
si c'est pour l'écran de "pause", y'a juste 2 metasprites.
(à une position fixe, c'est peut etre ce que tu appelles verrouillé)
on est à 6 tiles/sprites par scanline, donc pas de souci.
Re: [SMS] Rick Dangerous
Ben, je voulais dire éviter qu'il y ait plus de deux metasprites sur la même ligne au cours du jeu.
nemokantio- Patient contaminé
- Nombre de messages : 345
Age : 48
Localisation : Delgastan
Date d'inscription : 23/01/2013
Re: [SMS] Rick Dangerous
en cours de jeu, y'en a bcp plus que 2 ^^
mais mon moteur qui gere les meta change l'ordre pour que ca flick jamais les même (en dehors de ceux qui sont prioritaires, qui eux ne flick jamais). J'ai feinté depuis le départ pour l'explosion, elle, elle ne s'affiche que 1 frame sur 2 (ca fait un effet de transparence)
mais mon moteur qui gere les meta change l'ordre pour que ca flick jamais les même (en dehors de ceux qui sont prioritaires, qui eux ne flick jamais). J'ai feinté depuis le départ pour l'explosion, elle, elle ne s'affiche que 1 frame sur 2 (ca fait un effet de transparence)
Re: [SMS] Rick Dangerous
Au temps pour moi.
Tu as mis le paquet pour la gestion des sprites !
Et j'avais manqué plus haut le coup du metasprite de rick en dynamique, et des 9 tiles à charger.
C'est à cause de la canicule que veux tu !
Tu as mis le paquet pour la gestion des sprites !
Et j'avais manqué plus haut le coup du metasprite de rick en dynamique, et des 9 tiles à charger.
C'est à cause de la canicule que veux tu !
nemokantio- Patient contaminé
- Nombre de messages : 345
Age : 48
Localisation : Delgastan
Date d'inscription : 23/01/2013
Re: [SMS] Rick Dangerous
oui Rick est en dynamique, sinon le petit vdp de la SMS aurait fait la gueule ^^
il me reste assez de place dans la partie sprites pour y ajouter si besoin, la boule du début ou la chauve souris par exemple.
Y'a un fondu enchainé entre les zones, donc je peux y charger des choses à ce moment là.
Mais ca a un prix les 9 tiles à charger en dynamique... ~50% du vblank quand même.
le vdp coté sprites (0-255) est déjà pas mal rempli.
il me reste assez de place dans la partie sprites pour y ajouter si besoin, la boule du début ou la chauve souris par exemple.
Y'a un fondu enchainé entre les zones, donc je peux y charger des choses à ce moment là.
Mais ca a un prix les 9 tiles à charger en dynamique... ~50% du vblank quand même.
le vdp coté sprites (0-255) est déjà pas mal rempli.
Re: [SMS] Rick Dangerous
50 % du vblank, ça fait combien en microseconde ?
nemokantio- Patient contaminé
- Nombre de messages : 345
Age : 48
Localisation : Delgastan
Date d'inscription : 23/01/2013
Re: [SMS] Rick Dangerous
Ca va flicker quand même. Juste voir si c'est visuellement acceptable.
C'est ça qui est domage avec les 8 sprites 8x16 de la SMS, même si ça permet de composer.
C'est ça qui est domage avec les 8 sprites 8x16 de la SMS, même si ça permet de composer.
TotOOntHeMooN- Docteur agrégé **
- Nombre de messages : 18166
Age : 54
Localisation : Terre I
Date d'inscription : 18/04/2013
Page 1 sur 6 • 1, 2, 3, 4, 5, 6
Sujets similaires
» Rick Dangerous :)
» Les 20 ans de Rick Dangerous ça se fête !
» [ESTIM] Rick Dangerous
» Rick Dangerous II pour Megadrive
» ESTIMATION RICK DANGEROUS 2 AMIGA LOOSE
» Les 20 ans de Rick Dangerous ça se fête !
» [ESTIM] Rick Dangerous
» Rick Dangerous II pour Megadrive
» ESTIMATION RICK DANGEROUS 2 AMIGA LOOSE
Page 1 sur 6
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum