Pourquoi, à qui et de qui
Bonjour à tous! Je m'appelle Anatoly. Je veux raconter une histoire sur nos premiers pas dans le développement de jeu, à partager, bien que petite, mais toujours une expérience. Pourquoi? Parce qu'il y a seulement 6 mois, il recherchait lui-même de telles publications, relisant et écrivant des conseils. J'espère que mon article fournira aux développeurs novices des informations utiles, quelqu'un poussera au développement et quelqu'un, peut-être vice versa. Je ne pense pas que les personnes qui connaissent le sujet trouveront quelque chose d'intéressant pour elles-mêmes, mais pour les débutants ou ceux qui veulent les devenir, l'article peut certainement être utile. Je vais vous dire tout le chemin de l'idée à la publication de l'application terminée sur Google Play. En général, c'est parti!
Attention: soyez prudent - longrid! Si vous ne voulez pas lire beaucoup - un extrait des conseils pratiques et des liens à la fin de l'article.
Avant-propos ou où tout a commencé
Comme vous l'avez déjà compris dans le titre du sujet, je suis chirurgien de formation. Je fais aussi des quêtes dans la réalité (l'horreur, qui a influencé le choix du genre de jeu). De ce qui m'a été utile dans le développement: connaissance de base des éditeurs de photos, enregistrement et traitement du son, capacité à écrire des scripts pour les quêtes, ainsi qu'environ 2 mois d'apprentissage Java.
L'émergence des idées
Mon ami (programmeur) et moi réfléchissons au développement d'une application mobile depuis un certain temps. Le choix était entre un programme ou un jeu. En jetant sur les idées des programmes, nous avons réalisé que nous ne pouvions rien proposer de nouveau conceptuellement, alors notre choix s'est porté sur le développement du jeu. Au départ, nous avons repris l'idée d'un jeu d'arcade 2D tueur de temps avec des graphismes en pixels. Mais après avoir écrit le dzdock et les premières étapes du développement, nous avons réalisé qu'avec une telle idée et un jeu, nous n'irions certainement pas loin, et nous devions de toute façon y investir beaucoup d'énergie.
À peu près au même moment, j'ai une chaîne si logique: les quêtes de la réalité proviennent de jeux - je peux écrire des scripts et ouvrir des quêtes en réalité - alors pourquoi ne pas revenir aux bases et faire une horreur mobile avec des puzzles et de l'histoire?
L'argument contre: absolument tous les livres, forums et astuces s'accordent sur une chose - le premier jeu doit être aussi simple que possible dans son essence et dans son développement.
L'argument est pour: tout le monde conseille également de faire ce que vous avez au moins une certaine expérience.
Après un peu de réflexion, nous décidons de faire une horreur 3D à part entière. (même si, pour être honnête, ils n'avaient toujours aucune idée de ce que nous pouvions faire)
Début du développement
Puisque ni mon ami ni moi n'avions d'expérience dans le développement de jeux, nous sommes partis des bases.
Sélection du moteur
Bien sûr, il n'a pas été question d'écrire votre propre moteur de jeu. Par conséquent, nous avons commencé à choisir parmi ceux existants. En conséquence, nous avons choisi Unity, car il est le plus facile à apprendre, se développe activement, fournit toutes les fonctionnalités nécessaires et, surtout, dispose d'une énorme communauté vivante, ce qui signifie qu'il est possible de trouver des réponses à presque toutes les questions qui se posent.
Formation théorique
Le script a été écrit assez rapidement - environ une semaine ou deux de travail actif. Des modifications mineures y ont été apportées jusqu'aux derniers stades de développement.
Nous avons commencé l'étude du moteur (et moi aussi C #, qui exécute le travail Unity) avec des livres et des articles en ligne. Les liens vers les meilleurs livres que nous avons lus seront laissés ci-dessous. Il nous a fallu environ 3-4 semaines pour terminer cette étape avant de pouvoir commencer à travailler sur le projet.
Naturellement, la première chose a été d'étudier la niche et de choisir les références des jeux sur lesquels vous devriez vous concentrer. Dans notre cas, il s'agissait de Granny, Nun et d'autres jeux populaires similaires. Il semblait qu'avec leur niveau d'élaboration, nous ne pouvions pas faire pire! Ce que nous aimerions faire ressortir, c'est une bonne intrigue, des graphismes, une attention aux détails (plutôt présomptueux pour les personnes sans expérience gamedev, non?) Était-ce vraiment aussi simple que cela? Lire ci-dessous :-)
Premiers pas dans Unity
Alors que les enfants apprennent à marcher dans la vie, nous avons commencé à étudier l'Unité en enseignant au personnage comment se déplacer et interagir avec les objets environnants.
Astuce: peu importe ce que vous commencez à faire dans Unity - avec une probabilité de 95%, cela a déjà été fait avant vous, alors recherchez attentivement les solutions similaires déjà mises en œuvre. Cela facilitera grandement le développement.
Puis vint l'étape de prototypage du niveau. À ce stade, notre jeu ressemblait à ceci:




Enfin, la plupart des mécanismes de jeu étaient prêts, à part l'essentiel - l'IA. Nous avons mis en place la sélection et l'utilisation d'objets, l'inventaire, l'interaction avec des objets interactifs et d'autres petites choses, ce qui a pris très longtemps, mais nous a donné une certaine confiance en nos propres capacités. Ne nous souciant pas vraiment du reste des choses difficiles, nous avons décidé de les faire déjà en cours de travail sur la version finale.
Travail sur la version finale du jeu
Nous n'avions pratiquement aucune expérience en modélisation 3D, à part les tentatives d'école il y a de nombreuses années, et nous avons donc dû l'étudier à partir de zéro. En raison de la facilité de développement, de la flexibilité et d'une grande base de données de didacticiels vidéo et d'astuces, nous avons choisi
Blender pour nous, qui, en fin de compte, s'intègre très facilement à Unity, ce
qui nous
permet de changer les modèles de manière flexible pendant le développement et d'annuler les modifications si nécessaire. Dans le même temps, les modèles du projet sont mis à jour automatiquement en temps réel.
Bien qu'il fût nécessaire de maîtriser les bases de la modélisation 3D, nous avons tout de même compris que nous ne pouvions pas créer nous-mêmes un ensemble complet d'actifs dans la qualité et le temps souhaités. Heureusement, il y avait suffisamment de ressources prêtes à l'emploi dans Unity pour ce sujet. En conséquence, nous avons acheté certains actifs, téléchargé certains d'entre eux gratuitement et fait le reste nous-mêmes. Chef
le méchant, le clown maléfique, a été condamné à la pige. Nous avions de très gros doutes que pour un budget limité, selon nos descriptions et croquis simples, quelqu'un serait en mesure de faire quelque chose de plus ou moins adéquat.

Mais ici, nous avons eu beaucoup de chance avec l'artiste sélectionné et le personnage s'est avéré meilleur que prévu.


Puis sont venus les longs mois nécessaires pour achever la fonctionnalité, une étude détaillée de Unity, tirer des graphiques, écrire de l'IA et d'autres petites choses qui font du jeu un jeu. Et à la fin, nous sommes arrivés à la difficulté suivante: publier le jeu.
Publication de jeux
L'une des raisons du choix d'Unity est la multiplateforme, qui permet de publier un projet sur toutes les plateformes souhaitées (pour nous, c'est Android, iOS, PC). Au moment où cet article a été écrit, le jeu était sorti et publié uniquement pour Android, donc des modules complémentaires pour d'autres plateformes viendront plus tard.
Techniquement, la publication d'une application sur Google Play est facile - tout est intuitif et facile. Mais il y a un autre côté à la question - vos attentes par rapport à la publication.
Naturellement, nous n'étions pas sûrs (et même maintenant pas sûrs) des perspectives du jeu, mais, par une erreur naïve, nous avons pensé qu'il valait la peine de publier le jeu sur le marché, dès que nous avons été promus au sommet des nouveaux, et les téléchargements et les critiques allaient saupoudrer. Ce fut une énorme erreur.
En fait, après la publication,
personne (sauf vos amis, peut-être)
ne téléchargera votre jeu, car personne ne le sait . Naturellement, même au stade du développement, nous avons compris qu'il était nécessaire de créer au moins une sorte de société de publicité, mais il n'y avait tout simplement pas de temps pour cela, car tout est allé au développement lui-même. En conséquence, nous sommes arrivés au moment de la publication avec une application inconnue, espérant aveuglément un démarrage rapide.
Réalité: au moment de la sortie du jeu, ce n'est que la moitié de votre chemin vers une application réussie. Plus loin (et beaucoup mieux - plus tôt) commence la partie tout aussi importante et difficile (dans laquelle nous n'avions pas non plus les compétences nécessaires, et que nous apprenons en ce moment) - sa promotion et sa promotion.
Au départ, nous avons tout fait par nous-mêmes, et à moindre coût, donc nous n'avons pas pensé à attirer un éditeur pour le jeu. Je ne peux pas dire si c'est une erreur ou de la chance (des personnes bien informées peuvent ajouter des commentaires).
Résultats et plans
À la suite de notre travail semestriel, nous avons un jeu gratuit prêt à l'emploi avec de la publicité et des achats dans le jeu, publié sur une seule plateforme. À l'heure actuelle, quelques jours après la publication, nous avons environ 400 téléchargements; bon, bien que très peu de critiques, ainsi qu'un tas de questions sur la promotion et le sort de notre premier jeu.


Les plans de sa sortie pour iOS et PC, mais à quel point c'est difficile et si c'est réalisable du tout - jusqu'à présent, nous ne pouvons pas en juger (nous serons heureux de commenter les personnes compétentes). À l'avenir, nous prévoyons de compléter le post ou d'en écrire un nouveau, où nous parlerons d'autres plateformes et de la promotion du jeu.
Game Dev Tips
- Commencez avec un arrière-plan théorique, mais n'y passez pas trop de temps. L'expérience est acquise avec la pratique.
- Utilisez vos forces au maximum: si vous savez déjà quelque chose, utilisez-le.
- Choisissez des jeux de référence populaires et pensez à ce que vous pourriez y faire de mieux.
- Commencez par une étude détaillée du concept du jeu, donnez-le au tribunal pour vos amis et connaissances.
- Écrivez un dzdok suffisamment détaillé avec une description de toutes les subtilités et détails du jeu, afin que pendant le développement, toutes les questions sur le jeu puissent y être clarifiées.
- Choisissez un moteur de jeu pour vos forces et vos tâches.
- N'ayez pas peur de recourir aux services de pigistes, mais abordez soigneusement leur choix.
- Commencez à tester l'application sur des personnes désintéressées dès que vous avez les premiers prototypes. Cela vous permettra d'apporter des modifications en temps opportun, sans scier l'intégralité du jeu.
- Lancez une campagne publicitaire le plus tôt possible: créez des réseaux sociaux, un site Web, commencez à gagner un public intéressé - tout cela vous donnera un bon coup de pouce au début.
- Ne comptez pas sur un démarrage rapide et des milliers de téléchargements. Malheureusement, cela ne se produira tout simplement pas. La montée vers le sommet sera très longue et épineuse (surtout si vous ne suivez pas le paragraphe précédent).
- Eh bien, c'est banal: n'abandonnez pas, ne croyez pas en vous et travaillez dur pour que vous aimiez vous-même le produit que vous créez.
Conclusion
Si vous avez lu l'article jusqu'au bout, alors merci!) Nous espérons que vous en apprendrez au moins quelques éléments utiles. Si j'ai fait une erreur quelque part et que j'ai eu tort - je serai heureux d'apporter des corrections et des souhaits dans les commentaires.
Nous
sommes également
prêts à répondre à toutes les questions sur le sujet et à partager tout ce qu'ils ont eux-mêmes appris à ce stade.
Si vous êtes intéressé par le résultat de notre travail - un lien vers le jeu est ci-dessous.
Nous apprécions vos commentaires, suggestions et suggestions ici et sur Google Play. Merci encore et bonne chance!
Références et recommandations
Les livres Unity et C # avec lesquels nous avons commencé:
Unité et C #. Gamedev de l'idée à la mise en œuvreUnité pour le développeur. Jeux multiplateformes mobilesL'unité en action. Développement multiplateforme en C #Notre jeu sur Google Play:
Parc de la mort