Codex de l'Infinity Engine
Posté : sam. 09 nov. 2024, 23:35
Salut à vous.
Il y a de ça plusieurs années, je me suis rendu compte que les informations de iespd sur les opcodes étaient dépassées (il a depuis bien évolué). Non satisfait de la situation, j'avais décidé d'agir.
Comme à mes habitudes, j'ai décidé d'emprunter la voie tortueuse et au lieu de me reposer les connaissances entassées depuis 20 ans par la communauté : je suis allé chercher l'information à l'endroit le plus fiable mais aussi le plus glauque : l'exécutable du jeu.
Au début, c'est un peu comme se retrouver à poil dans un labyrinthe indéchiffrable d'une taille tellement gigantesque que s'en est à peine imaginable.
Ça ne m'a pas arrêté.
Ce qu'il faut retenir c'est que j'ai commencé à construire un wiki en local pour cartographier chaque recoin.
Comme tout bon labyrinthe, passer 10 fois au même endroit n'empêche pas de remarquer une chose qui nous avait échappé les 9 fois précédentes.
De fait, j'ai noté pleins de choses. Parfois des choses que tout le monde connaît (mais redécouvertes et validées), parfois des choses que personne ne soupçonne.
Et surtout, il y a des liens entre les choses, tout plein. Car toutes les informations sont interconnectées : pour bien comprendre une mécanique il faut comprendre ce qu'il y a autour et ainsi de suite.
J'ai débuté par un travail sur les opcodes (qu'on peut retrouver sous une autre forme ici) et puis ça s'est étendu progressivement.
Les opcodes modifient les STATS, qui influent sur les ACTION qui activent des TRIGGER qui peuvent s'effectuer que sous certains STATE etc. Et réciproquement.
Bref, désormais, vous pourrez retrouver ici cette accumulation d'information, que j'ai appelé codex : https://gitlab.com/RiwsPy/codex-infinity-engine/
Il y a deux versions :
- la version "src-md", lisible directement sur le repo, utile pour les moins à l'aise avec les outils informatiques mais je ne le recommande pas car vous perdez une quantité importante d'informations.
- la versoin "src-html", que vous pouvez télécharger pour la visualiser avec votre navigateur web préféré.
Vous pouvez commencer par lire les pages dans le dossier Mécanique. Il y en a peu mais certaines sont plutôt fournies, ça peut donner un ordre d'idée du contenu, de sa qualité (variable) et de son niveau d’exhaustivité (élevé).
Bien que le processus de remplissage du codex s'est fortement accéléré ces derniers temps (la magie de l'apprentissage) et que cela représente au bas mot plusieurs centaines d'heures de travail, je pense avoir exploré à peine 10% du moteur.
Évidemment, il y a des trous. Je vous invite à lire le README du projet pour comprendre comment les trous peuvent tout de même fournir des informations utiles.
Selon les réactions, j'arrangerai des trucs. Si tout le monde s'en fout, je continuerai à l'alimenter comme aujourd'hui, ce qui ne me pose absolument aucun problème.
À quoi ça sert tout ça ?
Déjà à me sentir mieux vis-à-vis de moi-même.
Ensuite, la connaissance est utile mais le mieux c'est encore de pouvoir l'utiliser pour créer de belles choses qui ravira le cœur des gens (mon côté poète).
Moi j'ai tellement le nez dans le code, que je prends même plus le temps d'utiliser ces informations, à part pour faire quelques tests (mais pas assez).
Pour vous, ça peut offrir des possibilités, faîtes en ce qui vous semble juste et bien.
Pourquoi ne pas mettre ça dans l'iesdp ?
C'est déjà compliqué de proposer 10 modifications, là il y en a des centaines. Ce n'est pas pensé pour les moddeurs, toutes ne les intéresseront pas. Certaines sont fausses, beaucoup ne sont pas testées. De nombreuses devront être discutées. C'est sans fin.
Découvrir est un travail. Partager en est un autre. Je ne suis pas en mesure d'assurer les deux en même temps.
Ce qui n'empêche pas d'aller proposer des améliorations. Directement ou indirectement, je leur ai déjà remonté de nombreux points. Mais c'est jamais assez.
Pourquoi nous poser ton sac de pus ici ?
Depuis l'intervention de bidule et les dires de JohnBob qui explique que la communauté française est sous-considérée… Ça m'a fait prendre conscience qu'il y a des choses qui peuvent être amélioré, à commencer par ma propre implication.
Je me dis qu'on pourrait faire ensemble de plus jolies choses s'il y a plus d'échanges de compétence.
Plutôt que le faire de façon partielle à travers des tutos qui intéresseraient au mieux 2 personnes, je me suis dis que ça serait plus simple de tout poser ici.
Efficacité et transparence. Ce repo contient ma bible personnelle, sans détour.
Si le besoin s'en fait sentir, je pourrais toujours aborder des points de façon plus traditionnelle par la suite.
Alors oui, ça fait une source d'informations supplémentaire. Non, c'est pas bien. Non, c'est pas validé par l'intégralité d'une communauté. Oui vous pouvez devez douter du contenu.
Je vais pas y mettre le feu pour autant.
Si vous avez des propositions bénéfiques pour les lecteurs sans me compliquer inutilement la tâche, je les écoute.
Et aux plus téméraires, je vous souhaite une bonne découverte.
Il y a de ça plusieurs années, je me suis rendu compte que les informations de iespd sur les opcodes étaient dépassées (il a depuis bien évolué). Non satisfait de la situation, j'avais décidé d'agir.
Comme à mes habitudes, j'ai décidé d'emprunter la voie tortueuse et au lieu de me reposer les connaissances entassées depuis 20 ans par la communauté : je suis allé chercher l'information à l'endroit le plus fiable mais aussi le plus glauque : l'exécutable du jeu.
Au début, c'est un peu comme se retrouver à poil dans un labyrinthe indéchiffrable d'une taille tellement gigantesque que s'en est à peine imaginable.
Ça ne m'a pas arrêté.
Ce qu'il faut retenir c'est que j'ai commencé à construire un wiki en local pour cartographier chaque recoin.
Comme tout bon labyrinthe, passer 10 fois au même endroit n'empêche pas de remarquer une chose qui nous avait échappé les 9 fois précédentes.
De fait, j'ai noté pleins de choses. Parfois des choses que tout le monde connaît (mais redécouvertes et validées), parfois des choses que personne ne soupçonne.
Et surtout, il y a des liens entre les choses, tout plein. Car toutes les informations sont interconnectées : pour bien comprendre une mécanique il faut comprendre ce qu'il y a autour et ainsi de suite.
J'ai débuté par un travail sur les opcodes (qu'on peut retrouver sous une autre forme ici) et puis ça s'est étendu progressivement.
Les opcodes modifient les STATS, qui influent sur les ACTION qui activent des TRIGGER qui peuvent s'effectuer que sous certains STATE etc. Et réciproquement.
Bref, désormais, vous pourrez retrouver ici cette accumulation d'information, que j'ai appelé codex : https://gitlab.com/RiwsPy/codex-infinity-engine/
Il y a deux versions :
- la version "src-md", lisible directement sur le repo, utile pour les moins à l'aise avec les outils informatiques mais je ne le recommande pas car vous perdez une quantité importante d'informations.
- la versoin "src-html", que vous pouvez télécharger pour la visualiser avec votre navigateur web préféré.
Vous pouvez commencer par lire les pages dans le dossier Mécanique. Il y en a peu mais certaines sont plutôt fournies, ça peut donner un ordre d'idée du contenu, de sa qualité (variable) et de son niveau d’exhaustivité (élevé).
Bien que le processus de remplissage du codex s'est fortement accéléré ces derniers temps (la magie de l'apprentissage) et que cela représente au bas mot plusieurs centaines d'heures de travail, je pense avoir exploré à peine 10% du moteur.
Évidemment, il y a des trous. Je vous invite à lire le README du projet pour comprendre comment les trous peuvent tout de même fournir des informations utiles.
Selon les réactions, j'arrangerai des trucs. Si tout le monde s'en fout, je continuerai à l'alimenter comme aujourd'hui, ce qui ne me pose absolument aucun problème.
À quoi ça sert tout ça ?
Déjà à me sentir mieux vis-à-vis de moi-même.
Ensuite, la connaissance est utile mais le mieux c'est encore de pouvoir l'utiliser pour créer de belles choses qui ravira le cœur des gens (mon côté poète).
Moi j'ai tellement le nez dans le code, que je prends même plus le temps d'utiliser ces informations, à part pour faire quelques tests (mais pas assez).
Pour vous, ça peut offrir des possibilités, faîtes en ce qui vous semble juste et bien.
Pourquoi ne pas mettre ça dans l'iesdp ?
C'est déjà compliqué de proposer 10 modifications, là il y en a des centaines. Ce n'est pas pensé pour les moddeurs, toutes ne les intéresseront pas. Certaines sont fausses, beaucoup ne sont pas testées. De nombreuses devront être discutées. C'est sans fin.
Découvrir est un travail. Partager en est un autre. Je ne suis pas en mesure d'assurer les deux en même temps.
Ce qui n'empêche pas d'aller proposer des améliorations. Directement ou indirectement, je leur ai déjà remonté de nombreux points. Mais c'est jamais assez.
Pourquoi nous poser ton sac de pus ici ?
Depuis l'intervention de bidule et les dires de JohnBob qui explique que la communauté française est sous-considérée… Ça m'a fait prendre conscience qu'il y a des choses qui peuvent être amélioré, à commencer par ma propre implication.
Je me dis qu'on pourrait faire ensemble de plus jolies choses s'il y a plus d'échanges de compétence.
Plutôt que le faire de façon partielle à travers des tutos qui intéresseraient au mieux 2 personnes, je me suis dis que ça serait plus simple de tout poser ici.
Efficacité et transparence. Ce repo contient ma bible personnelle, sans détour.
Si le besoin s'en fait sentir, je pourrais toujours aborder des points de façon plus traditionnelle par la suite.
Alors oui, ça fait une source d'informations supplémentaire. Non, c'est pas bien. Non, c'est pas validé par l'intégralité d'une communauté. Oui vous pouvez devez douter du contenu.
Je vais pas y mettre le feu pour autant.
Si vous avez des propositions bénéfiques pour les lecteurs sans me compliquer inutilement la tâche, je les écoute.
Et aux plus téméraires, je vous souhaite une bonne découverte.