设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 5052|回复: 15
打印 上一主题 下一主题

[随意闲聊] 对于新新新新新手脚本学习的建议

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1024
在线时间
1389 小时
注册时间
2010-8-9
帖子
3471
跳转到指定楼层
1
发表于 2014-11-2 12:35:32 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
本帖最后由 寒冷魔王 于 2014-11-2 13:06 编辑

貌似论坛最近有许多人想要学脚本,于是有很多人发出了疑问:脚本应该怎样学?
作为一名资深的Ruby新新手,本人在这里给那些新新新新新手,新新新新手,以及新新新手一些建议:

#==================================================

1.明确你的目标:
对于RM来说,如果想要进行脚本层次的编辑,学习RGSS是必要的。
RGSS是一种建立在Ruby上的系统 。想要对RGSS有所了解,先要学习Ruby。
下面的各种目标中,本人都对Ruby及RGSS的需求做出了个人性的评判:
每个评分均有四个基本等级:A,B,C,D,在后面将说明其意义。
(1)能够在事件脚本里修改别人已经编好的代码(Ruby:D,RGSS:D)
(2)编写简单的代码,以实现事件的初级脚本化(Ruby:D+,RGSS:C+)
(3)编写类、模块等以实现RGSS的简易扩展(Ruby:C+,RGSS:C+)
(4)简单地修改编辑器的预置脚本(Ruby:C++,RGSS:B)
(5)复杂地修改编辑器的预置脚本(Ruby:C++,RGSS:A)
(6)能够使用纯Ruby编写游戏系统(Ruby:C++/B+/A,RGSS:D)
(7)具有创造RGSS实用代码的能力(Ruby:B+/A,RGSS:A/B++)
说明:
基本合格线:Ruby:C+,RGSS:C+
达到基本合格线的人,具备编写中等代码的能力。
Ruby:
D:会使用基础运算,if,case,for,do,def等基础的语法结构,掌握基础的进程性代码
D+:能够编写基本的进程性代码,并具备使用和分析的能力
C:能够了解Ruby对象性,如class,module等的特征
C+:能够编写基本的对象性代码,并具备使用和分析的能力
【C+以下均为初级水平】
C++:对Ruby系统有一个总体性的掌握,并具有熟练使用的能力
B:了解Ruby的特征,并具备学习的能力,能够学习和使用Ruby手册(区别于RM帮助文档)
B+:理解Ruby的特征,能够进行基本的元编程,能够深入地学习和使用Ruby手册
【B+以下均为进阶水平】
B++:(未出现)了解Ruby系统内部,能够查看Ruby的源代码(需要C语言的知识)
A:未知水平,是个谜

RGSS我不懂,还是请喵呜君吧……

一般来说,具备C+,C+水平的人,就可以编写一般的游戏系统了
通过RM的帮助文档可以达到C+水平,当然需要不断实践

#==================================================

2.对于RM帮助文档的问题,给大家提供一些我的看法
(首先感谢6R的汉化)
明确了目标,要学习脚本,怎么学?很多人想到了RM的帮助文档。
(1)脚本入门
首先,我想说,对于菜鸟还没到的人来说,RM的脚本入门是非常费解的(当年深有体会)
如果只是看,是很难理解的。所以建议找一些其他的资料。
将脚本入门基础篇画出来,划去“开始”“显示图片”,就是Ruby的基础内容。
划分:
{
开始 (X),
数字的计算 ,
变量 ,
字符串 ,
条件分歧 ,
循环 ,
函数 ,
对象 (-),
显示图片 (X),
数组  ,
哈希表 ,
定义类  (-),
}
划(X)表示RGSS内容,划(-)表示对象内容,其余的为进程性内容。
【注】Ruby中一切皆为对象,这里划分只是为了方便学习。

进程性内容非常好学,先将其掌握运用就能达到D+的水平。
对象内容是非常难以理解的,包括很多C的程序员,学习C++,Java时,都感到十分吃力。
所以这里建议先将进程性内容学会。

学到这里,大家就可以学习RGSS了。基本的,诸如$game,$data等等都是一种数据结构,了解一下,基本就可以运用了。

如果还想继续学Ruby,或者RGSS还有许多不明白的,那么就要学Ruby的对象内容了。
这里简单地说明一下:{
①Ruby中一切皆为对象。
②对象具有特定的方法。
   如对象里面的:
     a = "Ruby"
     p a.size        # => 4
   这是Ruby对象性的应用。
③def定义方法可以代替对象方法,想要编写对象方法,需要元编程
④RGSS参考里内建类定义的方法,对于该类实例,都可以使用
    如 "Ruby"是String的实例,想要 "Ruby".xxx就可以查找RM手册里内建类的String;}

(2)RGSS参考
RGSS参考脚本部分包括Ruby内部和RGSS内部。
对于RGSS参考,我想说,第一步先要把Ruby语法的内容掌握。
其次,看你的目标来学习。
划分:{
RGSS 规格(RGSS) ,
Ruby 语法 (Ruby基础),
标准库 (Ruby进阶),
游戏库 (RGSS),
附录 (Ruby联系外部),
}
我只讲Ruby相关:
学完Ruby 语法,其余的Ruby相关你就可以看了。
对于标准库里的东西,一般来说,只是看看就行了。
尤其注意不要去记。因为很多东西都是可以用基本程式来代替的。
标准库提供了许多简便的函数(在“方法”标栏下),使得Ruby可以在一行内完成十行才能完成的东西。
诸如:Array里的:delete(val)
  1. a=[0,1,2,0]
  2. a.delete(0)
  3. p a #=>[1,2]
复制代码
可以在不调用该方法的情况下写为:
  1. a=[0,1,2,0]
  2. n=Array.new
  3. a.each{|x| n.push x if x!=0}
  4. a = n.clone
  5. p a #=>[1,2]
复制代码
继续简化>=<
  1. a=[0,1,2,0]
  2. n=[]; b=0
  3. #赋值n
  4. for i in 0...a.size
  5.    if a[i]!=0
  6.      n[b]=a[i]
  7.      b+=1
  8.   end
  9. end
  10. #复制n
  11. for i in 0...n.size
  12.   a[i]=n[i]
  13. end
  14. p a
复制代码
大家知道= =了吧……

就说到这里,
剩下的就由T君,喵呜君以及各位君及酱来补充了~
T君  喵呜君
谢谢~

摘录:喵呜君的建议:
1. 先稍微学学C语言或者随便什么容易入门的编程语言,或者,至少用纯事件做一个完整的游戏,编程的思维是很重要的
2. 搞懂什么是脚本,搞懂Ruby和RGSS到底是什么关系
3. 不要看F1学Ruby,请翻那些正规的Ruby教程【比如镐头书
4. 有问题到提问区提问

5. 别在论坛随意@
6. 优雅的我才不用for这种东西呢哼

T君的建议:
RGSS参考不是用来学习的,是用来“参考”的。就和一本词典不是用来背的一样

我也补充一点:
学Ruby,真想学好,还是要看专业的书。RM帮助手册上的是非常不全面的。最多能让你达到标准线水平。本人当年只看过RM帮助手册真心明白,上两位君说的话,实在是太对了……

VIP君的建议:
多来提问区回答问题,偶尔试试改改脚本。不知不觉你就会了。
(即使不是完全了解,但是对于你做出一个游戏,这点经验应该够了

评分

参与人数 2星屑 +12 收起 理由
千鬼神 + 10 塞糖
zaiy2863 + 2 塞糖

查看全部评分

SRPG on RM 项目研发组 正式成立。目前SRPG·RMVA系统进度88.8%。SMRC Kernel 进度90%
↖(^ω^)↗热烈庆祝~SMRC Ver5.1 SRPG战棋地图移动范围生成脚本正式发布~~
-----------------------------------------------------------------------------------------
SMRC具有高性能、高兼容、定制自由、使用方便的特点。
1.性能,100移动力轻松算出,无压力;
2.兼容,RGSS1-3通吃,效率保证;
3.支持移动形状定制,支持4方位、6方位、正方形或其他任意有移动规律的形状;
4.可以充当高性能寻路来使用。
【链接点此】
-----------------------------------------------------------------------------------------
【2016/01/06更新 | 改版】RM脚本编辑器Gemini
-----------------------------------------------------------------------------------------

Lv2.观梦者

梦石
0
星屑
550
在线时间
1286 小时
注册时间
2011-6-14
帖子
4086
2
发表于 2014-11-2 12:36:35 | 只看该作者
神奇的斜体再次出现了。
代码框呢……

点评

[b--]  发表于 2014-11-2 12:38
写了[i]= =  发表于 2014-11-2 12:38
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
98
在线时间
1617 小时
注册时间
2013-8-15
帖子
4459
3
发表于 2014-11-2 12:37:11 | 只看该作者
看不懂=_=
只知道全部都是字

点评

233  发表于 2014-11-2 13:18
神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦神烦
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (暗夜天使)

只有笨蛋才会看到

梦石
1
星屑
20950
在线时间
9333 小时
注册时间
2012-6-19
帖子
7106

开拓者短篇九导演组冠军

4
发表于 2014-11-2 12:48:01 | 只看该作者
1. 先稍微学学C语言或者随便什么容易入门的编程语言,或者,至少用纯事件做一个完整的游戏,编程的思维是很重要的
2. 搞懂什么是脚本,搞懂Ruby和RGSS到底是什么关系
3. 不要看F1学Ruby,请翻那些正规的Ruby教程【比如镐头书
4. 有问题到提问区提问

5. 别在论坛随意@
6. 优雅的我才不用for这种东西呢哼

点评

我真没精通-_-||还在学习中  发表于 2014-11-4 15:59
LZ说反了,C是易学难精通  发表于 2014-11-2 21:00
(还好我没说过。反正我不会C)  发表于 2014-11-2 20:03
说C容易精通的我觉得你没精通……  发表于 2014-11-2 20:02
有啥起源的…… for不是现在的高级语言的一个普通的不能再普通的元素了嘛  发表于 2014-11-2 15:09

评分

参与人数 1星屑 +5 收起 理由
寒冷魔王 + 5 233

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者 (版主)

…あたしは天使なんかじゃないわ

梦石
0
星屑
2207
在线时间
4033 小时
注册时间
2010-10-4
帖子
10779

开拓者贵宾

5
发表于 2014-11-2 12:55:34 | 只看该作者
RGSS参考不是用来学习的,是用来“参考”的。就和一本词典不是用来背的一样
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
9275
在线时间
2504 小时
注册时间
2011-5-20
帖子
15389

开拓者

6
发表于 2014-11-2 12:58:52 | 只看该作者
喵呜喵5 发表于 2014-11-1 19:48
1. 先稍微学学C语言或者随便什么容易入门的编程语言,或者,至少用纯事件做一个完整的游戏,编程的思维是很 ...

不用for你能用英文说just for you吗···

点评

连我的for是在说什么都搞不懂就回复了啊……  发表于 2014-11-2 14:44
[s]删除线[/s]  发表于 2014-11-2 13:05
删除线怎么打上?  发表于 2014-11-2 13:02
[img]http://service.t.sina.com.cn/widget/qmd/5339802982/c02e16bd/7.png
回复 支持 反对

使用道具 举报

Lv4.逐梦者 (版主)

无限の剣制

梦石
0
星屑
9956
在线时间
5019 小时
注册时间
2013-2-28
帖子
5030

开拓者贵宾

7
发表于 2014-11-2 13:04:51 | 只看该作者
多来提问区回答问题,偶尔试试改改脚本。不知不觉你就会了。
(即使不是完全了解,但是对于你做出一个游戏,这点经验应该够了
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
112
在线时间
551 小时
注册时间
2012-8-18
帖子
1429
8
发表于 2014-11-2 13:07:50 | 只看该作者
新新新新手建议先完成高中心理课程,以上。

点评

O O威武  发表于 2014-11-2 13:18
可以理解成减少“小学生”数量以求环境清净。  发表于 2014-11-2 13:12
O O那是神马  发表于 2014-11-2 13:10

评分

参与人数 2星屑 +44 收起 理由
taroxd + 22 我很赞同
三途亚梦 + 22 默默点赞

查看全部评分

我要填坑!我要背单词!我要学日语!我要每天锻炼!
好吧呵呵= =
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
821
在线时间
704 小时
注册时间
2012-12-6
帖子
4475

开拓者

9
发表于 2014-11-2 14:28:48 | 只看该作者
新新新新手正在学习易经,无暇学习脚本

点评

= =学习算卦  发表于 2014-11-2 15:13
你别走火入魔了= =  发表于 2014-11-2 14:49
美国圣地亚戈(金坷垃生产公司)唯一官网
我是万年大水比、大坑比,已经有好几个天坑扔了
新坑素材收集中……
我什么都不会,只是一只渣
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1611
在线时间
2205 小时
注册时间
2010-6-27
帖子
1299
10
发表于 2014-11-2 14:38:58 | 只看该作者
还是摆脱不了中国式教学法 看着都累

于是我也广告下…
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-4-27 04:29

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表