- 浏览: 340027 次
- 性别:
- 来自: 蕲春->上海
文章分类
最新评论
-
duanyu010:
"Devel"选项 选项下包含了多个 gc ...
在cygwin中安装gcc编译器 -
brown802:
Event.observe('test', 'click',f ...
Prototype中的Event.observe用法 -
zhangyanan_it:
讲一下好吧!
Rails MD5 SHA1 加密用戶密碼 -
zhangyanan_it:
多谢!
Rails MD5 SHA1 加密用戶密碼 -
virusswb:
paperclip文件上传
在Rails中快速方便地使用Tiny mce编辑器
这个游戏是由ryanb(就是制作railscasts的牛牛)编写的。
项目主页:http://github.com/ryanb/ruby-warrior/tree/master
git拖下来: git clone git://github.com/ryanb/ruby-warrior.git
也可以直接打开项目主页,点击下载按钮下载解压即可.
这个游戏以一种有趣交互的方式来教你使用Ruby语言和人工智能。
在游戏中你扮演一个勇士去攀登高塔得到顶层的珍贵的红宝石。
在塔中每一层也就是每一关,你需要编写一个Ruby脚本来指导主角如何到达楼梯处然后进入下一关。
这是Ruby勇士,play_turn相当于回合制游戏中的一个合回。
在每一关你必须给足主角战斗的力量,你得考虑主角还有多少生命值,什么时候得休息恢复一下生命值等等。注意:每一个回合里,主角只能有一步操作。
随着一关关的进行,游戏主角操作的能力会越来越多,敌人越来越难,就看你如何编写出漂亮的代码让主角通关啦。
具体玩法:
把项目下载到本地后,直接进入ruby-warrior/bin目录,运行rubywarrior命令就可以开玩了。
系统会提示你是选择入门级别还是高手级别的。输入数字选好后回车,会在当前的ruby-warrior/bin目录下生成一个ruby-warrior/beginner-tower目录(选择入门级别)
第一关会生成一个level-001目录,里面有player.rb和Readme文件,照着README文件来进行没错。
在每一关的目录中把代码编写好后,执行 ./rubywarrior 命令来运行 编写的代码
第一关: 这关很简单,就是要主角直接走到楼梯外就可以了。
第一关执行过程和结果:
第二关:这关里有一个敌人,主角得走一下判断一下,如果遇到了敌人就干掉它。
第二关执行过程和结果:
很好玩的游戏,大家来继续,我这里就不演示下去了。
那就写{}呗
def fun
...
end
换成
def fun{
...
}
?
可是似乎不可以的啊
那就写{}呗
项目主页:http://github.com/ryanb/ruby-warrior/tree/master
git拖下来: git clone git://github.com/ryanb/ruby-warrior.git
也可以直接打开项目主页,点击下载按钮下载解压即可.
这个游戏以一种有趣交互的方式来教你使用Ruby语言和人工智能。
在游戏中你扮演一个勇士去攀登高塔得到顶层的珍贵的红宝石。
在塔中每一层也就是每一关,你需要编写一个Ruby脚本来指导主角如何到达楼梯处然后进入下一关。
这是Ruby勇士,play_turn相当于回合制游戏中的一个合回。
class Player def play_turn(warrior) # your code goes here 代码写在这里 end end
在每一关你必须给足主角战斗的力量,你得考虑主角还有多少生命值,什么时候得休息恢复一下生命值等等。注意:每一个回合里,主角只能有一步操作。
随着一关关的进行,游戏主角操作的能力会越来越多,敌人越来越难,就看你如何编写出漂亮的代码让主角通关啦。
具体玩法:
把项目下载到本地后,直接进入ruby-warrior/bin目录,运行rubywarrior命令就可以开玩了。
系统会提示你是选择入门级别还是高手级别的。输入数字选好后回车,会在当前的ruby-warrior/bin目录下生成一个ruby-warrior/beginner-tower目录(选择入门级别)
第一关会生成一个level-001目录,里面有player.rb和Readme文件,照着README文件来进行没错。
在每一关的目录中把代码编写好后,执行 ./rubywarrior 命令来运行 编写的代码
第一关: 这关很简单,就是要主角直接走到楼梯外就可以了。
class Player def play_turn(warrior) warrior.walk! # 在第一关只有这个行走的方法。 end end
第一关执行过程和结果:
引用
qichunren@qichunren-laptop:~/code/ruby-warrior/bin$ ./rubywarrior
Welcome to Ruby Warrior
[1] qichunren - beginner - level 1 - score 0
[2] New Profile
Choose profile by typing the number: 1
Starting Level 1
- turn 1 -
--------
|@ >|
--------
qichunren walks forward
- turn 2 -
--------
| @ >|
--------
qichunren walks forward
- turn 3 -
--------
| @ >|
--------
qichunren walks forward
- turn 4 -
--------
| @ >|
--------
qichunren walks forward
- turn 5 -
--------
| @ >|
--------
qichunren walks forward
- turn 6 -
--------
| @ >|
--------
qichunren walks forward
- turn 7 -
--------
| @>|
--------
qichunren walks forward
Success! You have found the stairs.
Level Score: 0
Time Bonus: 8
Clear Bonus: 2
Total Score: 10
Would you like to continue on to the next level? [yn]
Welcome to Ruby Warrior
[1] qichunren - beginner - level 1 - score 0
[2] New Profile
Choose profile by typing the number: 1
Starting Level 1
- turn 1 -
--------
|@ >|
--------
qichunren walks forward
- turn 2 -
--------
| @ >|
--------
qichunren walks forward
- turn 3 -
--------
| @ >|
--------
qichunren walks forward
- turn 4 -
--------
| @ >|
--------
qichunren walks forward
- turn 5 -
--------
| @ >|
--------
qichunren walks forward
- turn 6 -
--------
| @ >|
--------
qichunren walks forward
- turn 7 -
--------
| @>|
--------
qichunren walks forward
Success! You have found the stairs.
Level Score: 0
Time Bonus: 8
Clear Bonus: 2
Total Score: 10
Would you like to continue on to the next level? [yn]
第二关:这关里有一个敌人,主角得走一下判断一下,如果遇到了敌人就干掉它。
class Player def play_turn(warrior) if warrior.feel.empty? warrior.walk! else warrior.attack! end end end
第二关执行过程和结果:
引用
qichunren@qichunren-laptop:~/code/ruby-warrior/bin$ ./rubywarrior
Welcome to Ruby Warrior
[1] qichunren - beginner - level 2 - score 10
[2] New Profile
Choose profile by typing the number: 1
Starting Level 2
- turn 1 -
--------
|@ s >|
--------
qichunren walks forward
- turn 2 -
--------
| @ s >|
--------
qichunren walks forward
- turn 3 -
--------
| @ s >|
--------
qichunren walks forward
- turn 4 -
--------
| @s >|
--------
qichunren attacks Sludge
Sludge takes 5 damage, 7 health power left
Sludge attacks qichunren
qichunren takes 3 damage, 17 health power left
- turn 5 -
--------
| @s >|
--------
qichunren attacks Sludge
Sludge takes 5 damage, 2 health power left
Sludge attacks qichunren
qichunren takes 3 damage, 14 health power left
- turn 6 -
--------
| @s >|
--------
qichunren attacks Sludge
Sludge takes 5 damage, -3 health power left
Sludge dies
qichunren earns 12 points
- turn 7 -
--------
| @ >|
--------
qichunren walks forward
- turn 8 -
--------
| @ >|
--------
qichunren walks forward
- turn 9 -
--------
| @ >|
--------
qichunren walks forward
- turn 10 -
--------
| @>|
--------
qichunren walks forward
Success! You have found the stairs.
Level Score: 12
Time Bonus: 10
Clear Bonus: 4
Total Score: 36
Would you like to continue on to the next level? [yn]
Welcome to Ruby Warrior
[1] qichunren - beginner - level 2 - score 10
[2] New Profile
Choose profile by typing the number: 1
Starting Level 2
- turn 1 -
--------
|@ s >|
--------
qichunren walks forward
- turn 2 -
--------
| @ s >|
--------
qichunren walks forward
- turn 3 -
--------
| @ s >|
--------
qichunren walks forward
- turn 4 -
--------
| @s >|
--------
qichunren attacks Sludge
Sludge takes 5 damage, 7 health power left
Sludge attacks qichunren
qichunren takes 3 damage, 17 health power left
- turn 5 -
--------
| @s >|
--------
qichunren attacks Sludge
Sludge takes 5 damage, 2 health power left
Sludge attacks qichunren
qichunren takes 3 damage, 14 health power left
- turn 6 -
--------
| @s >|
--------
qichunren attacks Sludge
Sludge takes 5 damage, -3 health power left
Sludge dies
qichunren earns 12 points
- turn 7 -
--------
| @ >|
--------
qichunren walks forward
- turn 8 -
--------
| @ >|
--------
qichunren walks forward
- turn 9 -
--------
| @ >|
--------
qichunren walks forward
- turn 10 -
--------
| @>|
--------
qichunren walks forward
Success! You have found the stairs.
Level Score: 12
Time Bonus: 10
Clear Bonus: 4
Total Score: 36
Would you like to continue on to the next level? [yn]
很好玩的游戏,大家来继续,我这里就不演示下去了。
评论
20 楼
miroku
2009-07-31
下不下来,能打个包 让我在JE上下载吗
19 楼
darkhucx
2009-07-02
非常有趣的游戏!
18 楼
Java控
2009-06-19
icefishc 写道
Java控 写道
终于到了简单第8关了····哈哈 做个游戏感觉不错 可以让一个没接触过ruby的我在不枯燥的情况下熟悉ruby各种特征 ···
尤其是他对于写法的接受程度
因为我是个javaer
所以 写完每句后 总是不自觉的加上了“;”
到了第三关的时候才发下我有个写了“;”有的没写 ruby竟然也没搭理我 自顾自的运行着····· 等我把所有的“;”都删了以后 发现if的括号也可以去掉·····之后发现call方法的时候 传参数也可以不加括号····· 另外写上一些乱七八糟的字 只要不影响程序逻辑 ruby根本就不搭理你 ···不像是java 稍微写错一个符号 就编译都通过不了····
开始接触ruby已经两天了 ··又刚开始的别扭 到现在的舒服···真的很舒服···不见了那些烦人的括号 烦人的分号·····不过不爽的地方时end 我还是喜欢{}包围··
尤其是他对于写法的接受程度
因为我是个javaer
所以 写完每句后 总是不自觉的加上了“;”
到了第三关的时候才发下我有个写了“;”有的没写 ruby竟然也没搭理我 自顾自的运行着····· 等我把所有的“;”都删了以后 发现if的括号也可以去掉·····之后发现call方法的时候 传参数也可以不加括号····· 另外写上一些乱七八糟的字 只要不影响程序逻辑 ruby根本就不搭理你 ···不像是java 稍微写错一个符号 就编译都通过不了····
开始接触ruby已经两天了 ··又刚开始的别扭 到现在的舒服···真的很舒服···不见了那些烦人的括号 烦人的分号·····不过不爽的地方时end 我还是喜欢{}包围··
那就写{}呗
def fun
...
end
换成
def fun{
...
}
?
可是似乎不可以的啊
17 楼
icefishc
2009-06-17
Java控 写道
终于到了简单第8关了····哈哈 做个游戏感觉不错 可以让一个没接触过ruby的我在不枯燥的情况下熟悉ruby各种特征 ···
尤其是他对于写法的接受程度
因为我是个javaer
所以 写完每句后 总是不自觉的加上了“;”
到了第三关的时候才发下我有个写了“;”有的没写 ruby竟然也没搭理我 自顾自的运行着····· 等我把所有的“;”都删了以后 发现if的括号也可以去掉·····之后发现call方法的时候 传参数也可以不加括号····· 另外写上一些乱七八糟的字 只要不影响程序逻辑 ruby根本就不搭理你 ···不像是java 稍微写错一个符号 就编译都通过不了····
开始接触ruby已经两天了 ··又刚开始的别扭 到现在的舒服···真的很舒服···不见了那些烦人的括号 烦人的分号·····不过不爽的地方时end 我还是喜欢{}包围··
尤其是他对于写法的接受程度
因为我是个javaer
所以 写完每句后 总是不自觉的加上了“;”
到了第三关的时候才发下我有个写了“;”有的没写 ruby竟然也没搭理我 自顾自的运行着····· 等我把所有的“;”都删了以后 发现if的括号也可以去掉·····之后发现call方法的时候 传参数也可以不加括号····· 另外写上一些乱七八糟的字 只要不影响程序逻辑 ruby根本就不搭理你 ···不像是java 稍微写错一个符号 就编译都通过不了····
开始接触ruby已经两天了 ··又刚开始的别扭 到现在的舒服···真的很舒服···不见了那些烦人的括号 烦人的分号·····不过不爽的地方时end 我还是喜欢{}包围··
那就写{}呗
16 楼
Java控
2009-06-17
终于到了简单第8关了····哈哈 做个游戏感觉不错 可以让一个没接触过ruby的我在不枯燥的情况下熟悉ruby各种特征 ···
尤其是他对于写法的接受程度
因为我是个javaer
所以 写完每句后 总是不自觉的加上了“;”
到了第三关的时候才发下我有个写了“;”有的没写 ruby竟然也没搭理我 自顾自的运行着····· 等我把所有的“;”都删了以后 发现if的括号也可以去掉·····之后发现call方法的时候 传参数也可以不加括号····· 另外写上一些乱七八糟的字 只要不影响程序逻辑 ruby根本就不搭理你 ···不像是java 稍微写错一个符号 就编译都通过不了····
开始接触ruby已经两天了 ··又刚开始的别扭 到现在的舒服···真的很舒服···不见了那些烦人的括号 烦人的分号·····不过不爽的地方时end 我还是喜欢{}包围··
尤其是他对于写法的接受程度
因为我是个javaer
所以 写完每句后 总是不自觉的加上了“;”
到了第三关的时候才发下我有个写了“;”有的没写 ruby竟然也没搭理我 自顾自的运行着····· 等我把所有的“;”都删了以后 发现if的括号也可以去掉·····之后发现call方法的时候 传参数也可以不加括号····· 另外写上一些乱七八糟的字 只要不影响程序逻辑 ruby根本就不搭理你 ···不像是java 稍微写错一个符号 就编译都通过不了····
开始接触ruby已经两天了 ··又刚开始的别扭 到现在的舒服···真的很舒服···不见了那些烦人的括号 烦人的分号·····不过不爽的地方时end 我还是喜欢{}包围··
15 楼
Java控
2009-06-16
郁闷 怪我自己E文学的不好·····竟然选择的中等 ··对于我这个刚接触ruby不到一月的javaer······是在是郁闷啊···看到我的地图怎么和楼主说的不一样 还以为是版本更新了呢····在中等二关困扰了很久 才发现我选择的是中等····啊· 以后一定要学好e文 最小基本的要会
14 楼
joey.he
2009-06-03
靠,这种学习方式很好嘛~~~
13 楼
destinyd
2009-05-24
beginner 总共LEVEL 9
intermediate 总共level 6
想做通用的智能没那么容易的
还是针对每关来做容易上手些
intermediate 总共level 6
想做通用的智能没那么容易的
还是针对每关来做容易上手些
12 楼
hhhtj
2009-05-17
spaces = warrior.look
spaces.each do |s|
warrior.shoot! and return if s.enemy? && !s.captive?
return if s.captive?
end
spaces.each do |s|
warrior.shoot! and return if s.enemy? && !s.captive?
return if s.captive?
end
11 楼
xinghu
2009-05-15
在第8关卡住了,look怎么用?
10 楼
aaronluo
2009-05-15
Java我记得有个GUI形式的坦克大战,不过那个难度大了点,需要考虑分析的东西太多,诸如坦克的方向和炮台的角度,敌人的速度和方向,对于初学者难度不小。这个感觉很好,刚过下载写了三关
9 楼
Hooopo
2009-05-14
貌似可以做成GUI的..
8 楼
xhanxhanxhan
2009-05-14
好玩。。作者是railscast那位哟
7 楼
Hooopo
2009-05-13
额,,,很强大~~~~~~~~不错的游戏,,还可以学习ruby,,哇咔咔
6 楼
hhhtj
2009-05-13
第8关开始可以look,想要写个可处理各种情况的warrior就有点复杂了。
5 楼
daerqwert
2009-05-12
java飘过。不过还是想去学学ruby。
4 楼
darkbaby123
2009-05-12
刚玩到新手第6关,发现已经写了很多if else,不知道下面编的会不会越来越烂……
3 楼
skymouse
2009-05-12
先收起来,以后再看
2 楼
hankwang
2009-05-12
最近才剛開始學Ruby~
剛試了一下,似乎還挺不錯。
從遊戲中學習這概念真的很棒
不知道其他語言是否有類似這樣的傑作
順帶一提這讓我想到 Randy Pauch創的 Alice http://www.alice.org/
剛試了一下,似乎還挺不錯。
從遊戲中學習這概念真的很棒
不知道其他語言是否有類似這樣的傑作
順帶一提這讓我想到 Randy Pauch創的 Alice http://www.alice.org/
1 楼
yb31
2009-05-12
还挺好玩.lz共009关?
---------
额.看到了原来是新手9关..
---------
额.看到了原来是新手9关..
发表评论
-
使用Ruby Encoder加密Ruby代码
2012-02-27 13:56 2419Use Rubyencoder Encrypt Ruby ... -
解决oracle-enhancedk中的一个bug
2010-12-06 09:57 0usermatoMacBook-Pro:jjsc_web_ba ... -
mac osx上安装rmagick
2010-10-25 12:03 4271本来以为安装这个超级麻烦,我那时是想从源码编译安装,后来找到p ... -
dduuuuuuu
2010-10-20 21:02 0说说rspec2 rspec2 前不久出来了,它 ... -
最新版本的gcc编译安装fcgi出错的解决办法
2010-03-06 17:43 10277最近在折腾vps,在上面步骤ROR应用,部署方案还是用我倾向的 ... -
来自O’Reilly出版社的《Ruby Best Practices》
2010-03-04 17:40 1776我在rubyinside网站上看到了《Ruby Best Pr ... -
手机版网站开发(1)
2010-01-25 18:16 0要开始着手这方面的事情了,所以通些这段时间的调研,发现要关注的 ... -
在Ruby中调用存储过程
2010-01-23 10:57 0在pl/sql developer里 Connected t ... -
Rails2.0.2中rake在production环境不能log
2010-01-22 15:14 1309目前的定时任务是用cron + rake。 在rake中使用 ... -
Will_paginate支持分页和排序的多条件查询
2009-12-28 11:09 0Logistic Model # 支持分页和排序的多条件查 ... -
Rails生成HTML
2009-12-28 10:59 1789在Rails中生成HTML一般有现在的Page Cache,不 ... -
Ruby中处理Excel
2009-12-19 14:23 1227发现了一个很不错的解决方案: 这里是它的GUIDE http: ... -
在Rails中的 Model中使用current_user
2009-12-19 12:31 4710在Rails中的 Model(业务层)中使用current_u ... -
在Ruby中处理压缩文件
2009-12-18 18:39 1068http://rubyzip.sourceforge.net/ ... -
火星高楼抢楼机器人
2009-08-05 14:15 13352009-8-14下午JavaEye登录更新了,加了图片验证码 ... -
Rails中使用好named_scope与时间区间
2009-07-18 00:56 2487在我最近的工作中,由于要做数据统计,与时间区间打交道非常多,如 ... -
Ruby中的类方法与实例方法
2009-06-28 18:12 3107原文:http://railstips.org/2 ... -
Rails社区对Rails3特性的讨论和反馈
2009-05-31 21:29 2343Rails官方博客写道他们在UserVoice上建立了一个讨论 ... -
为非Restful的action准备的插件:static_actions
2009-05-30 10:06 1292如果我们的Rails应用里能够全部Restful,那很cool ... -
Ruby游戏开发利器Gosu
2009-05-16 18:46 3124在2009年的Railsconf大会上,Hongli Lai和 ...
相关推荐
ruby勇士,初学者边游戏边学习ruby的好玩的东西。具体玩法在 http://www.javaeye.com/topic/383938,或者Google一下“ruby勇士”。因为下载游戏的网站有时访问不了,上传一下提供下载。
在提供的压缩包文件中,"Premier.Press.Game.Programming.with.Python.Lua.and.Ruby.ebook-LiB.chm"很可能是一本关于使用这三种语言进行游戏编程的电子书,它可能会详细介绍如何利用这些语言来开发游戏,涵盖从基础...
游戏脚本语言(ruby初步) 游戏脚本语言是游戏开发中不可或缺的一部分,而 ruby 是一种广泛应用于游戏脚本编程的语言。了解游戏脚本编程的基础是游戏...了解 Ruby语言的基础知识对于游戏开发者来说是非常重要的。
Ruby中机器学习的实用资源
本资料包针对Ruby学习者提供了丰富的资源,对于初学者来说是非常有价值的。 1. **Ruby基础知识**: - 变量:Ruby支持局部变量、实例变量、类变量和全局变量,它们以不同的符号开头,如`@`、`$`等。 - 类与对象:...
### Ruby/tk 学习资料知识点详述 #### 核心概念:Ruby/tk简介与基本操作 **标题**:“Ruby/tk学习资料” **描述**:“自己整理的Ruby/tk学习资料!” **标签**:“Ruby” **部分内容**:RUBY/tk学习文档 在本...
学习 Ruby 的旅程即将开始! Ruby 是一种功能强大、灵活的编程语言,广泛应用... Ruby 是一种复杂的语言,需要时间和努力来掌握。不要气馁,坚持学习和实践,你一定可以成为一名优秀的 Ruby 开发者。学习 Ruby 的过程中
在学习Ruby的过程中,你还需要了解一些工具,如Ruby的解释器irb(交互式Ruby环境)和ri/rdoc(Ruby文档工具),它们有助于调试和理解代码。版本管理工具如RVM(Ruby Version Manager)和rbenv可以帮助你管理多个Ruby...
编程知识+技术开发+从技术小白到Ruby编程专家的学习路径;编程知识+技术开发+从技术小白到Ruby编程专家的学习路径;编程知识+技术开发+从技术小白到Ruby编程专家的学习路径;编程知识+技术开发+从技术小白到Ruby编程...
6. 测试驱动开发(TDD):学习使用测试工具如RSpec,实践TDD的方法来编写健壮的代码。 7. 实践项目:参与开源项目或自己创建小项目,将理论知识应用于实际场景。 通过这些步骤,你可以逐步提升Ruby编程技能,同时...
标题中的“Python & Ruby 学习”表明了这个压缩包文件包含了与这两种编程语言学习相关的资源。Python 和 Ruby 都是流行的高级编程语言,广泛应用于Web开发、数据分析、自动化脚本等多个领域。以下是对这两个语言的...
"Ruby新手学习书"和"Rails_4_days"这两个资源是为初学者设计的,旨在帮助他们快速掌握Ruby语言的基础以及Rails框架的核心概念。 在Ruby语言中文教程中,你将学到以下关键知识点: 1. **基础语法**:Ruby的语法简洁...
综合来看,Python、Lua和Ruby各有其在游戏开发中的优势。Python适合快速开发和原型验证,Lua则在大型游戏引擎中广泛应用,而Ruby则为喜欢其语法风格的开发者提供了另一种选择。在实际项目中,开发者通常会结合这些...
Ruby Ruby Ruby Ruby Ruby Ruby
在本书中,读者将学习如何利用这些语言的特性来构建游戏的基本结构,包括游戏循环、碰撞检测、精灵动画、用户交互以及游戏物理系统。同时,还会涉及如何整合外部资源如图像、声音和数据文件,以及如何优化性能和调试...
Ruby基础语法经典学习PPT教程. 网上关于ruby的PPT教程不太多,这个个人觉得还可以。
总的来说,Ruby-TensorStream为Ruby开发者提供了一个强大的深度学习工具,它结合了TensorFlow的威力和Ruby的优雅,使得机器学习变得更加易用和可访问。无论是初学者还是有经验的开发者,都能在Ruby-TensorStream中...
标题中的“ruby学习一个综合小练习”表明这是一个关于Ruby编程语言的学习资源,可能是通过一个实际的小项目或练习来帮助学习者提升对Ruby的理解。描述中提到的“博文链接”指向了一个特定的博客文章,虽然没有给出...