1편 - PMMP 다운로드 및 실행하기

  1. PMMP 다운로드
  2. PHP 다운로드
  3. PMMP 실행 스크립트 작성
  4. PMMP 실행

주의) 컴퓨터를 어느 정도 다룰 줄 아는 독자를 대상으로 한 가이드입니다.
+ 개발 환경 구축 가이드이기 때문에, 플러그인 개발은 다루지 않습니다.
서버를 여는 게 목적인 분들은 결과물로 빠르게 사용하실 수 있습니다.
@releases/1.0

0. 시작하기 앞서...

const ENVIRONMENTAL_THINGS = [
  "플러그인을 바로 테스트하기 위한 서버 프로그램",
  "플러그인 코드를 작성하기 위한 에디터 프로그램"
];
const BIOLOGICAL_THINGS = [
  "PHP 문법과 기본적인 컴퓨터 사용 방법이 담긴 두뇌",
  "PMMP의 소스를 볼 정상적인 눈",
  "원하는 코드를 작성할 수 있는 정상적인 손가락"
];

윈도우에서 플러그인 개발 환경 구축하기 가이드 시리즈는 Windows 10 환경에서 Pocketmine-MP 플러그인을 개발하고 싶지만, 제대로 된 환경을 구축하는 데에 어려움을 겪는 개발자들을 위해 작성하게 되었습니다.

도입부에 적어 놓은 대로, 이 가이드는 컴퓨터 사용법과 프로그래밍 지식이 어느 정도 있는 독자를 대상으로 한 가이드이고, 플러그인 개발 자체는 다루지 않습니다.

개발할 때는 빠르고 쉬운 테스트가 가능한 환경이 꽤 중요합니다.
그래서 웬만해선 한 기기에서 개발과 테스트가 가능한 게  좋습니다.
스마트폰으로 개발할 때 DPMMP를 쓰시는 것처럼 말이죠.

윈도우에서 개발과 테스트를 모두 할 수 있는 환경을 구축할 수 있도록 도와드리는 것이 이 시리즈의 목표입니다.


1. PMMP 다운로드

PMMP를 실행하는 방법은 두 가지가 있습니다.

1-1. 빌드 결과물(.phar)을 사용하는 방법

빌드 결과물은 Jenkins를 통해 배포됩니다.

--

1-2. 소스 코드를 바로 사용하는 방법

소스 코드는 Github를 통해 배포됩니다.

주의) Git과 Composer, 그리고 CLI사용 방법을 알아야 가능합니다.
PMMP 자체를 수정해야 하거나 dev 버전에 포함된 기능이 필요한 게 아니라면 1번 방법을 사용하는 게 좋습니다.
이 방법은 다음에 가이드로 적어보도록 하겠습니다.

이 가이드에서는 간단하게 .phar 파일을 받아서 사용하도록 할게요.
각자 원하는 폴더에서 작업하시면 됩니다.


저는 C:\home\workspace\pmmp에 설치하도록 할게요.
이후 이 가이드에서 파일 전체 경로가 나오면 위 경로를 본인이 작업하는 경로로 바꿔서 보시면 됩니다.
약간 변태처럼 리눅스 파일 경로를 사용했지만, 신경 쓰지 마세요

 

- 1번을 마친 후의 폴더 구조
.
└── PocketMine-MP.phar

2. PHP 다운로드

PMMP를 실행하기 위해선 당연히 PHP 인터프리터도 필요합니다.


PMMP에서는 추가 익스텐션을 사용하기 때문에 PHP를 빌드하는 과정이 필요합니다.

하지만 걱정 마세요. PMMP에서는 PHP 빌드 결과도 Appveyor를 통해 제공합니다.

@pmmp/php-build-scripts는 PHP 빌드 프로젝트입니다.
참고) 7.3 버전이 아닌 7.4버전이어도 상관 없습니다.
이미 PMMP는 패치가 되어 있어서 문제 없이 사용 가능합니다.
오히려 7.4에서 추가된 좋은 문법을 사용할 기회라고 봐요.
-See https://stitcher.io/blog/new-in-php-74

php-7.x.yy-vc15-x64.zip를 pmmp를 구동할 폴더에 압축을 풀어주세요.

일단 PHP를 실행하기 위해선 vc_redist.x64.exe를 설치해야 합니다.
이미 깔려있을 수도 있지만 혹시 모르니까 한번 실행해주세요.

- 2번을 마친 후의 폴더 구조
.
├── \bin
│   └── \php
│       ├── php.exe
│       └── ... (이하 생략)
├── PocketMine-MP.phar
└── vc_redist.x64.exe
vc_redist.x64.exe파일은  설치한 후에는 지워도 됩니다.

3. PMMP 실행 스크립트 작성

사실 이건 따로 작성할 필요 없이 그냥 PMMP가 제공하는 스크립트를 그대로 사용하셔도 됩니다.
하지만 위 스크립트는 서버가 중지 되어도 다시 시작하는 기능이 없어서 매번 스크립트를 다시 실행해야 하기 때문에 굉장히 귀찮을 거에요.
따라서 아래 스크립트를 start.bat로 저장해서 사용하도록 할게요.

@echo off
TITLE Pocketmine-MP in Windows 10

set PHP_PATH=bin\php
set PHP_BINARY=%PHP_PATH%\php.exe
set POCKETMINE_FILE=PocketMine-MP.phar

:loop
    %PHP_BINARY% -c %PHP_PATH% %POCKETMINE_FILE%
    pause
goto loop

 

- 3번을 마친 후의 폴더 구조
.
├── \bin
│   └── \php
│       ├── php.exe
│       └── ... (이하 생략)
├── PocketMine-MP.phar
├── start.bat
└── vc_redist.x64.exe

4. PMMP 실행

3번에서 작성한 start.bat를 실행했을 때 아래 사진처럼 나오면 성공입니다!

모든 Set-up이 끝나면 아래의 파일 구조를 가지게 됩니다.

- 4번을 마친 후의 폴더 구조
.
├── \bin
│   └── ... (이하 생략)
├── \players
│   └── ... (이하 생략)
├── \plugin_data
│   └── ... (이하 생략)
├── \plugins
│   └── ... (이하 생략)
├── \resource_packs
│   └── ... (이하 생략)
├── \worlds
│   └── ... (이하 생략)
├── banned-ips.txt
├── banned-players.txt
├── ops.txt
├── pocketmine.yml
├── PocketMine-MP.phar
├── server.lock
├── server.log
├── server.properties
├── start.bat
├── vc_redist.x64.exe
└── white-list.txt

   

   

   

   

그럼 빠빠이...