Modifier les fichiers GML
Il lit les scripts et applique les modifications avec edit_file, puis affiche un diff des lignes changées avant validation.
Si vous apprenez avec un tutoriel GML, cette page montre ce que PixelTread y ajoute. L'agent lit vos scripts, les modifie via un diff que vous pouvez examiner, lance votre commande de build et consulte le manuel officiel GameMaker, le tout dans votre projet. Les leçons expliquent les concepts. PixelTread applique une idée à la fois à vos fichiers réels, affiche chaque modification sous forme de carte et attend votre décision en mode Ask first, pour que vous appreniez sans coller aveuglément.
Il lit les scripts et applique les modifications avec edit_file, puis affiche un diff des lignes changées avant validation.
Shell exécute votre commande de build ou de test si vous en avez une, et la carte affiche le code de sortie réel.
web_search et http_get récupèrent le manuel officiel, afin que les noms de fonctions utilisés proviennent de la source.
Chaque appel d'outil apparaît dans le chat sous forme de carte avec son résultat réel. Ouvrez une carte pour voir la sortie complète de la commande ou le diff du fichier. C'est là que vous décidez : lisez les lignes modifiées, acceptez ou rejetez-les, puis build et testez dans l'éditeur GameMaker.
project folderlistéargument_count2 correspondancesscr_message.gmlluscr_message.gml+9 lignesbuildexit 0Vous voulez faire en sorte que des objets collent à d'autres objets, comme un chapeau qui suit un personnage. Dites à l'agent quels sont les deux objets et où le chapeau doit se placer. Il utilise grep pour trouver où ils sont tous les deux créés et read_file pour ouvrir leurs scripts. Puis edit_file stocke l'instance cible dans une variable et définit x et y à partir de la cible plus un décalage dans le code step. Une carte affiche chaque modification. Modification mineure. En mode Ask first, vous lisez le diff, l'acceptez et lancez la room pour voir si le chapeau reste sur la tête lorsque le personnage bouge. S'il y a un retard d'une frame, demandez un second passage. Conservez l'ancienne version dans votre dossier jusqu'à ce que vous soyez sûr.
Un script avec des arguments illimités nécessite argument_count et le tableau argument, que GML fournit. Un tutoriel GML typique montre l'idée une fois, mais votre propre script de message a ses propres appelants. Demandez à l'agent de lire le script et chaque appel avec grep, puis de réécrire la fonction pour qu'elle boucle sur les arguments qu'elle reçoit. La carte edit_file montre le diff, et Shell lance votre commande de build pour que vous voyiez le code de sortie réel. Chaque appelant reste visible. Examinez le diff, vérifiez que chaque ancien appel passe encore ses valeurs dans le même ordre, et lancez le jeu une fois avant d'accepter la modification.
Les débutants demandent souvent comment faire des cinématiques, et une réponse est une petite machine à états dans un objet contrôleur : une variable d'état, une minuterie et un script pour chaque étape. Commencez en mode Plan only, où l'agent écrit une liste d'étapes et n'exécute rien. Lisez-la, modifiez l'ordre si vous le souhaitez, puis passez en Ask first pour que l'agent crée le script avec write_file et modifie le contrôleur avec edit_file. Vous décidez à chaque carte. Enfin, build, lancez la scène à partir de la première frame et comparez ce que vous voyez avec le plan que vous avez approuvé.
Une cause courante de mouvements saccadés est la présence de valeurs non entières qui sont dessinées à des positions fractionnaires. Demandez à l'agent de trouver le code de dessin avec grep pour draw_sprite et de lire le script de mouvement avec read_file. Puis edit_file arrondit la position avant qu'elle ne soit dessinée et affiche le diff. Shell lance votre commande de build et indique son code de sortie réel. Facile à lire. En mode Ask first, vous acceptez la modification ligne par ligne, lancez le jeu, marchez d'avant en arrière pendant quelques secondes et observez si le sprite scintille encore. Si c'est le cas, la carte suivante peut examiner le code de la caméra. Dans les deux cas, la carte conserve une trace des modifications apportées.
PixelTread n'est pas un plugin de l'éditeur GameMaker, et il ne s'exécute jamais à l'intérieur du jeu ou du moteur. Il travaille sur les fichiers de votre projet. Il est destiné uniquement à vos propres jeux, à votre propre art, son et code, ou aux actifs pour lesquels vous avez une licence. Garder le travail dans ces limites est votre responsabilité, car l'agent ne contrôle pas le périmètre. Personne ne peut promettre que le code est correct, donc vous examinez chaque diff, build le projet et testez-le vous-même.