Alt-F4 n°3 - Tronparty  04-09-2020

Écrit par JD-Plays, T-A-R, Raiguard, édité par Therenas, nicgarner,
traduit par bev, Firerazer

Sommaire

Bienvenue dans le troisième numéro des Alt-F4. Ce week-end, nous allons tenter de battre le record du plus grand nombre de joueurs sur un seul serveur Factorio ; lisez ce qui suit pour savoir comment vous joindre à la fête. Il y a également un rapport sur la fête de lancement des “Big Community Games”, qui aurait dû être totalement traitée la semaine dernière. Complètement de ma (Therena) faute. Enfin, Raiguard partage avec nous tous un de ses mods passionnants. Allons-y !

PS : Nous recherchons des personnes motivées qui veulent aider à traduire chaque numéro des Alt-F4. Si vous êtes intéressé, vous trouverez plus d’informations à la fin de ce numéro. Merci !

Événement: Molten Silicon JD-Plays

C’est le week-end, vous avez des projets ? Vous allez encore jouer à Factorio pendant environ 25 minutes, pour ensuite vous rendre compte que le soleil se lève déjà ? Ou vous voulez juste jouer à Factorio avec quelques amis ?

Nous avons de bonnes nouvelles. Ce week-end, nous avons quelques amis qui se réunissent pour faire quelque chose de simple : faire fondre complètement le silicium de notre serveur ! Rejoignez-nous pour l’événement “Molten Silicon” où notre seul objectif est d’amener le plus grand nombre possible de joueurs sur le même serveur et de lancer une fusée. Oh, et de faire fondre le processeur du serveur en même temps bien sûr ! Chaque joueur aura quelque chose à faire, de la construction de la base à l’élimination des biters avec d’autres Tuniques Rouges. Notre véritable ennemi sera probablement toujours présent aussi, alors nous aurons besoin de certains d’entre vous pour rejoindre notre équipe de bûcherons !

Donc si vous avez quelques heures à disposition ce week-end, et que vous voulez essayer de nous aider à battre le record précedent de 521 joueurs simultanés, veuillez rejoindre notre serveur à 11h UTC ce samedi 5 septembre. Vous pourrez facilement l’identifier, car ce sera le plus grand serveur en fonctionnement !

Le compte à rebours est terminé

Les informations sur le serveur seront fournies peu avant l’heure de début dans le salon #information de notre Red Circuit Discord. Pour des informations plus générales, veuillez consulter notre site web.

Ne cassez pas les nouveaux jouets, s’il vous plaît T-A-R

Le premier Alt-F4 a été une surprise excitante lorsque mon esprit têtu est allé sur factorio.com le vendredi 21 août, sachant qu’il n’y aurait pas de nouvel article FFF #361 qui m’attendait. J’ai décidé que je voulais soutenir cette initiative, et la meilleure façon de le faire était d’agir rapidement. Voici donc un rapport de terrain sur l’un des nouveaux rapports de bugs “pas-un-bug” 1.0.

La deuxième meilleure chose à faire après une fête de lancement officiel à Prague serait un bon vieux serveur multijoueur. De nombreuses fêtes de lancement ont fleuries sur le serveur de Factorio ce vendredi-là, toutes avec de nouvelles cartes et de nombreux ingénieurs du monde entier qui se sont joints à eux pour établir des bus ambitieux. Le serveur hébergé parBig Community Games a pu atteindre son apogée avec 201 joueurs, ce qui est une bonne chose, car il faut une base solide pour pouvoir se défouler sur tous les packs de science nécessaires pour obtenir la meilleure fonctionnalité de la version 1.0. (Indice : c’est le spidertron !)

Doté d’épaisses plaques de minerais et d’une astucieuse note sur la carte (décrivant les couleurs des équipes et leurs tâches), le serveur a débuté comme une colonie de fourmis hyperactives dotées d’un instinct pour fabriquer des colonnes de fours. Le message sur la carte autour du point d’arrivée a fait un travail formidable pour organiser le groupe d’ingénieurs toujours plus nombreux. Au début, une usine isolée a été créée à côté de l’usine de sciences pour que toutes les Tuniques Rouges soient approvisionnées en matériel et en munitions. Cela a permis aux soldats et aux constructeurs de disposer d’un ravitaillement régulier pour défendre et développer l’usine.

Et ça s’est développé. Il a fallu 11 heures pour fabriquer une fusée, ainsi qu’une vingtaine de spidertrons, une cargaison d’équipements et d’armures et une tonne de munitions et d’explosifs. À ce moment-là, la baie de Bilka, l’Italie, et le lac Twinsen avaient été baptisés, selon les repères cartographiques laissés par des ingénieurs chevronnés.

Dès que les spidertrons sont entrés en production, il est clairement apparu que ces pattes sont très inhabituelles, mais en même temps puissantes. La perspective intrigante de simplement enjamber des lacs et des machines a lentement transformé le voyage d’exploration en un test de capacités pour notre nouveau jouet/outil. Les convoyeurs se sont vite révélées être un point d’intérêt pour beaucoup d’araignées qui couraient un peu partout sur la carte. L’excitation partagée a conduit les administrateurs à apporter leur propre contribution à la fête et a fait subir au spidertrons le test ultime en transformant la fête de la sortie en une méga-fête du spidertron. Une piste de danse colorée a été rapidement façonnée pour que les araignées puissent se dégourdir les jambes :

La combinaison de convoyeurs à courroie se déplaçant dans des directions opposées et de vides dans la carte a conduit les toutes nouvelles pattes du spidertron à se diviser maladroitement, étirant leurs jambes à l’infini. Il est grand temps de communiquer ces découvertes aux développeurs avec un nouveau rapport de bug 1.0 tout frais. Il a été l’un des rapports de bugs les plus consultés, mais il a rapidement été marqué comme un double “pas-un-bug”. Le développeur V453000 avait déjà répondu à l’un des premiers rapports (30 minutes après la sortie) pour signaler qu’il ne serait pas souhaitable de restreindre leurs mouvements et que nos araignées fonctionnaient en fait très bien. Mais, le fait que nous “pouvions” n’élimine pas la question de savoir si nous “devrions”…

Au final, le jeu a été un vrai succès, et nous sommes vraiment tombés amoureux du spidertron. Il est l’un des nôtres maintenant.

Pleins feux sur le mod: Editor Extensions Raiguard

Tout le monde connaît Creative Mod. Il vous propose de nombreux objets “de triche” que vous pouvez utiliser pour tester vos plans d’usine. Il existe depuis longtemps et a bien servi les gens au fil des ans.

Cependant, si vous utilisez Creative Mod pendant un certain temps, vous commencerez à remarquer des pics de latence ici et là. Continuez à l’utiliser de plus en plus et les délais deviendront de plus en plus fréquents. Finalement, votre jeu commencera à ralentir à mesure que vous utiliserez de plus en plus les outils de Creative Mod.

Il y a un an et demi, j’ai commencé à avoir du délai sur mon monde créatif. Je venais de sortir mon premier mod à l’époque, donc j’avais un peu d’expérience avec l’API. Curieux, je me suis plongé dans le code du Creative Mod et j’ai essayé de voir si je pouvais comprendre ce qui se passait.

Le résultat : Creative Mod a été très bien fait… pour son époque. Le mod a été créé en 0.13, à une époque où l’API de modding était beaucoup plus limitée. Ainsi, il a réussi à faire toutes ces choses géniales avec un ensemble d’outils extrêmement limité. Mais maintenant, l’API de modding est beaucoup plus évoluée et beaucoup plus performante. J’ai décidé de créer une mise à jour de Creative Mod qui tirerait parti de ces nouvelles fonctionnalités, réduisant ainsi son impact sur les performances.

Mais j’ai fini par réaliser qu’il était impossible de mettre à jour Creative Mod. Il faudrait trop de modifications de rupture pour le mettre à jour, alors j’ai décidé de créer un nouveau mod. Ce mod a d’abord été publié sous le nom de “Infinity Mode”, mais il a rapidement été déclassé et remplacé par “Editor Extensions” pour diverses raisons.

Editor Extensions ne remplace pas l’éditeur de cartes du jeu comme le font le Creative Mod et le Infinity Mode - il l’améliore. Ainsi, EE ne dispose pas d’une fenêtre de “triche” semblable à celle de Creative Mod et de Infinity Mode. L’éditeur possède toutes ces fonctionnalités - et bien d’autres - cachées dans ses nombreux menus.

L’attrait principal de Editor Extensions est sa performance - elle est de plusieurs ordres de grandeur plus rapide que Creative Mod. Je vais passer en revue certaines des méthodes que j’ai utilisées pour y parvenir.

L’électricité

La première chose que j’ai voulu faire, c’est de créer des sources et des puits d’énergie. Creative Mod le fait en créant des chaudières, puis en les remplissant d’électricité à chaque tick à l’aide d’un script. Cependant, le jeu dispose maintenant d’une entité intégrée qui peut le faire automatiquement : l’Interface de l’énergie électrique (IEE). Cette entité peut, comme par magie, produire et consommer de l’électricité à partir de rien, et ses paramètres sont réglables en cours de partie.

Il y a deux choses que je voulais améliorer à propos de l’IEE : l’interface graphique et la priorité d’utilisation. L’interface graphique de l’IEE est fonctionnelle, mais elle prête à confusion, et une entité ne peut se voir attribuer qu’une seule priorité d’utilisation. Bien sûr, je peux résoudre le premier problème en créant une interface graphique personnalisée, mais le second problème est résolu d’une manière un peu plus délicate.

Ce que vous voyez comme un accumulateur infini est en fait l’une des cinq entités possibles, chacune ayant une priorité d’utilisation différente. Selon la configuration choisie dans l’interface graphique, un petit script remplacera à chaud l’entité par une autre qui semble identique, mais qui a une priorité d’utilisation différente. Cela permet à une seule “entité” de tout faire, de la production à la consommation, en passant par le stockage d’une quantité de puissance personnalisable (jusqu’à 999 yottawatts!).

Les coffres

Le problème suivant que je voulais résoudre était celui des coffres. Creative Mod dispose d’une variété de coffres, qui permettent de créer, de dupliquer ou de supprimer des objets. Cependant, il utilise des scripts pour réaliser toutes ces fonctionnalités, créant un surplus assez important après avoir placé seulement quelques coffres.

En 0.16, le jeu de base a été agrémenté du coffre infini, qui peut faire tout cela et plus encore. Il fonctionne par le réglage de filtres infinis, qui ont eux-mêmes des modes “au moins”, “au plus” et “exactement”. Cela permet de décharger toute la manipulation des objets sur le jeu lui-même, réduisant la charge de travail du script à zéro !

EE prolonge le coffre infini de base en y ajoutant des variantes logistiques, et en y ajoutant un type spécial de coffre infini appelé coffre composite. Le coffre composite est très similaire au coffre créatif : il contient une pile de tous les objets du jeu. Un petit script règle ses filtres infinis lorsqu’il est placé, puis le jeu de base s’occupe du reste. Il existe également des variantes de ce coffre pour les fournisseurs actifs et passifs.

En utilisant les coffres infinis et composites, vous pouvez obtenir le comportement exact que vous souhaitez pour tester vos constructions.

Les convoyeurs

Souvent, vous voudrez placer rapidement et facilement des objets sur un convoyeur, ou vous débarrasser d’objets sur un convoyeur, pour tester vos réglages. Dans le jeu de base, vous pouvez le faire avec un coffre infini et un chargeur (une entité cachée que vous pouvez obtenir dans l’éditeur de cartes). Cependant, ces chargeurs sont assez basiques, et si vous voulez avoir des objets différents de chaque côté d’un convoyeur, vous devez placer deux chargeurs et deux coffres infinis. Cela fait quatre entités, et vous devez ensuite configurer les coffres également, ce qui prend encore plus de temps.

Pour résoudre ce problème, j’ai en fait construit un autre mod - Miniloader. Beaucoup de concepts sont partagés entre le Miniloader et le chargeur infini, donc cette explication vous donnera un aperçu du fonctionnement de ce mod.

Le chargeur infini est en fait un minimum de cinq entités en une :

De gauche à droite, nous avons l’entité de chargement elle-même, un coffre infini, deux bras filtrables haute capacité et un émetteur de constantes. Toutes ces entités jouent un rôle dans le fonctionnement du chargeur infini.

Lorsque vous placez un chargeur infini, ce que vous placez en réalité est un “combinateur factice”. Il s’agit d’un émetteur des constantes qui est déguisé pour ressembler à un chargeur. Lorsqu’il est placé, un script détruit immédiatement ce combinateur et le remplace par un autre invisible. Ce combinateur est ce avec quoi vous interagissez réellement, et il est enregistré dans des plans afin que les filtres puissent être sauvegardés. Ensuite, l’entité chargeur est ajoutée, ainsi qu’un coffre infini invisible et un minimum de deux bras filtrables haute capacité invisibles, dont la vitesse est augmentée au maximum.

Lorsque vous configurez les filtres du chargeur via son interface graphique personnalisée, vous réglez en fait les filtres sur les bras filtrables haute capacité invisibles, ainsi que sur le coffre infini. Ces bras extraient les objets du coffre et les mettent sur le convoyeur extrêmement rapidement, donnant l’impression que les objets sortent de nulle part.

L’inverse est également vrai : si vous faites pivoter un chargeur infini pour consommer des objets, les bras retireront tout ce qui est sur le convoyeur et le jetteront dans le coffre infini, donnant l’impression que les objets disparaissent comme par magie. Tout cela se fait en coulisses et profite des comportements du jeu de base. Un script est utilisé pour “régler” le chargeur, mais à partir de ce moment, le script ne fait plus rien, réduisant la charge de calcul pour l’utilisation de ces chargeurs - une fois de plus - à zéro.

Bien sûr, pour simplifier au maximum les choses, il n’y a qu’un seul objet chargeur infini que vous placez. Le chargeur changera automatiquement de type de convoyeur en fonction de ce à quoi il est connecté et ajoutera ou supprimera des bras pour pouvoir suivre la vitesse du convoyeur. Et comme il y a plusieurs bras différents, nous pouvons régler des filtres différents pour chaque côté du convoyeur.

Le résultat est une entité pratique et facile à utiliser qui peut produire et consommer des objets du convoyeur, tout en étant extrêmement performante.

Triches pour le personnage

Si Editor Extensions est principalement destiné à être utilisé à partir de l’éditeur de cartes, il est également tout à fait possible et assez facile d’utiliser un personnage. En utilisant le mode “Triche” (accessible en tapant /cheat ou /cheat all dans la console), vous pouvez accéder à tous les outils mentionnés ci-dessus.

Certains des outils que je n’ai pas mentionnés comprennent des équipements “survitaminés” :

En utilisant cet équipement, vous pouvez devenir immortel, courir très vite et voir clairement dans l’obscurité. Le super roboport, combiné à des super robots de construction, vous permet de construire et de déconstruire très rapidement. Vous pouvez ainsi accéder aux nombreux pouvoirs divins de l’éditeur tout en conservant votre corps confortable. Et à l’avenir, si jamais vous retirez Editor Extensions de votre sauvegarde, l’équipement disparaîtra tout simplement, laissant la portée infinie comme seule preuve de la présence du mod.

Conclusion

Editor Extensions est le résultat de plus d’un an de tests et de développements de mods dans le jeu. Il y a beaucoup, beaucoup de choses que je n’ai pas mentionnées ici - y compris un raccourci pour activer l’éditeur, la synchronisation de l’inventaire, les tuyaux infinis, et un scénario de test spécial - mais cela rendrait cet article encore plus long qu’il ne l’est déjà. J’espère que vous avez apprécié la lecture, et que vous avez pu vous faire une idée du fonctionnement de l’incroyable API de modding de Factorio.

Les développeurs de Factorio nous gâtent avec ce que nous sommes capables de faire à leur jeu, et l’API n’en devient que plus performante à chaque mise à jour. Merci de votre lecture et merci aux développeurs d’avoir rendu cela possible !

Contributing

Nous sommes toujours à la recherche de personnes qui ont quelque chose d’intéressant à partager avec la communauté de Factorio. Si c’est votre cas, rejoignez le Discord (ou le projet GitHub) pour commencer. Presque tous les sujets sont les bienvenus, alors n’ayez pas peur de contribuer !

Nous envisageons également de lancer des traductions par la communauté cette semaine, ce qui rendrait les Alt-F4 accessibles à beaucoup plus de personnes que la seule version anglaise. Nous avons déjà procédé au réglage du site web en conséquence, il ne nous manque plus que des personnes pour travailler sur les traductions. Si vous êtes partant, rejoignez le Discord et cherchez le salon #translation.