# 基于玩家角色轨迹的游戏外挂检测

## 课题背景

游戏工作室通过脚本自动化的完成任务，大量的获取游戏内产出的货币并低价转售给其他玩家来获取利益，但这一行为严重的损害了游戏的经济系统，并一定程度的会影响其他正常玩家的游戏体验。鼠标轨迹和角色移动轨迹是游戏中易于收集的数据，且正常玩家（如图1）和脚本（如图2）在这些数据上的表现会有一定的差异，是一个可行的用于辨别外挂的监测点。

![图1：正常玩家的鼠标轨迹](https://noterminus.gitee.io/image_bed/images/tu-pian%20%283%29.png)

![图2：异常“玩家”的鼠标轨迹](https://noterminus.gitee.io/image_bed/images/tu-pian%20%284%29.png)

## 问题定义

根据角色的鼠标轨迹和角色移动轨迹，识别出异于常人的脚本账号。

## 问题挑战

* 数据采集间隔不均匀；
* 战斗引起的角色移动轨迹散乱；
* 标记中存在大量噪音，标记可靠性，标记准确性。

## 评价指标

准确度优先的F-score，即：

$$
F\_\beta = \frac{(\beta^2+1)PR}{\beta^2 P+R},\beta<1
$$

其中， $$P$$ 和 $$R$$ 分别表示精度和召回率。

## 数据集描述

数据包含鼠标轨迹数据（mouseMoveValue）和角色移动轨迹数据（playerLocation）两个文件夹，每个文件夹下包含4张地图的数据（map0, map1, map2, map3），数据范围为2019.10.16-2019.10.22，文件为带header的csv，文件名格式为：

> '%s.%s.%s' % (角色id, 进入地图时间戳, 离开地图时间戳)

文件格式如图7：

![图7：轨迹数据文件格式](https://noterminus.gitee.io/image_bed/images/tu-pian%20%281%29.png)

|                | tm    | x      | y      |
| -------------- | ----- | ------ | ------ |
| mouseMoveValue | 毫秒时间戳 | 屏幕坐标x  | 屏幕坐标y  |
| playerLocation | 毫秒时间戳 | 地图内坐标x | 地图内坐标y |

{% hint style="info" %}
标记数据（label.csv）包括3种不同来源的封禁渠道的封禁次数，其中label0是永封，label1和label2是临时封禁，封禁数据范围为开服-2019.10.29。
{% endhint %}

## 联系我们

有任何问题，请联系 <qijiaheng@corp.netease.com>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://fuxi-up-research.gitbook.io/open-project/research_topics/trace_based_bot_dectection.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
