This script overrides the
[Play Movie...] event command, but to access more parameters you must use the [
Script...] event command.
For this to work, the player will need to have
FFMPEG or
VLC installed. The script will always prioritize FFMPEG because it is faster at generating frames.
License: The script can be used in commercial games
DOWNLOAD: Mediafire
(Includes SCRIPT file a DEMO with hands-on tests of all possibilities and functions)
FFMPEG: You can include installation instructions with your game, or create an in-game installer
VLC: You cannot send the installer with the game, but you can include the installation instructions
Click to expand...
Although it works with movies in other formats, this would prevent guaranteed audio playback, so ideally you should only use OGV/OGG
Accepted formats:
OGG/OGV : Video+Audio
FLV : Video
WMV/ASF : Video
WEBM : Video
AVI/TS : Video
MOV : Video only
MP4 : Video (This does not work with VLC)
Define the initial settings in the
MoviePlayer_Config module at the beginning of the script:
Ruby:
- module MoviePlayer_Config
- # The developer can modify the initial settings here:
- MODE=1
- NATIVE=false
- MUTE=false
- VOLUME=100
- SKIP=true
- CLEAR=false
- DELAY=360
- Z=0
- end
复制代码
MODE: The video is stretched or compressed to fit the width and height of the game screen, even if that screen is modified.
The video adjusts to the game's width responsively.
The video adjusts its height responsively to the game's needs.
The video does not play immediately; it only generates the frames for use at any time later without causing a delay when starting playback.
Adjusted to the size of the game window:
Mode 2: If the video width is greater than the height
Mode 2: If the video height is greater than the width
Mode 3: If the video width is greater than the height
Mode 3: If the video height is greater than the width
NATIVE:
This configuration is only for cases where the developer needs it to work in the standard VXAce mode
MUTE:
This setting allows the movie to use the background music that is currently playing
VOLUME:
Change the default volume for all movies initiated by the event command, from 1 to 100
SKIP:
Disable this if you don't want the player to be able to skip the movie by pressing the cancel key (X, Esc, Insert, InsNumpad)
CLEAR:
This only works in game test mode, so the developer can clean up old frames if they edit the movie or used some DELAY time that affected the frame creation
DELAY:
Set a delay to ensure that FFMPEG or VLC can generate enough frames for playback. FFMPEG will use 25% of this time, as it is much faster. Remember that in RMVXAce, 60 frames equal 1 second, so I recommend at least 240 (4 seconds) due to older computers or slower hard drives
WITH:
This setting allows you to place the movie behind the last text box or event pictures on the screen:
Above the text and pictures
Below the text
Below the text and pictures (Do not use
Fadeout Screen in this case, as the movie will be behind the dark screen)
To avoid having to change the most common settings before playback, I included this directly in the function that is called by the
Play Movie... Event Command:
Graphics.play_movie(File path, Mode, Volume)
The file path is the path from the game folder; that is, not every video needs to be in the Movies folder, but you shouldn't use the file extension in this case, so as not to affect the script's priority selection. For example, if you have a video called
Intro.ogg (use quotation marks and a trailing slash):
Mode is equivalent to the modes already shown in the initial settings, use
to automatically select the current setting, for example:
- Graphics.play_movie('Movies/Intro',2)
复制代码
Volume: This adjustment is exactly like the BGM adjustment; you regulate it by percentage. The video's sound will actually be played by the native BGM player as long as the video is OGG/OGV. So, if you have a global sound adjustment script in the menu, it will be compatible, provided it does this directly in the function. For example 50%:
- Graphics.play_movie('Movies/Intro',1,50)
复制代码
Modify the event command settings:
(If any argument is entered outside of what the function expects, such as type or range limit, the SCRIPT will not break, it will only return the information in the
Console)
Change resolution/aspect ratio:
- $game_system.movie_setup('mode',1)
复制代码or
- $game_system.movie_setup(1,1)
复制代码
Enable native VXA player:
- $game_system.movie_setup('vxa',true)
复制代码or
- $game_system.movie_setup(2,true)
复制代码
Mute/Turn off the sound so that it plays the background music:
- $game_system.movie_setup('mute',true)
复制代码or
- $game_system.movie_setup(3,true)
复制代码
Change the volume as a percentage:
- $game_system.movie_setup('volume',50)
复制代码or
- $game_system.movie_setup(4,50)
复制代码
Enables/Disables the key to skip the video:
- $game_system.movie_setup('skip',true)
复制代码or
- $game_system.movie_setup(5,true)
复制代码
Enables/Disables clearing frames from the temporary folder (test mode only):
- $game_system.movie_setup('clear',true)
复制代码or
- $game_system.movie_setup(6,true)
复制代码
This includes a delay when using the FFMPEG or VLC command line; note that in FFMPEG this time will be 25% of that value.
- $game_system.movie_setup('delay',90)
复制代码or
- $game_system.movie_setup(7,90)
复制代码
Changes the layer where the video frames will be drawn:
- $game_system.movie_setup('z',1)
复制代码or
- $game_system.movie_setup(8,1)
复制代码
Receive the current settings in the Console:
Restores the settings to the same ones that are in the
MoviePlayer_Config module :
- $game_system.movie_initial
复制代码
本贴来自国际rpgmaker官方论坛作者:DevRPG2k处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:
https://forums.rpgmakerweb.com/threads/play-movie-alternative-with-extra-settings.183433/