Exploration Craft

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Salut,

Je me présente, je m’appel Martin j'ai 20 ans et je suis étudiant à l'université. Je viens vous présenter un des projets sur lequel je travaille en ce moment : Exploration Craft

En savoir plus sur le projet

Genèse

L'origine du projet, est un projet scolaire portant sur la création et la manipulation de fonction pseudo-aléatoire ( bruit de perlin…). A partir de cette base, je pouvais générer des paysages "aléatoire" en 3D, et c'est à partir de ce moment que j'ai décidé d'en faire un jeu sur mobiles.

Généralités et avancement

Exploration Craft est un clone de Minecraft. C'est un jeu sandbox en 3D qui prend place dans un environnement cubique. Le jeu est actuellement jouable uniquement en mode "survival", bien que la partie multijoueur fonctionne, mais requièrent de nombreuses optimisations avant d'être disponible.

Objectifs

Dans un premier temps je souhaiterais améliorer les performances et la consommation de la mémoire. Puis gérer la création de Biomes, améliorer le multijoueur ( n'est pas accessible pour tout le monde actuellement ) Et enfin je compte également porter le jeu sur IOS durant le mois de septembre si j'ai le temps.

Le projet et son originalité

Le projet n'a rien d’original. Le but du projet n'étant pas d’innové mais d'apprendre et acquérir de l’expérience en faisant un projet qui m’intéresse.

Les technologies utilisées

Le jeu est codé en C++ et j'utilise l'API graphique OpenGL sur windows et OpenGL ES 2.0 sur mobile et Fmod pour le Son. Bien qu'une version windows est disponible, je ne la distribue pas puisqu'elle n'est adaptée à la plateforme.

Téléchargement :

Voila, si vous avez des critiques/retours à faire sur ce projet, je vous écoute :)

Édité par smartties

Staff

Hello ! Je viens tout juste d'installer l'app sur ma tablette, je te livre donc mes premières réactions à chaud :

  • Les popups ne sont pas très agréables à l'œil
  • 2 popups dès le lancement, donc une pour annoncer les nouveautés (chose qui a peu d'intérêt de base pour l'utilisateur lambda, mais encore plus pour une nouvelle installation)
  • Les boutons de l'accueil affichent un trait vertical plus foncée à 80% de la largeur (en partant de la gauche), sur toute leur hauteur (Screenshot)
  • Le titre sur l'accueil paraît trop plat par rapport aux boutons qui ont un contour épais
  • Quand je reviens sur le jeu (depuis mon écran d'accueil) sans l'avoir quitté, le clavier virtuel s'ouvre
  • Bouton "Setting" : "Settings" serait mieux
  • Le bouton "Beta 0.98d" me fait rien : peut-être vaut-il mieux afficher un simple texte, sans style de bouton (trompeur)
  • Le tap sur les étoiles ouvrent un simple lien, du coup ça me propose une liste complète d'applis pour l'ouvrir : y'a pas moyen d'ouvrir le Play Store directement (ou de réduire la liste pour ne pas inclure les navigateurs Web) ?
  • La barre de chargement est vraiment pas sexy :P
  • Mon personnage a un comportement un peu bizarre : il saute tout seul contre les obstacles (en les traversant un peu avant quand même) et le saut n'est pas naturel (trop haut et trop linéaire)
  • Les styles de l'interface ne sont pas uniformes (par exemple les icônes en haut à droite)
  • À quoi servent les carrés en bas ? (Je ne connais pas ce genre de jeux, c'est peut-être une question bête, mais j'ose ^^ )
  • Le joystick de direction est bizarrement anguleux et ne suit pas vraiment le doigt (il suit avec un décalage de temps et parfois un décalage de position)
  • L'icône de menu d'Android (ce truc qui date des versions préhistoriques) s'affiche mais est inactif

Voilà, c'est tout pour ce soir. C'est du très vite fait, mais il faut bien que je dorme un peu ;)

Édité par viki53

Auteur du sujet

Salut Viki, je te remercie d'avoir pris le temps de tester et me donner un retour aussi complet sur ton expérience sur ce petit jeu. Je développe ce jeu depuis si longtemps (un peu plus de 6 mois) que je n'en vois plus les défauts.

Les boutons de l'accueil affichent un trait vertical plus foncée à 80% de la largeur (en partant de la gauche), sur toute leur hauteur

C'est un problème de paramétrage de texture, sur opengl, que je viens de régler.

Le tap sur les étoiles ouvrent un simple lien, du coup ça me propose une liste complète d'applis pour l'ouvrir : y'a pas moyen d'ouvrir le Play Store directement (ou de réduire la liste pour ne pas inclure les navigateurs Web) ?

Je viens de me renseigner et apparemment on peut ouvrir le Play directement, je n'étais pas au courant. Je vais l'ajouter pour la prochaine mise à jour.

À quoi servent les carrés en bas ? (Je ne connais pas ce genre de jeux, c'est peut-être une question bête, mais j'ose ^^ )

Il faut dire que mon jeu n'est pas très intuitif. Les carrées correspondent à une partie de ton inventaire, et celui situé en bas sur la droite sert à sauter. Pense tu qu'un tutoriel au premier lancement du jeu serait nécessaire pour expliquer les contrôles du jeu ?

Sinon pour le reste des problèmes d’harmonisation graphique je pense y remédier en trouvant un vrai graphiste.

Merci encore :)

Staff

Pense tu qu'un tutoriel au premier lancement du jeu serait nécessaire pour expliquer les contrôles du jeu ?

smartties

Dans l'idéal tu peux le proposer de façon optionnelle, par exemple en rajoutant un bouton sur l'accueil, histoire de ne pas bloquer ceux qui n'en veulent pas. ;)

Par contre le bouton de saut est un peu inutile vu que le perso saute tout seul quand il arrive sur un obstacle, non ?

Salut,

J'ai une petite question concernant l'une des deux permissions Android dont tu demandes l'accès : "Identifiant d'appareil et infos-appel". Pourquoi en as-tu besoin ? Si j'en crois ce que me dit Android, celle-ci te permet de connaître le numéro de téléphone, l'identifiant du smartphone, le numéro à distance connecté lors d'un appel et si un appel est actif.

Edit :

Je suis en train de tester le jeu, et c'est vraiment génial ! Les deux premières popups ne doivent pas nécessairement être supprimées. Tu devrais quand même créer une page affichant les détails de màj (comme la popup, mais en plus complet et avec une archive des mises-à-jour).

Sinon je trouve les graphismes très agréables, gg, tu as tout fait toi-même ?

Le saut automatique quand on est près d'un obstacle est très pratique et ne semble pas buguer chez moi.

Enfin, c'est cool de pouvoir "s'immerger" dans le jeu, en changeant de vue.

Est-ce qu'il y aura de la musique/des bruitages dans la prochaine version ?

Edit 2 :

Dommage qu'on ne puisse pas scroller dans le menu craft directement en faisant défiler la liste et non le point rouge de l'ascenseur.

Édité par The-Aloha-Protocol

Université de Bretagne-Sud <3

+0 -0
Auteur du sujet

Salut Lern-X,

Merci pour le retour :)

J'ai une petite question concernant l'une des deux permissions Android dont tu demandes l'accès : "Identifiant d'appareil et infos-appel". Pourquoi en as-tu besoin ? Si j'en crois ce que me dit Android, celle-ci te permet de connaître le numéro de téléphone, l'identifiant du smartphone, le numéro à distance connecté lors d'un appel et si un appel est actif.

J'utilise la permission READ_PHONE_STATE qui englobe "Identifiant d'appareil et infos-appel". Cette permission me permet de savoir si l'utilisateur reçoit un appel, me permettant alors de couper le son du jeu pour éviter de géner l'utilisateur. A vrai dire il est possible de faire cela sans utiliser cette permission mais je ne l'ai appris que récemment.

Sinon je trouve les graphismes très agréables, gg, tu as tout fait toi-même ?

Pour les graphismes, si tu parle des textures/sprites, je n'ai quasiment rien fait.

Est-ce qu'il y aura de la musique/des bruitages dans la prochaine version ?

Les musiques et bruitages sont implémentées, mais je n'ai pas encore trouvé les sons adéquats. Donc pour l'instant j'ai préféré les retirer. J’espère pouvoir en trouver de bon pour la prochaine maj .

Dommage qu'on ne puisse pas scroller dans le menu craft directement en faisant défiler la liste et non le point rouge de l'ascenseur.

En effet, ça serait plus pratique, je vais essayer de régler ça.

Je viens de recevoir mon iphone 5c, je vais essayer de porter le jeu sur IOS pendant les 2 prochaines semaines. Ensuite je reprendrais le développement du jeu.

Merci pour ce test ^^

Auteur du sujet

Plop,

J'ai reçu mon iphone 5C la semaine dernière afin de porter mes jeux sur la plateforme d'apple. Vendredi j'ai commencé le portage et bonne nouvelle j'ai fini le portage dimanche !

Si le portage à été aussi rapide, c'est grâce au peu de dépendances du projet : Opengl, pthread, fmod(pour le sond). Il ne me restait plus qu'à réaliser les wrappers en obj-c++, optimiser les shaders, revoir la gestion de l'importation/écritures des fichiers/assets et enfin adapter les events multitouch.

Je pense ajouter encore un peu de contenu avant de soumettre l'application sur l'appStore (le week-end prochain).

Auteur du sujet

Plop, le jeu bénéficie d'une nouvelle mise à jour :

-Mode créatif et survival disponible

-Le joueur peut maintenant choisir parmi 6 personnages

-Refonte de l'interface graphique de l'inventaire et du menu des crafts

-taille du jeu réduit, pour un total de 4.2 mo

-Possibilité de voler en créatif

-Optimisation de l'affichage (avec un gain de 10% ) et de la génération des chunks

-Explosion des blocks de TNT (j'ai préféré le retirer du jeu pour l'instant, car ce n'est pas encore très bien optimisé).

-Ajout d'option pour modifier : la distance d'affichage, activer lumières/brouillard/ombres, ajuster la sensibilité de la camera

-Résolution d'un problème de shader sur certains téléphone, causant des chutes de fps considérable. La cause était l'appel de la fonction smoothstep qui n'était pas implémentée sur certains GPU (mali-400, adreno 420…)

-Le portage sur IOS est enfin terminé et va être soumis sur l'appstore demain.

Dites moi ce que vous en pensez !

Édité par smartties

Auteur du sujet

Le dév du mode multijoueur avance, j'ai encore pas mal de travail à faire, mais j'ai un prototype fonctionnel qui supporte 100 personnes de manière fluide dans les conditions les plus gourmandes pour le serveur. En attendant que ce mode soit disponible, je publie une mise à jour avec du nouveau contenu, comme de la TNT, porte, escalier, lit, échelle…

Image utilisateur

Auteur du sujet

Mise à jour en approche : -animaux sauvages cochon/vache/

-biomes avec des villages pré-construit et des villageois

-intégration d'un système d'achievements et d'un leaderboard mondial

-un meilleur rendu graphique :

Pour le rendu, j'ai implémenté l'ambient occlusion. http://0fps.net/2013/07/03/ambient-occlusion-for-minecraft-like-worlds/

Avant

Maintenant

Édité par smartties

Auteur du sujet

Après une petite semaine de tests avec le mode multijoueur disponible pour les joueurs, j'ai décidé de fermer les serveurs car leurs locations est plus coûteuses que la marge ramenée par ce nouveau mode.

Voila, je pense avoir atteins tous les objectifs que je m'étais fixé au départ de ce projet, donc je vais sortir la dernière mise à jour d'ici une semaine:

-les derniers bugs (éclairage des torches et de certains objets)

-ajouter une dizaine de nouveaux blocks (redstone, intérrupteur, …)

-l'eau dynamique (qui est actuellement statique)

Après quoi, je passerais à un nouveau projet.

A bientôt !

Édité par smartties

Auteur du sujet

L'inspiration vient de quelques cours à l'université où nous avons pu aborder la génération de bruit. Le projet en lui même est "4fun", me permettant d'utiliser mon moteur 3D, créer un petit moteur physique et retoucher au socket avec la lib enet (fine couche au dessus de l'UDP).

Pour ce qui est de libérer le code source, je ne pense pas le faire car premièrement le code n'est pas propre/commenté/documenté, et surtout car le jeu est encore très lucratif

Edit : plus de 40K joueurs jouent au jeu par jour, (source : google analytics)

Édité par smartties

Auteur du sujet

Salut,

Bien que le développement du jeu soit terminé et travaillant déjà sur un autre projet, je continue de le maintenir avec des mises à jours mineures puisque de nombreuses personnes y jouent encore.

Cette mise à jour contient :

  • Ajout de nouveaux npc : mouton, vache, cochon, panda et cheval.
  • Possibilité de faire spawn des npc en créatif.
  • Monter à cheval.
  • Un nouveau mode de caméra : permettant de faire tourner la caméra autour du personnage.
  • Correction du bug des dommages infligés par la TNT.
  • Gros gain de performance : refonte du code sur le système de stockage des chunks maintenant référencés sur des std::unordered_map

Voila un gif pour illustrer certaines nouveautés :

Image utilisateur

Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte