Jigsaw

Jigsaw

Learn everything, do nothing.

如何使用 Renpy 制作跑团视频

本教程基于爱的战士风空制作的跑团视频教程(《我们不用很麻烦很累就可以做跑团视频》共两期,如今已因不明原因删除),再加上本人一定程度的魔改而成。经过了一段时间的打磨,我认为此教程已经足够便利,完全可以实现流水线作业,故分享出来仅供参考。本方法制作出来的视频可能精细度不会很高,但是效率绝对数一数二(甚至你只要有整理好的跑团记录就可以一天之内做完)。

还等什么,抛弃肝帝生活,换我茂密头发!

准备工作#

素材与软件清单#

Win10/Win7 64 位系统

跑团记录

立绘、场景等素材

跑团记录着色器

Python3.X

终极自动脚本 for renpy(基于风空原代码的魔改版)

Renpy

录屏软件:OBS/Bandicam(貌似 Win10 可以使用 Win+G 录屏,不过我不推荐)

文字转语音软件:朗读女(在本版本非必须)

剪辑软件:PR/Vegas/ 会声会影(非必须)

编辑器:Atom/Vscode(非必须)

配置 python 环境#

本部分为无编程基础的读者准备,认为自己能力足够的读者可以直接跳过,阅读脚本源码即可。

首先百度 python,进入官网(或者点击上文的超链接),不用管那些英文,直接找到 Download 图标以及下面的python3.X.X,点击进入下载页面。

IMG

接着进入下载页面,你可能会很懵逼,不过不要紧,直接往下拉,直到出现如下界面。

IMG

点击下载如图所示的 exe 文件,打开安装即可(一般来说只需要一直点击下一步 [Next])。

需要注意的是,需要把Add Python 3.X to PATH的选项勾选上(图是老图请别介意)

IMG

接着打开命令行(cmd),输入pip install baidu-aip,等待安装完成。

正式开工#

跑团 Log 处理#

如何导出跑团 Log#

使用骰娘

现在的骰娘(塔骰和溯洄骰,惠惠骰我不知道)一般都支持.log on命令,只要再开团使输入该命令,在结团的时候输入.log off,骰娘便会帮你自动保存骰娘记录。

(此类方法简单,但是毕竟记录保存在骰娘服务端,建议一定要找服务稳定的骰娘~~[比如本人的骰娘三天两头重启,肯定就不靠谱]~~,否则记录就全没了)

使用 QQ 的消息管理器

仅限 PC

打开腾讯 QQ 的界面,你会看到左下角有个按钮,单击之后显示出的页面左上角便是我们需要的消息管理器。

进入消息管理器之后,在群聊板块找到自己用于跑团的群聊,右键导出成 txt 格式即可。

(此方法导出的聊天记录需要经过手动筛选与着色,且容易出现部分文字离奇消失的灵异事件)

着色#

打开QQ 跑团记录着色器

img

将已经准备好的跑团记录全选复制到着色器的输入框内。

将显示时间调为 OFF,点击处理按钮。

img

在出现 PC 名字区域将同一个人的群名片调成一致。

最后的结果如下图所示。

img

全选预览区域的文件,复制粘贴到 word 中即可。

简单格式处理#

将已经着色好的跑团记录复制进 word 文档(塔骰省略这一步)。

接着打开 word 的替换面板,在查找栏输入<,替换栏输入^p【,全部替换。

IMG

接着,将查找栏换成>,输入栏换成】^p,再一次全部替换。

最后的结果如下图所示。

IMG

最后全选 word 文档,粘贴到 txt 文本文档中。

建议手动检查一遍最终的记录,以防其中出现英文字符或其他不能作为文件名的字符。

自动脚本的配置#

初步配置#

直接看源代码的注释就行了,具体我就不再讲解。

import os
# 需要在命令行输入 pip install baidu-aip(什么?你不懂什么是命令行?建议百度。)
from aip import AipSpeech

# 在风空原代码的基础上加入了百度的语音合成 SDK,实现终极自动化流水线

voice_flag=1 # 语音合成开关 1 为开启 0 为关闭 网速慢的建议关闭

# 你的 APPID AK SK 建议自己去百度云平台申请,当然用我的也没关系(但保不准哪天我就关掉了)
APP_ID = '20355681'
API_KEY = '6gI2piIaG0DzRMTgDE6XN4S6'
SECRET_KEY = 'yARGOWrKDHDSDIkkD1ngFNKvjvhvBWdX'

client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

# 打开输入文件,整理后的 log。log.txt 需要是 utf-8 编码并且和自动脚本 for renpy.py 放在一个目录下面
fobj = open('log.txt',mode='r',encoding='utf-8')
# 创建用于复制进 renpy 的输出文件
file_rpy = open('script.rpy',mode='w',encoding='utf-8')
    
# 列出 log.txt 里所有出现的 kp、骰子、pl 及 npc 的角色名字
char_list=["【GM】","【黑桃 3】","【黑桃 6】","【梅花 7】","【梅花 4】"]

# 列出每个角色对应的音色,顺序请与上面的 char_list 保持一致
'''
spd:语速,取值 0-9,默认为 5 中语速
pit:音调,取值 0-9,默认为 5 中语调
vol:音量,取值 0-15,默认为 5 中音量
per:发音人选择,0 为女声,1 为男声,3 为感情男,4 为感情女,默认为 0
'''
char_voice_list=[ 
    {
    'vol': 5,
    'per': 3,
    'pit': 5,
    },
    {
    'vol': 5,
    'per': 1,
    'pit': 3,
    },
    {
    'vol': 5,
    'per': 0,
    'pit': 7,
    },
    {
    'vol': 5,
    'per': 3,
    'pit': 8,
    },
    {
    'vol': 5,
    'per': 4,
    'pit': 6,
    },
    ]

#立绘 x 的自定义显示宽度,顺序请与上面的 char_list 保持一致,单位为像素
char_x=["500","400", "400", "400", "400"]

#立绘 y 的自定义显示高度,顺序请与上面的 char_list 保持一致,单位为像素
char_y=["800","700", "700", "700", "700"]

#每个角色立绘位置。顺序请与上面的 char_list 保持一致
location_list=["left","right", "right", "right", "right"]

#骰子的名字。注意骰子的名字同样应该在 char_list 出现
dice_tag="【bot-drsink】"

#是否自动处理骰子。1 为自动,0 为直接显示投掷发言那一行
dice_flag=1

#骰子音效文件名。如果选择自动处理骰子,需要设置以下部分
rolling_se="manydice.mp3"#投掷音效
suc_se="suc_se.mp3"#成功音效
crit_suc_se="crit_suc_se.mp3"#大成功音效
fail_se="fail_se.mp3"#失败音效
fumble_fail_se="fumble_fail_se.wav"#大失败音效

运行脚本#

将处理好的跑团记录命名为log.txt,双击脚本运行。

运行时请耐心等待,只要窗口没有消失就说明还在运行。

如果窗口上出现finish!则表示已经运行完成,如果出现其他文字则表示出现了问题,可以按照提示对跑团记录进行修改。

运行结束后根目录将会出现一个script.rpy文件以及一个voice文件夹。

风空的原代码并不会自动生成语音,文件夹内放置的将会是拆分的文字,可通过朗读女将其批量转换成语音。

Renpy 的配置#

新建项目与初始化#

下载好 renpy,打开之后应该是这个界面。

IMG

点击创建新工程,按照提示一步步来。

打开项目根目录的game文件夹。

将之前生成的script.rpyvoice文件夹粘贴进去。

新建image文件夹,将准备好的立绘按角色命好名(例如【GM】.jpg)、和场景一起粘贴到image文件夹。

替换字体、隐藏按钮与自动播放#

替换字体

由于 Renpy 原生的字体对于中文的支持不是一般的差,所以我建议更换字体以获得更好的体验。

将你想要替换的字体文件粘贴到项目根目录的game文件夹下。

用记事本打开gui.rpy

## 用于游戏内文本的字体。
define gui.text_font = "SourceHanSans-Light-Lite.ttf"

## 用于角色名称的字体。
define gui.name_text_font = "SourceHanSans-Light-Lite.ttf"

找到这一段语句,将其中的SourceHanSans-Light-Lite.ttf替换成你所要替换的字体即可

隐藏按钮

用记事本打开gui.rpy

            textbutton _("回退") action Rollback()
            textbutton _("历史") action ShowMenu('history')
            textbutton _("快进") action Skip() alternate Skip(fast=True, confirm=True)
            textbutton _("自动") action Preference("auto-forward", "toggle")
            textbutton _("保存") action ShowMenu('save')
            textbutton _("快存") action QuickSave()
            textbutton _("快读") action QuickLoad()
            textbutton _("设置") action ShowMenu('preferences')

找到这些语句,在这些语句最前面加上#即可将其注释掉

自动播放

打开软件根目录下的\renpy\common\00keymap.rpy

toggle_afm = ['z'],

修改括号内的字母即可修改对应的自动播放快捷键。

简单的语法#

假设有一个叫bg room的背景图片,想要让他显示出来,就要在script.rpy里编辑,在对应的位置输入

scene bg room

切换场景时使用的也是此语句。

录制与后期处理#

打开 Renpy,启动工程,进入游戏界面,暂时不动。

IMG

打开录屏软件,调整好后再回到 Renpy 生成的游戏界面。

IMG

开始游戏,在英文输入法状态下按下自动播放快捷键,耐心等待播放完成。

之后可以用剪辑软件对录制的视频进行一定程度的后期处理,当然也可不处理。

结语#

以上便是我制作跑团视频的方法,再次申明,该方法不是最好的方法,只是为了效率牺牲了精细度。

(话说感觉专栏有点说不清楚,以后如果有空或许会出个视频)

从总体上来说,跑团视频制作并没有难度,现在各种教程都有,千万不要被开头的门槛吓退。

记住,内容产出重要的是内容,制作的工具并没有优劣之分。

如果有疑问欢迎在评论区(指 B 站评论区)留言,祝各位都能将自己有趣的跑团经历做成视频,分享给别人。

使用此方法制作的跑团视频:https://www.bilibili.com/video/BV1sa4y1Y755

别人的 Renpy 跑团视频制作教程:https://www.bilibili.com/video/BV1KT4y157Xr

139 的跑团视频制作工具推荐:https://www.bilibili.com/read/cv6348879

此方法的优点#

** 没有版权问题:**Renpy、跑团记录着色器均采用 MIT 协议开源(当然如果你自己要用盗版美术素材我也没办法)

** 模块化、流水线作业:** 跑团记录的处理、文字转语音、语音转视频都是分工进行的,即使中间有一步出现了错误也可以快速纠正。

此方法的缺点#

** 配音不够丰富:** 经我改进后的自动脚本使用的是百度的文字转语音 SDK(别问我为什么不用其他的,其他的要钱)其他所以只有 4 个音色,就算是分成高低两个声调,也只能够支撑八个角色。解决的方法关闭脚本的文字转语音开关,使用朗读女以获得更佳体验。

** 不经过后期处理没有特殊效果:** 比如战斗轮如果想要有血条的话就得自己动手做了。

** 需要安装 python 以及 baidu-aip 模块:** 万事开头难,有多少人懒得去做第一步,这我也没办法。

其他方法的简单参考#

相关视频:https://www.bilibili.com/video/BV1KT4y157Xr

视频剪辑软件制作#

这个方法其实没有什么好说的,大部分 UP 主属于纯手工制作,主要就是技术问题。你技术好,操作熟练的话效率就会高,技术不好的话可能一个月都搞不出来一期(不要认为这种速度很快,大部分 up 拖更的原因其实都不是因为技术问题,而是现实忙碌 / 面团需要耗费精力整理记录 / 想要更好的表现形式,如果你现实很闲的话这种效率真的不快)。至于用什么剪辑软件纯属个人喜好,没有必要深究。

** 优点:** 如果本身熟悉剪辑软件的话没有其他的学习成本、可以在制作过程中拥有更好的表现形式。

** 缺点:** 对低技术力人员不够友好、某些软件吃内存吃得太死,对低配电脑也不友好。

相关视频:https://www.bilibili.com/video/BV19t411775m

PPT 制作#

其实 PPT 制作法我的感觉是和 PR 制作法没有什么区别的,基本上也都是纯手工制作,不过会比 PR 友好一些(毕竟 PPT 不会吃你的内存,更不会突然就给你来个无法响应),学习成本也相对较低(会 PPT 的总比会 PR 的人多吧),算是对新手较为友好的方法了。

** 优点:** 学习成本较低,操作相对于剪辑软件有一定的简化。

** 缺点:** 惊了,我居然找不到缺点。

相关视频:https://www.bilibili.com/video/BV1it411Z7oU

无双 AVG 引擎#

由于我没有进该引擎的 QQ 群,也没有实操过该软件,所以我只能通过视频中的内容进行一些评价,可靠度可能不是很高

** 优点:** 与 Renpy 其实很类似,不过大部分语法都为中文,对国人友好一些。

** 缺点:**up 做的教程看得我头疼。

相关视频:https://www.bilibili.com/video/BV1cb411J7Jj

橙光游戏#

** 优点:** 学习成本低,操作也很简单。

** 缺点:** 橙光的美术素材实际上不能用于制作视频(用来做跑团视频算是擦边球)

相关视频:https://www.bilibili.com/video/BV1BW411J7zP

活字引擎#

现版本我不推荐使用,不够成熟。

** 优点:** 轻量化语法、原作者在线解答。

** 缺点:** 预加载资源导致开启缓慢、内置字体导致无法自定义、在线转语音无缓存导致调试困难。

相关视频:https://www.bilibili.com/video/BV1Ek4y1r7vw

一键式 python 脚本#

有点像本方法的升级版,优点和缺点更加突出了。

相关视频:https://www.bilibili.com/video/BV1T5411e78j

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。