Questions tagged «online»

有关要求玩家持续在线存在的游戏的问题。

10
如何检测和防止滥用在线游戏API?
我一直在业余时间一直在致力于游戏创意。游戏玩法和内容使其可以实现为使用完善的网络技术构建的在线多人游戏。您应该知道,它属于策略和模拟类型。这意味着:不能与字符或类似内容四处奔波,而只能执行诸如“在位置X上构建事物A”之类的原子动作(关于客户端-服务器通信)。 有一次我意识到存在一个巨大的问题:基于REST API后端的基于浏览器的前端使其成为机器人的绝佳目标。尽管自动化对于企业来说是可取的,但它却对游戏乐趣无益。过去,我是在浏览器游戏中亲身经历的,最成功的玩家是机器人,它征服了所有人。 从我当前的角度来看,在基于REST API构建多人在线游戏时,我看不出有任何防范僵尸程序的可能性。例外:将其开源,以便每个人都可以托管自己的私有组实例,甚至只是一个人(以免被僵尸机器人惹恼)。 有什么办法可以区分只为下一个可能的动作设置警报的诚实玩家和自动抓住一切机会出现的机器人。除了诸如captchas这样的节目停止者。如果没有,我会考虑另一种技术堆栈,这至少会使与客户端-服务器通信(本机代码客户端中的专有加密二进制协议)混乱的难度更大。 编辑:谢谢,您的回答令人鼓舞,但也让我意识到,不能通过进一步研究游戏细节来制定特定的对策。但是,对于Stack Exchange上的一个问题来说,这太多了。所以我只想指出最重要的几点: 玩家随时随地都在探索,发展和管理。脱机时,他们的业务仍然运转良好(这是一个和平的游戏,不涉及任何武器)。只有扩张和进步才需要玩家采取行动。这些动作受到以下因素的限制: 时间是关键资源之一(例如在EVE Online技能培训中)。游戏中的所有流程都需要它。24/7全天候在线是没有意义的。普通玩家应该已经成功,每天花一两个小时不超过一个小时(大致来说,这个概念还在开发中)。


3
为什么在某些MMO中编辑客户的记忆可以使他们作弊?
为什么编辑游戏客户端的内存有效?为什么客户会附带这么多“防黑客”工具? 如果我要设计一个客户端-服务器游戏,那么一切都会在服务器上发生(游戏世界的模拟),而客户端将只是被动的消费者,他们会在角色附近接收世界部分的状态更新,仅发送一些信息,例如击键或移动/操作命令。也许我在这里错过了一些东西,但是通过这种设计,任何将客户端内存中的STR增加200的黑客(如果根本没有这个值的话)都不会产生任何效果。 我能想到的唯一解释是,其中进行内存编辑的游戏允许部分模拟在客户端中运行,然后服务器仅定期同步所有客户端。我可以理解,一旦配置了比赛,针对具有固定数量玩家的实时策略游戏的设计,但是,为什么要使用MMORPG?它是减少服务器负载的策略吗?


3
用于(小型/独立)PC游戏的在线排行榜系统?[关闭]
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 6年前关闭。 是否有任何免费/负担得起的系统/库可为小型PC游戏添加在线功能?(最有可能的是,这是一款主要基于Windows的小型独立游戏) 我不关心对接会或在线多人游戏,但我对排行榜感兴趣,也许对更高级的功能感兴趣,例如用户创建内容的上传/下载(例如,重放或玩家创建的关卡)。甚至自动更新或可下载的内容? 虽然至少从头开始实施最基本的步骤可能不难,但似乎需要重塑,而经过尝试和测试的系统将是可取的,以减少开发时间并减少巨大的安全漏洞。低预算/无预算独立开发人员有什么可以触及的?

9
如何让新玩家有效地与长期玩家竞争?
当新玩家加入我的策略游戏时,他们有3天的保护时间免受其他玩家的攻击,但这还不足以赶上已经玩了更长时间的玩家。 我该如何解决? 我本来打算延长保护时间,但是如果这样做,玩家将无法在没有进攻的情况下前进(获得更多资源以取得更快的进步)。 该游戏基于浏览器,带有PHP后端。



7
管理变化的设计师数据和变化的球员数据的方法
我有一个在线游戏,玩家可以通过某种方式塑造世界-例如。Ultima Online的房屋,您可以在其中直接在世界地图的某些部分上建造房屋。这些变化应作为持久世界的一部分随着时间的流逝而持久。 同时,设计团队正在添加新内容并修改旧内容,以改善和扩展新玩家的游戏。他们将首先在测试期间在开发服务器上执行此操作,然后再将其工作与实时服务器上播放器的“工作”合并。 假设我们解决了游戏设计问题-例如。玩家只能在指定区域内建造游戏,因此他们永远不会与设计者进行地理上的冲突- 处理新数据或安排数据结构的最佳方法是什么,以避免在将新设计者数据与新玩家数据合并时发生冲突? 示例1:玩家制作了一种新的物品,然后游戏为其分配了ID 123456。该项目的实例全部回溯到123456。现在想象游戏设计师有一个类似的系统,而设计师创建了一个新项目,编号也为123456。如何避免这种情况? 示例2:某人制作了一个流行的mod,可以为您的所有龙赋予法国口音。它包括一个带有新对象的脚本assignFrenchAccent,他们使用该脚本将新的语音资产分配给每个龙对象。但是,您将部署具有相同名称的对象的“拿破仑与史矛革” DLC-如何在没有很多客户服务问题的情况下做到这一点? 我想到了以下策略: 您可以使用2个单独的文件/目录/数据库,但是读取操作非常复杂。“显示所有项目”必须在设计器DB上执行一次读取,在播放器DB上执行一次读取(并且仍然必须以某种方式区分这两个)。 您可以在一个商店中使用2个不同的名称空间,例如。使用字符串作为主键,并以“ DESIGN:”或“ PLAYER:”作为前缀,但是创建这些名称空间可能并非易事,并且依赖关系不清楚。(例如,在RDBMS中,您可能无法有效地将字符串用作主键。您可以使用整数并将低于某个数字(例如1百万)的所有主键分配为设计器数据,而高于该数字的所有主键则分配为玩家数据。但是该信息对于RDBMS是不可见的,并且外键链接将跨越“分隔线”,这意味着所有工具和脚本都需要明确地解决它。) 您始终可以实时处理同一个共享数据库,但是性能可能很差,损坏播放器数据的风险可能会增加。它也不会扩展到在具有不同世界数据的多于一台服务器上运行的游戏。 ...还有其他想法吗? 在我看来,尽管这主要是在线游戏的问题,但这些概念也可能适用于改装,即社区在开发人员修补其游戏的同时创建mod。是否有任何策略可以用来减少新补丁发布时模块破解的机会? 我也将其标记为“版本控制”,因为在一个层面上这就是-需要合并的2个数据开发分支。也许某些见解可能来自该方向。 编辑-上面添加了一些示例以帮助阐明问题。我开始认为这个问题实际上是命名空间问题之一,可以通过组合键在商店中实现。至少,这简化了合并策略。但是可能还有其他我看不到的选择。

3
P2P多人游戏与客户端服务器的局限性
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 我正在阅读多人游戏架构。 到目前为止,我发现的大多数文章都是关于客户端-服务器模型的。 我想知道使用p2p架构的局限性是什么?可以使用哪些“类”游戏(或更常见的游戏)来实现?不是吗 总体而言,它与客户端-服务器模型的主要区别和局限性是什么?

2
在不通知用户的情况下将有关用户计算机的信息传输到我自己的服务器是否错误?
假设我在多个平台上发布了游戏。我的游戏代码检测到有关基础系统的一些琐碎问题,例如本地设置,“国家/地区”,操作系统,图形卡种类等。 假设我发布的游戏中包含代码,该代码会将这些信息发送到主服务器,在该服务器中,我收集和管理所有用于构建图表等的数据。 在多人游戏中,这样做很合理,因为与该服务器的连接完全合理。尽管如此,在单人游戏中,如果您被告知有关此操作的信息,则可能会令人怀疑。 将这种数据收集系统嵌入到游戏中是错误的吗?您认为在进行任何收集和传输之前,它绝对应该获得用户的事先授权吗? 如果用户开始拒绝该“协议”,我将无法真正执行100%有意义的数据。有什么想法吗?

3
在线棋盘游戏引擎
按照目前的情况,这个问题并不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 我想创建一个棋盘游戏的在线实现。我可以使用什么引擎来编写游戏并使尽可能多的人容易使用它? 我希望它可以被广泛访问,因此最好将用户界面运行在浏览器中,而不是在单独下载的应用程序中运行。同样,它应该是跨平台的,而不仅限于一个平台。纯JavaScript / HTML是最好的,因为尽管Flash或Java也可以接受,但那样一来,它也可以在iPad上使用。Silverlight没有市场渗透力(例如,我没有安装),而且XNA太有限了。 更好的其他功能包括良好的聊天和社交功能(或与其他聊天或社交网络系统集成),排行榜或锦标赛系统,以及易于集成的机器人,以在周围没有足够的人类玩家时提供AI对手。游戏计时器,以使人们以合理的速度移动,也是很好的。保存游戏记录,并允许人们重播和查看记录以供研究,这也很好,尽管我并不期望太多,因为这些类型的功能只会出现在专门为象棋或围棋之类的游戏引擎中。 使用自由/开源软件将是一个很大的优势,因此我可以自己扩展它,尽管封闭的或托管的解决方案如果可以提供足够的上述功能或提供某种扩展功能的方法,则可以接受。 是否有满足我需求的此类系统?或即使不是完全匹配的,也很接近的东西? 一些不能完全满足我需求的类似系统包括: Yahoo Games,它是基于Web的,但是我不能为此编写自己的游戏(或该类别中许多类似服务器中的任何一个)。 数量是基于SVG和XMPP构建的。它是开放源代码,旨在成为一个开放标准,支持bot等,但是它需要单独下载客户端,并且似乎不再积极开发或使用。 SuperDuperGames,这是一个开放源代码的在线系统,用于执行回合制(通过邮件播放的方式)游戏。也就是说,它不是实时的或实时的,而是您在第二天左右提交您的举动,并等待某人提交他们的举动。这是一个活跃的社区,但我希望可以在几周或几个月内就可以现场玩游戏。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.