Je suis un développeur C # et je voulais démarrer un projet de loisir pour construire un jeu basé sur un navigateur persistant (PBBG). Je travaille avec C #, MSSQL et Angular et pensais que j'utiliserais également ces techniques pour mon projet de loisir.
Quand j'ai commencé à chercher des choses à faire et à ne pas faire et des conseils, j'ai réalisé que beaucoup de projets utilisent PHP et je n'ai en fait trouvé aucun PBBG utilisant C #, ce que je trouve vraiment étrange. Il semble que la pile avec laquelle je travaille (C #, MSSQL, Angular) pourrait convenir à un PBBG.
La seule raison pour laquelle je peux penser que C # n'est pas utilisé est le prix élevé de Visual Studio et le fait qu'il n'était pas open source.
Y a-t-il une autre raison, ou suis-je simplement mal à trouver des projets qui utilisent C #? Ou peut-être que je suis juste mauvais dans mon travail et que je ne réalise pas que cette pile n'est pas bonne pour PBBG?
la source
Réponses:
PHP a l'avantage d'être largement supporté par des hébergeurs bon marché. Vous pouvez louer un espace Web d'hébergement partagé LAMP (Linux, Apache, MySQL, PHP) pour les arachides. Et cet espace Web peut également héberger votre site Web et le client de jeu. La configuration de la plupart des applications PHP est tout aussi simple. Copiez simplement les fichiers sur le serveur Web et vous avez terminé. Cela rend très facile et pratique le fonctionnement d'un serveur de test.
Le serveur de jeux AC #, en revanche, peut être plus compliqué. Vous devez louer un véritable serveur racine, ce qui est plus cher et nécessite beaucoup plus de travail et de savoir-faire pour configurer et entretenir correctement. Vous n'avez pas écrit si C # signifie une application ASP.NET fonctionnant sur un serveur Web (une solution assez simple pour un PBBG si vous me demandez) ou une application autonome C # fonctionnant comme un processus distinct (un peu peu orthodoxe, mais qui pourrait fonctionner assez bien si vous avez un jeu plus orienté vers l'action). Si vous parlez de ce dernier, vous devez également installer ou louer un serveur Web pour héberger votre site Web et les parties côté client de votre jeu.
Ce surcoût supplémentaire peut être un obstacle pour la plupart des développeurs amateurs, ce qui peut être une bonne raison de choisir PHP. Mais quand un amateur réussit avec son jeu et décide de le faire professionnellement, il a déjà sa base de code existante et ne recommencera certainement pas à zéro. Ainsi, ils conserveront leur pile de technologie LAMP même si leurs préoccupations initiales pour le choisir ne sont plus valides (lorsque vous exécutez une opération sérieuse sur une pile LAMP, vous atteindrez tôt ou tard un point où l'hébergement partagé ne le coupera plus et vous avez besoin de vos propres serveurs).
Mais rappelez-vous que si vous regardez le coût total du projet de développement d'un PBBG, vous remarquerez généralement que les coûts d'hébergement et d'administration du serveur pendant la phase de développement ne représentent qu'une infime fraction du budget de développement.
Ainsi, votre décision quant à la technologie à utiliser doit être déterminée par la technologie qui vous permet de créer le meilleur jeu en un minimum de temps. Choisir les meilleurs outils que l'argent peut acheter (le mieux pour vous et votre projet ) ne vous coûte pas d'argent, il vous fait économiser de l'argent.
la source
Les autres réponses sont correctes, mais il y a un facteur historique qui n'a pas été mentionné.
Jusqu'à il y a quelques années, il y avait une communauté de développement PBBG qui existait principalement sur deux forums: BBGameZone et MakeWebGames, tous deux principalement remplis de programmeurs PHP. Les nouveaux utilisateurs qui ne savaient pas comment créer un jeu ont été pointés vers les super tutoriels de BuildingBrowserGames.com qui étaient tous en PHP. Le terme "PBBG" provient principalement de jeux créés par des gens connectés à ces deux forums, il y a eu un effort pour populariser le terme afin que le genre ait un nom reconnaissable que les joueurs puissent rechercher et, espérons-le, ralentir le déclin du genre, il n'est pas étonnant que vous n'obteniez PHP que lorsque vous recherchez le terme.
Je pense que vous êtes à 100% d'accord pour utiliser C #, MSSQL et Angular. Vous constaterez que la plupart des moteurs PHP sont obsolètes PHP4 ou PHP5.
Les gens de BBGameZone étaient principalement contre l'utilisation de moteurs (tout le monde écrivait leur propre moteur, y compris moi). comme le nouveau probable qui a été fait à mi-chemin)
Voici un document Google avec une comparaison de moteur d'il y a quelques années, comparant le script McCode / NWE / ezRPG / GL: https://docs.google.com/spreadsheets/d/1WM3axFhYaAtjiKd1KRwibx9jEegwjwCJNhQmXP_jzss/pub?single=true&g==
Il y a eu des efforts passés pour reconstituer l'ancienne communauté, mais pas beaucoup de chance jusqu'à présent: https://www.reddit.com/r/PBBG/comments/6r34vi/announcing_pbbgsite/
Je pense que vous serez 100% OK à l'avenir en utilisant un C #, MSSQL, une pile angulaire, rappelez-vous simplement que vous êtes probablement la première personne à écrire un PBBG avec votre chaîne d'outils et que vous devrez tout créer vous-même sans aucun exemple regarder en arrière sur.
N'oubliez pas que le genre est en train de mourir, mais tout ce dont il a besoin, c'est d'un ou deux jeux populaires pour se relancer, si vous pensez que vous pouvez le faire en C #, je serai enraciné pour vous.
la source
Résumé d'opinion: Si vous ne connaissez aucun langage (approprié) (assez bien), je suppose que vous obtenez "quelque chose" et que vous exécutez plus rapidement avec PHP. Mais si vous connaissez déjà un langage approprié comme C # et comment configurer un serveur / backend avec lui, cela ne s'appliquera pas (sauf si vous souhaitez utiliser un moteur particulier dans ce langage). Cet avantage de prototypage de PHP peut également être inexistant, plus votre jeu sera complexe / étatique.
la source