Project1

标题: 脚本学习的概念--给那些想入门脚本的人 [打印本页]

作者: sizz123    时间: 2008-6-12 05:22
标题: 脚本学习的概念--给那些想入门脚本的人
  如果你会任何一种计算机语言,就不要看下去了.  
  脚本学习并不像某些人说的那样,10个小时就能完成,要不然c语言也不会教1年了.对于那些想入门学脚本的人,看到论坛上形形色色的脚本,反而会眼花缭乱,不知所措.所以我写了以下的段子,简单说明脚本的一些概念.

一,语言和计算机代码
    把事件和脚本分成两种事物是一种误导,两者同为计算机代码产物,唯一不同的是:“事件是中文的,脚本是英语的。”鸟语么,头痛!密密麻麻地大片蚯蚓,说白了就是那点关键字,剩下的就是逻辑表达类的东西了。无论你英语好不好,对学编程并没有太大的影响----比如玩《魂斗罗》,拿一个m就是苹果弹(子弹像苹果),但是那个时候知道m是machinegun吗?

  “单词看不懂?这有什么关系”计算机是你自己的,你可以把一些单词按照自己的意思去理解,比如define(def)你可以叫做定义,也可以叫做创建一个方法或者比较游戏的说法“召唤”也可以。唯一要记得的是,那个单词是用在设计一个新的方法上的(设计又是一个新词汇)。就象上面说的,你没有必要把machinegun非要翻译成机关枪,只要知道那是《魂斗罗》中的一种子弹就好了,计算机是不会解释单词的,它也看不懂单词---担心语言完全是多余的。

二,把编程当作游戏
    编程和玩游戏其实就是两种不同类型的电脑游戏,不同在于“付出和获得的比例”。玩游戏是直接反应本能---就好像飞行射击游戏一样,只要躲避身边的子弹即可,不用是理会其他的子弹;但编程像是策略游戏:一步错,满盘输---比如用全角写了个逗号,比如用数字开头写名称,都会导致脚本不能执行。你损机了,表示你只中了一颗子弹;你写的脚本出错了,并不表示只有一个错误。自然了,stg无法存档,脚本写错了可以修改。
   编程中出现错误就如同吃饭一样,是必然的:很多考虑到但无法解决,或是根本没有考虑到的问题发生。理论上可行的东西,实际上就是不可以的事情经常出现。

三,脚本概念的诉说
   
   编程,很大一部分都是在存储调用数据。
   1,道具--数据类型
   计算机在计算的时候,要在内存中开辟空间来保存数据。根据定义的数据类型不同,开辟的空间大小也不同,有整数、浮点数、字符(串),真、假等。
   
    2,小箱子--变量
    整数、浮点数、字符(串),真、假等数据类型,都是表示一种道具。而变量就好象一个装这些道具的箱子,每个变量只能装1个数据或是该数据计算的结果。变量这个箱子,不仅可以装数据,而且类,方法,模块什么的都是可以装的,但只能装1个.这里建议看主站上《常用事件》,上面列举了rm全部的事件语句.
   
3,大箱子---数组
    数组是变量的升级版本形态,作用是:“可以把相当多的数据存储起来,并且可以删除,创建新的数据。”比如:《恶魔城的地图探索》就是把角色走过的坐标放在数组中,然后判断是否重复。

4,房子---函数
    函数的概念就是公共事件,把一些经常要使用的语句放在函数中,然后只要使用函数名称就表示运行语句。
     def good
     语句1,语句2....,语句n
     end
作好这个定义后,只要使用good就能执行从语句1到n,而不用每次都写。

5,类
   常常可以看见这个样式的语句
   class xxx  #这就是类的定义
   def xxx
   xxxxx
   xxxxxx
   end
   end
   类不太好解释,什么人类,什么狗类对计算机是没有意义的。根据需要,你可以把人分在狗类中,也可以把牛放在马类中---类的好处是:只要不调用就不执行,只要不调用就出不了错误(你不说,连天也不知道)----类是给人看的,只要你能找个说法,怎么分类都可以。


  6,文件
   文件的作用是存储大量的数据用的,任何软件都有文件存储的概念。比如Actors.rxdata就是存放角色相关信息的文件,游戏通过存档命令将角色信息写到文件中,读的时候也从那文件读。我第一次接触rm文件的概念是:“二周目的制作。”通关后输出一个代码到文本,然后新建游戏中判断有没有那个代码。

  以上是编程中经常出现的概念,说明一些,到时候和别人讨论的时候也明白.


四,经常的练习
  学到一个知识后,如果有条件就要立即实验!因为英语的东西毕竟不好记忆,虽然在第一段中说“不要在乎语言问题”,但那是建立在长期编辑的基础上的。经常练习,才能产生一种感,如同小宇宙第七感一样----就算你不知道那个单词的意思,也知道那单词用在什么地方。
   应该从什么地方练习呢?大家都是论坛的老顾客了,会用事件做游戏,那么将事件做的游戏,改变成脚本做的游戏就是最大的学习过程。比如如何说话(game temp_message=""),比如条件分歧如何写(if)等等。相信很多人都是从学习修改别人的脚本开始入门的:比如修改参数看效果、比如添加一句熟悉的语句看效果等等,你就会记得一些基础的语句; 然后多和别人讨论,论坛并不是个讨论的好地方,建议qq。你就会漫漫学会脚本.

  最后,祝大家节日快乐.早日学会脚本,将自己的游戏锦上添花.












作者: 劍之飛龍☆    时间: 2008-6-12 05:24
SF……
发错区了……
作者: yangff    时间: 2008-6-12 05:46
看这个的都是伪·新人
作者: 禾西    时间: 2008-6-12 06:43
發覺沒有白字{/fd}
我有 XD。腳本是講天分的
作者: jbfc    时间: 2008-6-12 07:16
提示: 作者被禁止或删除 内容自动屏蔽
作者: 灯笼菜刀王    时间: 2008-6-12 07:55
楼主写得不错嘛,把概念化的东东通俗话了,话说想学脚本的都是接触RM的,接触RM的都是想做游戏的,想做游戏的都是有玩游戏的,有玩游戏的都是懂游戏的,懂游戏的都会明白楼主说什么。

回楼上的,楼主一开始就说了“想入门脚本”而不是“入门编程”

先从最基本的数据说起,然后是最常用的变量。

不过,这篇文章没有实际性的教学内容....适合做为教程的序言之类的....

我同意楼主的说法。我们学脚本是为了做游戏,而不是为了考试,不用去背那些什么概念,知道用法就行了,熟悉了自然知道它的概念。就像我们看到红瓶子就知道这个是加血的一样。

按照F1的帮助文件来学习,相信全看完的人,脑袋里的概念估计只会记得,P这个用法....至少我是这样,所以,我认为,还是一开始就直接向脚本开刀简单,从最开始的改坐标做起。从找坐标,改坐标,看效果的过程中,一些定义概念分类什么的自然会理解。比起死记x = 320 - @command_window.width / 2,y = 240 - @command_window.height / 2是窗口显示屏幕中心什么的好得多了。
作者: sizz123    时间: 2008-6-12 14:41
以下引用jbfc于2008-6-11 23:16:29的发言:

我刚学RUBY没几天,觉得lz完全是给老手看的.刚学编程的时候,应该学的是语言
,象什么IF FOR 数组,然后才是数据结构和算法.

LZ好象反了,就像先给别人讲BFS DFS 树,之类的概念,再讲IF FOR,让人看了一头雾水

以上只是个人看法,LZ可以54


  现在是高速通讯时代,计算机知识日新月异----如果去背诵某个语句,某个程序是得不偿失,事倍功半的.比如初学脚本的人,背了一个脚本,也会写那个脚本.但由于不是母语,时间长了就会忘记.
  但脚本概念就不同了,概念是个抽象的东西,比如:"可以从外部读文件."就是概念,比具体的<背单词>更有想象的空间---可以从任何地方读文件,甚至是网络上.太过具体,反而不利于学习. [LINE]1,#dddddd[/LINE]系统信息:本贴由本区版主认可,66RPG感谢您的热情解答~
作者: 越前リョーマ    时间: 2008-6-12 19:04
依然看到一堆代码就头痛……
作者: 荆芥    时间: 2008-6-12 21:14
以下引用灯笼菜刀王于2008-6-11 23:55:11的发言:

楼主写得不错嘛,把概念化的东东通俗话了,话说想学脚本的都是接触RM的,接触RM的都是想做游戏的,想做游戏的都是有玩游戏的,有玩游戏的都是懂游戏的,懂游戏的都会明白楼主说什么。

回楼上的,楼主一开始就说了“想入门脚本”而不是“入门编程”

先从最基本的数据说起,然后是最常用的变量。

不过,这篇文章没有实际性的教学内容....适合做为教程的序言之类的....

我同意楼主的说法。我们学脚本是为了做游戏,而不是为了考试,不用去背那些什么概念,知道用法就行了,熟悉了自然知道它的概念。就像我们看到红瓶子就知道这个是加血的一样。

按照F1的帮助文件来学习,相信全看完的人,脑袋里的概念估计只会记得,P这个用法....至少我是这样,所以,我认为,还是一开始就直接向脚本开刀简单,从最开始的改坐标做起。从找坐标,改坐标,看效果的过程中,一些定义概念分类什么的自然会理解。比起死记x = 320 - @command_window.width / 2,y = 240 - @command_window.height / 2是窗口显示屏幕中心什么的好得多了。

我从改坐标开始,到现在也还是只能改坐标
其实我希望各位老手写教程可以先找一个比较有典型性的窗口脚本,把每句话的意思,运算法什么的都写清楚,比空让饿们背语句有意义的多.
我们往往是背了句子却不知道怎么用呢

作者: jbfc    时间: 2008-6-13 00:46
提示: 作者被禁止或删除 内容自动屏蔽
作者: jbfc    时间: 2008-6-13 00:51
提示: 作者被禁止或删除 内容自动屏蔽
作者: 灯笼菜刀王    时间: 2008-6-13 08:56
我之前说了,语句使用多了就会记得。想调坐标也要找得到是吧,问问有几个人是一行一行找的? 最开始当然是COPY,但是,找的东西多了,COPY都麻烦,只有自己输入比较快,当然就会记得该语句。

如果听我读脚本,一定会笑死你,因为我都是用自己的方法来读,比如#,我是读叉叉-v-。我朋友听我说叉叉就知道这个代表解释的意思了。
作者: bububinghe    时间: 2008-6-14 00:33
以下引用荆芥于2008-6-12 13:14:26的发言:


以下引用灯笼菜刀王于2008-6-11 23:55:11的发言:

楼主写得不错嘛,把概念化的东东通俗话了,话说想学脚本的都是接触RM的,接触RM的都是想做游戏的,想做游戏的都是有玩游戏的,有玩游戏的都是懂游戏的,懂游戏的都会明白楼主说什么。

回楼上的,楼主一开始就说了“想入门脚本”而不是“入门编程”

先从最基本的数据说起,然后是最常用的变量。

不过,这篇文章没有实际性的教学内容....适合做为教程的序言之类的....

我同意楼主的说法。我们学脚本是为了做游戏,而不是为了考试,不用去背那些什么概念,知道用法就行了,熟悉了自然知道它的概念。就像我们看到红瓶子就知道这个是加血的一样。

按照F1的帮助文件来学习,相信全看完的人,脑袋里的概念估计只会记得,P这个用法....至少我是这样,所以,我认为,还是一开始就直接向脚本开刀简单,从最开始的改坐标做起。从找坐标,改坐标,看效果的过程中,一些定义概念分类什么的自然会理解。比起死记x = 320 - @command_window.width / 2,y = 240 - @command_window.height / 2是窗口显示屏幕中心什么的好得多了。


我从改坐标开始,到现在也还是只能改坐标
其实我希望各位老手写教程可以先找一个比较有典型性的窗口脚本,把每句话的意思,运算法什么的都写清楚,比空让饿们背语句有意义的多.
我们往往是背了句子却不知道怎么用呢

支持!需要一个高级点的窗口修改脚本,功能方面已经有很多先例了,其实菜单的美化更重要些呢
作者: 色即是空    时间: 2008-6-16 05:14
提示: 作者被禁止或删除 内容自动屏蔽
作者: 凌冰    时间: 2008-6-17 01:59
我突然想说,$game_variables其实也可以做数组用。
也可以带入汉字

例如:$game_variables[1] = [1,2,3,4,5]
$game_variables[2] = "凌冰你好帅"
然后在对话框里用\v[1]或\v[2]都是可以显示出来的
对事件派来说,知道这些简单的脚本还是有些用处的

{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}{/fd}
真不知道我说这个干什么。。
作者: sizz123    时间: 2008-6-17 04:43
以下引用凌冰于2008-6-16 17:59:53的发言:
我突然想说,$game_variables其实也可以做数组用。
也可以带入汉字

   这个已经有人用了,比如某个看敌人能力的<侦察>脚本,就是用一个$game_variables来存储敌人名字的.
   当数组用,ms我2年前在森林的时候就看见有人用过,好象也是针对对话的.

   
   


作者: yangff    时间: 2008-6-18 23:56
那个,文字区BZ来发布以下啦,,
作者: csb01421    时间: 2008-6-20 10:19
各位大大,你们好啊!
我新来乍到,多多请教。
作者: machinemxy    时间: 2008-7-1 03:19
很有意思的文章呢
作者: 地狱的蓝炎    时间: 2008-7-1 03:32
以下引用凌冰于2008-6-16 17:59:53的发言:

我突然想说,$game_variables其实也可以做数组用。
也可以带入汉字

例如:$game_variables[1] = [1,2,3,4,5]
$game_variables[2] = "凌冰你好帅"
然后在对话框里用\v[1]或\v[2]都是可以显示出来的
对事件派来说,知道这些简单的脚本还是有些用处的


真不知道我说这个干什么。。


[本贴由作者于 2008-6-16 18:00:45 最后编辑]

我刚知道有这种用法{/pz}

作者: 独孤残云    时间: 2008-7-18 18:07
是有关C的一些基本概念呢。。。
作者: t57663893    时间: 2008-7-19 07:04
有些教程写得真叫我欲哭无泪,对已经学会的人来说,看了多余;对还没学会的人来说,看了也是白看.{/pz}{/pz}{/pz}




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1