当前位置:首页 > 每日看点

既然有些人喜欢开挂,为啥不开发一款网游,提供编程接口,允许玩家自行用各种软件,同时允许计算机参与计算?

卡卷网1年前 (2025-04-19)每日看点228

真有这种游戏啊。。。

《Screeps》

既然有些人喜欢开挂,为啥不开发一款网游,提供编程接口,允许玩家自行用各种软件,同时允许计算机参与计算?  第1张

steam链接:store.steampowered.com/

有想要挑战一下的可以看这个live demo,不需要注册就可以立刻试玩:screeps.com/a/#

游戏的介绍:Screeps is an open source MMO RTS sandbox game for programming enthusiasts, wherein the core mechanic is programming your units AI. You control your colony by writing JavaScript which operates 24/7 in the single persistent world filled by other players on par with you.

介绍的翻译:Screeps是一个为代码变态(划掉)爱好者设计的开源的MMO RTS(大规模多人在线即时战略)游戏。这个游戏的核心机制就是来为你控制的单位写AI。你可以用JavaScript来控制你殖民地(里的一切),并且这些内容7*24小时运行的,并且充满其他玩家来与你对抗。

说白了就是给你提供一个JavaScript的接口,用来写一个“AI”来跟其他玩家对抗。可以简单的基于规则,也可以写有限状态自动机,也可以写增强学习之类的agent ai(但性能其实很受限)。

现在这个游戏已经变得巨复杂了。从能源到采集,从防御到进攻策略甚至还有贸易等等等等。。。

这个游戏有多复杂?首先想要入门,游戏是全英文的,除了写code要用纯英文,最重要的是所有的官方文档也都是英文的。你需要通过阅读文档来学习这个游戏的API:docs.screeps.com/archit

(这文档一看就是API Reference的风格)

既然有些人喜欢开挂,为啥不开发一款网游,提供编程接口,允许玩家自行用各种软件,同时允许计算机参与计算?  第2张

文档中包括整个游戏系统的运行逻辑、写code的接口和一大堆内部机制。

当然,还有API References!来来来,请随意体验一下被代码支配的恐惧:

既然有些人喜欢开挂,为啥不开发一款网游,提供编程接口,允许玩家自行用各种软件,同时允许计算机参与计算?  第3张

然后看看大佬开源出来的code:github.com/TooAngel/scr

(是的,放在了全球最大宅男/女交友社区)

既然有些人喜欢开挂,为啥不开发一款网游,提供编程接口,允许玩家自行用各种软件,同时允许计算机参与计算?  第4张

这个游戏的收费是花钱买算力(subscription token)。。而游戏中你可以获得算力再出售。所以完全有可能通过写一个巨厉害的code来赚钱……

详细信息建议看steam页面中Attack.On.Pika[AFK]的评论。。。分析的已经很透彻了


更:附上tutorial里的第一段代码:

module.exports.loop = function () { var creep = Game.creeps['Harvester1']; var sources = creep.room.find(FIND_SOURCES); if(creep.harvest(sources[0]) == ERR_NOT_IN_RANGE){ creep.moveTo(sources[0]); } }

大致的意思是这样的:从场景中找到名为Harvester1的一个creep(既游戏种的一种基本单位)。然后寻找当前房间中的所有source。然后命令creep去harvest 所有source中的第1个source。但这个过程有可能返回值是“ERR_NOT_IN_RANGE”这个错误,说明creep距离source太远了。然后就命令creep moveTO那个source里。然后整个函数永不间断地执行下去。

如此,万里长征第一步搞定了!你得到了一个可以遍历采集资源的creep。但是抵御不了入侵者,也很难最优化效率等等。想要更高端的agent,还是要多烧脑了。


更:看了一下API,这玩意居然还支持Binary Module。就是说一些要求性能的地方,你可以写个C语言的code然后编译成二进制的library再在JavaScript脚本里调用。

既然有些人喜欢开挂,为啥不开发一款网游,提供编程接口,允许玩家自行用各种软件,同时允许计算机参与计算?  第5张

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/04/12660.html

分享给朋友:

相关文章

如何在自己家里建立一套私有云系统?需要哪些设备?

如何在自己家里建立一套私有云系统?需要哪些设备?

我敢保证,这绝对是目前为止最简单的搭建家用私有云的方法: “一台主机+至少一块硬盘”足矣!不需要任何专业知识,也没有复杂繁琐的步骤,十分钟不到就能搭建好,帮你成功打开文件云储存新世界的大门!还在单纯依靠网盘进行文件存储的朋友,不是我吐槽哈,…

腾讯文档回收站彻底删除文件真的找不回来了吗?

趁早打电话联系腾讯文档的人可能还有救,一般这种都是数据库里标记为删除,文件还没有实际删除,然后经过一段时间后程序统一进行真删除。这个“一段时间”可长可短,可能是一小时也可能是几天几个月甚至几年,要看腾讯服务器的程序是怎么写的。 不过你联系腾…

都是前端框架,为什么用 React 的人会有优越感?

都是前端框架,为什么用 React 的人会有优越感?

上家公司一直搞react,最近第一次写个vue3项目。 老板朋友来了看了下页面说:这用vue写的吧。 我:是... 老板朋友:一看就知道是vue做的。 这tm你看一眼页面就知道用的啥框架? 这感觉就是,我一直用苹果,偶尔用了下华为打电话,有…

如何进行 Elasticsearch 调优实践?

如何进行 Elasticsearch 调优实践?

面试官心理分析这个问题是肯定要问的,说白了,就是看你有没有实际干过 es,因为啥?其实 es 性能并没有你想象中那么好的。很多时候数据量大了,特别是有几亿条数据的时候,可能你会懵逼的发现,跑个搜索怎么一下 5~10s ,坑爹了。第一次搜索的…

无意中发现技术主管写的代码,大家帮忙看看什么水平?

无意中发现技术主管写的代码,大家帮忙看看什么水平?

虽然很多答主用了诸如“典范级”、“心旷神怡” 的形容, 赞美这段代码, 但这里, 出于技术讨论的动机, 我说说不同看法. 栈, 如果善于利用栈来处理树结构, 那么可以写出更简洁的代码, 根本不需要 recuresiveFn 这种方法. 泛型…

你见过哪些有趣的偏微分方程组?

你见过哪些有趣的偏微分方程组?

说说我一直在做的一个偏微分方程系统吧,该模型为生物领域的趋化性(chemotaxis)模型,也叫Keller-Segel模型,由该二人于1971年左右提出,用于刻画细胞或者细菌的趋化机制。解释一下趋化性(chemotaxis):趋化性是指单…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。