godot-mcp: Skill for Claude Code

.claude/skills/godot-skills/sub-skills/godot-camera-system/SKILL.md

godot-camera-system is a skill for Claude Code from hhhh124hhhh/godot-mcp. It costs 37 tokens per session (4,098 once invoked), scanned A, original, MIT.

A Godot 2D camera workflow for following and framing one or more game characters. Godot is a tool for making games.

In plain words
What is it for?
It is for fighting, platform, and multiplayer games that need smooth following, camera limits, zoom changes, focus switching, or camera effects.
Why use it?
It helps solve camera problems such as characters leaving the view, jerky movement, poor framing, and different screen sizes.

Skill for Claude Code

Written for Claude Code: installed under .claude/.

This is hhhh124hhhh/godot-mcp's own configuration. It tells Claude Code how to work on godot-mcp itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything godot-mcp configures →

Reuse

Borrowing it

Nothing to install: this file belongs to hhhh124hhhh/godot-mcp. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/hhhh124hhhh/godot-mcp/main/.claude/skills/godot-skills/sub-skills/godot-camera-system/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/hhhh124hhhh/godot-mcp

Made for: Claude Code.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for godot-camera-system

README.md
[![agentmods](https://agentmods.dev/badge/skills/hhhh124hhhh/godot-mcp/godot-camera-system/github.svg)](https://agentmods.dev/skills/hhhh124hhhh/godot-mcp/godot-camera-system)
Your own site
<a href="https://agentmods.dev/skills/hhhh124hhhh/godot-mcp/godot-camera-system"><img src="https://agentmods.dev/badge/skills/hhhh124hhhh/godot-mcp/godot-camera-system/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for godot-camera-system

Your own site · 80×15
<a href="https://agentmods.dev/skills/hhhh124hhhh/godot-mcp/godot-camera-system"><img src="https://agentmods.dev/badge/skills/hhhh124hhhh/godot-mcp/godot-camera-system.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 37 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,098 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00037 $0.04098
Opus 5 $0.00018 $0.02049
Sonnet 5 $0.00007 $0.00820
Haiku 4.5 $0.00004 $0.00410

Measured 10d ago against content hash 7204aaca38ca, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

godot-camera-system scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.claude/skills/godot-skills/sub-skills/godot-camera-system/SKILL.md · 465 lines

How it starts

The opening of the file, as written. The whole thing — 465 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Godot 2D相机系统专家技能

重要提示: 本技能专门解决Godot 2D游戏中的相机配置和角色显示问题,基于 Godot 4.5 最佳实践。 特别适用于格斗游戏、平台游戏、多人游戏等需要复杂相机管理的场景。

技能概述

godot-camera-system 是专门用于Godot 2D游戏相机系统配置和优化的智能化技能,能够根据用户需求自动实现多角色相机管理、视野控制、平滑跟随、动态视角切换等完整的相机系统解决方案。

核心功能

📷 多角色相机管理

  • 智能跟随: 自动计算多个角色的最佳视野
  • 焦点切换: 动态切换相机焦点目标
  • 边界适应: 智能调整相机边界以适应所有角色
  • 群组管理: 支持角色群组的统一相机控制

🎬 平滑跟随系统

  • 插值算法: 使用lerp实现平滑的相机移动
  • 速度控制: 可配置的跟随速度和响应性
  • 预测跟随: 基于角色速度的前瞻性相机调整
  • 弹性效果: 自然的弹性跟随效果

🖼️ 视野控制

  • 缩放管理: 动态调整相机缩放以适应场景
  • 边界限制: 设置相机移动范围防止越界
  • 视口适配: 自动适配不同屏幕分辨率
  • 安全区域: 确保重要内容始终在视野内

🎯 动态视角系统

  • 状态驱动: 基于游戏状态的相机行为切换
  • 动画集成: 与角色动画系统深度集成
  • 特效支持: 震动、缩放、旋转等相机特效
  • 场景切换: 流畅的场景间相机过渡

使用方法

格斗游戏相机系统

用户: "我需要为格斗游戏配置双人相机系统"
系统: 自动实现:
- 双角色中点跟随算法
- 动态视野调整
- 攻击时的镜头特效
- 角色分离时的智能处理

平台游戏相机

用户: "为平台跳跃游戏创建跟随相机"
系统: 智能生成:
- 垂直跟随系统
- 平台边界限制
- 跳跃时的预测跟随
- 掉落检测和救援机制

多人游戏相机

用户: "为4人合作游戏配置相机系统"
系统: 全面开发:
- 4人位置的最优视野计算
- 动态缩放以包含所有玩家
- 玩家分散时的处理策略
- 领导者跟随模式

相机系统实现

🎮 格斗游戏相机管理器

# 格斗游戏专用相机系统
class_name FightingGameCameraSystem extends Node
@export var camera: Camera2D
@export var player1: Node2D
@export var player2: Node2D

# 相机参数
@export var follow_speed: float = 5.0
@export var base_zoom: float = 1.0
@export var max_distance: float = 400.0
@export var min_zoom: float = 0.8
@export var max_zoom: float = 1.5

# 动画特效参数
@export var shake_intensity: float = 5.0
@export var shake_duration: float = 0.3

func _ready():
    _setup_camera()
    _connect_player_signals()

func _setup_camera():
    if not camera:
        camera = Camera2D.new()
        add_child(camera)

    # 配置基础属性
    camera.position_smoothing_enabled = true
    camera.position_smoothing_speed = follow_speed

    # 设置边界限制
    camera.limit_left = -1024
    camera.limit_right = 1024
    camera.limit_top = -600
    camera.limit_bottom = 600

func _process(delta):
    if player1 and player2:
        _update_camera_follow(delta)

func _update_camera_follow(delta: float) -> void:
    # 计算两个角色的中点
    var center_point = (player1.global_position + player2.global_position) * 0.5
    var distance = player1.global_position.distance_to(player2.global_position)

    # 动态调整缩放
    var target_zoom = _calculate_dynamic_zoom(distance)
    camera.zoom = camera.zoom.lerp(Vector2(target_zoom, target_zoom), follow_speed * delta * 0.5)

    # 平滑跟随中点
    var target_position = center_point + Vector2(0, -100)  # 向上偏移
    camera.global_position = camera.global_position.lerp(target_position, follow_speed * delta)

func _calculate_dynamic_zoom(distance: float) -> float:
    # 根据角色距离动态调整缩放
    var normalized_distance = clamp(distance / max_distance, 0.0, 1.0)
    return lerp(min_zoom, max_zoom, normalized_distance)

# 特效系统
func play_hit_effect(hit_position: Vector2):
    # 攻击命中时的相机震动
    _start_camera_shake(shake_intensity, shake_duration)

func _start_camera_shake(intensity: float, duration: float):
    var tween = create_tween()
    var original_position = camera.offset

    # 震动效果
    for i in range(5):
        var random_offset = Vector2(
            randf_range(-intensity, intensity),
            randf_range(-intensity, intensity)
        )
        tween.tween_property(camera, "offset", random_offset, duration * 0.1)
        tween.tween_property(camera, "offset", original_position, duration * 0.1)

Read the full file on GitHub · 465 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 465 lines · 37 tokens per session scan A 7204aaca38ca

Subscribe to this mod's changes

godot-camera-system is a skill published in the GitHub repository hhhh124hhhh/godot-mcp (42 stars, last pushed 9mo ago), licensed MIT. It adds 37 tokens to every session and 4,098 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories