본문 바로가기
■ 로블록스 개발 노트/개발일지

[로블록스]#22 - 프로젝트 세팅 & 허브 지역 기본 구현

by Popbox 2026. 1. 4.

[로블록스]#22 - 프로젝트 셋팅 & 허브 지역 기본 구현

21화에서는 허브 유니버스와 파밍형 장애물게임의 설계를 마쳤다.
이번 화부터는 로블록스 Studio를 실제로 열고,
그 설계를 프로젝트 구조로 옮기기 시작한다.

이 단계에서 중요한 건 기능이 아니라 골격이다.


 

 

1. Experience / Place 구조부터 잡기

이 프로젝트는 하나의 게임이 아니라 유니버스다.

따라서 Place 구조부터 분리한다.

Experience
 ├─ Hub_Place
 ├─ Obby_Easy
 ├─ Obby_Normal
 └─ Obby_Hard
    

난이도는 장애물게임 내부가 아니라 Place 단위로 분리한다.

Place는 콘텐츠의 단위다.

 

 

 


2. Hub Place 기본 역할 정의

Hub는 모든 플레이의 출발점이다.

  • 플레이어 스폰
  • 난이도 선택
  • 재화 / 상점
  • 다른 콘텐츠로 이동

Hub에서는 전투도, 파밍도 하지 않는다.(지금은...)

 

 

 


3. ServerScriptService 골격 만들기

이제 가장 중요한 폴더를 만든다.

ServerScriptService
 ├─ Services
 │   ├─ PlayerService
 │   ├─ DataService
 │   ├─ TeleportService
 │   └─ CurrencyService
 └─ Main.server.lua
    

이 단계에서는 코드를 거의 쓰지 않는다.

이름과 책임만 정확히 나누는 게 목표다.

 

 

 


4. 각 Service의 책임 정리

  • PlayerService : 입장 / 퇴장
  • DataService : 데이터 저장 / 로드
  • TeleportService : Place 이동
  • CurrencyService : 재화 증감

Service는 서로의 내부를 모른다.

한 Service는 한 가지 책임만 가진다.

 

 

 


5. ReplicatedStorage 공용 자원 구조

서버와 클라이언트가 함께 사용하는 자원은 ReplicatedStorage에 둔다.

ReplicatedStorage
 ├─ Remotes
 │   ├─ TeleportRequest
 │   └─ CurrencyUpdate
 ├─ Config
 │   └─ GameConfig
 └─ SharedModules
    

이 구조는 이후 모든 Place에서 공통으로 사용된다.

 

 

 


6. Hub UI 최소 골격

UI도 지금은 뼈대만 만든다.

StarterGui
 ├─ ScreenGui_Hub
 │   ├─ DifficultyButtons
 │   └─ CurrencyText
 └─ UIController (LocalScript)
    

버튼은 아직 아무 기능도 하지 않는다.

 

 

 


7. 이 단계에서 하지 않는 것

  • 장애물 배치
  • 보상 계산
  • UI 연출
  • 밸런스 조정

지금은 “구조”를 만드는 단계다.

 

 

 


8. Unity 개발자가 체감하는 차이

Unity에서는 Scene 중심으로 프로젝트를 쪼갠다.

로블록스에서는 Place + Service 중심으로 사고해야 한다.

Scene이 아니라
서비스가 게임을 지탱한다.

 

 

 


9. 다음 단계

다음 화에서는 이 골격 위에 실제 코드가 처음으로 올라간다.

Player 입장부터
데이터 로딩까지 연결한다.


반응형

댓글