luin / codegame Goto Github PK
View Code? Open in Web Editor NEW🎮 JavaScript AI tank game
Home Page: http://zihua.li/2014/11/talk-about-codegame/
🎮 JavaScript AI tank game
Home Page: http://zihua.li/2014/11/talk-about-codegame/
模拟杯赛形式(64进32,32进16),可以减少排行榜的计算量
经过多次调试发现
[email protected] build /home/zp/CodeGame-1.1.0
gulp build
/usr/bin/env: "node": 没有那个文件或目录
npm ERR! Linux 4.8.0-22-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "run" "build"
npm ERR! node v4.2.6
npm ERR! npm v3.5.2
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! [email protected] build: gulp build
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the [email protected] build script 'gulp build'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the CodeGame package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! gulp build
npm ERR! You can get information on how to open an issue for this project with:
npm ERR! npm bugs CodeGame
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls CodeGame
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/zp/CodeGame-1.1.0/npm-debug.log
目前的榜单上, 很多人的名字前的序号和自己的主页显示的不一样。
原因是没有第五名,直接从第四到第六。是第五名注销了吗?
更新:不仅没有第五名,整个榜单一共少了大概八个名次,第一百显示的是一百零八。
有些时候漫无目的的一步一炮也能干掉算法高明的对手。。。
一步一步似爪牙,似魔鬼的步伐
你们能想象到大半夜的我刚改完解析引擎,用我的代码随便挑了个人对战,前两次正常,第三次竟然发现结果不一样了。于是忐忑地换了个人,结果也是两轮结果完全不一样。我当时就吓坏了好么。。。结果发现随便挑的两个人都用了 Math.random。
我觉得用 Math.random 对于 AI 来说意义不是很明显,而且每次结果是不确定的,不知道对比赛来说是不是件好事。大家可以讨论一下
有数据库sql吗 还是只有程序文件
开局下到[2,7]
转向开炮后,蓝方没能读到红方的子弹
想看自己的AI勾心斗角ˊ_>ˋ
因为在对称的地图与自己对战的情况下,两个坦克的行为都是一样的,往往不能调试出什么东西
所以希望加入以下功能:
不填写调试对象的情况下进入单步调试
模式
玩家通过键盘控制敌人可以更好的形成我们需要调试的对战状态
而且可以尽可能的测试一些在实际对战中可能出现的任何情况
玩家可以手动的调戏自己的AI,从而找出自己AI的不足(严肃
大家可以讨论一下,因为我自己是挺想有这样的调试方法,不知道实现起来会不会很困难。
cp config _sample.json development.json
readme安装步骤写错了吧,应该是
cd config
cp _sample.json development.json
类似COC的相应功能,可以增加玩家之间的互动
提供一个功能随机从数据库取一个 AI 和你对战,不算分的。
这样可以避免针对某个玩家人调整自己的 AI
rt
http://codegame.org/chairuosen/vs/icreeperi
我与这位仁兄对战录像第一步就结束,对方赢,原因对手代码超时。
坦克一步未走。如果是我代码问题应该与其他人对战均会复现,但是与其他人对战没有复现。
在编辑器下如果填写对手ID可以模拟对战
但如果对方ID里面有非英文字符的情况下点预览
预览按钮变灰色然后无法显示战斗结果(也没有错误提示)
比如 McFog Wang (中间有空格)
运行环境 Ubuntu 14.04 , node 0.11+ , 安装了redis 2.4+.
依照在slack里的办法能够用github账户登录,但是里面没地图,地图应该是用数据库储存的。但是请求 /map会给出 'not admin' , 我读了下代码,是在config里要加个login什么的吗?完全不熟悉node。
后来我把isAdmin设置为true,/map可以访问,只能看见编辑size的form还有命名的form,但是编辑地图的图形界面还是看不到。不知道为什么,可能是我只改了isAdmin这一个地方。
BTW: heroku上可以跑这个吗?如果可以的话,可以用多个虚拟机来分担压力吗?每次挑战请求收到的时候分配到某个空闲的虚拟机上运行。不知道这样是不是有用?
地图貌似有BUG... 死亡草原那边怎么获取都有问题 本来是草丛的识别出来是石头...
“这些需要改进的敌方就交给大家来做了,加油!”
Ctrl + S 储存代码
Ctrl + P 预览
Alt + P 目标对战用户编辑框获取焦点
另外希望储存成功不弹窗,往旁边显示几秒后隐藏挺好,上传失败的话保留错误信息。
除了前进以外,是否可以有倒车功能(可以比前进慢),在做防弹逃逸和两车相遇时有更多的策略。
例如:
在狭窄通道中迎面遇到子弹的策略:
具体做法是,每当有人吃到一个星星,游戏的结束时间就增加N帧(个人觉得20帧挺适合的)
如果双方都比较积极的话,游戏过程会更激烈
现在是代码运行时间最短的玩家获胜,所以很多简单转圈的选手会赢。新规则可能会促使玩家不再消极防守
当一辆坦克被石头弹回,另一辆坦克行驶到弹回后的地方时,两辆坦克会重叠。
玩家: 0 [帧数: 4 执行时间: 21ms] Script execution timed out.editor.js:1 o.print
不知道是我的代码问题还是什么问题,报告o.print出错
运行一天占用内存到 1GB,导致服务崩溃
if 我的坦克朝左,then 向左转,完毕,这样我的坦克应该是向下了。但到下一轮获取我的坦克方向的时候还是left。
在主页点击使用github登录后,跳转到http://127.0.0.1:3000/account/github/callback访问出错
经常发现与人对战时自己坦克的诡异行为,但是在单人的预览时又无法复现(预览没什么效果,因为逻辑相同,两个坦克完全是镜像)
希望可以用查LOG方式来找到BUG
点击创建我的AI后,进入代码编辑页面,然后直接点预览的话服务器成功发送一个POST包但是浏览器并没有反应,此时预览按钮灰色.public\js中app.js、vs.js红色报错“Cannot invoke an excpression whose type lacks a call signature.”
一个建议,草丛中移动一个需要两帧时间,有如下好处:
如果说,致胜最多的原因能够显示一个AI的强项
相对的,落败最多的原因能够显示一个AI的弱项
如果两方面都能显示,是不是会更好一些呢?
好几天名次都没有变化……
现在是使用 CSS Animation 实现的动画,简单但是效果在 Safari 或一些浏览器上效果不好。考虑使用 Canvas 重写。
逻辑上应该返回被执行时的值
现在只有一个地图,很容易写出针对的算法。比赛时应该使用专用且保密(或随机)的比赛地图
现在可以选择比配对手了这个不错。
不过建议在旁边加多一个勾选"随机练习对手"的选项。
这样开着5倍速可以快速测试自己的算法?(不知道会不会大大增加服务器负担)
就从
top100
里面随机就好~
不加也没所谓,就是懒得去排行榜找人来训练了而已
events.js:141
throw er; // Unhandled 'error' event
^
CssSyntaxError: /home/feng/code/CodeGame/client/css/app.css:1412:20: Missed semicolon
at Input.error (/home/feng/code/CodeGame/node_modules/postcss/lib/input.js:65:21)
at Parser.checkMissedSemicolon (/home/feng/code/CodeGame/node_modules/postcss/lib/parser.js:440:30)
at Parser.decl (/home/feng/code/CodeGame/node_modules/postcss/lib/parser.js:277:18)
at Parser.word (/home/feng/code/CodeGame/node_modules/postcss/lib/parser.js:136:30)
at Parser.loop (/home/feng/code/CodeGame/node_modules/postcss/lib/parser.js:61:26)
at Object.parse [as default] (/home/feng/code/CodeGame/node_modules/postcss/lib/parse.js:21:12)
at new LazyResult (/home/feng/code/CodeGame/node_modules/postcss/lib/lazy-result.js:54:42)
at Processor.process (/home/feng/code/CodeGame/node_modules/postcss/lib/processor.js:30:16)
at /home/feng/code/CodeGame/node_modules/myth/lib/features.js:131:25
at Rework.use (/home/feng/code/CodeGame/node_modules/rework/index.js:50:3)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.