# Love Timer

> Provides an interface to the user's clock. Use this skill when working with time measurement, frame rate control, performance monitoring, or any time-related operations in LÖVE games.

- Skill: `redkenrok/love-timer` (Agent Skill)
- Install (CLI): `npx skillmds@latest add redkenrok/love-timer`
- Raw SKILL.md: https://api.skillmd.com/api/skills/redkenrok/love-timer/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: MIT
- Author: RedKenrok (https://skillmd.com/u/redkenrok)
- Updated: 2026-09-10
- Page: https://skillmd.com/skills/redkenrok/love-timer

---


## When to use this skill
Provides an interface to the user's clock. Use this skill when working with time measurement, frame rate control, performance monitoring, or any time-related operations in LÖVE games.

## Common use cases
- Measuring elapsed time and performance
- Controlling game frame rate and timing
- Implementing smooth animations and transitions
- Profiling and optimizing game performance
- Handling time-based game mechanics

## Functions

- `love.timer.getAverageDelta() -> delta: number`: Returns the average delta time (seconds per frame) over the last second.
- `love.timer.getDelta() -> dt: number`: Returns the time between the last two frames.
- `love.timer.getFPS() -> fps: number`: Returns the current frames per second.
- `love.timer.getTime() -> time: number`: Returns the value of a timer with an unspecified starting time. This function should only be used to calculate differences between points in time, as the starting time of the timer is unknown.
- `love.timer.sleep(s: number)`: Pauses the current thread for the specified amount of time.
- `love.timer.step() -> dt: number`: Measures the time between two frames. Calling this changes the return value of love.timer.getDelta.

## Examples

### Measuring delta time
```lua
-- Use delta time for frame-rate independent movement
function love.update(dt)
  local moveSpeed = 200  -- pixels per second
  local distance = moveSpeed * dt
  player.x = player.x + distance
end
```

### Performance measurement
```lua
-- Measure function execution time
local startTime = love.timer.getTime()

-- Perform some operations
complexOperation()

local endTime = love.timer.getTime()
local elapsed = endTime - startTime
print("Operation took: " .. elapsed .. " seconds")
```

## Best practices
- Use delta time (dt) for all time-based calculations
- Consider using love.timer for high-precision timing
- Be mindful of performance when using frequent timing calls
- Test timing behavior on target platforms
- Use appropriate time units for different measurements

## Platform compatibility
- **Desktop (Windows, macOS, Linux)**: Full timer support
- **Mobile (iOS, Android)**: Full support
- **Web**: Full support

