MMO 문제 및 솔루션에 대한 속임수? [닫은]


14

대부분의 온라인 게임은이 문제로 어려움을 겪고 있으며이를 다루기 위해 일부 소프트웨어 회사 가 있지만 최근에 내가 본 대부분의 회사는 자체 시스템을 만드는 프로그램을 피하려고합니다. ...) 그러나 그러한 것을 방지하는 것은 매우 어려운 경우입니다 ...

방금 응용 프로그램을 게시하기위한 커뮤니티 위키로 또 다른 질문 주제를 만들었으며 기능이며 여기 에서이 질문의 아이디어는 해당 항목을 나열하는 것이 아니라 시도, 길에 따른 문제 및 가능한 솔루션에 대해 더 많이 아는 것입니다 , 응용 프로그램 등의 코드 조각.

그러한 행위를 막기 위해 어떤 종류의 보호를 사용합니까?

  1. 치트 방지 소프트웨어? (예를 들어, 아이온은 호환성 문제가 너무 많아 베타 단계에서 GameGuard 사용을 중단하고 사용자로부터 불만을 제기하는 등의 원인, 원인 및 가능한 문제에 대해 설명하십시오)
  2. 당신의 자신의 코드? (속도 해킹, 속도 + 마지막 위치 등 새로운 위치 확인 등 악의적 인 플레이어를 확인하기 위해 일반적으로 어떤 종류의 확인을 실행합니까?)
  3. 아니, 난 상관 없어? (개인적인 이유나 의견을 공유하고 싶습니까?)

게시하려는 문제와 관련된 흥미로운 코드가 있습니까?

내 텍스트를 영어로 바꾸어 놓아 라.


1
태그가 생성되었습니다. 이것이 많은 답변을 기대한다면 커뮤니티 위키로 만드십시오. 이를 통해 여러 사람이 지속적으로 답변을 나누는 대신 개별 답변을 편집 할 수 있습니다.
Jesse Dorsey

1
이것이 어떻게 유익 할 수 있는지에 대한 예입니다. 이것을 확인하십시오 : gamedev.stackexchange.com/questions/480/…
Jesse Dorsey

의견과 링크에 감사드립니다. 지금 확인하고 볼 것입니다. 제 관점에서 게임 개발에 대한 이런 종류의 질문은 토론하기에 매우 좋은 점이지만 MMO 게임에 대해서는 대부분 믿을 수 없습니다. 공동체는 엄마에 꽤 작고 나는 그런 질문으로 시작하는 것을 두려워하여 태그를 작성해 주셔서 감사합니다 :)
Prix

답변:


22

불행히도 사람들이 부정 행위를 저지르는 것을 막기가 어렵 기 때문에 Punkbuster와 같은 소프트웨어가 일부를 잡으려고 만들어졌습니다.

MMO의 경우 고객이 할 수있는 가장 큰 일은 클라이언트가 보내는 모든 것을 신뢰하지 않는 것 입니다. 클라이언트는 플레이어가 어디로 옮겼는지, 누구에게 피해를 입혔는지 등을 알려줄 수 없어야합니다. 대신, 컨트롤 입력을 서버에 보내서 실제적인지 확인해야합니다 ( "공격"버튼 누름) 예를 들어, 1 초에 1000 번은 유효하지 않습니다)) 서버에서 시뮬레이션을 업데이트하십시오. 그런 다음 게임의 새로운 상태의 관련 부분을 고객에게 다시 보냅니다.

사용자 입력의 유효성을 검사하는 동안 입력에서 트렌드를 찾을 수도 있습니다. 매크로를 허용하지 않으면 사용자가 지난 30 분 동안 1 초 간격으로 정확히 동일한 픽셀 좌표에서 동일한 버튼을 클릭했음을 알 수 있습니다.

클라이언트 자체는 사람들이 속일 수있는 주요 장소이므로 Punkbuster와 같은 프로그램은 Wallhacks, aimbots 등을 줄일 수 있습니다. 그 외에는 클라이언트를 신뢰하지 않고 클라이언트가 보낸 모든 것을 검증하면 부정 행위를 줄이는 데 도움이됩니다.


귀하의 기여에 감사드립니다. 더 많은 사람들이 그들의 의견을 듣고 자합니다. 실제로 이것은 반박하기 매우 어려운 문제입니다 ... 또한 사기 방지 엔진을 비활성화하기 위해 게임을 단속하는 사람들이 있습니다. GM은 지정된 사람이나 다른 사람이 당신과 같은 검증을했는지 확인합니다. 커뮤니티 위키에 대한이 질문으로 어떻게 생각하십니까? 나는 그대로 유지하거나 그것을 적합하게 만들기 위해 무언가를 변경해야합니까?
Prix

특정 답변을 찾고 있지 않으면 커뮤니티 위키 일 것입니다.
Sean James

더 완벽한 답변을 위해 Punkbuster의 작동 방식에 대한 자세한 내용은?
Chris Lloyd

좋은 대답- '모든 것을 다룰 수있는 하나의 솔루션'이 없습니다-대부분의 게임에는 여러 개의 '공격 벡터'가 있습니다. 누군가가 시스템 X 등을 속이는 경우 커뮤니티에 미치는 영향은 무엇보다 위험 평가에 관한 것입니다.
zebrabox

해킹은 불가피하다고 생각합니다. 심지어 가장 강력한 사기꾼 프로그램도 있습니다. 기술적으로 오프라인 상태이지만 온라인 상태가 아닌 경우 부정 행위는 괜찮습니다. 온라인 게임은 공정성에 더 가깝습니다. 그렇습니까?
David Dimalanta

8

벌채 반출. 서버에서 발생하는 모든 사항과 이상적으로 클라이언트에서 발생하는 모든 사항을 기록해야합니다. 클라이언트는 본질적으로 신뢰할 수 없지만 신뢰할 수없는 데이터를 기록하는 것조차 밝을 수 있습니다.

모든 것이 기록되면 치트 탐지는 데이터 분석의 문제가됩니다. 일부 치트는 명백 할 것입니다 (예 : 아바타가 허용하는 것보다 훨씬 빠르게 포인트 사이를 이동할 수있는 것과 같이 수용 가능한 범위를 벗어난 값). 일부는 탐지하기가 더 어렵지만 (월락과 같은) 가능한 한 많이 녹음하면 자동 및 수동 감지가 가능합니다. 여기에는 다양한 기사가 있지만 일반적으로 치트는 자동 감지에서 매우 쉽게 발견됩니다. 왜냐하면 인간 플레이어와 달리 예측 가능 / 반복이 가능하기 때문입니다.

절대적으로 모든 것을 기록하는 것은 불가능하기 때문에 계층화 된 기록이 유용합니다. 예를 들어, 사용자의 부정 행위에 대한 보고서 또는 부정 행위 가능성을 감지하는 간단한 기본 로깅 (통계 곡선보다 높은 점수)은보다 자세한 로깅을 위해 특정 클라이언트 / 계정 / CD 키에 플래그를 지정하기에 충분합니다. 치트가 사용된다는 의심의 여지가 없다는 것을 증명하는 데 사용하십시오.

치트를 감지 할 때하는 일은 또 다른 문제입니다. 특히 충분히 신뢰할 수있는 자동 탐지 메커니즘이있는 경우 사실 이후의 계정 차단이 좋습니다. 일찍 금지하면 치트가 감지되고 있음을 경고하고 결정적이지 않은 감지 메커니즘으로 인해 오 탐지의 위험이 있습니다. 너무 늦게 금지하면 다른 사람의 게임 경험을 망칠 위험이 있습니다. 이것은 매우 회색 영역이며 개발자가 판단을 요구합니다.


2

게임에서 모든 중요한 작업이 서버 측에서 발생한다고 가정하면 부정 행위가 거의 없거나 전혀 없어야합니다. 매크로 기능을 제한하거나 사람들이 패킷을 편집 할 수 없도록하려면 프로그램에서 주기적으로 모듈을 검색하도록하십시오. 예를 들어 WpeSpy.dll을 찾으면 WPE가 연결된 것을 알 수 있습니다. 다른 일반적인 도구에 대해서도 그렇게하십시오. 이 문제는 해결 될 수 있고 무기 경쟁과 잃어버린 원인 이지만 게임이 비교적 작은 경우 약 10 배 정도 조이는 사람들의 수를 매우 쉽게 줄일 수 있습니다. 당신을 위해 충분합니다.


기여해 주셔서 감사합니다. 치트 방지 소프트웨어를 사용했거나 이러한 종류의 문제를 해결해야합니까? 그렇다면 그것에 대해 듣는 것이 좋을 것입니다.
Prix

2
타사 사기 방지 소프트웨어를 사용하지 않았습니다. 그러나 온라인 RPG 코딩을 처음 시작했을 때 클라이언트가 요청을 대기열에 넣는 대신 '공격'을 보냈을 때 서버가 '공격'이라고 불렀습니다. 이것들은 부정 행위를 예방하는 데 가장 중요합니다. 해킹 속도를 높이고 서버에서 모든 타이밍을 수행하면 이점이 거의 없지만 타임 스탬프를 보내며 너무 많이 표류하면 하나를 사용하고 있음을 알 수 있습니다. 계정을 표시하되 즉시 걷어 차지 마십시오. 즉각적인 피드백은 소프트웨어가 감지 한 내용을 누군가가 알 수있는 좋은 방법입니다.
제임스 벨린 저

1
나는 but also send timestamps, and if you get too much drift, you'll know they are using one. Mark their account, but don't kick them immediately -- immediate feedback is a great way for someone to know what your software detects.최근에 타임 스탬프를 구현하고 표시된 사용자로부터 시스템을 경고하는 이 부분을 좋아합니다 . 현재 플레이어를 내가 현재 작업중 인 목록에 넣은 것은 일부 남용이 많으면 경고를 보냅니다. 검증을위한 온라인 GM ...
Prix
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.