machichdigital
RegelCursor RulesLizenz: CC0 1.0frei kopierbar

Gamemaker Gml

Cursor-Regel für GameMaker-Projekte – bringt der KI korrekte GML-Syntax und Event-Struktur bei.

⬇ Als Datei laden

× kopiert× heruntergeladenBewertung:

Cursor-Regel für GameMaker-Projekte – bringt der KI korrekte GML-Syntax und Event-Struktur bei.

Original-Beschreibung der Autoren: GameMaker Language (GML) rules for scripts, objects, events, rooms, data structures, and performance-minded game code

Die Regel

---
description: GameMaker Language (GML) rules for scripts, objects, events, rooms, data structures, and performance-minded game code
globs: ["**/*.gml", "**/*.yy", "**/*.yyp"]
alwaysApply: false
---

# GameMaker GML Rules

## Code Organization

- Keep object event code short and move reusable behavior into scripts or functions.
- Use clear prefixes or naming conventions for scripts, objects, sprites, rooms, and globals.
- Prefer functions over copy-pasted event blocks.
- Keep create-step-draw responsibilities separate.
- Put initialization in Create, simulation in Step, and rendering-only work in Draw.

## GML Style

- Use descriptive variable names and avoid one-letter names outside small loops.
- Prefer local variables with `var` or function-scoped declarations over unnecessary instance variables.
- Use constants, enums, and macros for repeated identifiers, layer names, states, and collision groups.
- Guard optional instance references with `instance_exists`.
- Keep global state minimal and document it.

## Gameplay Architecture

- Use finite state machines for player, enemy, UI, and game-flow states.
- Keep collision logic explicit and deterministic.
- Separate input collection from action execution.
- Use alarms, timelines, or explicit timers consistently; do not mix patterns without reason.
- Store save data through structured maps/structs and version the save format.

## Performance

- Avoid expensive searches such as broad `instance_find` or repeated collision scans in every Step event.
- Cache frequently used asset IDs, layer IDs, and object references when safe.
- Destroy data structures when no longer needed.
- Use object pooling for frequent projectiles, particles, or short-lived effects when allocation becomes costly.
- Profile before optimizing and keep hot-path code simple.

## Debugging and Testing

- Add debug overlays for collision boxes, state, velocity, and AI decisions when useful.
- Use assertions or explicit guard clauses for impossible states.
- Test room transitions, pause/resume, save/load, and controller/keyboard input separately.
- Keep reproducible test rooms for complex mechanics.

## Common Mistakes

- Do not put game logic in Draw events.
- Do not create data structures without destroying them.
- Do not rely on room editor instance order for critical behavior.
- Do not hardcode magic numeric state IDs.

So nutzt du sie

Die Regel kopieren (Button oben) oder als Datei herunterladen und im Projekt unter .cursor/rules/ ablegen — Cursor lädt sie beim nächsten Start automatisch. Ältere Cursor-Versionen lesen alternativ eine einzelne .cursorrules-Datei im Projektstamm; dort einfach den Regel-Text ohne den Kopfblock zwischen den ----Zeilen einfügen.

Der Regel-Text ist englisch — Cursor versteht ihn unabhängig von der Sprache, in der Sie mit dem Editor chatten.

Im Detail

Eine Cursor-Regel für GameMaker Studio und dessen Skriptsprache GML. Sie vermittelt der KI GML-spezifische Syntax und Idiome (Events, Objects, Rooms, eingebaute Funktionen), die sich von generischem JavaScript oder C-ähnlichen Sprachen unterscheiden und ohne Kontext oft falsch vervollständigt werden. Typischerweise enthalten: Namenskonventionen, Struktur von Objekt-Skripten und Vermeidung veralteter GML-Syntax aus älteren GameMaker-Versionen. Lohnt sich für Indie-Entwickler und Hobbyprogrammierer, die 2D-Spiele in GameMaker bauen und wollen, dass Cursor tatsächlich lauffähigen GML-Code statt generischer Pseudocode-Vorschläge liefert. Für Nutzer anderer Engines wie Godot oder Unity ist die Regel nicht anwendbar.

Praxis-Tipp

Regel aktivieren und bei neuen Objekt-Skripten direkt mit GameMaker-Terminologie prompten, z.B. „Erstelle ein Collision-Event für obj_player mit obj_enemy“.

Siehe auch

Lizenz & Quelle

Inhalt ansehen (gamemaker-gml.mdc)
Lade …

Erfahrungen & Kommentare.

Funktioniert der Regel bei Ihnen? Tipps, Stolperfallen, Varianten — teilen Sie es mit der Community.

Lade Kommentare …

Ihre IP-Adresse wird zum Schutz vor Missbrauch gespeichert und nach 14 Tagen automatisch entfernt (Datenschutz).

Passt dazu.