[Behind the Game development]게임회사 이야기- 유저가 게임을 망가트리는 방법

in #kr7 years ago (edited)

안녕하세요. [The English version starts at the end of the Korean version.]
그림 다섯장 찢어버리고 온 소요입니다.
일주일에 적어도 한점은 그림을 그려야 할텐데 보팅받을만한 퀄리티의 그림이 나오지 않아서 포스팅을 못했습니다.

그 대신이라기에는 뭣하지만 오늘은 저의 지인의 경험담을 들려드리려고 합니다.
많은 분들이 흥미를 가질만한 게임개발의 뒷이야기입니다.
제법 재미있으니 끝까지 읽어주세요.


아래 그림은 제가 그린 게 아닙니다.

It’s not my own drawing

E8479DFF-9C5E-4A6B-AD88-B4843B5F6017.jpeg
image credit by pixabay.com
픽사베이에서 다운받은 상업적 이용가능한 이미지입니다. 그림 그릴 기운이 없네요.

어느 망한 게임의 이야기

내 지인들은 지금은 추억이 된 게임들의 개발자, 운영자였다.

처음 게임이 기획될 때 코어팀은 스펙이 허락하는 무한한 자유도를 꿈꾼다.
검과 마법의 세계관을 실제로 경험할 수 있도록 물리법칙을 만들고 자유롭게 유저간의 교류가 일어나도록 인터페이스를 기획한다.
하나의 완전한 판타지 월드를 구축하는 매력적인 작업이다.

유능한 팀원들의 노력끝에 게임이 오픈되고 서버에는 유저가 가득 들어와 플레이를 한다.
저마다 새로운 멋진 신세계를 꿈꾼다.
베타 접속률이 떡상하고 다들 성과급 계산을 하며 미소짓는다.

유저들은 대부분 선량하고 게임에 대한 이해도가 높은 고객들이다.

그러다가 어느날 힘 센 성주 하나가 이상한 짓을 한다.

성문앞에 자기 부하들을 깔아놓고 해당 맵에 들어가고 싶으면 통행세를 내라고 한다.
해당맵에 진입하지 못하면 필수 퀘스트를 깰 수가 없다.

화가 난 유저들은 운영진 욕을 하기 시작한다.

운영팀의 원칙은 유저간의 플레이에 개입하지 않는다는 것이다.
운영팀 툴에는 pk기능 같은 것은 들어있지 않다.
아니 그전에 운영자 캐릭터가 필드에 등장하는 기능자체를 넣지 않는다.
운영자 캐릭터가 필드에서 영향력을 발휘하도록 해놓으면 그 부작용은 말할 수 없이 크기 때문이다.

운영자 캐릭이 필드에 돌아다니는 게임이라면 사기꾼들은 어떤 짓을 할 수 있을까?
당장 떠올릴만한것이 운영자 사칭사기가 있다.
커스터마이징을 통해 유사한 캐릭을 만들고 [문영자]라고 이름을 지어버리면...

무엇보다도 운영팀이 게임에 직접 개입하기 시작하면 운영자 캐릭이 게임세계관의 신이 되어버린다는 문제가 생긴다.
게임에는 데우스 엑스 마키나가 존재해서는 안된다.
만약 존재한다면 그건 치트고 버그다.

이제 이 악성유저를 어떻게 해야하나..
유저들의 원성은 높아져 간다.
본사까지 찾아와 항의하는 유저들이 늘어난다.
불매운동, 캐삭운동이 일어난다.

이젠 임원진들쪽에서 압박이 온다.
“개발팀에서 해결해라”

두가지 방법이 있다.

  1. 법정다툼을 각오하고 악성유저 길드장을 캐삭하기.
  2. 소스코드를 고쳐서 성문앞에서만 플레이어간의 충돌판정 없애기.

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.

  1. Remove the bully user's account, even if there is a risk of legal problems.
  2. 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.

개발팀의 사정은 회사마다 다릅니다.
본문의 예시는 특정회사가 아닌 몇몇 에피소드의 조합입니다.
본인이 겪은 것이 아니기 때문에 자세한 정보는 부정확할 수 있습니다.


See you next post!
다음 시간에 만나요.

26D03AA1-C107-4AEA-8C9A-D5BFA6FD179C.png

Sort:  

허...참 별의 별이 다 있군요..
즐거운 주말보내세요 소요님~

감사합니다. @cine님.
오랫만에 옛날 게임 생각이 나서 몇마디 해봤습니다.

수학적으로 아름답게 설계된 소스코드는 예외처리로 걸레가 된지 오래다. 이 문장이 참으로 절 슬프게 만들었습니다. 게임사에서는 그런 고충을 겪고 있다는 걸 처음 알았어요. 그래서 자유도 있던 게임이 점점 자유도를 잃어가는거군요.

요즘엔 모바일이 대세라서 첨부터 부분 유료화로 만든다네요.
악성유저는 환불해주고 쫓아낸다고 합니다.
회사도 진화해서 많이 독해졌나봅니다.

개발자가 신은 아니였군요
개발자위 악성유저
팔로 꾸욱~❤

개발자는 그냥 월급쟁이죠.
사실 최고갑은 유저입니다.

결론은 살아남는 넘이 강한 넘이죠 회사든 게임이든 뭐든요.^^
스팀잇도 살아 남겠죠~~~ 제발

스팀은 안죽어요.
smt만 성공한다면요.

Smt 성공하면 플랫폼 코인으로 올라서게 되는거죠^^ 가즈아

답은 pk다.

너도 한방! 나도 한방!
평등한 죽창의 세계로!

정말로.. 한명의 개발자로서.. 처음에 개발자들이 방법론 상상할때의 즐거움을 왠지 알것만 같습니다.
하지만... 현실과 이상의 차이를 완전히 보여주신것 같네요... 글 내용 중 해결법에 대해서 하나 궁금한 부분이 있다면.. (자유도가 그리도 높았는데) 성안에 필수퀘를 무조건 넣었어야 하는 부분이네요.
그저 그 퀘스트를 필수로 하지 않고, 성밖으로 뺀다던지 했을 순 없었는가.. 정도는 조금 궁금한 부분이긴 합니다.

아무튼.. 뭐 그럴 수 밖에 없는 경우는 종종 있으니까요.. ㅎㅎ


게임 자체에 대해서 얘기 하시려는게 아니라는 거 잘 압니다.
현실은 항상 예상했던 대로 흘러갈 수 만은 없는 부분이겠지요. 그 또한 받아들여야 하는것 또한 현실일테고요.

요즘 스팀잇은 너무 감정적으로 가는 것 같아 조금 안타까운 부분들이 많습니다.
어느정도 서로간에 인신공격정도의 이야기가 다 오간 상황이다보니, 쉽게 돌이 킬 수 없는 것 같기도 하지만, 한편으론 서로 대화를 하고 싶어 하는것 처럼 보이기도 합니다.

다시한번 대화의 장을 열어 서로간의 의견을 좁혀 보는 기회를 가지게 되면 참 좋겠다는 생각이 드는군요...


게임 관련 답변을 달다가 이런저런 생각이 들어서 줄줄 쓰다보니 이거.. 원.. 읽기 싫은 긴 댓글처럼 되어 버렸군요~ ㅎㅎ

즐거운 주말입니다..!! 소요님도 즐거운 주말 보내시길 바랍니다..!!

제가 당사자가 아니라서 확신할 수는 없지만
밖으로 빼면 아마 퀘를 주는 npc를 둘러싸서 접견권?을 팔지 않았을까요?
필수퀘를 없애는건 아마 시나리오상 불가능했을겁니다.

@happyberrysboy님도 즐거운 주말 되세요!

그냥 패키지 게임이라면 어지간한 버그가 아닌 이상 유저가 환경에 적응할텐데 말이죠. 아무튼 너무 잘 만들어도 문제가 생기는군요. 게임만의 문제가 아닌 게 인간 뭔지 참... 이 글이 스팀잇에 대해 여러 가지 생각을 들게 합니다.

저는 요즘 모바일게임만 합니다.
게임할 시간도 없고...
저 에피소드의 상당 부분이 앞 사무실에서 벌어진 일들인데 회의실이 공용이라서 별의 별꼴을 다봤습니다.

아하 ~ 게임 개발하는 분이셨군요 ㅎㅎ
재미나게 잘 읽고 갑니다 ~ 새로운 세계를 설계하고 운영한다는 것이 그만큼 어려운가 봐요

아닙니다. 제 직업은 백수입니다.
아름다운 직업이죠.

저도 오늘까지만 백수네요
참 아름다운 직업입니다 ㅋ

Loading...

위의 픽사 이미지가 블리자드의 분위기가 느껴지는 것이 하다 말았던 디아블로가 갑자기 급 땡기는 것이 ㅎㅎㅎ
(경매 시스템에 특히 환멸을 느끼고 멈추었던 기억이 ^^ ...)

소시적에 조던링 좀 모으셨겠군요.
전 2 시절에는 그렇게 재미있다고 생각안했는데 오히려 망겜 듣는 3가 재미있어서 헬까지 열심히 한 기억이 납니다.