Original Source
- Original title: Battler Flipbooks Core
- Original author: Tamschi
- Original date: May 26, 2023
- Source thread: https://forums.rpgmakerweb.com/threads/battler-flipbooks-core.157839/
- Source forum path: Game Development Engines > RPG Maker Javascript Plugins > JS Plugin Releases (RMMV)
Summary
Battler Flipbooks Core (Ver. 1.0.0) Tamschi Introduction This isn't a readily usable plugin without further JavaScript, but instead a framework to write easy-to-use battler sprite animation plugins with a common extension API and seamless interactivity between them.
Archived First Post
Tamschi
Introduction
This isn't a readily usable plugin without further JavaScript, but instead a framework to write easy-to-use battler sprite animation plugins with a common extension API and seamless interactivity between them.
It mainly lends itself to subdued cel animation, just out of personal preference, but it can also shake/move the sprites.
Features
- comes with premade plugin parameter structure templates,
- dynamic (global) speed multiplier, including fractional speeds,
- cycle-skipping, so e.g. an instant flinch can return to idle seamlessly,
- three-phase (intro, loop, outro) system that allows dynamic shortening,
- battler home position overrides, either absolute or relative, which can be animated,
- blocks specified unwanted sprite effects and/or motions while an animation is active/visible,
- "flipbook tags", a system to control animation transitions similarly to an animation state machine,
- rules system with built-in filters by actor/enemy, equipment, states, switches, precompiled custom JS conditions,
- automatic asynchronous resource caching during battle, so battles will load fast and animations won't flicker (if set to wait),
- it's written in easy-to-read modern-ish JS with classes and comments, plus a type definition file for editor completions. No precompiler, no obfuscation.
Example Video
(This is a bit older, so there are one or two glitches you may notice.)
Implementing what's shown requires additional JavaScripting, namely hooking the engine to start and stop animations in response to gameplay events and a system to add sound effects to animations. It's a combination with mostly unreleased plugins that I'm still working on, basically.
If you wait a bit, I'll publish "Battler Flipbook Events Core" for free too, which can handles most shared aspects of frame-perfect animation callback note tags. I still need to polish and document that one before release, though.
How to Use
I've included instructions for how to write controller/"layer" and general add-in plugins in the itch.io page and help text, so I won't fully repeat them here.
In short, for layers you'll want to extend most Core classes into your custom set of classes (even if unchanged, as it makes debugging easier), recursively decode the rules array from your plugin parameters into JS objects (there's a helper function included) and map it into rule instances (just call the constructor), then instantiate your derived runtime class. In terms of JavaScript, this should be around 20-30 lines of boilerplate maybe. Remember to include super. calls in prototype method overrides to work well with add-ins!
Add-ins that affect all layers should be written more like traditional MV/MZ plugins: Overwrite the Core classes' and Core API functions with your versions as needed. I've included a makeHook function in this Core to make this more convenient where you'd like to publish an adjustable override from your plugin, though I don't recommend it for very-frequently-called targets.
Demo
This plugin doesn't provide any plugin commands and by itself doesn't noticeably affect the game at all, so a demo project doesn't seem applicable. The included plugin parameter structure definition templates come with drop-down values, number limits and help text that should make using them easy and reliable, though. (Please tell me if anything is confusing!)
The intention there is for layer plugins to not require any note tags or further scripting at all, or to make that the default if at all possible at least.
Script
This plugin is over 3.5k lines long (+ another ~1000 for the .d.ts) and will receive updates, so I hope an itch.io link is alright. You don't need an account to download this: Battler Flipbooks Core MV + MZ
FAQ
Q: Which engine versions does this work with?
A: The plugin is tested with both RPG Maker MV 1.6.1 and RPG Maker MZ 1.6.1. Same file, just a few if-conditions to account for the differences.
Q: Any known incompatibilities?
A: None. I don't think this can outright conflict with anything, as all engine hooks are at least semi-transparent. I've included some optional compatibility tweaks that adjust certain plugins' functions for an extra-seamless result, too, like using the fallback sprite size when measing it from YEP_BattleEngineCore, but not for pointer interactions, for example.
Credit and Thanks
- This plugin: Tamschi
- Inspiration: Masahiro Sakurai - Attack Poses [Animation] (YouTube)
You don't have to credit me specifically when including this in your games (though it is appreciated).
Just don't mangle the included license text and, if you edit the file, add comments clearly pointing out your changes. I tried to make sure the latter isn't necessary, though.
Author's Notes
I made this thread purely to announce the Core, since I'm certain that this can be very useful even without any of my controller or add-in plugins (which are/will be paid. This whole thing is in the hundreds of hours of work, so I charge a little for the "this is professional-grade end user software" experience. Hope that's okay).
Commercial use is allowed! Please see the included license for details, but it's quite permissive. I basically want you to not mangle the license and to declare modifications you make to the file when shipping it with your game(s).
Since this is a Core with an open extension API, you can also re-host the plugin as long as you link back to my page properly. See the license for details.
Additionally to the license terms included within Battler Flipbooks Core Ver. 1.0.0, you may copy and relicense the plugin parameter structure definitions in the TS_Battler_Flipbooks_Core.js file (That is: the block comments beginning with `/*~struct~`), as long as you, nearby in your plugin source code, mention their origin and point out your modifications.
This is fixed now. You can find the updated license text directly on the itch.io page.
Please let me know what you think and thanks for having me!
Features Mentioned
- comes with premade plugin parameter structure templates,
- dynamic (global) speed multiplier, including fractional speeds,
- cycle-skipping, so e.g. an instant flinch can return to idle seamlessly,
- three-phase (intro, loop, outro) system that allows dynamic shortening,
- battler home position overrides, either absolute or relative, which can be animated,
- blocks specified unwanted sprite effects and/or motions while an animation is active/visible,
- "flipbook tags", a system to control animation transitions similarly to an animation state machine,
- rules system with built-in filters by actor/enemy, equipment, states, switches, precompiled custom JS conditions,
- automatic asynchronous resource caching during battle, so battles will load fast and animations won't flicker (if set to wait),
- it's written in easy-to-read modern-ish JS with classes and comments, plus a type definition file for editor completions. No precompiler, no obfuscation.
- Example Video
- (This is a bit older, so there are one or two glitches you may notice.)
- Implementing what's shown requires additional JavaScripting, namely hooking the engine to start and stop animations in response to gameplay events and a system to add sound effects to animations. It's a combination with mostly unreleased plugins that I'm still working on, basically.
- If you wait a bit, I'll publish "Battler Flipbook Events Core" for free too, which can handles most shared aspects of frame-perfect animation callback note tags. I still need to polish and document that one before release, though.
Downloads / Referenced Files
Log in, then follow the RPG Maker Developers Group to see these download links.
Log in to downloadLicense / Terms Note
Credit and Thanks - This plugin: Tamschi - Inspiration: Masahiro Sakurai - Attack Poses [Animation] (YouTube) You don't have to credit me specifically when including this in your games (though it is appreciated).
Creator Claims / Removal
If you are the original creator and want this listing reassigned, edited, or removed, join BMMPlay and contact the moderators with proof that matches the original RPG Maker Web profile, linked GitHub, itch.io page, or another public creator identity.
Replies (0)
No replies yet.
Topic Summary
Loading summary...