Marketplace
gameplay-mechanics
Core gameplay mechanics implementation, system interactions, feedback loops, and iterative balance refinement for engaging player experiences.
$ Instalar
git clone https://github.com/pluginagentmarketplace/custom-plugin-game-developer /tmp/custom-plugin-game-developer && cp -r /tmp/custom-plugin-game-developer/skills/gameplay-mechanics ~/.claude/skills/custom-plugin-game-developer// tip: Run this command in your terminal to install the skill
SKILL.md
name: gameplay-mechanics version: "2.0.0" description: | Core gameplay mechanics implementation, system interactions, feedback loops, and iterative balance refinement for engaging player experiences. sasmp_version: "1.3.0" bonded_agent: 01-game-designer bond_type: PRIMARY_BOND
parameters:
- name: mechanic_type type: string required: false validation: enum: [combat, movement, puzzle, progression, economy]
- name: complexity type: string required: false validation: enum: [simple, moderate, complex]
retry_policy: enabled: true max_attempts: 3 backoff: exponential
observability: log_events: [start, complete, error] metrics: [engagement_time, action_frequency, balance_score]
Gameplay Mechanics Implementation
Core Mechanics Framework
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ACTION โ EFFECT LOOP โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ INPUT PROCESS OUTPUT FEEDBACK โ
โ โโโโโโโ โโโโโโโโโโโ โโโโโโโโโโโ โโโโโโโโโโโ โ
โ โPressโโโโโโโโโValidate โโโโโโโโUpdate โโโโโโVisual โ โ
โ โButtonโ โ& Executeโ โState โ โAudio โ โ
โ โโโโโโโ โโโโโโโโโโโ โโโโโโโโโโโ โHaptic โ โ
โ โโโโโโโโโโโ โ
โ โ
โ TIMING REQUIREMENTS: โ
โ โข Input โ Response: < 100ms (feels responsive) โ
โ โข Animation start: < 50ms (feels instant) โ
โ โข Audio feedback: < 20ms (in sync with action) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Feedback Loop Design
FEEDBACK TIMING LAYERS:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ IMMEDIATE (0-100ms): โ
โ โโ Button press sound โ
โ โโ Animation start โ
โ โโ Screen shake โ
โ โโ Controller vibration โ
โ โ
โ SHORT-TERM (100ms-1s): โ
โ โโ Damage numbers appear โ
โ โโ Health bar updates โ
โ โโ Enemy reaction animation โ
โ โโ Particle effects โ
โ โ
โ LONG-TERM (1s+): โ
โ โโ XP/Score increase โ
โ โโ Level up notification โ
โ โโ Achievement unlock โ
โ โโ Story progression โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Combat Mechanics
// โ
Production-Ready: Combat State Machine
public class CombatStateMachine : MonoBehaviour
{
public enum CombatState { Idle, Attacking, Blocking, Recovering, Staggered }
[Header("Combat Parameters")]
[SerializeField] private float attackDamage = 10f;
[SerializeField] private float attackRange = 2f;
[SerializeField] private float attackCooldown = 0.5f;
[SerializeField] private float blockDamageReduction = 0.7f;
[SerializeField] private float staggerDuration = 0.3f;
private CombatState _currentState = CombatState.Idle;
private float _stateTimer;
public event Action<CombatState> OnStateChanged;
public event Action<float> OnDamageDealt;
public event Action<float> OnDamageTaken;
public bool TryAttack()
{
if (_currentState != CombatState.Idle) return false;
TransitionTo(CombatState.Attacking);
StartCoroutine(AttackSequence());
return true;
}
private IEnumerator AttackSequence()
{
// Wind-up phase
yield return new WaitForSeconds(0.1f);
// Active hit frame
var hits = Physics.OverlapSphere(transform.position + transform.forward, attackRange);
foreach (var hit in hits)
{
if (hit.TryGetComponent<IDamageable>(out var target))
{
target.TakeDamage(attackDamage);
OnDamageDealt?.Invoke(attackDamage);
}
}
// Recovery phase
yield return new WaitForSeconds(attackCooldown);
TransitionTo(CombatState.Idle);
}
public float TakeDamage(float damage)
{
float finalDamage = _currentState == CombatState.Blocking
? damage * (1f - blockDamageReduction)
: damage;
OnDamageTaken?.Invoke(finalDamage);
if (finalDamage > 5f) // Stagger threshold
{
TransitionTo(CombatState.Staggered);
StartCoroutine(RecoverFromStagger());
}
return finalDamage;
}
private void TransitionTo(CombatState newState)
{
_currentState = newState;
_stateTimer = 0f;
OnStateChanged?.Invoke(newState);
}
}
Resource Economy System
ECONOMY BALANCE FORMULA:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ INCOME vs EXPENDITURE: โ
โ โ
โ Hourly Income = (Enemies/hr ร Gold/Enemy) + PassiveIncome โ
โ Hourly Spend = (Upgrades + Consumables + Deaths) โ
โ โ
โ BALANCE RATIO: โ
โ โข < 0.8: Too scarce (frustrating) โ
โ โข 0.8-1.2: Balanced (meaningful choices) โ
โ โข > 1.2: Too abundant (no tension) โ
โ โ
โ EXAMPLE STAMINA SYSTEM: โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ Max: 100 โ Regen: 20/sec โ On Hit: +10 โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค โ
โ โ Light Attack: -10 โ Heavy Attack: -25 โ โ
โ โ Dodge: -15 โ Block: -5/hit โ โ
โ โ Sprint: -5/sec โ Jump: -8 โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Progression Systems
PROGRESSION CURVE:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Power โ
โ โ โ
โ โ โฑโโโโโ Late Game โ
โ โ โฑโโโโโฑ (slow, goals) โ
โ โ โฑโโโโโฑ โ
โ โ โฑโโโโโฑ โ
โ โ โฑโโโโโฑ Mid Game โ
โ โ โฑโโโโโฑ (steady progress) โ
โ โ โฑโโโโฑ โ
โ โโฑ Early Game (fast, hook player) โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ Time โ
โ โ
โ XP CURVE FORMULA: โ
โ XP_needed(level) = base_xp ร (level ^ growth_rate) โ
โ โข growth_rate 1.5: Gentle curve (casual) โ
โ โข growth_rate 2.0: Standard curve (balanced) โ
โ โข growth_rate 2.5: Steep curve (hardcore) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
// โ
Production-Ready: Progression Manager
public class ProgressionManager : MonoBehaviour
{
[Header("Progression Config")]
[SerializeField] private int baseXP = 100;
[SerializeField] private float growthRate = 2.0f;
[SerializeField] private int maxLevel = 50;
private int _currentLevel = 1;
private int _currentXP = 0;
public event Action<int> OnLevelUp;
public event Action<int, int> OnXPGained; // current, required
public int XPForLevel(int level)
{
return Mathf.RoundToInt(baseXP * Mathf.Pow(level, growthRate));
}
public void AddXP(int amount)
{
_currentXP += amount;
int required = XPForLevel(_currentLevel);
OnXPGained?.Invoke(_currentXP, required);
while (_currentXP >= required && _currentLevel < maxLevel)
{
_currentXP -= required;
_currentLevel++;
OnLevelUp?.Invoke(_currentLevel);
required = XPForLevel(_currentLevel);
}
}
public float GetProgressToNextLevel()
{
return (float)_currentXP / XPForLevel(_currentLevel);
}
}
Movement Mechanics
PLATFORMER FEEL PARAMETERS:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ MOVEMENT: โ
โ โข Walk Speed: 5-8 units/sec โ
โ โข Run Speed: 10-15 units/sec โ
โ โข Acceleration: 20-50 units/secยฒ โ
โ โข Deceleration: 30-60 units/secยฒ (snappier = higher) โ
โ โ
โ JUMP: โ
โ โข Jump Height: 2-4 units โ
โ โข Jump Duration: 0.3-0.5 sec โ
โ โข Gravity: 20-40 units/secยฒ โ
โ โข Fall Multiplier: 1.5-2.5x (faster fall = tighter) โ
โ โ
โ FEEL ENHANCERS: โ
โ โข Coyote Time: 0.1-0.15 sec (jump after leaving edge) โ
โ โข Jump Buffer: 0.1-0.15 sec (early jump input) โ
โ โข Variable Jump: Release = shorter jump โ
โ โข Air Control: 50-80% of ground control โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Event-Driven Architecture
EVENT SYSTEM PATTERN:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ACTION EXECUTED โ
โ โ โ
โ โผ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ EVENT DISPATCHER โ โ
โ โ DamageDealt(amount, position, type) โ โ
โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ โ
โ โ โ
โ โโโโ VFX System: Spawn damage numbers โ
โ โโโโ Audio System: Play hit sound โ
โ โโโโ UI System: Update health bar โ
โ โโโโ Camera System: Screen shake โ
โ โโโโ AI System: Alert nearby enemies โ
โ โโโโ Analytics: Log combat event โ
โ โ
โ BENEFITS: โ
โ โข Systems don't need direct references โ
โ โข Easy to add/remove observers โ
โ โข Same event triggers multiple effects โ
โ โข Easy networking (replicate events) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Balance Iteration
RAPID BALANCE WORKFLOW:
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ 1. PLAYTEST (15-30 min) โ
โ โ Watch players, note friction points โ
โ โ
โ 2. ANALYZE (5-15 min) โ
โ โ What felt wrong? Too easy/hard? โ
โ โ Check telemetry data โ
โ โ
โ 3. ADJUST (5-10 min) โ
โ โ Change ONE variable at a time โ
โ โ Document the change โ
โ โ
โ 4. TEST (5 min) โ
โ โ Verify change has intended effect โ
โ โ
โ 5. REPEAT โ
โ โ Target: 4-6 iterations per hour โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
BALANCE SPREADSHEET FORMAT:
โโโโโโโโโโโโฌโโโโโโโโโฌโโโโโโโโโโฌโโโโโโโโโโฌโโโโโโโโโโโ
โ Weapon โ Damage โ Speed โ Range โ DPS โ
โโโโโโโโโโโโผโโโโโโโโโผโโโโโโโโโโผโโโโโโโโโโผโโโโโโโโโโโค
โ Sword โ 10 โ 1.0/sec โ 2m โ 10.0 โ
โ Axe โ 20 โ 0.5/sec โ 1.5m โ 10.0 โ
โ Dagger โ 5 โ 2.0/sec โ 1m โ 10.0 โ
โ Spear โ 12 โ 0.8/sec โ 3m โ 9.6 โ
โโโโโโโโโโโโดโโโโโโโโโดโโโโโโโโโโดโโโโโโโโโโดโโโโโโโโโโโ
๐ง Troubleshooting
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ PROBLEM: Controls feel unresponsive โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ SOLUTIONS: โ
โ โ Add immediate audio/visual feedback on input โ
โ โ Reduce input-to-action delay (< 100ms) โ
โ โ Add input buffering for combo actions โ
โ โ Check for frame rate issues โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ PROBLEM: One strategy dominates all others โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ SOLUTIONS: โ
โ โ Nerf dominant option OR buff alternatives โ
โ โ Add situational counters โ
โ โ Create rock-paper-scissors relationships โ
โ โ Add resource costs to powerful options โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ PROBLEM: Players don't understand mechanic โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ SOLUTIONS: โ
โ โ Add clearer visual/audio feedback โ
โ โ Create safe tutorial space โ
โ โ Use consistent visual language โ
โ โ Add UI hints or tooltips โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ PROBLEM: Progression feels grindy โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ SOLUTIONS: โ
โ โ Reduce XP requirements โ
โ โ Add more XP sources โ
โ โ Give meaningful rewards more frequently โ
โ โ Add catch-up mechanics for late content โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
Mechanic Comparison
| Mechanic | Skill Floor | Skill Ceiling | Feedback Speed |
|---|---|---|---|
| Button Mash | Low | Low | Instant |
| Timing-Based | Medium | High | Instant |
| Resource Management | Medium | High | Delayed |
| Combo System | High | Very High | Instant |
| Strategic | Medium | Very High | Delayed |
Use this skill: When implementing core mechanics, balancing systems, or designing player feedback.
Repository

pluginagentmarketplace
Author
pluginagentmarketplace/custom-plugin-game-developer/skills/gameplay-mechanics
1
Stars
0
Forks
Updated2d ago
Added1w ago