목차

1. 개요
2. 기본 맵
2.1. Baseplate
2.2. Flat Terrain
2.3. City
2.4. suburban
2.5. Racing
2.6. Obby
2.7. Western
2.8. Village
2.9. Pirate Island
2.10. Castle
2.11. Line Runner
2.12. Infinite Runner
2.13. Starting Place
2.14. Capture The Flag
2.15. Team/FFA Arena
2.16. Combat
2.17. Create And Destroy
2.18. Galatic Speedway
3. Tool Box
3.1. Models
3.2. Images
3.3. Audio
3.4. Lua 바이러스
4. 스크립팅
4.1. 기본적인 명령
4.2. 기본적인 상수
4.3. 기본적인 모듈
5. 플러그인
6. 개발 팁

Roblox player를 설치하면 무료로 배급되는 Roblox의 게임 제작 툴

1. 개요

로블록스 개발자 위키 페이지(영문)

Roblox를 설치하면 무료로 같이 깔려지는데, 일반 Roblox와는 달리 이 프로그램은 자기가 게임을 만들고, 그걸 자기가 플레이 해보는 것이다. 만들어진 게임을 올리면, Roblox가 서버를 만들어주고, 다른 친구들과도 플레이할 수 있다!

얼핏보면 그냥 어렵게 생각하겠지만, 하다보면 만드는 재미에 계속 빠져들게 된다.

프로그래밍에 소질이 있는 유저들은 인기가 좋은 게임들을 만들어내서 Roblox Premium을 통해 돈도 벌고 인지도도 높이는 좋은 기회가 될 수 있다.

유튜브에 이것을 다루는 방법에 대해 영상을 올리는 한국인들이 소수로 존재한다. 다만 스크립팅을 포함한 모든 것이 영어로 이루어져있기에 진입장벽이 높다.

2. 기본 맵

로블록스 스튜디오를 처음 실행하면 가장 먼저 보일 기본적으로 제공되는 맵이다.
초보자들은 이 맵으로 학습을 해가는것이 좋다.
이 맵들의 공통점이 스튜디오를 좀 하다보면 Baseplate를 빼고는 많이 안 쓰게 된다는 것이다.

2.1. Baseplate

넓은 회색 블럭인 바닥빼고 아무것도 없는 맵이다.
초보부터 고수까지 각종 테스트에 이 맵을 많이 쓴다.

2.2. Flat Terrain

땅이 Terrain의 잔디 블럭으로 덮여있는 Baseplate의 다른 버전이다. 이 땅은 Terrain 전용 도구로만 편집할 수 있다.

2.3. City

Baseplate에 높은 빌딩 2채와 낮은 빌딩 1채, 도로가 추가된 맵이다.

2.4. suburban

간단한 마을인데, 플레이 해보면 문여는게 디테일해지거나, 각종 행동이 추가되었다.

2.5. Racing

화산, 사막 지대를 거치는 레이스 길과, 출발/도착지, 체크포인트, 지프 4대가 있는 맵. 간단한 레이스가 가능하다. 스릴은 기대하지 말것.

2.6. Obby

기본적인 점프맵이 만들어져 있고 추가적으로 점프맵을 확장할 수 있다.

2.7. Western

서부시대 테마의 맵이다. 경찰서,은행,기차,마차 등이 있다.

2.8. Village

작은 집이 몇 채 있는 간단한 마을이다.

2.9. Pirate Island

해적 섬. 해적선과 화산, 작은 집들이 있다.

2.10. Castle

성과 강이 있는 맵.

2.11. Line Runner

횡스크롤 형식으로 장애물을 피하며 달리는것.
중간중간 코인, 점프대가 있으며 부숴지는 나무판도 있다.

2.12. Infinite Runner

3인칭으로 장애물을 피하며 달리는 게임.템플런과 상당히 유사하게 만들어져 있다.

2.13. Starting Place

집 몇채와 상자[1], 산이 있는 맵. 유저가 새로 가입하면 자동으로 만들어지는 맵이며, 장소가 검열되어 바뀌는 맵이기도 하다. 각종 스튜디오를 처음 하는 사람들을 위한 설명이 있다.

2.14. Capture The Flag

깃발탈취전이다. 깃발을 뺏어 자신의 팀에 갖다놓으면 된다.

2.15. Team/FFA Arena

팀을 나눠 싸우거나 개인전을 즐길수 있도록 스크립팅이 되어있는 맵이다.

2.16. Combat

맵 중앙에 검, 권총 등이 있다.

2.17. Create And Destroy

Godzilla 이벤트로 인해 생긴 맵이다.
미니게임 종류인데 건물을 많이 부수면 이긴다.
마우스 왼쪽 클릭으로 부수기 가능하다.

2.18. Galatic Speedway

Roblox Creator Challenge 이벤트 때 생긴 맵이다. 맵에는 각종 우주선이 배치되어 있으며 레이스를 할 수 있다. 우주선을 조종할 때 다른 물체에 닿으면 우주선이 터진다.

3. Tool Box

건축에 필요하거나 활동에 필요한 것을 얻을수 있는 곳.
검색을 하여 필요한 것을 꺼내다 쓸 수 있는데, 다른 유저가 만든거나, ROBLOX가 만든[2] 것도 있다.그리고 인증된 모델들은 벳지 표시가 있다.한동안 이 기능이 중지된 적도 있었다.
Models, Images[3], Meshes, Audio로 나뉜다.
자주 봇팅되어 이상한 모델이 있으니 주의하자.

3.1. Models

건물이나 물건(Tool)을 통틀어 말하는 것.
Roblox나 Roblox studio에서 가장 큰 비중을 차지한다.
이게 없으면 게임 제작이 거의 불가능하다왜냐하면 대다수 이용자들은 모델을 이 앱에 깔려 있는 마켓플레이스에서 구입하고 사용하기 때문.[4]

3.2. Images

한마디로 이미지 파일이다. 자신이 직접 업로드할 수 있다.
글씨가 작게 적힌 파일을 업로드하면 검열에 걸릴 확률이 높다! 크게 적혀있으면 잘 통과한다.

3.3. Audio

Decals 와 비슷한 소리 파일이다.
업로드를 하려면 사운드의 길이에 따라 다음의 로벅스를 지불해야 한다.

0-10초 : 20 로벅스
10-1분 30초 : 35 로벅스
1분 30초-2분 : 75 로벅스
2분-7분 : 350 로벅스

3.4. Lua 바이러스

빛이 있으면 어둠도 있듯이 로블록스에도 당연히 나쁜 생각을 하는 사람들이 많다.
이 바이러스는 컴퓨터에 영향을 끼치지 않는, Lua 바이러스라고 하는 바이러스다.
백도어의 경우에도 컴퓨터에 영향을 끼치지 않지만, 게임을 발행하고 사람이 좀 많아지면 백도어를 유포한 사람한테 기록이 가고[5] 그 사람이 일정 조건을 만족한 (부)계정[6]으로 가면 게임안에 특정 GUI가 나오고 그 사람은 그걸로 각종 나쁜 짓을 할수 있게 된다.

루아 바이러스는 다음과 같은 경로로 감염된다.

  • 툴박스에서 악성 모델을 불러온다.
  • 정상 플러그인을 사칭한 악성 플러그인을 설치한다.
  • 팀크레이트나 다른 개발자가 있는 그룹 게임에서 다른 사람이 이를 감염시킬 수 있다.

대표적으로 루아 바이러스는 다음과 같은 모델에 자주 있다.

  • 툴박스에서 노란색 뱃지가 달리지 않은 상단의 모델.
  • 이름이 한 단어 도배로(예시: GIFT GIFT GIFT GIFT GIFT) 이루어진 모델.
  • 대부분의 Anti-Exploit이라고 핵 방지 스크립트라 주장하는 모델.
  • 툴박스에서 같은 모델과 같은 이름이 여러개 있는 모델들.
  • 모자 지우는 발판에는 zacksisk 루아 바이러스가 자주 있다.
  • 예전에는 없었는데 갑자기 툴박스 상단으로 나온 모델들.

다음과 같은 행동은 루아 바이러스에 절대 감염되지 않는다.

  • 툴박스에서 노란색 인증 뱃지가 붙은 모델을 불러온다.
  • 이미지나 오디오, 메쉬를 불러온다.
  • 툴박스를 건드리지 않고 혼자서 게임을 직접 만든다.
  • 툴박스에서 불러온 모델을 꼼꼼히 검사 후 게임에 넣는다.

루아 바이러스는 다음과 같은걸 할수 있다.

  • GUI를 이용한 각종 팝업 메세지를 띄운다.
  • 무한 루프를 이용한 서버/클라이언트의 엄청난 렉을 유발한다.
  • 불이나 파트등 물체를 소환한다.
  • 데이터스토어[7][8]를 변형한다.
  • 스크립트나 물체의 이름을 바꾸거나 지워 게임을 망가뜨린다.
  • 루아 바이러스나 백도어를 만든 사람에게 각종 도구와 기능, 좋은 예시로 어드민을 제공한다.
  • 화면이나 GUI를 계속 빤짝거리게 하여 발작을 유발한다.
  • 게임내에서 일반적으로 불가능한 Star glitcher같은 스크립트를 사용한다.[눈갱주의]
  • 그 모델을 사지 않으면 계속 구매창이 나와 게임을 불편하게 한다.
  • 갑자기 위에서 메테오가 떨어지거나 갑자기 UFO가 나와 사람을 다른 공포겜으로 텔레포트 시킨다거나 한다는 등 기상천외한 짓들이 가능하다.
  • 더 나아가, 자기의 게임을 로블록스 이용약관에 걸리게 하여 게임 또는 계정을 정지시킬 수 있다!

루아 바이러스를 찾는 방법은 대표적으로 다음과 같다.

  • 파트 내부를 뒤져보거나 "RotateP","RotateV","Fire","Weld"로 익스플로러에 검색한다. 그리고 그 안에 수상한 스크립트가 있으면, 대다수가 렉 유발 바이러스다 Fire의 경우에는 의도한 불이면 바이러스가 아니지만 아니라면 바이러스성 불이니 지우자.
  • Ctrl+Shift+F로 전체 스크립트를 검색해 getsenv, require, loadsting를 검색하자 require의 경우에는 A-chassis나 Kohl 어드민 같은 많은 정상 스크립트가 이용해서 무턱대고 지우지 말고 require(123456789)같은 숫자만 붙어있는 것을 찾자. 만약 의도하지 않은 스크립트라면 대부분이 백도어다. getsenv나 loadsting은 대다수가 백도어다. 과감히 지우자.
  • 너무 많거나 귀찮다면 플러그인에 Ro-Defender를 설치하여 렉 유발 바이러스를 없애주면 된다.
  • 게임 또는 계정을 정지시키는 스크립트의 경우 채팅 검열 무시 스크립트Guest-Taking-script가 대표적이다. 만약 채팅을 치는데 두 개의 말풍선이 뜨고 하나는 왼쪽에 파란색이나 노란색, 빨간색이 붙어있다면, 게임을 닫고 빨리 원인을 찾아 제거하자. 안 그러면 로블록스가 처벌한다!
  • 구매 유도 바이러스의 경우에는 PromptPurchase를 전체검색으로 찾아보자. 첫 줄에 local wat=이 있으면 이게 구매 유도 바이러스다!

4. 스크립팅

로블록스 Scripting 페이지(영문) 스크립트를 이용하여 각종 시스템이나 효과를 만들수 있다
Roblox Studio의 스크립트 기능은 Lua 5.1을 사용하고 있다. '프로그래밍 루아'라는 이름의 서적이 한국어로 번역되어 있으니 Lua 스크립팅에 공부하고 싶다면 관련 서적을 읽어보는것도 좋다.

4.1. 기본적인 명령

많이 쓰이는 명령 목록은 이렇다.

  • wait(숫자) = (숫자)초만큼 기다린다.
  • print(문자열) = 문자열을 Console에 출력한다[10]
  • end = 조건문이나 반복문, 함수를 끝낸다.
  • while 조건 do = 조건이 계속 충족되는 한 계속 실행한다. [11]
- 이때 while true do를 하면 게임이 시작되는 순간부터 끝날 때까지 계속 실행한다.
- while 조건 do를 치고 엔터를 누르면 아래에 Tab키를 눌렀을 때만큼의 띄어쓰기가 되어 있고 끝에 End가 자동으로 붙는다.
  • for i = val1, val2, val3 do = 조금 복잡하다. 간단히 요약하면, i가 처음 시작하는 수가 val1이고, 한번 반복하면 i가 val3씩 늘어난다. for 반복문은 i가 val2보다 큰지 계속 검사하여, 만약 i가 val2보다 크면 반복문을 빠져나간다. [12]
  • if 조건 then = 만약 조건이 충족되면 안에 있는걸 실행한다.
- (숫자) = (숫자) 로 조건을 쓰면 오류 난다.[13] 같은지 비교할 땐 (숫자) == (숫자) 를 쓰도록 하자.
  • repeat wait(숫자) until 조건 = 조건일 때 까지 계속 반복한다.
- 이것도 조건에서 (숫자) == (숫자)와 같이 써여된다.

4.2. 기본적인 상수

많이 쓰이는 상수 목록은 이렇다.

  • true = 참
  • false = 거짓
  • nil = 아무것도 없는 값 [14]
숫자도 상수이긴 한데 모르는사람은 없을것이니 숫자나 문자열은 여기에 없다

4.3. 기본적인 모듈

이것은 함수를 담고있는 기본적인 모듈들이다.

  • Vector3 = 좌표에 대한 모듈이다.
  • Color3 = 색에 대한 모듈이다.
  • BrickColor = 이것 역시 색에 대한 모듈이지만 로블록스에서 기본적으로 지원하는 색만 쓸수 있다.
  • Enum = 거의 대부분의 상수를 저장한 모듈이다.[15]
  • CFrame = 이것 역시도 Vector3처럼 좌표에 대한 모듈이지만, 이건 돌아간 정도도 포함한다. Vector3는 블럭이 겹쳐지면 위로 올라가지만, CFrame은 겹쳐진다.
  • IntValue = 정수에 대한 모듈이다.
  • BoolValue = 참 혹은 거짓의 값이 있는 모듈이다.
  • NumberValue = 수 전체에 대한 모듈이다.
  • UDim2 = 좌표에 대한 모듈인데 이건 라벨과 비슷한 것에 쓰인다.

5. 플러그인

로블록스 스튜디오를 개발해주는 데 도움을 주는 각종 플러그인이 있다.
Brick Cutter나 Animation Editor Classic등 각종 편리한 도구가 있다.
이 역시 악성 유저들이 각종 루아 백도어를 설치하는 악성 플러그인을 봇팅을 통해 상단으로 올려놓고 설치를 유도하는 경우가 있다! 플러그인을 설치할 때도 조심해야 한다.

6. 개발 팁

이것은 로블록스 스튜디오로 게임을 개발할 때 도움이 되는 정보들이다.

  • 여러개의 파트를 Union으로 합치던 안 합치던 성능의 차이는 별로 없다고 이전에 서술되어 있었는데, 사실 성능의 차이보다는 관리가 더 쉬워진다는 장점 때문에 많이 쓰이는 기능이다. 참고로 합쳐진 오브젝트는 오브젝트 한 개로 취급된다.
  • 로블록스 파트보다는 블렌더같은 프로그램을 쓰자.
  • 툴박스에서, 되도록이면 Anti-Exploit이라고 주장하는 모델은 절대로 사용하지 말자. 기능이 많다던, 오픈소스라고 주장하던[16]쓰지 말자.
  • 총을 사용하고 싶다면 FE 및 Lua U를 지원하는 총 킷을 쓰자. 대표적으로 Fe gun kit, Warbound 신버전, ACS 등이 있다. 문제는 대부분의 총 킷은 해커들이 버튼 하나로 모두를 죽이는 일명 킬 올이 가능하다는 것. 정 불안하면 직접 키트를 만드는 것도 좋다. 대부분의 메이저 FPS 게임들은 직접 제작한 키트를 사용한다.
  • Loadlibrary는 더 이상 사용되지 않으며 삭제되었다. 이를 쓰는 개발자는 Loadlibrary 대체방법(영문)을 참고해서 대체하면 된다.

[1] 아이템이 들어있다. 맵 곳곳에 숨겨져있다.[2] 이 같은 경우에는 기초적인 물건이다[3] Decals가 Images로 바뀌었다.[4] 다만 일부 사람들은 본인이 전부 만드는 경우도 있다(!)[5] 디스코드 등[6] 누구랑 친구를 추가했거나, 일정 명령어를 입력했거나, 그룹에 가입했거나 등[7] 게임 내의 플레이어 정보를 저장하는 곳. 인게임 돈이 대표적이다.[8] 단 대부분의 게임이 서버에 정보를 저장하기 때문에 눈에 보이는 값만 바꾸는 것은 소용이 없다.[눈갱주의] 파일:myeye.gif파일:myeye.gif[10] 사실 디버깅할때 말고는 별로 쓸모가 없다.[11] 하지만 이것만 사용하면 대부분 과부하가 되니 제일 끝에 wait(0)을 넣어주자.[12] 이것 역시도 제일 끝에 wait()를 넣어주자. 아니면 과부하가 걸린다.[13] 등호 하나는 앞의 값에 뒤의 값을 덮어쓰겠다는 뜻이다.[14] 이걸 이용해 if Part ~= nil then 같이 예외처리를 할수 있다.[15] true, false, nil 제외[16] 사실 모든 툴박스 모델은 오픈소스다. 일부 스크립트는 읽기 어렵게 난독화가 되어있다.



위키 내 모든 일반 문서는 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다. (단, 라이선스가 명시된 일부 문서 및 삽화 제외)
기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권을 갖습니다.

바다위키에서 오픈소스로 배포하지 않은 직접 개발한 UI, 디자인 및 기능에는 저작권이 존재합니다.
오픈소스로 배포하지 않은 저작물을 무단으로 사용하는 것은 저작권 위반이며 적발 시 법적 대응 등의 조치를 취할 수 있습니다.
최근 변경
                   
최근 토론