← 메인 Entry Online BETA

GETTING STARTED

시작하기

엔트리 온라인을 쓰면 내 엔트리 작품에 실시간 멀티플레이를 붙일 수 있어요. 플레이어들이 같은 방에 모여 변수와 리스트를 실시간으로 주고받으니까, 서로의 캐릭터가 한 화면에서 같이 움직이는 게임도 만들 수 있죠. 이 글은 확장 프로그램을 설치하는 일부터 첫 2인용 작품을 완성하기까지를 차례대로 따라 하도록 정리했어요.

엔트리에도 실시간 리스트 기능이 원래 있긴 한데, 자주 망가져요. 그래서 그 대신 확장 프로그램으로 값을 더 안정적으로 맞춰 줍니다. 첫 번째 사람과 두 번째 사람을 짝지어 방을 만드는 매칭까지 확장 프로그램이 알아서 해 주니, 만드는 사람은 게임 내용에만 집중하면 돼요.

엔트리 온라인으로 실시간 게임 만들기 영상 썸네일

처음이라면 여기서 시작하세요

영상으로 보기

설치부터 첫 멀티플레이 테스트까지 영상 한 편으로 볼 수 있어요. 아래 글도 영상과 같은 순서로 이어집니다.

▶ 영상으로 먼저 보기

핵심 개념

엔트리 온라인은 정해진 이름의 함수와 변수·리스트로 움직입니다. 작품에 아래 이름을 그대로 만들어 두면 확장 프로그램이 알아서 값을 채우거나 호출을 받아요. 그리고 이름이 $로 시작하는 변수·리스트는 같은 방에 있는 플레이어끼리 저절로 공유됩니다.

종류이름하는 일
함수$입장("아이디")등록할 때 받은 사이트 아이디(엔트리 아이디가 아님)로 방에 입장합니다.
함수$나가기지금 방에서 나갑니다. (인자 없음)
함수$바로시작정원이 다 차지 않아도 지금 인원으로 방을 즉시 잠그고 시작합니다. (인자 없음)
변수$확장프로그램확장 프로그램이 설치돼 있으면 0이 아닌 값이 됩니다. (설치 확인용)
변수$유저번호매칭 중에는 0, 방이 잠기면 내 슬롯 번호(1, 2, …)가 됩니다.
변수$방인원수지금 방에 실제로 연결된 인원 수입니다.
리스트$유저연결상태방 인원 수만큼 칸이 있고, 각 칸이 '연결' 또는 '끊김'입니다.
규칙$로 시작하는
변수·리스트
같은 방 플레이어끼리 값이 자동으로 공유·동기화됩니다.
1

확장 프로그램 설치

먼저 크롬 웹스토어에서 '엔트리 온라인' 확장 프로그램을 설치해요. 이 확장 프로그램은 작품 페이지에서만 움직이고, 만들기 화면에서는 움직이지 않습니다. 괜히 문제가 생기는 걸 막으려고 그렇게 해 둔 거예요. 그러니 테스트는 늘 작품 페이지에서 합니다.

크롬 웹스토어에서 엔트리 온라인 확장 프로그램을 Chrome에 추가하는 화면
크롬 웹스토어에서 'Chrome에 추가'를 눌러 설치합니다.
설치 후 확장 프로그램 목록에 Entry Online이 보이는 모습
설치하면 확장 프로그램 목록에 'Entry Online'이 보여요.
2

작품 등록

online.205.kr에 가입한 다음 작품을 등록해요. 엔트리에서 작품을 한 번 저장하면 주소창에 작품 ID가 생기는데, 이 ID를 복사해서 등록 페이지에 붙여넣고 한 방에 들어갈 인원을 2명에서 8명 사이로 정합니다. 확장 프로그램 아이콘을 눌러 뜨는 팝업에서 '작품 등록'을 누르면 등록 페이지가 바로 열려요. 여기서 한 가지 조심할 게 있어요. 엔트리 온라인 계정은 엔트리 계정과 따로 노는 거라, 가입할 때 엔트리에서 쓰던 아이디나 비밀번호는 절대 쓰면 안 됩니다. 등록을 마치면 화면에 사이트 아이디가 뜨는데, 이 값을 곧 $입장에 그대로 넣을 거니까 잘 기억해 두세요.

엔트리에서 작품을 저장한 뒤 주소창에 표시된 작품 ID 위치
작품을 저장하면 주소창에 작품 ID가 생깁니다. 이 값을 복사하세요.
엔트리 온라인 확장 프로그램 팝업에서 작품 등록을 여는 모습
확장 프로그램 팝업의 '작품 등록'으로 등록 페이지를 열고, 작품 ID를 붙여넣은 뒤 한 방 인원(2~8명)을 고릅니다.
3

입장 코드

이제 작품 코드를 짭니다. 순서는 늘 똑같아요. 먼저 확장 프로그램이 깔려 있는지 확인합니다. $확장프로그램 값을 가져와서 0이 아닐 때까지 기다리면 돼요. 0이면 아직 설치 전이라는 뜻이니, 작품 설명란의 확장 프로그램을 설치해 달라고 안내합니다. 설치가 확인되면 $입장에 사이트 아이디를 넣어 호출해요. 그러면 매칭이 시작되면서 방을 찾습니다. 방을 찾는 동안 $유저번호는 0이에요. 정원이 차서 방이 잠기면 도착한 순서대로 1번, 2번 번호가 붙으니, $유저번호가 0이 아닐 때까지 기다렸다가 게임 장면을 시작합니다.

$확장프로그램 값이 0이 아닐 때까지 기다리고, 아니면 설치 안내를 띄우는 엔트리 코드
$확장프로그램이 0이 아닐 때까지 기다리기 (미설치 시 설치 안내).
$입장 함수에 사이트 아이디를 넣어 호출하고 매칭 중을 표시하는 엔트리 코드
$입장("사이트 아이디") 호출 + '매칭 중' 표시.
$유저번호가 0이 아닐 때까지 기다린 뒤 게임 장면을 시작하는 엔트리 코드
$유저번호가 0이 아닐 때까지 기다린 뒤 게임 장면 시작.
4

위치 동기화

같은 방에 있는 두 사람이 서로의 움직임을 보려면, 공유되는 $ 리스트에 자기 위치를 적어야 해요. 예를 들어 $목록 리스트를 두 칸 만들고, 오른쪽·왼쪽 화살표 신호로 내 위치 값을 옮긴 다음, $유저번호에 맞는 칸(1번이면 첫째, 2번이면 둘째)에 그 값을 적습니다. 거꾸로 상대를 그릴 때는 먼저 상대 번호를 정해요. 내가 1번이면 상대는 2번, 내가 2번이면 상대는 1번이죠. 그런 다음 $목록상대 번호번째 칸을 읽어 상대 캐릭터를 그 위치로 옮기고, 이 동작을 장면이 시작된 뒤로 계속 반복하면 상대가 실시간으로 따라 움직입니다. 번호에 따라 캐릭터 모양을 다르게 정해 두면 누가 누구인지 덜 헷갈려요.

화살표로 내 위치를 옮기고 $유저번호에 따라 공유 리스트의 내 칸에 x좌표를 적는 엔트리 코드
④ 오른쪽·왼쪽 신호로 위치를 옮기고, $유저번호에 맞는 $목록 칸을 갱신.
장면에서 계속 반복하며 상대 번호의 칸을 읽어 상대 오브젝트를 그 위치로 옮기는 엔트리 코드
⑤ 장면 시작 후 계속 반복 — 상대 번호를 정하고 $목록의 그 칸을 읽어 상대를 이동.
5

연결 끊김 처리

상대가 도중에 나갔는데 화면에 캐릭터가 그대로 남아 있으면 곤란하겠죠. $유저연결상태는 확장 프로그램이 채워 주는 리스트인데, 방 인원만큼 칸이 있고 각 칸은 '연결' 아니면 '끊김'입니다. 4단계에서 만든 반복문 안에서 상대 번호의 칸을 확인해, '끊김'이면 상대 캐릭터 모양을 숨기고 '연결'이면 다시 보이게 합니다. 새 게임을 다시 시작하면 새 방에서 매칭되니까 이전 상대와 섞이지 않아요. 참고로 작품을 정지하면 자동으로 방에서 나가지만, 직접 내보내고 싶을 때는 $나가기를 호출하면 됩니다.

장면 반복문 안에서 유저연결상태의 상대 칸이 끊김이면 모양을 숨기고 연결이면 보이는 엔트리 코드
⑦ 4단계 반복문에 연결 확인 추가 — $유저연결상태상대 번호 칸이 '끊김'이면 숨기고 '연결'이면 보이기.
나가기 신호를 받았을 때 나가기 함수를 호출하는 엔트리 코드
⑧ (선택) '나가기' 신호에서 $나가기 호출.
6

로컬 테스트

작품을 등록하고 마이페이지에서 열어서 두 탭으로 테스트하는 건 꽤 번거롭습니다. 그래서 '엔트리 온라인 개발 도구'라는 또 다른 확장 프로그램이 있어요. 이건 공개 배포가 아니라 링크로만 설치하니 영상 설명란을 참고하세요. 코드 보기 화면에서 '로컬 테스트 열기'를 누르고 인원을 우리 게임과 똑같이 맞추면, 서버를 거치지 않고 브라우저 안에서 곧바로 여러 명이 접속한 상황이 만들어집니다. 이때 $입장에 넣은 아이디 인자는 무시되니, 작품을 등록하지 않아도 동기화되는 값을 바로 눈으로 확인할 수 있어서 테스트가 한결 빨라요.

엔트리 온라인 개발 도구에서 로컬 테스트 열기로 인원을 맞추는 화면
'엔트리 온라인 개발 도구'의 '로컬 테스트 열기' — 인원을 게임과 같게 맞춥니다.
두 화면이 매칭되어 캐릭터가 함께 움직이는 플레이 장면
두 화면이 매칭되어 캐릭터가 함께 움직이는 모습.

보너스 · $바로시작

정원이 다 차야만 시작되는 게 답답할 때가 있죠. $바로시작을 호출하면 정원이 안 찼어도 그 순간의 인원으로 방을 바로 잠그고 시작합니다. 예를 들어 8인방에서 4명일 때 부르면 그 4명에게 번호가 붙고 게임이 시작돼요. $유저연결상태에는 칸이 8개 그대로 있고 5번부터 8번까지는 '끊김'으로 채워지니까, 빈자리에 손을 대도 오류가 나지 않습니다. 이미 잠긴 방에서 호출하면 아무 일도 일어나지 않아요.

여기까지 따라 왔다면 첫 멀티플레이 작품이 완성된 거예요. 이제 직접 작품을 등록해서 친구와 함께 플레이해 보세요.

작품 등록하러 가기 →