9
votes

Composants de jeu majeur

Je suis en train de développer une partie, et après deux mois de travail (pas à temps plein, je suis venu à nous rendre compte que nos spécifications pour le jeu manquent de nombreux détails. Je ne suis pas un jeu de jeu professionnel, ce n'est qu'un passe-temps.

Ce que j'aimerais recevoir de l'aide ou des conseils est: Quels sont les principaux composants que vous trouvez dans les jeux, qui doivent être développés ou exister comme des bibliothèques? L'objectif de cette question est pour moi de pouvoir spécifier plus d'aspects de jeu.

Actuellement, nous avions spécifié à peu près à la manière dont nous travaillerions sur le visuel, tout en oubliant tout ce qui concerne la logique de jeu (AI, interactions entités, Quest Logic (comment décidez-vous si une quête est terminée)).

Jusqu'à présent, j'ai trouvé ces points:

  • Physique (détection de collision, forces réelles, etc.)
  • AI (pathfinding, objectifs, etc.)
  • Gestion du modèle
  • Gestion d'animation
  • Gestion de la scène
  • Gestion de combat
  • Gestion des stocks
  • caméra (assurez-vous de ne pas rendre tout ce qui est dans la scène)
  • Heightmaps
  • Entités Communication (joueur avec NPC, ennemi, autres joueurs, etc.)
  • State de jeu
  • Système d'économie d'état du jeu

    Afin de réduire la portée de cette question, j'aimerais que vous puissiez spécifiquement discuter des aspects liés à la mise en place d'un type de jeu RPG. Je ferai également remarquer que j'utilise Xna pour développer ce jeu, mais je n'ai presque aucune compréhension de toutes les classes disponibles (à peu près seulement en utilisant la composante de jeu avec certaines classes qui sont liées telles que Gametime, Spritbatch, GraphicDeviceManager ) Mais pas beaucoup plus.


0 commentaires

7 Réponses :


9
votes

Vous avez une liste décente, mais vous manquez de stockage (charge de sauvegarde), le texte (texte est important dans les RPGS: Unicode, le rendu de police), probablement un système macro pour le texte (quelque chose qui remplace les jetons comme {joueur} avec le Nom de caractères du joueur) et le plus important de tous les outils de génération de contenu (Éditeur de la carte, Editeur de Chara, Editeur de dialogue), car les RPGS ont besoin de contenu (ou des outils de génération automatique si vous avez besoin). Au fait, j'ai des liens vers votre travail?

Je fais cette affaire exacte pour gagner sa vie, donc si vous avez besoin de plus de pointeurs, je peux peut-être aider.


1 commentaires

@Robert Gould: Merci pour l'aide, c'est apprécié. Depuis que vous dites dans votre profil que vous êtes spécialisé dans les scripts, je me demandais comment vous intégreriez les scripts dans les dialogues et surtout comment vous faites toute la magie située dans les coulisses. Je sais qu'il y a beaucoup à discuter, peut-être que nous pouvons trouver un moyen de le faire correctement? Pour répondre à votre question, non, je n'ai pas encore de lien car ce jeu est si tôt en développement, il n'a pas à peu près rien à montrer.



2
votes

Il y a des centaines de composants nécessaires pour créer une partie, de la gestion temporelle à l'audio. Vous aurez probablement besoin de rouler votre propre interface graphique, car les contrôles du système d'exploitation natif sont très non-non gamey. Vous aurez probablement besoin de toutes sortes d'outils pour générer vos mondes, exportateurs pour convertir des modèles et des textures en quelque chose qui convient à votre jeu, etc.

Je vous recommanderais vivement de commencer par l'un des nombreux moteurs de jeu gratuits ou bon marché. Des charges d'entre eux viennent avec le code source, vous pouvez ainsi apprendre comment ils ont été mis ensemble à votre guise.

Lorsque vous pensez que vous êtes prêt, vous pouvez commencer à remplacer les parties du moteur que vous utilisez pour mieux répondre à vos besoins.


2 commentaires

@rikh: travaille actuellement en C # avec XNA. En ce qui concerne le "moteur de jeu", il n'y a pas beaucoup. Au moins, toute la partie graphique et audio semble être manipulée à un niveau de haut niveau pour que je puisse produire des trucs facilement. Je construisant lentement ce qui serait considéré comme la partie scène du moteur.


Il semble y avoir une bonne liste de moteurs de jeu XNA à Ziggyware.com/weblinks.php ? Cat_id = 10



0
votes

J'ajouterais également que si vous ne travaillez pas sur votre jeu à temps plein, soyez conscient de la complexité et du délai de la tâche. Si vous essayez d'intégrer tant de cadres différents dans votre jeu RPG, vous pouvez facilement vous retrouver avec plusieurs années de travail. Peut-être qu'il serait plus conseillé de démarrer petit et ne développerait-il que le «noyau» de votre jeu et ne vous soucez pas de la physique, par exemple. Vous pouvez toujours l'ajouter dans la deuxième version.


2 commentaires

Vous n'avez pas répondu à la question. -1. Ce serait mieux comme un commentaire sur la question initiale.


@ ZOLI2XA: Nous comprenons un bon compris les cadres. En ce qui me concerne, notre premier objectif est d'obtenir une version alpha au moins agréable. Comme c'est surtout un passe-temps, je ne vois pas cela de devenir quelque chose comme un succès. Pour moi, c'est plus d'une aire de jeux, d'apprendre l'architecture logicielle et le processus en général.



5
votes

Je ne sais pas si c'est une aide, mais je lisais des articles de http: // www. gamasutra.com/ pendant de nombreuses années.

Je n'ai pas de jeu d'outils parfait depuis le début, mais votre liste couvre la plupart des problèmes habituels pour la gestion du jeu. Mais avez-vous découvert ce que chacun des articles est synonyme? Combien avez-vous déjà fait? "Gestion des stocks" semble très lourd, mais certains jeux ont juste besoin d'un simple "tableau" d'objets. Prend une heure pour programmer + une intégration graphique (si vous avez déjà effectué votre gestion de l'interface graphique).

Comment commencer la planification

Quand je développe des jeux au cours de mon temps libre, j'ai une idée d'une idée, car un autre jeu manque de cette fonction / option. Ensuite, je démarre ce que l'outil de développement utilise actuellement et j'essaie de voir si je peux faire un prototype montrant cette idée. Il ne s'agit pas toujours de graphiques de fantaisie, mais le plus souvent, il s'agit de déterminer comment résoudre un certain problème. Les boîtes vertes et rouges vous aideront la plupart du temps, mais sinon, utilisez Google Images et effectuer une recherche rapide de prototypes graphiques. Mais rappelez-vous que ces images sont probablement protégées par le droit d'auteur, alors utilisez-les uniquement à des fins de test internes et d'expliquer à vos artistes graphiques Quel type de jeu / graphique que vous souhaitez faire.

Deuxièmement, vous constaterez que vous devez trouver / construire des outils pour créer également les "cartes / missions / quêtes". Aujourd'hui, beaucoup développent leur propre "script d'objet" où ils peuvent facilement ajouter de nouveaux contenus / chemin d'accès à un jeu.

Beaucoup d'idées que nous (mes amis et moi) ont été testées ont commencé avec un certain prototype de l'interface, pour voir si possible de générer ce type de sortie d'écran en premier. Ensuite, nous construisons une carte / éditeur de niveau Quick'n'Dirty qui peut nous fournir des cartes de test.

Aucune logique de jeu à ce stade, déterminez toujours si le moteur de jeu en général est en cours d'exécution.

mon premier problème d'algorithme de jeu

De retour quand j'étais dans mon adolescence, j'avais un commodore 64 et je me demandais comment trient-ils 10 numéros pour un highscore? Il m'a fallu tout un peu de temps pour trouver une façon "évolutive" de le faire, mais j'ai beaucoup appris sur la programmation aussi.

le deuxième problème que j'ai trouvé

Comment faire une balle de réservoir / canon à une balle dans la bonne direction lorsque je tire mon hélicoptère autour de l'écran?

Je me suis assis et j'ai attiré des croquis rapides du problème réel, j'ai regardé les lignes de balle, essayé de mes propres théories et trouva quelque chose qui semblait travailler (en divisant et en multipliant les positions, etc.) plus tard à l'école, j'ai découvert Ce pour être plus ou moins de Pythagore. LOL!

années et de nombreuses tentatives de jeu plus tard

J'ai joué "Dune" et plus C & C + Le nouveau jeu Warcraft (V1 / V2) - Je me souviens qu'il a commencé à m'énerver à quel point l'AI boiteux a fonctionné. Les algorithmes de recherche de sentiers ont été frustrants pour le joueur, je pensais. Ils se sont déplacés dans la direction de la position de la cible, puis ont trouvé un mur, mais si la voie était complexe, l'objet vient d'arrêter. Argh!

Je suis donc assis avec de grandes quantités de papier, puis j'ai essayé de dessiner certains scénarios où un "objet" (réservoir / ork / soldat) irait d'A à B, puis soudain, il y avait une "structure" (bâtiment / autre objet) dans la voie - qu'est-ce que?

J'ai appris sur A-STAR Pathfinding (après la résolution d'abord seul De la même manière, lisez plus tard la raison de ce travail). Un moyen de trouver un chemin très "de la CPU" de trouver un chemin, mais j'ai beaucoup appris du processus de "craquer cette noix". Ces pensées m'ont aidé beaucoup à développer d'autres algortimes de jeu au fil du temps.

Alors, ce que je dis, c'est: Je pense que vous devrez penser plus de:

  • Comment le jeu sera-t-il joué?
  • Que ressemble à l'expérience utilisateur?
  • Pourquoi l'utilisateur voudrait-il revenir au jeu?
  • Quelles sont les exigences nécessaires? Haut débit? 11 "moniteur avec 1280x1024?
  • Un RPG, oui - mais sera-t-il multi-utilisateur ou célibataire?
  • Avons-nous besoin d'une configuration rapide du réseau / serveur ou avons-nous besoin de développer une AI forte pour les NPCS?

    et beaucoup plus ...

    Je ne suis pas sûr que c'est ce que vous avez demandé, mais j'espère que vous pouvez l'utiliser en quelque sorte?


1 commentaires

Une grande partie de la planification a été réalisée via le plan de gestion de projet logiciel et les diagrammes UML de l'idée générale. J'ai une assez bonne idée de la façon dont les choses vont se dérouler, mais comme je l'ai dit, il semble que nous allions de l'avant et oublié beaucoup de choses. En fait, nous n'avons pas fait de travail approfondi afin de trouver tous les domaines qui devraient être programmés pour avoir quelque chose de "jouable". Pour le moment, tout ce que nous avons est des personnages, des animations, une collision de base (aucune collision d'armes), une interaction des entités de base et c'est à peu près beaucoup. Comme vous pouvez le constater, il reste beaucoup à faire.



2
votes

Je suis d'accord avec Robert Gould's Post, surtout sur les outils et je ajouter
Script
Gestion de la mémoire
Réseau - en particulier la réplication des états d'objet de jeu et de la fabrication de matchs Oh et n'oubliez pas la localisation - en particulier pour les chaînes de texte


0 commentaires

2
votes

Les effets effets et effets (pourraient être des effets magiques, pourraient être des trucs comme étant abasourdis.)

professions de caractère, compétences, sorts (si ce type de jeu).

Outils de création du monde, pour faciliter les constructeurs non programmeurs.

Pensez à savoir si vous voulez ou non pvp. Si tel est le cas, vous devez vraiment penser à la façon dont vous allez faire votre système de combat et toute limite que vous souhaitez sur qui peut attaquer qui.

équipement, "trésor", valeurs des choses et comment vous voulez faire l'économie.


1 commentaires

@Anon: Étant donné que la majeure partie du jeu est destinée à être jouée sur la zone X (avec la possibilité de coopérative) ou sur l'ordinateur (joueur unique), le PVP est à peu près hors de question. Les outils de création du monde se dérouleraient aussi depuis que le jeu que nous jouons pour produire est plus comme une "une fois qu'elle est produite, c'est fait" type de jeu. L'objectif principal de ce jeu pour nous est d'apprendre à développer un grand jeu, quelque chose de plus significatif que Pong ou Tic-Tac-Toe.



1
votes

C'est une question plus ancienne, mais IMHO est maintenant une meilleure réponse: utilisez l'unité (ou quelque chose qui lui appartient). Cela vous donne 90% de ce dont vous avez besoin pour faire un jeu à l'avant, afin que vous puissiez vous concentrer et vous concentrer directement sur la pièce que vous aimez, ce qui est le gameplay. Lorsque vous êtes échoué, car il y a quelque chose qu'il ne fait pas de la boîte, vous pouvez généralement trouver une ressource dans le magasin d'actifs gratuitement ou bon marché qui vous fera économiser beaucoup de travail.


0 commentaires