自动拾取、自动打怪、自动保护这三项功能,只是外挂的最基础功能,而且初期不可避免的还有很多bug,与方杰理想中的完美外挂还差得很远。
对自动挂机进行了一番测试后,又发现了一系列问题。
首先是游戏角色的背包和负重有限,挂了一段时间之后,背包就满了,必须回去买药,而因为负重有限,每次能携带的药品不多。
超负重携带物品还是有办法的,是个游戏bug,玩家们发现,满负重携带物品后,只要与其他玩家交易,那么交易过来的物品就可以朝负重携带,这个跟《传奇》的bug很像。
对此游戏官方也没进行修复,算是一个不是bug的bug,默认了这种bug的存在。
如果要自动挂机,当然就不能找其他玩家帮忙超负重了,主要是不方便找韩国玩家帮忙,一番操作下来反倒耽误打钱效率。
但每次回城卖道具,然后购买药水,来回很耽误时间,而且还得手动完成,这显然不符合完美外挂的要求。
于是,远程仓库和远程商店这两项功能就有必要搞出来了。
而这两项功能,就涉及wpe,即封包技术。
玩家在安全区找仓库管理员存取物品,大致的原理就是发送一个存取指令给客户端,客户端把这个指令发送服务器,服务器验证后对数据进行处理,并反馈对应的指令信息给客户端,最后完成这项操作。
所有指令信息是以封包形式进行发送的,那么只要截取这个封包,将其中的一些数据进行修改或者替换,就能够达到欺骗服务器的目的,从而实现一些特殊的功能。
比如远程仓库这样的功能,只要截取正常的存取封包,然后在野外需要使用仓库功能时,用wpe模拟发送一段正常的存取封包给服务器,而服务器那边就以为玩家正在安全区与仓库管理员对话,于是打开仓库,允许玩家存取物品。
这个过程没有对封包数据进行任何修改,只是模拟发送封包数据而已,属于最低阶的封包技术运用。
其原理形象点比喻,就像是截获圣旨,然后仿造圣旨,再把仿造的圣旨随时随地传出去,以达到拥有某种权限的目的。
该功能很容易实现,比做外挂要简单得多,无非是与相关npc进行对话,接取封包程序并保存下来,然后加入到外挂程序中作为一种辅助功能,需要的时候发动这段封包程序,就可以远程存取、远程出售或购买物品了。
整个功能实现,方杰只用了不到半个小时就搞定了。
但完成这项功能后,他又觉得不满意。
因为购买药品或存取物品还是需要手动操作,于是干脆把远程购买药品的功能改为了自动购买,然后加入到了自动保护功能中去。
即游戏角色掉血,自动吃药,药品不够,自动打开远程商店购买药品,然后继续自动刷怪。
远程仓库也是如此,玩家背包格子占用数量或者负重达到一定比例后,开启自动远程仓库和自动储存功能,把值钱的装备道具自动存进仓库,而不值钱的装备道具直接通过远程商店卖掉。
外挂做到这一步,其功能真的已经算是很强大了。
但方杰依然不满意。
挂机中他发现,韩国的玩家少,地图里的怪比玩家多,自动挂机时,经常会引到更多的怪而被围殴,很容易触发自动保护回城功能。