V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
chenxiao07
V2EX  ›  分享创造

javascript 极限编程 - 大小仅为 2048 字节的带 AI 的象棋

  •  3
     
  •   chenxiao07 · 2014-04-30 19:38:58 +08:00 · 5338 次点击
    这是一个创建于 3861 天前的主题,其中的信息可能已经有所发展或是发生改变。


    花了一下午把以前的某段js代码重构了一下,终于在整个网页大小为2048字节的情况下实现了这个带AI的象棋程序。

    现在这个游戏的特点有:
    1,整个网页大小为2048字节
    2,有简单的图形操作界面
    3,实现了绝大部分的象棋规则和电脑AI,包括但不限于象不能过河,马可以蹩脚,卒过河前不能横走,电脑也会抽将等等。


    目前还存在的问题有:
    1,重炮绝对能将死电脑,百分之百的,不用试了。在容量限制情况没找到好的AI解决方法
    2,将帅可以对立。。
    3,将死之后还可以继续下,一直到把对方的子吃完为止(这算feature么)


    网址在这里,Chrome的话可以正常运行没问题。
    http://2048byte.chen-xiao.com/
    31 条回复    2014-05-06 17:38:16 +08:00
    lyric
        1
    lyric  
       2014-04-30 19:52:54 +08:00
    赢了一局
    yylzcom
        2
    yylzcom  
       2014-04-30 19:56:54 +08:00
    楼主网页里写明了utf-8,但我用chrome(版本 33.0.1750.154)打开,棋子是乱码
    xuc
        3
    xuc  
       2014-04-30 19:58:54 +08:00
    马可以憋腿。。
    belin520
        4
    belin520  
       2014-04-30 20:05:17 +08:00
    马可以憋腿,,,,,被搞走一个车,就不想玩了
    chenxiao07
        5
    chenxiao07  
    OP
       2014-04-30 20:17:20 +08:00
    汗,原来马不可以蹩脚

    修好了
    qiongqi
        6
    qiongqi  
       2014-04-30 20:44:18 +08:00
    我把帅吃了,然后游戏没有结束。。
    Perry
        7
    Perry  
       2014-04-30 20:50:46 +08:00
    应该是编码问题:
    haiyang416
        8
    haiyang416  
       2014-04-30 21:04:51 +08:00 via Android
    Chromium 打开乱码
    nsxuan
        9
    nsxuan  
       2014-04-30 21:27:24 +08:00
    我怎样才能写出这样的代码呢
    Lucius
        10
    Lucius  
       2014-04-30 21:40:42 +08:00
    AI智商太低了。。

    rannnn
        11
    rannnn  
       2014-04-30 21:47:52 +08:00
    好牛逼。。。
    chenxiao07
        12
    chenxiao07  
    OP
       2014-04-30 22:16:12 +08:00
    @Lucius 重炮百分之百可以将死电脑

    AI部分暂时只有100字节左右,开局的时候比较弱智。
    chenxiao07
        13
    chenxiao07  
    OP
       2014-04-30 22:17:26 +08:00
    @yylzcom @haiyang416 @Perry 关于乱码,我加了一行<meta content="charset=utf-8" />,不知道修好了没
    yylzcom
        14
    yylzcom  
       2014-04-30 22:20:02 +08:00
    @chenxiao07 我这里暂时没效果,还是一样的乱码
    Tink
        15
    Tink  
       2014-04-30 22:25:00 +08:00
    乱码
    TF
        16
    TF  
       2014-04-30 22:43:10 +08:00
    ff下沒棋子
    sujin190
        17
    sujin190  
       2014-04-30 22:48:37 +08:00
    分分钟吧对方老帅干掉,然后分分中自己方老将也被干掉了,然后游戏还在继续。。。
    Numbcoder
        18
    Numbcoder  
       2014-04-30 23:05:00 +08:00
    下了十几分钟,忽然发现我的老将不知道什么时候没了
    honk
        19
    honk  
       2014-04-30 23:22:14 +08:00
    原來我下棋也很厲害,哈哈
    blueandhack
        20
    blueandhack  
       2014-05-01 14:03:26 +08:00
    双方棋子颜色一样?还是因为我色弱的缘故…………
    zzNucker
        21
    zzNucker  
       2014-05-01 14:39:30 +08:00
    @blueandhack 很不幸地告诉你,兄弟你可能是有点色弱。。。。
    viaNull
        22
    viaNull  
       2014-05-01 14:56:13 +08:00
    重炮百分之百可以将死电脑...

    我开局就直奔重炮。。。电脑很聪明的躲避了重跑炮。。。除了这点之外,几乎没发现其他AI ~~
    rankjie
        23
    rankjie  
       2014-05-01 15:01:01 +08:00
    Pete
        24
    Pete  
       2014-05-01 15:02:43 +08:00
    看了很久才发现他走了。
    顺便问问你中文为什么这么好 ==
    phyng
        25
    phyng  
       2014-05-01 18:27:24 +08:00
    喂,虽然我费点劲可以区分出来,但是。。。。。没法下,改个颜色吧
    wuyazi
        26
    wuyazi  
       2014-05-01 18:51:48 +08:00
    将被吃了,还可以走。。
    chuangbo
        27
    chuangbo  
       2014-05-01 20:44:27 +08:00
    好厉害。能详细介绍一下吗?
    Tankpt
        28
    Tankpt  
       2014-05-02 20:04:11 +08:00
    真是牛逼。。点赞
    NovemberEleven
        29
    NovemberEleven  
       2014-05-03 18:56:27 +08:00
    吃了帅没有赢啊。。。
    siteshen
        30
    siteshen  
       2014-05-05 10:45:30 +08:00
    哈哈,大赞最后一个 feature!
    manoon
        31
    manoon  
       2014-05-06 17:38:16 +08:00
    太极限了,有点像汇编的代码。看得头晕。。。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3743 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 01:00 · PVG 09:00 · LAX 17:00 · JFK 20:00
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.