By kyu-n
28 Claude Code skills that correct blind spots in Claude's knowledge of libGDX 1.14.x, gdx-ai, gdx-controllers, box2dlights, and Universal Tween Engine
Use when writing libGDX Java/Kotlin code involving 2D rendering — SpriteBatch, ShapeRenderer, Texture, TextureRegion, TextureAtlas, Camera, Viewport, draw ordering, blending, or screen clearing. Use when debugging rendering artifacts, missing sprites, stretched graphics, or begin/end errors.
Use when writing libGDX Java/Kotlin code targeting Android — AndroidApplication launcher, AndroidApplicationConfiguration, AndroidManifest.xml setup, Android lifecycle mapping to libGDX, OpenGL context loss on pause, file access (internal/local/external with permissions), Android input (back button, accelerometer, on-screen keyboard), screen density, safe insets/notch, or GL thread posting. Use when debugging black textures after resume, Activity recreation on rotation, or missing file permissions.
Use when writing a libGDX ApplicationListener or ApplicationAdapter, structuring a game's main class, or debugging lifecycle issues like missing disposal, initialization crashes, or incorrect pause/resume behavior. Use when asking where to put initialization code, how to get delta time, or which types need dispose().
Use when writing libGDX Java/Kotlin code involving AssetManager — loading assets (Texture, TextureAtlas, Sound, Music, BitmapFont, Skin, Model, TiledMap, ParticleEffect, ShaderProgram, I18NBundle), async loading screens, reference counting, screen transitions, custom loaders, or FreeType font loading via AssetManager. Use when debugging assets not loading, double-dispose crashes, missing textures after Android resume, or loading screen patterns.
Use when writing libGDX Java/Kotlin code involving audio (Sound, Music, Gdx.audio). Use when debugging audio not playing, audio format issues, or platform-specific audio behavior in libGDX.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
28 Claude Code skills that correct documented blind spots in Claude's knowledge of libGDX and related game development libraries. Each skill is a concise reference document targeting specific API traps, surprising behaviors, and poorly documented features that the base model gets wrong.
Designed for libGDX 1.14.1 (HEAD). Validated against Claude Sonnet 4.5 with a 59-test automated harness — 100% pass rate with skills, zero regressions.
Version notice: These skills are verified against libGDX 1.14.1 (current HEAD) and Claude model versions Opus 4.6, Sonnet 4.5, and Haiku 4.5. Future libGDX releases may change APIs, defaults, or behavior that these skills document. Future model versions may fix (or introduce) blind spots that shift which skills provide value. If you're using a different libGDX version or a newer Claude model, verify claims against source before relying on them.
# Add the marketplace (one-time)
/plugin marketplace add kyu-n/gdx-claude-skills
# Install the plugin
/plugin install gdx-claude-skills
Copy the skills you need into your project's .claude/skills/ directory or your user-level ~/.claude/skills/ directory:
# All skills
cp -r skills/* ~/.claude/skills/
# Or specific skills
cp -r skills/libgdx-box2d ~/.claude/skills/
cp -r skills/libgdx-2d-rendering ~/.claude/skills/
Claude Code automatically loads matching skills based on their description field when relevant to the conversation.
Claude's training data covers libGDX, but the model consistently gets specific details wrong — deprecated methods presented as current, constructor signatures with wrong argument order, invented APIs that don't exist, and subtle behavioral details (like coneDegrees being a half-angle, not full arc). These aren't gaps in general understanding; they're precise factual errors that produce code that compiles but behaves incorrectly.
For example:
| Category | What Claude says | What's actually true |
|---|---|---|
| Deprecated API | config.renderInterval = 1/20f | renderInterval removed in 1.9.14; use config.updatesPerSecond = 20 (int) |
| Deprecated backend | Recommends gdx-backend-robovm for iOS | Apple deprecated OpenGL ES; use gdx-backend-robovm-metalangle |
| Wrong threading | downloadComplete() runs on background thread | Already on GL thread (internal postRunnable) |
| Wrong lifecycle | pause() fires on Alt+Tab (LWJGL3) | Only fires on minimize; use Lwjgl3WindowListener.focusLost() |
| Wrong defaults | preferredFramesPerSecond defaults to 60 (iOS) | Defaults to 0 (= max supported by screen) |
| Invented API | Color.CORNFLOWER_BLUE | No such constant in libGDX; use Color.SKY or raw floats |
| Invented API | window.getContentTable() | getContentTable() is on Dialog, not Window — Window extends Table directly |
| Missing method | InputProcessor has 8 methods | Has 9 — touchCancelled is consistently omitted |
| Subtle bounds | MathUtils.random() treats int and float the same | random(int,int) inclusive upper; random(float,float) exclusive upper |
| Wrong class | MessageDispatcher.getInstance() (gdx-ai) | MessageManager.getInstance() — MessageDispatcher has no getInstance() |
See SUMMARY.md for methodology and full results.
| Skill | Covers |
|---|---|
libgdx-application-lifecycle | ApplicationListener/Adapter, create vs constructor, render = update + draw, delta time, pause/resume platform differences, Disposable types |
libgdx-audio-lifecycle | Sound vs Music, pan (mono only), Android 1MB limit, OGG unsupported on iOS, OnCompletionListener + looping incompatibility, Music auto-pause |
libgdx-input-handling | Polling vs event-driven, InputProcessor/InputAdapter, InputMultiplexer, coordinate unprojection, GestureDetector, scrolled() direction, Android back/menu keys |
libgdx-file-io-preferences | FileHandle/FileType, platform-specific paths, local vs internal vs external, Preferences API |
npx claudepluginhub kyu-n/gdx-claude-skills --plugin gdx-claude-skillsComprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.
Develop, test, build, and deploy Godot 4.x games with Claude Code. Includes GdUnit4 testing, web/desktop exports, CI/CD pipelines, and deployment to Vercel/GitHub Pages/itch.io.
Claude Code skills for Godot 4.x game development - GDScript patterns, interactive MCP workflows, scene design, and shaders
Unity Development Toolkit - Expert agents for scripting/refactoring/optimization, script templates, and Agent Skills for Unity C# development
Design fluency for frontend development. 1 skill with 23 commands (/impeccable polish, /impeccable audit, /impeccable critique, etc.) and curated anti-pattern detection.
Behavioral guidelines to reduce common LLM coding mistakes, derived from Andrej Karpathy's observations on LLM coding pitfalls