
![]()
![]()
![]()
![]()
![]()
![]()
![]()

Screeps est un jeu de stratégie MMO pour les programmeurs. L'objectif principal est d'étendre votre colonie, de rassembler des ressources et de combattre d'autres joueurs en cours de route. Pour contrôler vos unités, vous codez une IA en JavaScript; Tout, du déménagement, de l'exploitation minière, de la construction, de la lutte et du trading, est entièrement motivé par votre code. Parce que Screeps est un MMO, il se déroule sur un seul serveur qui s'exécute 24/7, peuplé de tous les autres joueurs et de leur armée de fluage. Lorsque vous vous déconnectez, votre population continue de bourdonner avec la tâche que vous leur définissez. Scrensps associe vos prouesses en programmation en tête-à-tête avec d'autres personnes pour voir qui peut penser aux méthodes les plus efficaces pour accomplir des tâches ou imaginer de nouvelles façons de vaincre les ennemis.
Overmind est ma base de code personnelle que j'exécute sur le serveur public. La structure de l'IA est à thème vaguement autour de l'intelligence Swarm de Zerg de Starcraft. Les suzerains orchestrent des actions de fluage dans chaque colonie, et le surveillant de la colonie place des directives pour s'adapter aux stimuli. Enfin, l'assimilateur permet à tous les joueurs qui exécutent une surmind d'agir comme un Hivemind collectif, de partager des fluage et des ressources et de répondre conjointement à un maître livre de toutes les directives partagées par tous les joueurs.
L'IA est entièrement automatisée, bien qu'elle puisse également fonctionner en mode manuel ou semi-automatique. La dernière version devrait fonctionner dès la sortie de la boîte; Cependant, si vous trouvez quelque chose de cassé, veuillez soumettre un problème et je vais essayer de le résoudre.
Si vous êtes nouveau sur des screeps, je recommanderais certainement d'écrire votre propre IA: la plupart du plaisir du jeu consiste à programmer votre propre bot et à regarder votre petite ferme de fourmis! Cependant, j'ai essayé de rendre la base de code lisible et bien documentée, alors n'hésitez pas à débarrasser le projet ou à l'utiliser comme inspiration lors de l'écriture de votre IA.
Si vous souhaitez toujours utiliser Overmind sur le serveur public, c'est bien aussi - il y a déjà un certain nombre de personnes. Mais veuillez vous rendre compte que l'utilisation d'une IA mature comme celle-ci vous donne un énorme avantage sur les autres nouveaux joueurs, alors ne faites pas tout votre possible pour ruiner le plaisir de quelqu'un d'autre. À l'avenir, je mettrai en œuvre des méthodes pour que les joueurs novices se retirent de l'agression excessive par des robots de surmins (tant qu'ils ne commencent pas un conflit et ne restent pas hors de son chemin).
Si vous souhaitez simplement exécuter Overmind sans modification, vous pouvez copier le fichier main.js compilé joint à la dernière version dans votre script. Bien que Overmind soit entièrement automatisé par défaut, il peut être exécuté avec différents niveaux d'autonomie; Reportez-vous au Wiki OverMind pour configurer et utiliser le bot.
Pour installer la base de code complète, télécharger ou cloner le référentiel. (Veuillez noter que bien que la dernière version de OverMind doit toujours être stable, le dernier engagement peut contenir des fonctionnalités instables.) Accédez au répertoire root Overmind et exécutez npm install . Pour compiler et déployer la base de code, créez un fichier screeps.json à partir de l'exemple de fichier, puis effectuez l'une des actions suivantes:
npm run push-mainnpm run push-pservernpm run compile OverMind utilise rollup pour regrouper le dactylographie compilé dans un seul fichier main.js La base de code comprend des fonctionnalités pour calculer les sommes de contrôle pour la validation interne - si vous avez une version différente de rollup installée globalement, différentes sommes de contrôle peuvent être calculées et certaines fonctionnalités seront désactivées. Veuillez vous assurer que l'installation locale de rollup trouvée dans node_modules est utilisée.
OverMind comprend un tableau de bord Grafana (illustré ci-dessous) qui suit les statistiques de fonctionnement détaillées. Pour configurer le tableau de bord:
$User dans votre nom d'utilisateur.
Découvrez le wiki sur la surminance pour des explications approfondies des parties de la conception de l'IA. (Cliquez sur le diagramme ci-dessous pour voir une version à haute résolution.)