多人数独游戏:卷土重来 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
mythjava
V2EX    分享创造

多人数独游戏:卷土重来

  •  
  •   mythjava 2021-03-19 15:23:21 +08:00 4350 次点击
    这是一个创建于 1720 天前的主题,其中的信息可能已经有所发展或是发生改变。

    [t/747319]

    这是之前的帖子

    其实也没有做什么升级,只是将原来了 leancloud 换成了 腾讯云 腾讯云的云函数+云数据库还是便宜一点的...

    还有改我棋盘的骚操作真的不知道怎么防御,希望大家做一个普通人

    [https://github.com/myth984/sudoku]

    第 1 条附言    2021-03-19 16:14:42 +08:00
    第 2 条附言    2021-03-19 16:39:59 +08:00
    激动的心 颤抖的手 终于有人完成了

    16:39 玩家[爹] 和 玩家[x] 共同完成了最后一步(因为我没设置锁,所以是共同完成的= =)
    第 3 条附言    2021-03-23 17:33:07 +08:00

    image.png

    因为没找到白嫖webscoket方案,所以现在数据库是用的最省钱的方案

    看大家挺喜欢玩的,又续费了50,应该可以再坚持一阵子。。。

    34 条回复    2021-03-22 15:31:11 +08:00
    sapphires
        1
    sapphires  
       2021-03-19 15:44:37 +08:00
    数独怎么出 10 了,lz 快来改 bug
    ParfoisMeng
        2
    ParfoisMeng  
       2021-03-19 15:45:04 +08:00
    右侧动态默认置底吧。。
    marcong95
        3
    marcong95      2021-03-19 15:45:26 +08:00
    10 都出来了,我记得 LeanCloud 的那种云数据库不是可以设 ACL 的吗?你把题板的权限改高不就好了么
    OaO
        4
    OaO  
       2021-03-19 15:49:53 +08:00
    对恶意侵入的孤儿报以最恶毒的话语= =全 8 了
    mythjava
        5
    mythjava  
    OP
       2021-03-19 15:50:29 +08:00
    我真的服了!!!!!!!!!
    sapphires
        6
    sapphires  
       2021-03-19 15:50:46 +08:00
    弃疗了 ![Snipaste_2021-03-19_15-49-38.png]( https://i.loli.net/2021/03/19/UEAVPM7iCw4In3J.png)
    mythjava
        7
    mythjava  
    OP
       2021-03-19 15:52:22 +08:00
    @marcong95 已经不用 LeanCloud 了。。。。。
    pkookp8
        8
    pkookp8  
       2021-03-19 15:57:32 +08:00 via Android
    哈哈哈哈,感受到了楼主的无奈
    mythjava
        9
    mythjava  
    OP
       2021-03-19 15:58:41 +08:00
    @ParfoisMeng 明白!
    marcong95
        10
    marcong95  
       2021-03-19 16:00:51 +08:00   1
    @mythjava #7 我只用过 LeanCloud,不是很清楚腾讯云那边的情况,你可以找找看有没有对应的功能。

    LeanCloud 印象中至少还能免费开着玩,腾讯云的云数据库好像只要一开就要收费了
    mythjava
        11
    mythjava  
    OP
       2021-03-19 16:02:01 +08:00
    @marcong95 是的 LeanCloud 活动用户过了 300 就开始收费了 而且好像还有低消,所以搞到腾讯云了
    zzzhen
        12
    zzzhen  
       2021-03-19 16:06:27 +08:00
    哈啊哈哈啊哈哈
    nightcatsama
        13
    nightcatsama  
       2021-03-19 16:13:31 +08:00
    都上班摸鱼吗,那我也分享一下自己写的无聊游戏的
    桌游达芬奇密码线上版本,不知道有没有朋友玩过 =。=
    首页 https://nightcat.win/davinci/
    进入我的房间 battle 一把 https://nightcat.win/davinci/?roomId=2333
    sangleft
        14
    sangleft  
       2021-03-19 16:13:32 +08:00
    楼主哈哈哈哈,可以分房间试试。
    chionetw5
        15
    chionetw5  
       2021-03-19 16:14:50 +08:00
    右边聊天框调成自动下拉吧
    ParfoisMeng
        16
    ParfoisMeng  
       2021-03-19 16:15:16 +08:00
    有些 lowB 自己一辈子都是 Loser,所以就喜欢给别人搞破坏,以此来获得可怜的慰藉。
    mythjava
        17
    mythjava  
    OP
       2021-03-19 16:15:26 +08:00
    @nightcatsama 来了
    nightcatsama
        18
    nightcatsama  
       2021-03-19 16:17:59 +08:00
    @mythjava 房间炸了,有人进来开始游戏又退出了 =。= 你建个房然后发个链接,我们来一把
    mythjava
        19
    mythjava  
    OP
       2021-03-19 16:23:08 +08:00
    @nightcatsama 那个人就是我。。。我不太会玩。。。抱歉
    nightcatsama
        20
    nightcatsama  
       2021-03-19 16:27:41 +08:00
    @mythjava 没事哈哈,数独我也喜欢玩。 可以后端加个校验,就不怕别人捣乱了
    nightcatsama
        21
    nightcatsama  
       2021-03-19 16:31:34 +08:00
    imdong
        22
    imdong  
       2021-03-19 17:03:02 +08:00
    其实我有几个疑问,为什么每次提交都要提交完整的棋盘?

    如果有使用数据库,那是不是只需要改啥提交啥?

    云函数的话,可以对数据进行验证,限制数据内容与位置吧?

    如果服务器不做保存,那么可以考虑以下办法

    实在不行,可以交给其他客户端进行验证,比如 A 提交了 异常的数据,BCDEF 用户收到以后,本地验证不正确,就主动延迟 随机时间后,提交更新(如果收到更新则取消延迟,避免并发修改).

    这样,除非只有一个人,否则这边修改了,其他用户就会主动修改回来.

    至于改原始棋盘,将原始棋盘数据与服务器保密的 token 做 hash 后给客户端,每次客户端提交都要带上这个 hash

    这样,服务端只要验证 原始棋盘的 hash 是否正确就可以了,客户端由于不知道 token 则无法伪造 hash.
    mythjava
        23
    mythjava  
    OP
       2021-03-19 17:22:48 +08:00
    @imdong
    其实我有几个疑问,为什么每次提交都要提交完整的棋盘?
    a:这个我就不清楚了 我记得是只有重来的时候 是提交完整的棋盘

    如果有使用数据库,那是不是只需要改啥提交啥?
    a:我记得我是这么搞的

    云函数的话,可以对数据进行验证,限制数据内容与位置吧?
    a:我用的比较咋,棋盘用的是腾讯云 cloudbase,聊天用的腾讯云函数,后续可以考虑统一

    万分感谢,提出解决方案,感谢感谢
    kiracyan
        24
    kiracyan  
       2021-03-19 17:26:32 +08:00
    人多就乱
    ignor
        25
    ignor  
       2021-03-19 17:46:05 +08:00 via Android
    等一个人心不古[doge]
    Raven316
        26
    Raven316  
       2021-03-19 17:51:18 +08:00
    随便选择一个数字,在格子上瞎点,最后居然过了?
    mythjava
        27
    mythjava  
    OP
       2021-03-19 18:47:58 +08:00
    @ignor 人心不古阶段已经过了 现在网友们都在好好玩
    silencelixing
        28
    silencelixing  
       2021-03-19 20:40:32 +08:00
    chocovon
        29
    chocovon  
       2021-03-19 21:48:06 +08:00
    挺好,没有什么影响体验的操作限制,似乎也没有恶意用户出现?看来还是人间自有真情在啊哈哈
    Edwards
        30
    Edwards  
       2021-03-20 14:54:00 +08:00
    有个老哥自闭了
    AkashicRecords
        31
    AkashicRecords  
       2021-03-21 20:44:06 +08:00
    @nightcatsama 做得很棒啊!
    guangming3055
        32
    guangming3055  
       2021-03-21 21:32:22 +08:00 via Android
    试了一下,挺好玩,需要预选功能,不然后面就弄不清楚了,对了,实时在线人数也安排一下
    chenyu8674
        33
    chenyu8674  
       2021-03-22 13:59:16 +08:00
    试了一把不是唯一解啊,瞎填都能过
    mythjava
        34
    mythjava  
    OP
       2021-03-22 15:31:11 +08:00
    @chenyu8674 是的 我认为数独就不应该是唯一解,我理解的可能有偏差
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2493 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 15:39 PVG 23:39 LAX 07:39 JFK 10:39
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86