IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Projets Discussion :

[Android, Windows, MAcOS, Linux] Nagory


Sujet :

Projets

  1. #1
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    708
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 708
    Billets dans le blog
    2
    Par défaut [Android, Windows, MAcOS, Linux] Nagory
    Bonjour,

    Mon projet perso de création d'un jeu vidéo est terminé. Il s'agit du jeu Nagory.

    Je n'ai utilisé aucun moteur (pas d'Unity, pas d'Unreal, pas de Godot ou autres). J'ai développé seul mes propres routines et entièrement sous Delphi.
    J'ai acheté des assets graphiques et sonores car je ne suis ni graphiste ni musicien. Cela fait un peu plus de 2 ans et demi que j'ai commencé ce projet personnel pendant mes temps libres (donc je n'étais pas à 100% sur ce projet). Tout a commencé lorsque j'ai rebranché ma Megadrive d'époque et fait découvrir Sonic, Streets of Rage et d'autres à ma fille.
    J'ai voulu refaire un jeu de plateforme en 2D à l'ancienne au bon temps des consoles 16 bits (des jeux 2D qui n'avaient pas de temps de chargement, pas de mise à jour ou de longs téléchargement, du fun immédiat, pas de pub, pas d'achat in app, pas besoin de connexion internet...). Le thème du jeu est d'ailleurs lié au rétro gaming

    Grâce à Delphi, le jeu est disponible nativement pour Windows, Mac OS, Linux et Android. Je n'ai pas compilé de version IOS (pour le moment) car je n'ai pas de périphérique IOS ni la licence de développeur Apple... C'est ce que je trouve bien avec Delphi : un seul code source et on compile nativement pour les principaux OS sans avoir besoin de navigateurs lourds, de JVM, de runtime ou autres.

    Je compte maintenant faire un peu de refactoring, créer quelques démos afin de mettre en opensource le petit moteur de jeu que j'ai développé pour l'occasion et qui pourra servir à faire des jeux de plateformes 2D ou des shoot them up à scrollings horizontaux ou verticaux simplement.

    Mon site - Mes tutoriels - GitHub - Youtube - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 231
    Billets dans le blog
    173
    Par défaut
    Bonjour,

    J'avais complètement loupé ce message.

    (Note : je n'ai pas encore testé le jeu, mais je vais le faire prochainement. Je me base donc sur le trailer)
    Félicitations pour le jeu ! C'est génial, j'adore la touche graphique. La musique est sympa mais dans le trailer perturbant. Aussi, ce qui m'a perturbé, c'est le compteur de FPS et le minuteur en haut à droite. Je vous conseille de l'enlever si jamais vous faites une autre vidéo (même s'il sera présent dans le jeu).
    Aussi, je pense que vous pouvez raffiner la jauge de vie

    Sinon, vous dites un jeu sans chargement, pourtant, dans la vidéo, on voit des message "Loading" .
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre Expert
    Avatar de PixelJuice
    Homme Profil pro
    Ingénieur .NET & Game Designer
    Inscrit en
    Janvier 2014
    Messages
    684
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur .NET & Game Designer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2014
    Messages : 684
    Par défaut
    Hello,

    Déjà bravo pour avoir réussi à garder une cohérence graphique malgré des assets achetés ici et là (c'est pas évident).

    J'aurai bien aimé tester le jeu mais j'ai téléchargé la démo et ça ne se lance pas, rien ne se passe (Win 11 si jamais). Faut-il télécharger quelque chose de spécial comme un redist ? (j'avoue très peu connaitre Delphi).

  4. #4
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    708
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 708
    Billets dans le blog
    2
    Par défaut
    Bonjour et joyeux Noël à toutes et tous,

    @LittleWhite
    oui je n'ai vu qu'après avoir mis la vidéo en ligne que j'avais activé l'affichage des FPS... Pour le jeu sans chargement, c'est sans long chargement et l'écran de loading est réellement là pour avoir le temps d'afficher une petite animation de pixellisation comme il y en avait sur Super Nintendo ! Il y a plusieurs clins dans ce jeu aux jeux/consoles qui ont bercé mon enfance, cette petite animation en fait partie.

    @PixelJuice
    Il n'y a besoin de rien d'autre que l'OS (et DirectX pour Windows, Metal sous Mac OS, OpenGL sous Linux et OpenGL ES sous Android) pour lancer le jeu (c'est un des avantages de Delphi pour moi : c'est du natif qui n'a pas besoin de runtime, de JVM, de navigateur...). Le jeu n'a besoin d'aucun droit particulier (et il ne récolte aucune donnée) : il se veut être un jeu à l'ancienne comme à l'époque des consoles 16 bits.
    La démo date un peu par rapport au jeu complet, il faudrait que je la mette à jour (je vais essayer de le faire d'ici la fin de cette année pendant les vacances). Je n'avais pas non plus mon certificat pour signer l'exécutable. C'est peut être ce qui vous empêche de lancer la démo. Le jeu complet est signé et tourne sans problème sur Windows 10 et Windows 11. J'indiquerai dans cette discussion lorsque j'aurai mis à jour la démo.

    J'ai encore des petits réglages à faire (en particulier sur la gestion des joypads car ça fonctionne bien avec une manette filaire usb Megadrive de chez RetroBit, avec une manette bluetooth Freeks & geeks mais moins bien avec une manette Microsoft XBOX 360 USB...).

    Pour info, le jeu est disponible sur :
    - Itch.io pour les versions Windows, Mac OS (Intel et ARM), Linux
    - Microsoft Store pour Windows
    - Google Play pour Android
    Mon site - Mes tutoriels - GitHub - Youtube - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  5. #5
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    27 231
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 27 231
    Billets dans le blog
    173
    Par défaut
    Bonjour,

    J'ai lancé la demo. C'est un peu bizarre le changement de résolution entre le premier écran (le logo) et l'écran de menu principal. Aussi, dans les options, j'aurais séparé le mode plein écran du choix de la résolution. D'une part, car je cherchais une option dédiée, ensuite, car il est possible de faire du plein écran avec n'importe quelle résolution.
    La musique ne dure pas assez longtemps pour l'intégralité du "How to play" .

    Voici mes remarques (vous en faites ce que vous voulez. Mes observations sont indépendantes du fait que j'apprécie le jeu ou que j'admire le travail effectué ) :
    Le plan de devant et de derrière son difficile à distinguer je trouve.
    Une plateforme qui est tombée (derrière l'arbre), ne réapparaît pas après avoir perdu une vie (je n'arrive pas à récupérer le cristal, faut t-il changer de plan tout en sautant?).
    La musique du jeu ne s'arrête pas après avoir perdu toute les vies et être revenu au menu principal.
    Récupérer les cristaux ne fait pas toujours un effet sonore (seul le premier ?)
    Un changement de plan peut être fatidique s'il n'y a pas de plateforme/de sol dans l'autre plan .
    Je suis nul
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  6. #6
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    708
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 708
    Billets dans le blog
    2
    Par défaut
    J'ai mis à jour la démo du jeu. Elle contient les derniers correctifs apportés à la version complète (entre autres les pb sonores par exemple).
    De plus, la version Windows est maintenant signée.

    Le changement de niveau n'est pas toujours facile, c'est vrai. J'ai essayé de toujours jouer sur des détails (couleurs de plateformes différentes entre le premier plan et l'arrière plan jouable, des détails qui montrent une plateforme passer derrière le décor du premier plan, le fait d'appuyer et de maintenir la flèche du haut enfoncée permet de rendre le premier plan transparent et donc de mieux appréhender ce qu'il y a sur l'arrière plan).

    Le changement de taille de fenêtre entre l'écran d'introduction et la suite du jeu est lié au fait qu'au moment de l'introduction, je n'ai pas encore lu le fichier de configuration. En effet, l'écran d'introduction est commun à plusieurs projets différents.

    Ajouter une option dans le menu des option pour le jeu en plein écran était évidemment possible. Mon soucis est que le jeu est jouable aussi sur Android (c'est le même code pour tous les OS). Je suis donc assez limité sur la hauteur de l'écran des options. De plus, concernant les résolutions d'écran, les assets graphiques que j'ai achetés sont des tuiles de 32x32 pixels. j'ai limité à une résolution maxi de 1920x1080. Pourquoi ? Car au delà, certains niveaux seraient visibles entièrement et donc cela limiterait le coté exploration du niveau. Je zoome donc sur le rendu pour afficher sur un grand écran (2k, 4k ou 8k) la même surface qu'un écran de 1920x1080 pixels. Effectivement, cela diminue la qualité graphique.

    Les jeux de l'ère 16 bits n'étaient pas non plus faciles

    Pour info, j'ai fait un petit manuel d'instruction en pdf comme il y en avait dans les jeux de l'époque : https://www.gbesoft.fr/Nagory/Nagory-manual.pdf

    Je prends note des remarques pour améliorer le jeu au fil du temps.
    Mon site - Mes tutoriels - GitHub - Youtube - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  7. #7
    Membre chevronné
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2022
    Messages
    482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2022
    Messages : 482
    Par défaut
    Que ce soit la démo, ou le pdf explicatif, ca donne carrément envie d'y jouer.

    Si j'ai le temps j'essaierai bientôt

    C'est complexe de dév en delphi pour des jeux comme celui ci ?

  8. #8
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    708
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 708
    Billets dans le blog
    2
    Par défaut
    C'est complexe de dév en delphi pour des jeux comme celui ci ?

    Vous pouvez voir sur mon GitHub divers exemples tous réalisés avec Delphi (en 2D ou 3D). J'ai écrit également des articles (tutoriels sur Developpez, dans le magazine Programmez!), participé à des gamejams, fais des présentations à diverses occasions...

    Dans tous les cas, j'utilise le framework multiplateformes de Delphi : Firemonkey (FMX). Il est fourni en standard avec Delphi (même l'édition community qui est gratuite) et permet de cible Windows, Mac OS, Linux, IOS et Android (l'édition Community ne dispose pas du compilateur Linux).
    Les petits jeux en 2D du style puzzle game, Pacman, Bomberman... ne sont pas très difficiles à faire. Pour la 3D, c'est un peu plus compliqué mais cela reste accessible pour des choses simples. Pour des choses complexes en 3D c'est possible mais il faudra évidemment un certain niveau de connaissances (exemple
    ).
    Il est toutefois possible d'utiliser des moteurs de jeux (Castle Game Engine, Gorilla3D...).

    Pour mon jeu Nagory, j'ai tout codé moi même uniquement à partir des librairies standards fournies avec Delphi. C'est 2 ans et demi de travail en tant que projet perso (pas à temps complet, juste pendant mes temps libres). Je fournirai sur GitHub les sources du moteur que j'ai développé qui permettra de faire des jeux en 2D de type plateformes, shoot them up à scrolling vertical ou horizontal... Il faut que je refactorise et que je nettoie un peu le code existant avant Je devrai également créer des démos (autres que Nagory car pour celui ci j'utilise des assets graphiques et sonores achetés qui ne sont pas libres de droits) pour fournir quelques exemples d'utilisation.

    Ce qui me plait avec Delphi c'est que c'est du Pascal Objet (donc un langage fortement typé et j'aime ça), ça compile vite, c'est du natif (pas besoin d'un navigateur, d'un runtime ou d'une JVM), l'IDE produit des exécutables autonomes ou des packages pour les différents stores (Microsoft, Apple, Google) et l'éditeur d'interfaces graphiques WYSIWYG est très performant (pas besoin d'un outil tiers là encore tel que Figma). Pas de limite que ça soit en frontend ou en backend avec la même techno !
    Je bosse aussi en JS (react) et Java et je les trouve bien moins productifs et ils nécessitent des tonnes de dépendances pour faire le moindre petit truc que ça devient rapidement inmaintenable dans le temps.
    Mon site - Mes tutoriels - GitHub - Youtube - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  9. #9
    Membre éprouvé Avatar de Pat_AfterMoon
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2007
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2007
    Messages : 226
    Par défaut
    Bonjour tout le monde 👋😀
    ça fait un bail que je n'étais pas venu par ici, et ça fait plaisir de voir des beaux jeux comme celui-ci.

    Bravo pour ce super projet, c'est génial d'être arrivé jusque là 👍
    Je continue d'avancer un peu dans le jeu et je reviendrai pour donner mes impressions.
    En tout cas, rien que le trailer, ça claque!

  10. #10
    Membre éprouvé Avatar de Pat_AfterMoon
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2007
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2007
    Messages : 226
    Par défaut
    Re-bonjour,

    J'ai essayé de jouer plusieurs fois, mais j'avoue que je suis vraiment dérouté par le système d'avant/arrière plan.

    Par exemple, dans l'image ci-dessous, c'est vraiment bizarre de sauter et de passer à travers le diamant sans pouvoir le ramasser.
    Nom : Clipboard 1.png
Affichages : 167
Taille : 364,1 Ko
    La différence de couleur entre les plateformes du 1er et du 2ieme plan est très légère, et pour les diamants je n'ai pas l'impression qu'il y ai de différence selon le plan.

    Et dans le cas suivant, c'est difficile de comprendre pourquoi je ne peux pas aller à droite, j'ai l'impression que c'est un bug et que j'ai atterri dans le mur lorsque j'ai changé de plan. D'ailleurs si je vais à gauche, je tombe et je meurs.
    Nom : Clipboard 2.png
Affichages : 165
Taille : 322,5 Ko

    Le jeu est vraiment joli et sympa, mais cette histoire de plan n'est pas du tout évidente. D'ailleurs, ce serait pas mal si le "game over" s'affichait directement dans l'écran de jeu plutôt que sur un écran noir. Parce que la plupart du temps je n'ai pas le temps de voir pourquoi je suis mort.

    En tout cas il y a un sacré potentiel, et le jeu est très attachant 👍

  11. #11
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    708
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 708
    Billets dans le blog
    2
    Par défaut
    Bonsoir,
    Merci @Pat_AfterMoon pour ce petit retour.

    Le changement de plan était un élément de gameplay pour se démarquer un peu de ce qui est fait généralement dans les jeux de plateformes en 2D même si ce n'est bien sur pas une nouveauté (Donkey kong sur Super Nintendo avec des changement de plan à des moments précis souhaité par de level design, Shinobi (là c'était un plan en bas et le second plan en hauteur), Top Hunter où là aussi le changement de plan n'était possible qu'à certains moments et certainement d'autres...).
    Je voulais pouvoir autoriser le joueur à changer de plan à tout moment car en plus du choix de chemin entre chaque sous niveau cela permettrait de parcourir les niveaux via des parcours différents d'une partie à l'autre. Mais c'est assez ambitieux surtout quand on n'est pas level designer ! Je ne suis que développeur (pas graphiste, ni musicien, ni game designer ) : J'ai donc fait avec des assets graphiques que j'avais achetés (et qui sont pas mal du tout je trouve).

    Pour distinguer des 2 plans jouables c'est vrai qu'il faudrait que je trouve un truc pour mieux les différencier. Toutefois, en appuyant sur la flèche du haut et en la laissant enfoncée (sans sauter), le premier plan devient transparent et permet de voir ce qu'il y a sur l'arrière plan. Si le premier plan ne devient pas transparent, c'est qu'il n'y a pas d'arrière dans ce niveau. J'ai essayé via des shaders de jouer sur les teintes mais c'est trop couteux en ressources (et encore plus sur Android). En effet, je me fixe comme limite que le jeu puisse tourner sur mon ancien pc portable (I5 7200U avec pour GPU le Intel HD620 intégré au cpu) avec lequel j'avais commencé le développement de ce projet il y a presque 3 ans. C'est de toute façon une machine déjà bien supérieure aux Megadrive et autres Super Nintendo

    Je vais voir pour jouer un peu plus sur les couleurs de l'arrière plan pour que ça soit plus visible sans trop dénaturer le rendu graphique global. Pour les ennemis et les bonus, ce sont les mêmes tilesets de sprite qui sont utilisés pour le premier et le second plan donc ils ont les mêmes couleurs. Ça aussi je vais voir pour changer les teintes. Après ça augmentera un peu la taille du jeu car il y aura duplication de ressources graphiques similaires avec juste un swap de couleurs mais bon vu la taille des jeux actuels on est plus à quelques Mo prêt !

    Le bug constaté (ne pas pouvoir aller à droite après avoir sauter sur le second plan à cet endroit est très certainement dû au fait que le sprite du joueur est en collision avec le mur à gauche, dans le dos du joueur. Dans ce cas là, il faudrait lors du changement de plan si le sprite est en collision sur le plan d'arrivée que je le décale le sprite du bloc vers son bord le plus proche... En l'état actuel du jeu, il faut effectivement s'assurer de ne pas arriver dans un mur lorsqu'on bascule d'un plan à l'autre.

    Ce sont là des pistes d'améliorations que je vais essayer d'implémenter petit à petit !

    En tout cas merci pour vos retours que j'essayerai de prendre en compte autant que possible.
    Mon site - Mes tutoriels - GitHub - Youtube - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  12. #12
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    708
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 708
    Billets dans le blog
    2
    Par défaut
    Bonsoir,

    Une petite mise à jour du jeu complet et de la démo est disponible.
    Au programme de cette mise à jour des petites corrections et en particulier celle concernant le pb remonté par @Pat_AfterMoon.
    Maintenant, lorsqu'on bascule d'un plan à l'autre, si le joueur arrive sur un emplacement de type "bloc" (par exemple un mur sur le plan d'arrivée) il y a un rattrapage automatique de la position du joueur à droite ou à gauche du bloc.

    Pas de nouveauté concernant la différenciation des 2 plans jouables pour le moment.

    Lorsqu'on termine le jeu avec la bonne fin (c'est à dire lorsqu'on termine le jeu avec tous les bonus), il est possible de jouer en mode Gameboy : c'est à dire en noir et blanc (mais avec un peu plus de nuances de gris que les 4 possibles sur la Gameboy d'origine ) !
    Nom : nagory-bw.png
Affichages : 89
Taille : 401,5 Ko
    Mon site - Mes tutoriels - GitHub - Youtube - N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

Discussions similaires

  1. Google Chrome 72 est disponible pour Windows, macOS, Linux et Android
    Par Christian Olivier dans le forum Google Chrome
    Réponses: 0
    Dernier message: 30/01/2019, 22h42
  2. Réponses: 9
    Dernier message: 05/01/2018, 11h25
  3. Réponses: 6
    Dernier message: 08/11/2015, 00h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo