Project1

标题: 【重制】66RPG对话加强 - 211012 [打印本页]

作者: RyanBern    时间: 2015-8-24 22:01
标题: 【重制】66RPG对话加强 - 211012
本帖最后由 RyanBern 于 2021-10-12 13:43 编辑

本次发帖是重制著名的6R对话加强脚本(注意,不是 Fuki 脚本)。重制的原因,第一是主站上的那个版本下载链接已经失效,因此放在这里补档;第二,现在流传下来的这个版本有诸多BUG。本人已经修复了一些已知BUG,如果还发现别的BUG请通知我进一步重制。

@精灵使者 这个脚本其实就是R考场第四期的那个对话框脚本,我已经去除了一些错误,如果觉得好就拿去用吧。
@无忧谷主幻 你发现的两个对话框BUG已经修复完成。

GitHub 项目:https://github.com/RyanBernX/mes_remake
GitHub 发布页(包含所有历史版本):https://github.com/RyanBernX/mes_remake/releases


范例工程: RB_Mes_Remake-2.1.0.7z (1.36 MB, 下载次数: 3883)
工程中的对话加强脚本使用 MIT 协议授权,素材的版权请参考 `素材来源.txt`。

如果你想支持RB的话,不妨购买下面的附件,给塞个糖吧/w\
求糖.rb (19 Bytes, 下载次数: 44, 售价: 10 星屑)

效果截图:







作者: 喵呜喵5    时间: 2015-8-24 22:23
个人建议:删掉第83行,



这样脚本的总行数就恰好是1000行啦

作者: enitsirhc    时间: 2015-8-24 22:55
不错,比以前的FUKI好用多了
作者: chd114    时间: 2015-8-24 23:40
  1. @now_text.gsub!(/\\\\/) { "\000" }
  2.       @now_text.gsub!(/\\[Cc]\[([0-9]+)\]/) { "\001[#{$1}]" }
  3.       @now_text.gsub!(/\\[Gg]/) { "\002" }
  4.       @now_text.gsub!(/\\[Ss]\[([0-9]+)\]/) { "\003[#{$1}]" }
  5.       @now_text.gsub!(/\\[Aa]\[(.*?)\]/) { "\004[#{$1}]" }
  6.       @now_text.gsub!(/\\[.]/) { "\005" }
  7.       @now_text.gsub!(/\\[|]/) { "\006" }
  8.       @now_text.gsub!(/\\[Ii]c\[(.*?)\]/) { "\030[#{$1}] "}
  9.       @now_text.gsub!(/\\[>]/) { "\016" }
  10.       @now_text.gsub!(/\\[<]/) { "\017" }
  11.       @now_text.gsub!(/\\[!]/) { "\020" }
  12.       @now_text.gsub!(/\\[~]/) { "\021" }
  13.       @now_text.gsub!(/\\[Ii]/) { "\023" }
  14.       @now_text.gsub!(/\\[Oo]\[([0-9]+)\]/) { "\024[#{$1}]" }
  15.       @now_text.gsub!(/\\[Hh]\[([0-9]+)\]/) { "\025[#{$1}]" }
  16.       @now_text.gsub!(/\\[Bb]\[([0-9]+)\]/) { "\026[#{$1}]" }
  17.       @now_text.gsub!(/\\[Kk]\[(.*?)\]/) { "\027[#{$1}]" }
复制代码
这一部分不缩减一下吗···
作者: 无忧谷主幻    时间: 2015-8-25 07:13
先收藏了,回来再看
作者: gonglinyuan    时间: 2015-8-25 09:15
我一开始就觉得熟悉,原来就是R考场的对话框啊。。。

P.S. 这个脚本有使用条例之类的吗?
作者: RyanBern    时间: 2015-9-8 21:38
重制版更新,自顶。
增加的内容:在战斗中使用\p命令,可以让对话框出现在角色或者敌人战斗图的上方/下方
例如,如果想让对话框出现在ID为1的主角上方,就写\p[1];
如果想让对话框出现在Index为2的敌人上方,就写p[1002],也就是1000+敌人索引。
作者: 西姐    时间: 2015-9-9 21:13
好像金庸无双里面把这个脚本增加了一个,只显示名字第一个字和后两个字的功能,可惜VA不能用
作者: 乐之魂    时间: 2015-11-13 14:35
不想让对话框跟着角色行吗,怎么弄?
作者: sawcius    时间: 2015-11-15 18:43
可以请教一个问题吗?为什么改了屏幕分辨率之后对话框的位置就变了?现在屏幕分辨率是800X600,本来想让对话框出现在最下面,结果出现在正中间。。
作者: RyanBern    时间: 2016-1-19 23:48
160119版本更新。
1. 之前版本的对话框在使用大型半身像时美观性较差,这次更新加入了对大型半身像的支持。效果如第五张图所示。
使用大型半身像时,只需要使用\p[-1]命令,然后正常使用\L或\R添加半身像即可。
2. 新增加快捷方式设定。编辑中可能需要输入很长的控制码,例如'\name[男主角]\p[0]\R[男主角图形]'指令表示生成一个名为'男主角'的姓名窗口,出现在主角附近,在右侧显示半身像'男主角图形.png',写起来很是麻烦(尤其要切换输入法)。因此增加设置快捷方式的功能,输入起来会更加方便。具体设置请看脚本说明。
3. 使用小提示:这点其实在一开始就应该说明,如果使用\name设定姓名框,那么这些指令最好写在文本框的第一行。如果没有\name指令,那么形如\p \R 这样的指令放在最后面为好。原因不用我多说,使用的时候自然会发现。
作者: yang1zhi    时间: 2016-1-22 16:26
缺点:对话框不会自己判断角色是在上面还是在下面来对应使用上箭头下箭头,而要手动选择这个对话框使用上箭头还是下箭头。
这样很有可能会出现人在下面,对话框的箭头却对准上面。
作者: 511317646    时间: 2016-3-24 00:49
请教一个问题,关于姓名框如果我要使用位图的话如何修改呢?(我是美工,脚本小白实在是没办法……)
作者: 511317646    时间: 2016-3-24 19:06
511317646 发表于 2016-3-24 00:49
请教一个问题,关于姓名框如果我要使用位图的话如何修改呢?(我是美工,脚本小白实在是没办法……) ...

依旧维持现在姓名框的那个长条形状,我换成一个长方形位图,然后拉伸
作者: RyanBern    时间: 2016-5-10 09:43
160510版本更新

1. 给对话加强脚本加开关,当打开指定开关时,暂时屏蔽对话加强脚本,使用默认的对话框。
2. 添加\f[文件名]使用正方形头像的功能。此头像不同于半身像,因此需要额外做一个功能。现在对话加强窗口里可以使用三种图片:普通半身像;大型半身像;正方形头像。
作者: 乐之魂    时间: 2016-5-14 15:03
本帖最后由 乐之魂 于 2016-5-14 15:25 编辑

大大能作个这个效果么,在对话框前弄个头像框  图片最好占满整个头像框,这样比较好看。(最好左边头像框与右边对话框一样高度大小,不要像大雄这头像这么小不成比例)

作者: 乐之魂    时间: 2016-5-14 15:16
RyanBern 发表于 2015-9-8 21:38
重制版更新,自顶。
增加的内容:在战斗中使用\p命令,可以让对话框出现在角色或者敌人战斗图的上方/下方
...

为何我右边倒数第三个特罗西运行到第三段对话出错啊,提示855行出错self.height这行出错,高度不对?

我删掉了一下,是\p[-1]和\pn1导致出错,去掉就可以了,难道不能用么
作者: 乐之魂    时间: 2016-5-14 15:26
另外,大大能不能教我下怎么改半身像的坐标,我改过,没效果!
作者: 2503542239    时间: 2016-6-18 21:18
请教LZ这是怎么回事?RMXP1.03为何用不了?

无标题.png (6.13 KB, 下载次数: 35)

无标题.png

作者: 2503542239    时间: 2016-6-18 21:21
请教一下LZ
为什么我的RMXP1.03用不了?
提示494行Syntax Error
作者: 2503542239    时间: 2016-6-19 14:01
2503542239 发表于 2016-6-18 21:21
请教一下LZ
为什么我的RMXP1.03用不了?
提示494行Syntax Error

但是打开工程时提示“工具是旧版本无法打开这个工程”
作者: 泪的苍白    时间: 2016-8-4 18:17
唔,抱歉打扰了,想问一个问题。如果想把默认的字体颜色改成黑色要怎么办,对话里用“\C[]”这样的方式太麻烦了,而且很影响字的显示效果。
作者: lightsnow    时间: 2016-8-25 09:15
谢谢作者分享!
请教一个问题,就是我在使用脚本时(包括范例工程)出现了错误:
“脚本的第856行发生了 NoMethodError。
undefined method '+' for nil:NilClass  ”
我看了一下,是这一行:
self.height = [64 + line_height * 3, @face_h + 32].max

完全不明白是怎么回事,希望LZ能指点一下,十分感谢。
作者: lightsnow    时间: 2016-8-27 03:42
在范例工程里,当主角与左上角的喵污喵对话,然后选择了“开启”打字功能时,会报下面这个错误:
“执行脚本时发生 NoMethodError.
Undefined method 'typing=' for #<Game_System:0x8fe8850>”

如果选择“关闭”则不会报错。
请问是我使用的RMXP版本或Game_System脚本的问题吗?
作者: 雾影药师    时间: 2016-8-27 09:26
不错不错
作者: 夜狠简单    时间: 2016-8-27 14:39
# 对话框窗口皮肤(不写为和系统皮肤相同)
  Mes_Windowskin = ""#"001-Blue01"这里怎么改

QQ截图20160827143530.png (4.23 KB, 下载次数: 31)

QQ截图20160827143530.png

作者: 吸血鬼王族    时间: 2016-9-16 05:02
$game_system.typing = false
脚本用这个去掉打字功能会死机
作者: mochamusi    时间: 2016-12-13 19:20
同样是工具是旧版本无法打开,这是怎么回事啊_(:зゝ∠)_
作者: 578753693    时间: 2017-2-2 17:41
RMXP1.03打不开啊!。。LZ有1.04下载地址吗
作者: 黑焰物语    时间: 2017-2-2 20:39
大赞!感谢RB
作者: guoxiaomi    时间: 2017-6-3 16:58
我同时用了队列行进和这个对话框脚本,想让队列里的人说话……于是稍微做了一个插件脚本。
功能:
地图上用 \p[1000] 在主角身上显示对话框, \p[1001] 在第 2 个队友身上显示对话框, \p[1002] 类推……
脚本:
  1. #==============================================================================
  2. # ■ 人物跟随 + 对话加强
  3. #------------------------------------------------------------------------------
  4. # 整合了对话系统和人物跟随:
  5. # 可以用 \p[1000] 来表示第 1 个队友(主角),\p[1001] 表示第 2 个队友(火车2号)
  6. #==============================================================================
  7. class Game_Party
  8.   attr_reader :characters
  9. end

  10. class Window_Message_RB < Window_Selectable
  11.   def get_character(parameter)
  12.     if parameter < 1000
  13.       case parameter
  14.       when 0
  15.         return $game_player
  16.       else
  17.         events = $game_map.events
  18.         return events == nil ? nil : events[parameter]
  19.       end
  20.     else
  21.       parameter = parameter - 1000
  22.       case parameter
  23.       when 0
  24.         return $game_player
  25.       else
  26.         return $game_party.characters[parameter - 1]
  27.       end
  28.     end
  29.   end
  30. end
复制代码

作者: 阮声悠悠    时间: 2018-8-26 07:13
提一个个人的小建议哈
在两个对话者的面向是上下的时候
我可能会更希望面向下的角色优先选用对话框出现在上方
面向上的角色优先出现在下方


作者: 阮声悠悠    时间: 2019-2-23 20:06
bug报告:
显示文章
\name[系统1]\Nc[3]
如果你有需要的话,就挑选一样拿走吧。

显示选择项
设计3个
第三个显示不出来~
作者: miantouchi    时间: 2019-12-19 19:23
为什么我用$game_temp.message_text = "看谁的状态" 类似这样的在脚本里,写出字来,就不能一个一个字的显示了,只能和人物对话才能用这个功能吗?

1.png (77.74 KB, 下载次数: 32)

1.png

作者: 89444640    时间: 2019-12-19 20:25
本帖最后由 89444640 于 2019-12-20 14:16 编辑
miantouchi 发表于 2019-12-19 19:23
为什么我用$game_temp.message_text = "看谁的状态" 类似这样的在脚本里,写出字来,就不能一个一个字的显 ...


根据猫大脚本推测,脚本里写显示文章,$game_temp.message_text = 什么什么,是调用的xp默认显示方式,淡入,显示所有文字。
新建工程 默认脚本

文字无等待全部显示,我看了十多年都看习惯了。


而现在,对话是一个一个打字的显示的方式,当然我这里习惯显示速度极快就是了,

猫大这里是封包什么什么的定义了控制符,比如下面这部分就是控制等待时间的,不加就是上面gif的显示效果快速一个一个的出字。
3) 文本控制类(显示过程中实时解析)
#           \,      停顿 1/4 秒(不随帧率变化)
#           \;      停顿 1/2 秒(不随帧率变化)
#           \.      停顿 1/1 秒(不随帧率变化)
#           \Z[n]   停顿 n 帧(默认设置下20帧为1秒)
那这个脚本里会不会也是有对应的操作?

猫大脚本里关于什么message的处理是这里
# ● 显示文章
  #--------------------------------------------------------------------------
  def command_101
    # 另外的文章已经设置过 message_text 的情况下
    if $game_temp.message_text != nil
      # 结束
      return false
    end
    # 设置信息结束后待机和返回调用标志
    @message_waiting = true
    $game_temp.message_proc = Proc.new { @message_waiting = false }
    # message_text 设置为 1 行
    $game_temp.message_text = @list[@index].parameters[0] + "\n"
    line_count = 1
    # 循环
    loop do
      # 下一个事件指令为文章两行以上的情况
      if @list[@index+1].code == 401
        # 本行有续行标记时,删除回车符
        if $game_temp.message_text[-2] == 92
          $game_temp.message_text.sub!(/\\\n$/m) {""}
          line_count -= 1
        end
那么就是说,是不是你要自己去定义一下才能蹦字?而且这个还牵扯到一个刷新问题……全部文字显示就刷新一次描绘所有淡入淡出,挨个显示怎么刷新得你自己写?
Scripts.rar (467.79 KB, 下载次数: 35)
作者: fusha    时间: 2020-3-4 16:03
下载了打不开工程
作者: 稻荷Cocoa    时间: 2021-8-20 16:58
我看不太懂,要怎样让对话框有头像
作者: 纯属小虫    时间: 2021-9-24 20:35
本帖最后由 纯属小虫 于 2021-10-1 11:29 编辑

请教一个问题:从对话框弹出到第一个文字出现,有一个延迟的时间,这个延迟会影响流畅性,请问这个延迟的时间可以在哪里调整?
作者: 2849376542    时间: 2021-10-30 21:27
我去,大佬6呀
作者: 流转虹    时间: 2022-8-8 12:31
好怀旧呀……经典6R通用对话加强
作者: 流转虹    时间: 2022-8-8 12:32
好怀旧呀……经典6R通用对话加强
作者: 纯属小虫    时间: 2022-8-12 00:08
前几天使用的时候,发现了一个连按小BUG
就是 如果启动了 【空格显示全部对话】
在与【决定建】触发的事件的NPC对话的时候,第一句话一定会全部显示(应该是出现连续判定了)

建议给552 行之后update里的空格判定加一个@wait_count变量判定吧,然后每次对话框初始化一下@wait_count~~ 避免偶尔出现的连按情况
if @wait_count <= 0
    # [空格键]跳过描绘
    if $game_switches[Write_Skip] && Input.trigger?(Input::C)
      @write_skip = true
    end
else
@wait_count -= 1
end

作者: 纯属小虫    时间: 2022-8-16 13:08
冒昧地连个帖~~~

我加了一个 \p[x] 的功能    就是对话的时候,会自动识别当前事件,将对话框显示在当前事件上面
这样一来,就方便事件的复制了!(偷懒是第一生产力)
小测试了一下,目前能正常运行——应该是有一些BUG的....毕竟"x"是字符串,可能有些地方的判定还是整数没改过来

修改的部分我用 # ●●●【p[x]】   标注了,方便返工修改

添加 \p[x

作者: jinae2022    时间: 2022-12-22 18:45
怎么办,好喜欢这个脚本的功能,唯一美中不足的就是气泡框的样式,要是能像fuki或是月夜响荡曲里面的气泡样式就更好了。
作者: 海窄地满    时间: 2022-12-28 12:12
感谢楼主




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