游戏如何应对虚拟定位问题

在游戏系统设计中,排行榜这一设计可谓是十分巧妙。它可以充分调动玩家的“胜负欲”,给予玩家前进的目标及动力,满足玩家的心理需求。

排行榜的设计使用范围广,对游戏留存、付费等指标提升效果出众,在不少游戏中都可以找到其身影。并且随游戏玩法不同,有众多分支,如:通关积分排行榜、使用率排行榜、异步排行榜及当下应用最广的局域排行榜。

爆款游戏《羊了个羊中》的局域排行榜

爆款游戏《羊了个羊中》的局域排行榜

局域排行榜是指在排行榜设计中添加了更多的子类别,如地区排行、好友排行等。局域排行榜的排名不再是单纯的玩家之间进行排名,存在着更多的区域归属感、社交意义。而当游戏具备社交属性后,往往意味着更强的黏性。

在玩家们为了冲击更高的排行榜目标时,黑灰产盯上了这块蛋糕,并甩出了冲击榜单的捷径——虚拟定位软件。

通过虚拟定位获取排行榜名次的黑灰产

通过虚拟定位获取排行榜名次的黑灰产

这类软件可以通过各种手段/技术,篡改游戏获取到的定位信息,从而将使用软件的玩家从既定区域释放到排名竞争较小的地区。据观察,这类虚拟定位软件的实现方式十分多样,并且市场广阔。

游戏应用想要获取位置信息,基本依赖于设备本身提供,这就给了黑灰产许多作弊空间,在不同的手机系统上,虚拟定位的实现手段十分多样。

虚拟定位软件—爱思助手

虚拟定位软件—爱思助手

在iOS端,常见的虚拟定位的手段是——爱思助手。该软件自带虚拟定位功能,可以链接手机手动设置经纬度,实现虚拟定位。除此之外,iOS端实现虚拟定位还有其他三种手段:

■ 使用Xcode,编辑GPX文件,调用设备中com.apple.dt.simulatelocation服务,写入经纬度。

■ 通过硬件外设定位,比如:位移精灵,可发送虚拟定位数据来实现虚拟定位。

■ 越狱设备中通过hook CLLocationManager中的定位代理方法,来实现虚拟定位。

Android获取模拟位置信息权限

Android获取模拟位置信息权限

而Android端由于开源状态,系统本身自带开发者权限,Android 6.0及以上可以通过【开发者选项 → 选择模拟位置信息应用】来开放应用获取位置信息权限。这样一来,就可以通过篡改api接口信息注入虚拟位置信息伪造GPS定位信息等手段实现虚拟定位。

虚拟GPS软件

虚拟GPS软件

玩家投入大量时间精力冲击排行榜获取的荣誉,而虚拟定位的出现,会大幅降低荣誉感的获取门槛,对正常玩家的积极性造成严重影响,从而影响游戏的收益、留存。

除此之外,篡改游戏虚拟定位对于“捉妖”玩法手游,会造成严重影响。因游戏主要玩法就是基于定位系统,通过玩家不断改变物理位置游戏资源,虚拟定位的出现,会直接破坏游戏核心玩法的公平性。

因游戏虚拟定位引发的诉讼案件

因游戏虚拟定位引发的诉讼案件

某大厂旗下的捉妖玩法手游就曾被虚拟定位问题困扰,受该问题影响,游戏社区内出现大量玩家打出差评的退坑潮,对厂商的直接收益与游戏的生命周期均造成了无法挽回的严重损失。

针对游戏面临的虚拟定位风险,FairGuard研发了成熟完善的保护方案,并接入多款热门游戏并验证了出色的保护能力。

防地理位置篡改

禁用地理位置模拟操作,防止LBS类型玩法的作弊。

防注入功能

禁止使用Xposed、Frida等各种外挂模块注入器,防止注入后修改游戏内存等各种恶意行为,一旦发现立即闪退。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/22974.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue-CodeMirror 使用

vue2 安装 npm install vue-codemirror -S # or yarn add vue-codemirror -S 全局配置&#xff0c;main.js文件引入 import VueCodemirror from vue-codemirror // import base style import codemirror/lib/codemirror.css Vue.use(VueCodemirror)Vue 文件内使用 <templ…

【运维】第03讲(上):Nginx 负载均衡常见架构及问题解析

实际上 Nginx 除了承担代理网关角色外还会应用于 7 层应用上的负载均衡&#xff0c;本课时重点讲解 Nginx 的负载均衡应用架构&#xff0c;及最常见的问题。 学前提示 Nginx 作为负载均衡是基于代理模式的基础之上&#xff0c;所以在学习本课时前&#xff0c;你需要对 Nginx …

LangChain大型语言模型(LLM)应用开发(四):QA over Documents

LangChain是一个基于大语言模型&#xff08;如ChatGPT&#xff09;用于构建端到端语言模型应用的 Python 框架。它提供了一套工具、组件和接口&#xff0c;可简化创建由大型语言模型 (LLM) 和聊天模型提供支持的应用程序的过程。LangChain 可以轻松管理与语言模型的交互&#x…

一个HTTP的流程

1&#xff0c;键入一个URL后浏览器将URL进行解析 2,浏览器解析URL后&#xff0c;需要查询服务器域名对应的IP地址。 流程如下&#xff1a;查询缓存&#xff0d; >客户端发送DNS请求-> 根DNS&#xff0c;根DNS根据 .COM-> 顶级域名服务器&#xff0c;根据baidu->权…

C# Linq 详解四

目录 概述 二十、SelectMany 二十一、Aggregate 二十二、DistinctBy 二十三、Reverse 二十四、SequenceEqual 二十五、Zip 二十六、SkipWhile 二十七、TakeWhile C# Linq 详解一 1.Where 2.Select 3.GroupBy 4.First / FirstOrDefault 5.Last / LastOrDefault C# Li…

xxl-job的简单使用

xxl-job是一个分布式任务调度框架&#xff0c;在Spring中&#xff0c;提供有任务调度的注解功能&#xff0c;在之前的项目中&#xff0c;非分布式任务都可以直接使用Spring框架提供的Scheduled注解和EnableScheduling注解来实现定时任务。 EnableScheduling注解加载项目启动类上…

MySQL数据库基础 18

第18章_MySQL8其它新特性 1. MySQL8新特性概述1.1 MySQL8.0 新增特性1.2 MySQL8.0移除的旧特性 2. 新特性1&#xff1a;窗口函数2.1 使用窗口函数前后对比2.2 窗口函数分类2.3 语法结构2.4 分类讲解1. 序号函数2. 分布函数3. 前后函数4. 首尾函数5. 其他函数 2.5 小 结 3. 新特…

录音怎么转换成mp3格式?

录音怎么转换成mp3格式&#xff1f;将录音转换成MP3格式可以节省存储空间。通常&#xff0c;录音保存的文件格式是WAV等无损音频格式&#xff0c;这种音频格式相对于MP3格式占用的存储空间更大。将录音转换成MP3格式后&#xff0c;可以减小文件的大小&#xff0c;方便储存和传输…

cpuset.cpus.effective: no such file or directory (修改 docker cgroup 版本的方法)

要切换使用 v1 版 cgroup&#xff0c;需要做如下配置&#xff1a; vim /etc/default/grubGRUB_CMDLINE_LINUX"systemd.unified_cgroup_hierarchy0"update-grubreboot完美解决

119、仿真-51单片机温湿度光照强度LCD 1602显示报警设计(Proteus仿真+程序+元器件清单等)

方案选择 单片机的选择 方案一&#xff1a;AT89C52是美国ATMEL公司生产的低电压&#xff0c;高性能CMOS型8位单片机&#xff0c;器件采用ATMEL公司的高密度、非易失性存储技术生产&#xff0c;兼容标准MCS-51指令系统&#xff0c;片内置通用8位中央处理器(CPU)和Flash存储单元…

HTML input text 常用事件

前言 用于记录开发中常用到的&#xff0c;快捷开发 简单实例 <input type"text" name"noSecretKeyJson" maxlength"200" />常用事件 oninput &#xff08;在用户输入时触发&#xff09;及案例 案例一&#xff1a;限制只允许输入数字…

windows nodejs 版本切换

一、按健winR弹出窗口&#xff0c;键盘输入cmd,然后敲回车。然后进入命令控制行窗口&#xff0c;并输入where node查看之前本地安装的node的路径。 二、找到上面找到的路径&#xff0c;将node.exe所在的父目录里面的所有东西都删除。 三、从官网下载安装包 https://github.com/…