Ce projet a été complètement annulé et ne recevra aucune nouvelle mise à jour car je ne fais plus vraiment partie de la communauté HOI4 et la base de code s'est transformée en désordre, ce qui rend impossible d'améliorer les choses sans réécrire le tout (merci C++) . Le langage est fonctionnel mais extrêmement lent, un gros buggy, et ne devrait pas être vraiment utilisé sérieusement. J'ai l'intention de créer éventuellement un langage avec sa syntaxe similaire à HPL, mais il ne sera pas axé sur HOI4 et le backend sera complètement différent.
La solution moderne de développement pour le modding HOI4.
Le langage de programmation HOI4 (HPL) est un langage de programmation interpréteur spécifique à un domaine conçu pour le développement sensé de modding HOI4. Son objectif principal est d'améliorer considérablement l'expérience de modding HOI4 actuelle en retravaillant la syntaxe de HOI4 pour qu'elle soit beaucoup plus conviviale et en fournissant de nouvelles fonctionnalités pour un développement plus efficace et plus rapide, tout en donnant à l'utilisateur une grande marge de personnalisation.
L’une des choses dont souffre la scène du modding HOI4 est la faible offre de codeurs HOI4 maîtrisant le langage Clausewitz. La raison en est que même s'il est simple à apprendre, il est vraiment fastidieux à utiliser et à déboguer pour les parties simples et complexes du modding. Ce qui n'aide pas non plus, c'est qu'il lui manque un certain nombre de fonctionnalités simples du langage de programmation qui amélioreraient considérablement l'expérience des développeurs.
Les gens ont essayé d'améliorer l'expérience des développeurs en créant des outils CLI et GUI pour tout faire pour les développeurs, mais le plus souvent, ces projets échouent pour une multitude de raisons, sont trop limitatifs ou ne valent rien. Cependant, créer un langage approprié pour le modding HOI4 est l'une des meilleures solutions à ce problème, car un langage comme HPL peut offrir de nombreuses options aux développeurs sur la façon dont ils souhaitent résoudre leurs problèmes liés au modding HOI4 tout en étant constamment mis à jour. Vous pouvez utiliser HPL pour créer un ensemble de scripts petits mais efficaces, ou même créer des environnements de développement complets.
HPL ne se concentrera pas seulement sur la compatibilité totale avec le modding HOI4, mais également sur l'optimisation du modding HOI4 lui-même. Au lieu d'avoir besoin de dizaines de lignes de code pour un événement simple (ou même plus), HPL sera en mesure de fournir le même résultat mais avec beaucoup moins de lignes de codes, améliorant ainsi considérablement l'expérience de développement. HPL réduit même le nombre de caractères et de mots que vous devez écrire par ligne.
général - Affiche les fonctionnalités générales de programmation de HPL et ce que vous pouvez en faire.
country - Crée une nation.
event - Un exemple de création d'événements HOI4 simples.
Un aperçu rapide de la plupart des fonctionnalités de HPL :
string
, int
, float
, bool
, scope
) et type générique auto
..dds
, à redimensionner des images, à créer/supprimer des fichiers et des dossiers, etc.if
les déclarations.f-string
de Python.+
pour combiner des chaînes.++
, --
, +=
, -=
, =
, /=
, %=
).descriptor.mod
. Remarque : Actuellement, la principale plate-forme ciblée pour HPL est Windows 10 et versions ultérieures. Pour cette raison, les versions Unix de HPL (en particulier les versions Linux) peuvent contenir des bugs ou être instables. De plus, seuls les binaires x86
pour Windows, MacOS et Linux seront fournis et pris en charge.
git clone https://github.com/EimaMei/HPL/tree/canary.git
cd HPL
make
Pour l'instant, seul Windows dispose d'un installateur.
Pour installer HPL sous Windows, tout ce que vous avez à faire est d'exécuter une fois le script installer.ps1
dans PowerShell et il configurera tout pour vous.
Pour rendre le développement avec HPL beaucoup plus coloré, amusant et moderne, le programmeur Allyedge a créé une extension VSC pour la programmation en HPL. Pour l'instant, il ne dispose que d'un surligneur de syntaxe et de quelques fonctionnalités de base de prise en charge du langage, mais à l'avenir, il aura beaucoup plus de fonctionnalités pour rendre le développement encore plus facile (pensez-y comme à l'extension C/C++ VSC).
Pour le télécharger, vous pouvez simplement rechercher « HPL » sur le marché et télécharger le premier résultat, ou accéder à ce lien.
SOIL2 (version forked) - pour la fonction principale convertToDds
(HPL utilise une version modifiée de SOIL2 pour supprimer les exigences OpenGL inutiles).
Allyedge - pour créer l'extension HPL VSC. (ce mec est en fait grinçant des dents)