【书记的胜利】隐守开发者匿名求助书记救命

  • ギナ
    https://www.zhihu.com/question/314707439/answer/615561656
    所谓病急乱投医么,这游戏顿时在泥潭地位跌至潭底233
  • s
    scourge411
    什么?!孟德尔居然又把人家的服务器搞坏了?!!
  • A
    ArowRocher
    真假不清楚,但昨天晚上的在线人数确实有我刚开始玩时八倍多
  • z
    zzzzzzzenki
    昨天我玩的时候最高8w多人,一般差不多2w人
  • L
    Lunamos
    如果每次状态转移都是条件转移,为什么游戏里要遍历一个有向图呢?
    为什么Gal的故事线有寻路需求?
  • L
    Lunamos
    感觉要么代码太蠢,要么是现编的理由(坏)。腾讯的话,后者的可能性稍大。
  • セト
    什么玩意啊,就算是为了防盗版,为什么连故事线逻辑都要放在服务器?
    这就一单机游戏,难道还要防止我修改跳关吗……
  • 洗刷刷
    听意思玩家的存档是个图的路径,每次做选择要从头跑一次?如果是这样那的确很像工作中会出现的问题——一个听上去很聪明实际很蠢的算法。不如讨论下gal的选择支系统怎么设计会漂亮些呢?我觉得用位运算代替图会漂亮些吧?
  • セト
    另外看评论有WEGAME的独家彩蛋?
    那是啥东西?
  • L
    Lunamos
    只要状态转移是确定的不是随机的,想不出为何会有性能问题。路径选择和转移状态分别Hash,每次判断玩家是否曾经经历某状态的时候,直接字符串匹配该Hash。每次需要存档直接增量添加路径和状态的Hash,都是O(1)或者O(n)。
  • r
    rootss
    越描越黑,昨天不是说steam服务器在海外吗
  • 洗刷刷
    确实这种需求第一反应就是用哈希图,我想到的最简单的办法就是无脑哈希图嵌套
    保存路径和状态的哈希也是很好的思路,不过没想明白怎么根据当前状态hash值判断之前的状态?还是说每个选择各保存一个hash值?
  • L
    Lunamos
    直接顺序储存历史选择就行了,前一个entry就是上一个状态。存档的时候从头校验把超出游戏逻辑的循环消除,防止用户反复横跳即可。
    无论用什么方法吧,就算存成图和节点的指针数组,也不太明白原帖里说的那个问题是如何成立的
  • d
    dazzle
    保存路径根本是个伪需求,游戏里一个节点接下来可能的发展一般不会超过3-5种,那么你只要制造出这么多分歧就够了,用flag或者数值比如好感度都能做出足够复杂的条件,有什么必要重新遍历过去的全部100个分歧选项呢
  • L
    Lunamos
    抛开这个,逻辑放本地总可以吧,需要资源再从线上拿。耦合太严重了
  • m
    manako
    想了一天,终于编出来个理由
  • z
    zzzzzzzenki
    他这个游戏有个机制和底特律,暴雨不一样,就是打个比方,第八章的分支受第一章影响,那么你只要打完第一章出第八章对应分支,后面就不用打了,系统帮你自动生成一条路线,然后你直接跳到第八章就可以。
  • m
    mhfdt
    那也不用这样
    直接用flag不就好了吗
    每到分支节点直接看历史节点的flag,根据情景选择行为,别说跳章节了,你想做啥塞进去就行,小学水准的设计门槛。
  • l
    lostyzd
    完全没看懂这开发者在说啥,为啥要遍历那么多状态,按他们这理论,给数组排个序复杂度怕不是要n!了。
  • b
    bigheadnotbig
    现在写代码不用学算法导论了吗
  • p
    pgain2004
    看你们的质疑讨论比该答案下的回复实际多了,你们谁赶快整理后去回答一下,不要被书记又了啊
  • j
    julia黑
    这算法绝逼有问题吧………设计上来说故事线逻辑放本地绝对不会因为转瓶子那个小关卡导致服务器血崩
  • j
    julia黑
    要让他们开发一个428那样多个角色互相影响的游戏来可能得要了命
  • b
    bm7号
    转瓶子哪里难了?
  • 野々原雛桜
    最大问题是为了防盗版防到这个程度吧,他们是太有钱还是穷怕了?过了热潮就把服务器撤下来吗
  • w
    wuuuuuud
    看上去像是把转瓶子的逻辑和故事线放到一起了,本身存档代码效率低一点也无所谓,反正规模不大。这个小游戏一放进去算法复杂度的问题就体现出来了
  • 时空之旅
    我也觉得防盗版防出病来了,要说盗版,你直播不比盗版来的有影响
  • o
    oopp1800
    倾向于相信开发者转瓶子的说法,原因有两点:
    1. 昨天晚上我在十点多回去玩的时候还是会卡,并且在转瓶子的部分出现了特殊的错误,找不到节点 id: xxxx-xxxx-xxxx(类似于 uuid 随机生成的) 之类的
    2. steam 修复后的说明(开游戏就能看到)里有一个小提示:要想开密室,请留意声音。想必是开发者注意到转瓶子这里造成了大量请求,所以提示玩家怎么转瓶子,让大家尽量快速通过这一趴

    另外关于故事线的逻辑问题......以我一点点的编程经验来说...为了赶紧上线,做出啥 trick 都是可能的,再说平时监测的 CPU 没问题,优化的事当然是往后放了

    当然,最可信的假话是99句真话里掺半句假话,转瓶子是不是推迟的主要原因谁都不知道...但我还是主观愿意相信制作组一次的..
  • S
    Stellar_Frost
    前段时间轻文做的《寻迹》也是这个思路,一个gal为了防盗版把所有内容全放到网上,不联网玩不了,评论区一片骂声,不过我觉得没法从这方面去谴责。
    (而且寻迹最奇葩的是虽然内容全云端,但是存档没放到云端
  • S
    Stellar_Frost
    多说一句,某平台专属特典这个事,我觉得它就不算个事。
    前段时间皇牌空战7在PS4和X1上各自有一个附赠前代游戏内容,而且还有VR,PC一概没有,那我一个PC党不就得忍着...只能说平台战争在PC也开打了而已
  • セト
    不这是两码事。
    资源和玩家数据存服务器就能解决盗版。
    游戏逻辑放服务器不是解决盗版,只能解决修改。这游戏完全没必要。
  • w
    wuuuuuud
    不一定,资源可以抓出来建立私服。游戏逻辑是很难弄出来的
  • 秋开
    书记在知乎好有牌面,是不是只有S1黑书记啊?
  • F
    FirstSnow
    一个可以视频通关的游戏搞什么幺蛾子,不如学学波兰蠢驴DRM-FREE
  • S
    Stellar_Frost
    蠢驴之所以被称为蠢驴,就是因为搞DRM-free的3A厂实属罕见啊
  • S
    Stellar_Frost
    “你见S1待见过谁?”

    书记在知乎确实算是有排面的,不过(为数不多还可以的)推漫专栏没几个人看
  • F
    FirstSnow
    别的厂家心心念念搞什么D加密反盗版。波兰蠢驴直接对玩家说,我们做游戏就为交个朋友。
  • n
    nukacolamania
    是的,只能说是智障。一个PPT单机游戏,一边是花钱买了还得看服务器脸色,一边是不花钱免费看人直播。

    制作组以为全程连线就能防住盗版玩家,可盗版玩家会选哪个简直一目了然。
  • 牧濑紅莉栖
    就凭这波屁大点事就要差评退款的玩意,我还真不信出盗版了这帮人会去买,事实上一堆人还是云通关的
  • 1
    11--
    看了下那个匿名回复的,这游戏强制联网才能玩?以后服务器关了这游戏就彻底凉了?

    —— 来自 OnePlus ONEPLUS A5000, Android 9上的S1Next-鹅版v2.1.2
  • s
    shirolin
    我也觉得用flag就够了……他这个是初期规划野心太大?
  • すぴぱら
    做过日本gal开发的表示这种流程图都是写死的int存表里,跑到选择肢就存一个标记,一般的对话树连高级一点算法都没有
  • c
    cy1988813
    人家都说自己是影视制造团队了,游戏制作弱智了点是应该的
  • m
    makece
    在知乎找书记有什么错?泥潭鄙视链底端确实就是知乎游戏区的巅峰啊
  • q
    qwased
    这么搞有没有可能是为了应付上头的老爷随时下达的修改要求?

    —— 来自 Xiaomi MI 6, Android 8.0.0上的S1Next-鹅版v2.1.2