로블록스 게임 개발

로블록스 tick()란?

CYANREDSKY 2025. 9. 21. 09:34

안녕하세요! 👋 오늘은 로블록스에서 오래전부터 쓰여 왔던 시간 관련 함수 tick() 에 대해 알려드리겠습니다. 🕹️✨

🌟 tick()이란?

tick() 함수는 1970년 1월 1일(UTC 기준)부터 지금까지 흐른 시간을 초 단위로 돌려주는 함수입니다.
즉, 호출하는 순간의 "절대 시간"을 숫자로 알려줘요.

예시:

print(tick()) 
-- 예: 1695123456.123 (아주 큰 숫자 출력)

👉 이 숫자는 보통 직접 쓰는 것이 아니라, 시간 차이 계산에 활용합니다.

🧩 tick() 활용 예시

1. 시간 간격 측정하기

local start = tick()
task.wait(2) -- 2초 기다리기
local finish = tick()
print("걸린 시간:", finish - start)

👉 결과: 걸린 시간: 2.000...

2. 쿨다운 시스템 만들기

local lastAttack = 0
local cooldown = 3 -- 3초 쿨다운

function attack()
    if tick() - lastAttack >= cooldown then
        print("공격!")
        lastAttack = tick()
    else
        print("아직 쿨다운 중이에요!")
    end
end

👉 일정 시간마다만 공격이 가능하도록 설정할 수 있어요. ⚔️

🎮 언제 쓰면 좋을까요?

  • 플레이어 행동 쿨다운 관리 ⏳
  • 특정 이벤트가 얼마나 걸렸는지 확인 ⏱️
  • 게임 시작 시간 기록 📖

⚠️ 주의할 점

  • tick()은 여전히 동작하지만, 현재는 os.clock()과 time() 같은 함수 사용이 권장됩니다.
    • time() → 게임 내 절대 시간 (서버 기준)
    • os.clock() → 스크립트 실행 시간

즉, 새로운 프로젝트라면 tick() 대신 time() 을 쓰는 것이 좋아요. 👍

🪄 쉬운 비유

tick()은 초 시계 ⏰ 같은 거예요.

  • “몇 시 몇 분인지” 정확히 알려주는 게 아니라
  • “1970년부터 지금까지 몇 초 지났는지” 숫자로 알려주는 거죠.

✨ 정리

  • tick() = 1970년 이후 흐른 시간(초)을 돌려주는 함수
  • 주로 시간 간격 계산, 쿨다운 시스템 등에 사용
  • 최신 프로젝트에서는 time() 사용이 권장됨

이렇게 tick()을 이해하면, 로블록스에서 시간을 다루는 기초를 더 쉽게 익힐 수 있습니다. 🌈