国庆大瓜:教你如何轻松窃取YGOPro开发者心血并以此日进斗金

您所在的位置:网站首页 ygopro2换头像 国庆大瓜:教你如何轻松窃取YGOPro开发者心血并以此日进斗金

国庆大瓜:教你如何轻松窃取YGOPro开发者心血并以此日进斗金

2022-06-12 03:25| 来源: 网络整理| 查看: 265

【本文大部分证据来自星光pokeboy的整合】

首先我希望介绍下开源知识。

开源协议:在开放源代码的同时,要求使用者必须遵循一定的前提条件来进行使用。这些前提条件叫做开源协议。

GPL协议:开源协议的一种。主要特点是其传染性:使用了这个协议进行开发的软件,后人在引用其源代码时也必须同样采用GPL协议进行开源。YGOPro使用GPL协议开源。子子孙孙无穷尽也

AGPL协议:开源协议的一种,GPL协议的延伸。如果使用了GPL协议,“不分发软件,只使用代码进行用户交互”(通俗易懂地来讲,服务器端程序)是被允许的。AGPL协议规定,这种情况也同样要进行开源。SRVPro(YGOPro的服务器端)使用此协议开源。

前日,九游上线了一款手机游戏,也是我们今天文章的主角。游戏名为【决斗大师(游戏王者之争)】——

预约页面

说实话,前两天看到这玩意时,还以为是决斗之城又换了个皮(因为不是第一次了),所以并没有给予太多关注,只是发了个动态吐槽了下人间迷惑行为:

当时的动态

结果今天就看到开发群里炸了锅,才发现事情并没有这么简单……也是,决斗之城怎么会去感谢233服和决斗都市在网战历史上,曾经有静水居的的YGOPot,和溪流的决斗城市作为(用YGOPro赚钱的)先导者出现过,无论哪边都被怼得惨不忍睹。这次,作为换皮手游的决斗大师,身段倒是放得很低,在开发者说感谢了一大圈。虽然漏了K社,不过似乎还是诚意满满……?如果事情有那么简单,那该有多好。

该游戏的实机效果

……?怎么这个界面感觉有点熟悉?左边为什么会有一句Hi, I'm WindBot?还有,那个【本服务器使用萌卡代码搭建】又是什么鬼?

先前已经说过,YGOPro的服务端叫做SRVPro。而在SRVPro的默认设置文件中,有这么一段代码:https://github.com/mycard/srvpro/blob/master/data/default_data.json

而在YGOPro的机器人程序——Windbot的源代码中,默认配置文件则是这样的:

Windbot代码

原地址:https://github.com/mycard/windbot/blob/master/Dialogs/default.json

现在再来看看刚才的……

决斗大师运行界面

是不是很熟悉?

到这里,我们对决斗大师的实际身份有了一定程度的猜测:大概是个YGOPro2的换皮手游——并增加了氪金要素。

看到这里,你可能会觉得1.也就这样了吧?不怎么严重?2.这违反法律了吧?

首先,这并不是什么好事。开了这个头,明天会不会有决斗王者、决斗超级大师、游戏王Go一个接一个如雨后春笋般冒出来?开了这个头,开发者们的心情又会如何?十年如一日辛辛苦苦写下的代码,被人直接拿去赚钱——换位思考下,会不会有“那我还写个啥”的感觉?

不过与此同时,有一说一……由于GPL协议就这么回事,只要开源就还算在合理使用范围之内。……所以YGOPro团队就去找决斗大师制作组要求开源了。(以下聊天记录已经当事人同意进行公开;聊天ID为化名)

第一回合

YGOPro方的诉求其实也挺简单的:虽然你偷了代码来用,但是既然拿完被抓住了,希望服务器端和客户端同时按照开源协议进行开源。

“开源会有的,什么都会有的。”“你上次也这么说的。”(N年前的Pot事件中,静水居的表示会开源的以后就咕了)“我们还没做完,还是半成品,要慢慢来。”“对,这也是你上次说的。”

第二回合

接下来就是熟悉的甩锅环节。总结起来的话:“服务器端是原创代码”“这个客户端只做测试用,将来会重写”

Windbot和萌卡提示你们好歹做个修改再上线?当所有人都瞎子?到了这里,事情已经开始往不妙的方向发展了。

第三回合

套路千千万?然而这边都已经身经百战了,什么套路没见过。决斗大师方表示拉个程序员进来问问话,到这里事情好像又缓和了一些。

第四回合

“这是客户端显示的消息,所以抄了代码的不是服务器端,是客户端!”这逻辑也真是没谁了。照你这么说我们以后打牌就不需要服务器啦,反正都是客户端显示,显示出来的都是客户端做的事情嘛。正确答案:提示是由服务器端发送到客户端,再由客户端进行显示的(虽然这显然是废话)。你自己写一个服务器端这没问题,但你写客户端的时候为什么要把萌卡默认提示一起写进去?砸自己牌子吗?

第五回合

“你们能拿出服务器端的数据吗?”你指望我们人均天才黑客藤木游作啊?更何况入侵服务器,这真犯法啊兄弟。

第六回合第七回合第八回合

“这一条解释完了,如果你们拿不出实质的证据就别BB了”算了,聊不来的,溜了溜了。

怎么说呢……看到这里,你或许会觉得不对劲。“你们确实没实质证据啊?”万一人家真的是自己设计的皮肤自己敲的代码呢?

那就……

决斗大师解包

先来解释下ygopro2-data这个文件夹?

决斗大师解包

再来解释下这个默认卡组ChainBurn(YGOPro2 iOS端默认卡组)?

决斗大师解包

再解释下这个默认头像?

决斗大师解包

还有这个名字?

几千上万张卡,十多年的劳动,就这么被拿走使用了。既然和制作方该谈的也都谈过了,该谈崩的也都谈崩了……

最后以星光的后记来结尾吧:

令我们难受的是,我们也知道一旦发出来,会增加这款软件的知名度与流量。然后就会有人去尝试下载这个软件,玩着玩着就开始氪金了起来。发出了这个曝光,反而对这些强盗是一件好事情。我们恳求各位不要对着强盗软件氪金。

我们希望可以获得大家的支持与转发。希望大家可以站出来抵制不遵守开源协议,借情怀骗氪的换皮YGOPro。这次若再不站出来,不知还会有多少个强盗出现猖狂肆虐。贡献者们已经在流失,也不多了。希望贡献者们的时间可以花在开发与建设上,而不是在处理这些事情上。

YGOPro的代码都在Github上随时可以阅览,代码量巨大。在大家看不见的地方,数的过来的人支撑着百万玩家的游戏环境。有时从凌晨更新可以看出,开发者们为了能够更快让大家体验到新卡,熬夜抽时间开发,付出巨大。甚至承担各服务器费用的MyCard也在提供免费全卡对战的服务,遵守开源协议公开了代码用于YGOPro社区建设。那么强盗们有什么理由用同样的代码氪金收费,不遵守开源协议呢?

说不出话.jpg你们吃瓜吧。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3