로블록스 게임은 스크립트 활용으로 다양한 기능을 더욱 역동적으로 구현할 수 있습니다. 루아 언어를 사용하며 다른 프로그래밍 언어보다 상대적으로 간단한 문법을 가지고 있어 누구나 배울 수 있습니다. 종류 및 주석에 대하여 알아보겠습니다.
스크립트 추가 및 출력 창
로블록스에서 사용하는 루아 언어는 로블록스뿐만 아니라 앵그리버드, 마인크래프트, WOW 등 여러 게임 개발에서도 사용하는 언어입니다. 루아 언어로 작성하는 스크립트는 게임 전체적으로 필요한 여러 기능을 추가하는 역할을 위해 사용합니다.
로블록스 스튜디오에서 스크립트를 작성하기 위해서는 먼저 추가하여야 합니다. 추가는 ‘탐색기’ 창의 ‘Workspace’ 항목에 마우스 커서를 위치하면 나타나는 (+) 아이콘을 선택하면 검색창이 나옵니다.

여기에 ‘Script’를 입력하거나, 직접 찾아서 추가할 수 있습니다. 스크립트를 작성하고 출력 결과를 확인하려면 ‘메뉴 바’-‘보기 탭’-‘출력’ 버튼을 선택하면 뷰포트 아래쪽에 ‘출력’ 창이 생성된 것을 볼 수 있습니다.

스크립트 종류
총 세 가지 종류의 스크립트가 존재합니다.

- Script: 서버 스크립트라고 부르기도 합니다. 서버에서 실행되는 스크립트입니다.
- LocalScript: 클라이언트에서 실행되는 스크립트입니다.
- ModuleScript: 여러 곳에 사용될 목적을 가진 스크립트로 직접 실행되지 않고 스크립트나 로컬 스크립트 안에서 사용됩니다.
각 스크립트의 기능과 구현 범위, 탐색기에서의 위치에 따라 사용해야 하는 스크립트의 종류가 다릅니다. 목적에 맞는 스크립트를 잘 선택하여 사용하는 것이 중요합니다.
서버 스크립트
게임 구동을 위한 기본적인 스크립트입니다. 게임 전체 규칙이나 모든 플레이어에게 적용해야 하는 기능을 작성하기 때문에 Workspace 또는 ServerScriptService 부모 객체에 생성하여 사용합니다.

이곳에 작성한 내용은 모든 플레이어에게 동시에 적용되기 때문에 게임 시작 시 전체 플레이어에게 같은 스크립트가 실행됩니다.
로컬 스크립트
여러 명이 함께하는 게임에서 플레이어마다 개별적으로 적용되어야 하는 기능을 작성합니다. 플레이어의 특징에 따른 GUI나 아이템 등의 속성을 설정하는 기능을 작성합니다.
로컬 스크립트는 ‘탐색기’ 창의 StarterGui 또는 StarterPlayer 항목에 스크립트를 생성하여 사용합니다. 로컬 스크립트는 서버 스크립트에 영향을 주지 않기 때문에 두 스크립트의 상호작용을 위해서는 서버로 신호를 전달해야 합니다.
모듈 스크립트
게임 내에서 같은 기능을 하는 코드 작성이 필요하면 모듈 스크립트를 이용하여 작성하면 여러 스크립트에서 사용할 수 있습니다. ServerStorage 내부에 생성한 모듈 스크립트는 게임이 실행될 때 실행될 때 실행되지 않기 때문에 일반적으로 이곳에 저장합니다.
하지만, 서버와 클라이언트 모두 사용할 수 있는 기능을 담고 싶다면 ReplicatedStorage 내부에 배치해도 좋습니다.
주석
로블록스 게임은 여러 사람이 공동으로 제작 작업을 하는 경우가 많습니다. 코드에 대한 설명이나 스크립트 작성자, 주의 사항 등의 설명을 기록하는 것이 필요합니다.
‘주석’은 코드에 영향을 주지 않지만, 공동 작업자가 확인할 수 있는 설명을 적을 수 있습니다. 루아 언어에서 주석 작성 방법은 두 가지가 있습니다.
1. – – 주석
한 줄짜리 주석을 작성할 때 코드 앞에 붙여서 사용합니다. 대체로 코드 시작 부분에 코드의 역할이나 기능을 짤막하게 요약해 작성하는 경우가 많습니다.
2. – – [[시작 주석 끝]] – –
주석을 여러 줄로 작성할 때 시작과 끝 부분에 붙여서 사용합니다. 코드의 전반적인 설명이나 놓치지 말아야 할 주의 사항을 작성할 때 사용합니다. 실제로 주석을 스크립트에 작성하여 출력 버튼을 누르면 아무것도 출력되지 않는 것을 확인할 수 있습니다.
