자신만의 마인크래프트 서버를 열고 카페도 운영하며 유저들과 같이 즐기며 시간을 보냈었다. 이외에도 다른 서버도 탐방하며 어떠한 기능이 있는지, 어떠한 컨텐츠가 있는지 등 나름의 시장 동향도 파악하며 서버를 발전시킬 수 있는 방안을 생각하였다. 발전시킬 수 있는 주된 방법은 새로운 플러그인을 추가하거나 기존에 적용 중인 플러그인의 설정을 통해 다양한 기능을 서버에 적용시키는 것이다.
유저들이 많이 모일수록 더욱 재미있고, 서버의 인지도 또한 높아진다. 그러기 위해선 서버 홍보도 하고 차별화를 시켜야 한다. 홍보는 우마공이나 마한커 등의 마인크래프트 커뮤니티에서 하면 되지만, 차별화를 두려면 다양한 기능을 추가해야 한다. 하지만, 서버에 기능을 추가하는 것이 그리 간단한 작업이 아니었다. 그나마 할 수 있는 것이 플러그인으로 뭔가를 해보는 것이었다. 이미 만들어진 플러그인들이 저장돼있는 사이트가 있어서 많이 애용했던 기억이 난다.(https://dev.bukkit.org/bukkit-plugins) 대부분의 플러그인들이 해당 사이트에 존재했으며, 본인은 여기서 플러그인을 찾아 서버에 적용시키며 발전시켜왔었다.
뜬금없지만, 그렇게 시간을 보내다 보니 중학교를 졸업하게 되었다. 중학생을 거의 마인크래프트로 보냈다 봐도 과언이 아닐 정도였다. 그만큼 서버에 진심이었고 이를 더 발전시키고 싶다는 생각뿐이었다. 고등학교를 입학해도 나의 열정은 식지 않았으며, 방학 때마다 서버를 발전시키기도 하였고 새로 만들기도 하였다.
그렇게 서버를 발전시키기 위해 플러그인을 찾던 도중, 나를 컴퓨터공학과로 이끌게 된 플러그인을 찾게 된다.
하지만, 생각대로 설정이 잘되지 않거나 원하는 기능이 잘 안 보일 때가 대다수였다. 또는, 좋은 플러그인을 찾았으나 버전 호환이 안 맞아 서버에 적용하지 못하는 아쉬운 적도 많았다. 심지어 사용법이 복잡하고 어려워서 잘 적용시키려면 며칠간의 학습이 필요한 플러그인도 존재했다.
가장 기억에 남는 플러그인이 VariableTriggers인데, 지금 돌이켜보면 하나의 프로그래밍 언어를 배워서 설정하는 느낌이었다. 하지만 그만큼 성능은 막강하였다. 작성한 스크립트대로 작동하는 플러그인이어서 자신이 직접 원하는 기능에 대해 스크립트를 작성하면 그대로 작동하는 형식이었다. 다른 플러그인을 추가할 필요 없이 해당 플러그인 하나만 있으면, 마음만 먹으면 뭐든지 원하는 기능을 만들어낼 수 있을 정도였다.
그렇게 플러그인에 대해 공부하여 서버에 설정한 후, 스크립트를 작성하여 기능을 추가해 보니 정말 원하는 대로 작동되고 신기했다. 마치 프로그램을 만드는 개발자가 되는 듯한 느낌이었다. 심지어 해당 플러그인의 인지도가 높아지자 VariableTriggers 플러그인에 대한 하나의 새로운 커뮤니티가 형성됐고, 서로 지식과 정보를 공유하며 더욱 유용하고 폭넓게 사용할 수 있게 되었다.
서버에 적용 중인 스크립트나 사람들이 원하는 기능을 직접 스크립트로 작성하여 공유하기도 하였다. 게다가, 작성된 스크립트에 대해 서로 피드백도 주고받고, 더 효율적이고 효과적인 코드로 리펙토링을 하기도 하였다.
심지어 C언어 프로그래밍을 접해본 친구한테 도움을 요청하기도 하였다. 특정 점수에 대해 순위를 나타내는 기능을 추가하기 위해 정렬 알고리즘이 필요했었다. 그때 당시엔 반복문을 작성하는 것 자체도 큰 어려움이었고 필자에게 있어 큰 도전이었다. 하지만 결국 스크립트에서 정렬 알고리즘을 구현하진 못하였다. 지금 생각해 보면 정말 간단한 건데 말이다.
시간이 지나면서 마인크래프트 버전도 올라가고 여러 기능이 추가되었다. 서버도 마인크래프트 버전에 맞게 업데이트를 해줘야 했다. 그에 따라 플러그인도 서버 버전에 맞게 업데이트를 해줘야 했으므로, 서버를 업데이트하는 것은 비교적 큰 일이다.
그렇게 업데이트를 하는 도중,
생각지도 못한 상황에 맞닥뜨리게 된다.