Agent skill · Code Review & Quality

love2d-core

Structure and debug a LÖVE (Love2D) game in Lua: the love.load/update/draw loop, delta-time movement, input, and screen states. Use when building a LÖVE 11.x game (main.lua, conf.lua, .love).

gamedev-skillsgithub.com/gamedev-skillsGitHub ↗
claude-codeclinecodexcursorcopilotwindsurfApache-2.0
Install
npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill love2d-core --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 2
SKILL.md size: 6 KB
Bundled scripts: none
Requires: LÖVE 11.5 (Lua 5.1 / LuaJIT)
Path: skills/other-engines/love2d-core/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 406
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# LÖVE (Love2D) Core Set up and debug the foundation of a LÖVE game in Lua: the callback loop, frame-rate- independent movement, input, and screen states. Targets **LÖVE 11.5**. ## When to use - Use when starting a LÖVE game, wiring up `main.lua`/`conf.lua`, or fixing the core loop, movement that runs at the wrong speed, input handling, or screen switching. - Use when the workspace has `main.lua` calling `love.*`, a `conf.lua`, or a `.love` file. **When *not* to use:** Lua *language* questions unrelated to LÖVE; physics bodies/joints (LÖVE uses Box2D via `love.physics` — a separate concern); shader code (`love.graphics` GLSL is its own topic). For cross-engine save/load patterns, use `save-systems`. ## Core workflow 1. **Confirm the entry points.** A LÖVE game runs `main.lua`; it should define `love.load()` (one-time setup), `love.update(dt)` (state), and `love.draw()` (rendering). Window/version setup goes in `conf.lua` (run *before* modules load). 2. **Pin the version.** Set `t.version = "11.5"` in `conf.lua` so LÖVE warns on mismatch. 3. **Drive all motion by `dt`** (delta time, in seconds) so speed is frame-rate independent. 4. **Handle input** two ways: polled (`love.keyboard.

What's inside
Steps it walks through
  1. When to use
  2. Core workflow
  3. Patterns
  4. 1. main.lua skeleton (the callback loop + input)
  5. 2. Frame-rate independence (the single most common bug)
  6. 3. conf.lua (window + version; runs before main.lua)
  7. 4. Color is 0–1 in LÖVE 11.x (not 0–255)
  8. 5. Screen states (brief — full manager in references)
  9. Pitfalls
  10. References
  11. Related skills
Ships with 1 file
  • references/state-stack.md
More from awesome-gamedev-agent-skills
All skills →
About this skill
What does the love2d-core skill do?

Structure and debug a LÖVE (Love2D) game in Lua: the love.load/update/draw loop, delta-time movement, input, and screen states. Use when building a LÖVE 11.x game (main.lua, conf.lua, .love).

How do I install it?

Run `npx skills add gamedev-skills/awesome-gamedev-agent-skills --skill love2d-core --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From gamedev-skills/awesome-gamedev-agent-skills, a repository with 406 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going