안녕하세요. [The English version starts at the end of the Korean version.]
그림 다섯장 찢어버리고 온 소요입니다.
일주일에 적어도 한점은 그림을 그려야 할텐데 보팅받을만한 퀄리티의 그림이 나오지 않아서 포스팅을 못했습니다.
그 대신이라기에는 뭣하지만 오늘은 저의 지인의 경험담을 들려드리려고 합니다.
많은 분들이 흥미를 가질만한 게임개발의 뒷이야기입니다.
제법 재미있으니 끝까지 읽어주세요.
아래 그림은 제가 그린 게 아닙니다.
It’s not my own drawing
![]() |
|---|
| image credit by pixabay.com |
| 픽사베이에서 다운받은 상업적 이용가능한 이미지입니다. 그림 그릴 기운이 없네요. |
어느 망한 게임의 이야기
내 지인들은 지금은 추억이 된 게임들의 개발자, 운영자였다.
처음 게임이 기획될 때 코어팀은 스펙이 허락하는 무한한 자유도를 꿈꾼다.
검과 마법의 세계관을 실제로 경험할 수 있도록 물리법칙을 만들고 자유롭게 유저간의 교류가 일어나도록 인터페이스를 기획한다.
하나의 완전한 판타지 월드를 구축하는 매력적인 작업이다.
유능한 팀원들의 노력끝에 게임이 오픈되고 서버에는 유저가 가득 들어와 플레이를 한다.
저마다 새로운 멋진 신세계를 꿈꾼다.
베타 접속률이 떡상하고 다들 성과급 계산을 하며 미소짓는다.
유저들은 대부분 선량하고 게임에 대한 이해도가 높은 고객들이다.
그러다가 어느날 힘 센 성주 하나가 이상한 짓을 한다.
성문앞에 자기 부하들을 깔아놓고 해당 맵에 들어가고 싶으면 통행세를 내라고 한다.
해당맵에 진입하지 못하면 필수 퀘스트를 깰 수가 없다.
화가 난 유저들은 운영진 욕을 하기 시작한다.
운영팀의 원칙은 유저간의 플레이에 개입하지 않는다는 것이다.
운영팀 툴에는 pk기능 같은 것은 들어있지 않다.
아니 그전에 운영자 캐릭터가 필드에 등장하는 기능자체를 넣지 않는다.
운영자 캐릭터가 필드에서 영향력을 발휘하도록 해놓으면 그 부작용은 말할 수 없이 크기 때문이다.
운영자 캐릭이 필드에 돌아다니는 게임이라면 사기꾼들은 어떤 짓을 할 수 있을까?
당장 떠올릴만한것이 운영자 사칭사기가 있다.
커스터마이징을 통해 유사한 캐릭을 만들고 [문영자]라고 이름을 지어버리면...
무엇보다도 운영팀이 게임에 직접 개입하기 시작하면 운영자 캐릭이 게임세계관의 신이 되어버린다는 문제가 생긴다.
게임에는 데우스 엑스 마키나가 존재해서는 안된다.
만약 존재한다면 그건 치트고 버그다.
이제 이 악성유저를 어떻게 해야하나..
유저들의 원성은 높아져 간다.
본사까지 찾아와 항의하는 유저들이 늘어난다.
불매운동, 캐삭운동이 일어난다.
이젠 임원진들쪽에서 압박이 온다.
“개발팀에서 해결해라”
두가지 방법이 있다.
- 법정다툼을 각오하고 악성유저 길드장을 캐삭하기.
- 소스코드를 고쳐서 성문앞에서만 플레이어간의 충돌판정 없애기.
1번은 위에서 싫어한다.
핵을 쓴게 아니기 때문에 이용약관을 확장해석해야한다.
2번으로 가는 수밖에 없겠다.
플레이어의 마우스 클릭 이벤트를 읽어온다.
이동에 해당하는 판정이 발생했을 때 캐릭터의 평면좌표를 프레임마다 읽어들인다.
클릭한 좌표가 성문인 경우 직선좌표상에서 일정 범위 이내에 진입하면 캐릭터의 충돌판정을 없앤다.
더럽게 복잡하네.
좀 더 간단하게 해보자.
성문을 더 크게 만들어서 시야범위안에서는 어디서든 클릭할 수 있게 만든다.
성문을 클릭하면 캐릭터의 충돌판정을 없애고 강제로 달려가서 투명인간처럼 성문을 들이받는다.
성문을 들이받으면 캐릭터의 평면좌표가 성안으로 바뀐다.
아 맞다. 맵을 심리스방식으로 만들었다. 연출이 안되니 이 방법은 못쓰네.
그러게 유저가 몰리는 지역은 분리하자고 했었는데..
결국 복잡한 방법을 선택할 수 밖에 없다.
소스코드에 긴 예외처리가 추가된다.
참 더러운 IF문.
설계할 때는 만약을 없애는 방향으로 단순화했는데 많이 아쉽다.
재밌게 놀라고 만들었는데 왜 저런 짓을 하는 걸까.
“내가 현질한게 얼만데”
로비에서 괴성 지르던 악성유저가 떠오른다.
돈 때문이구나.
유저간 거래기능을 없애야 하나.
미스클릭으로 아이템 깨먹고 물어달라고 오는 놈, 아이템 거래 사기치다 걸려서 영정 먹은 놈 다 몰려온다.
로비가 참 시끄럽고 운영팀이 수동으로 대응해야 한다.
어느덧 운영팀만 20명을 넘어섰다.
이 회사 잘나가네 인건비는 어디서 나오려나.
날이면 날마다 창의적인 악성유저들이 등장한다.
그 때마다 전쟁이 벌어지고 소스코드의 예외처리도 길어져 간다.
수학적으로 아름답게 설계된 소스코드는 예외처리로 걸레가 된지 오래다.
이제 업데이트를 하려면 그 동안 예외처리한 수많은 이벤트들을 모두 테스트해봐야 한다.
더 많은 인건비를 투입해야 하고 회사의 수익성은 악화된다.
기술이사는 퇴사한지 오래다.
계획했던 업데이트가 늦어진다.
“ㅈ망겜 할게 없네 컨텐츠가 없네.”
“운영진 때문에 망했네”
미안하다. 그럴 생각이 아니었는데.
뭘 잘못했을까?
자유도를 준것이 잘못이었을까?
처음부터 이것저것 막아놨어야하나.
그것만으로는 설명이 안된다.
게임과 유저간의 인터랙션이 항상 유저가 환경에 적응하는 형태로 나타나지는 않는다.
때로는 환경이 사람에게 적응한다.
그 결과가 서버종료라는 환경재앙이라면
그 책임은 운영팀만의 것인가? 아니면 유저전체가 같이 짊어져야 하는 것인가.
My old friends were game developers or operators.
This story was based on my friends' experience in developing games.
When planning a game, the core team dreams of the unlimited freedom that the spec allows.
They design various interactions between users and create physics laws to actually experience the sword and magic world.
It is an attractive task to build one complete fantasy.
The game is launched with the efforts of competent team members, and the server is filled with player characters.
Each user dreams of a wonderful new world.
Beta connection rate is good and everyone smiles in incentive calculation.
Most of the players are good customers and have a good understanding of the game.
Then one day a strong guild master player does something strange.
He puts his men in front of the gates and asks for a toll if you wants to enter the map.
If you do not enter the door, you can not proceed with the required quests.
Angry users start to blame the company.
The principle of the operations team is that they do not intervene in the play between users.
Operations team tools do not have anything like the pk function.
Because the ops team tool does not have an option for the operator character to appear in the field.
If the operator character is allowed to exert influence on the field, the side effect is undeniably large.
What can a scammer do if an operator character appears in the field?
As a simple example, there may be occasions where a fake operator character scams.
What happens if scammers create a character similar to an operator character through customization and create an account called [0perator]?
First of all, when the operation team starts to intervene directly in the game, the operator becomes a god in the game.
The game should not have Deux X Makina.
If it's there, it's a cheat or a bug.
Now, what should I do with this scammer?
The e-mail list is full of complainants' voices.
The company parking lot is full of users with pickets.
There is a risk of boycotting.
Now the pressure comes from the executive.
"The engineer team should do something"
There are two ways.
- Remove the bully user's account, even if there is a risk of legal problems.
- Do not apply physics between characters only in front of the gate.
Executives will not agree with the first option.
You have no choice.
Let's approach the problem through the second option to change the source code of the physics.
“How to solve the problem of bully boy blocking the gates.”
Read the mouse click event of the player.
If player click on the gates, add an exception to the source code.
When the character comes close to the gate, it turns off its physics.
It is a dirty and complicated approach.
An exception has been added to the source code.
True dirty IF statement.
When the game was designed, it was simplified to eliminate it.
The engineer got angry.
The game is made for the quest, but why bulling?
"I paid a lot of money to buy items from the market outside the game"
A bad customer yells at the lobby.
It is the real money trade player.
Money always makes the problem.
So, should we eliminate the inter-player trading function?
This is just one example.
Every day bad players find a new cheat.
Every time there is a war, the exception handling of the source code becomes longer.
Poor source code.
At first it was mathematically beautifully designed.
It has been shattered by a number of exception handling.
Now, engineers have to test all of the many events that have handled exceptions in the meantime.
More labor costs have to be invested and the company's economic profitability deteriorates.
The technical director left the company a long time ago.
Planned updates are delayed.
"I can not play damn games. There is no content. "
"It's ruined by the management team."
When did it go wrong?
Was it wrong to give the player freedom?
Or should I have blocked it from the beginning.
That alone can not be explained.
The interaction between the game and the player is not necessarily the case when the player adapts to the environment in the game.
Sometimes the environment adapts to people.
If the end is an environmental disaster called end of game service, is responsibility only for the operation team? Or does the whole player have to carry along?
이상 소요의 지인이 겪었던 일이었습니다.
I hope you have found lessons in this story than just how to operate a game company.
개발팀의 사정은 회사마다 다릅니다.
본문의 예시는 특정회사가 아닌 몇몇 에피소드의 조합입니다.
본인이 겪은 것이 아니기 때문에 자세한 정보는 부정확할 수 있습니다.

