Zephadus

Villager
Member
Joined
Nov 1, 2015
Messages
11
Reaction score
0
First Language
English
Primarily Uses
So I was making animations for various items, attacks, map effects, and so on, when I noticed a pattern...
A lot of my animations were effectively the same thing with different graphics and/or sounds.
For example, I have a few different types of potions, all of different colors, bottle shapes, whatever, and when they're used in battle, I have animations of a colorful splash, some glowing spheres to illustrate the item's influence, and the empty bottle chucked away, and like I said, the only differences in the animations were the graphics and sounds.
This gave me an idea for what I'm calling "Resource Swapping"...

Basically, the idea is to reduce redundancy and declutter the database by pointing the system to alternative resources when playing an animation.
In effect, it should play the animation as normal, but instead of using, say, the Recovery2 graphic at hue 80, and the Heal3 sound, it should be pointed to the new parameters: Recovery1 graphic at hue 200, with the Up1 sound.

If at all possible, I'd like it to work not only in battle, but in event calls as well, for map effects and the like.
Extra points if an entire animation can be mirrored, but not necessary.
I imagine in the case of Skills, Items, and Weapons, note tags would be used.
For events, it would probably require a script call or plugin command before the animation command, or in place of the command itself.

I hope I've explained it well enough, but if not please feel free to ask questions.
Hopefully I'm not the only one to want a plugin like this. lol
 

Zephadus

Villager
Member
Joined
Nov 1, 2015
Messages
11
Reaction score
0
First Language
English
Primarily Uses
Bump.
Is it doable at least, I wonder?
It would be a most convenient little thing.
 

M.I.A.

Goofball Extraordinaire
Veteran
Joined
Jul 13, 2012
Messages
944
Reaction score
801
First Language
English
Primarily Uses
This can be accomplished with a creative combo of Plug in's and databasing.

Check out any number of the Skill Replacement plug ins.. I think Galv has one..
If you want potions to have 5 possible Animations, create 5 potions, with 5 animations.. and then assign them each a <Replace> tag (or whatever the command is depending on the plug in) and cycle through them at your preference.

You could also probably just use some "Common Event Command" plug in..

Just trying to give you a good starting point.
Hope you find this helpful!! :)
-MIA

Ex: In my current project, the "Items" command is actually a Skill Set, since items have a different effect depending on which actor uses them.
Chemists: Higher proficiency
Warmage: Lower proficiency
Etc.
 

Zephadus

Villager
Member
Joined
Nov 1, 2015
Messages
11
Reaction score
0
First Language
English
Primarily Uses
I think you misunderstand. I don't want to change the animation for a particular action, but rather, I'd like to dynamically replace the image resource the animation uses, so I don't have to make 5 identical animations with different image resources, but rather one animation, which I can change the image resource of on a per skill / item / animation command basis.
Perhaps my explanation was over-simplistic...

Let's say for example that I have an animation of Mario jumping on an enemy, a la Super Mario RPG, and I want there to also be a Luigi version of the animation; I'd like to use the same exact animation from the database, only replacing Mario's sprites with Luigi's (replacing one resource image with another).
This saves me from having to make a separate identical animation for each character.
Once or twice isn't bad, but if I had a Jump attack for Mario, Luigi, Peach, Bowser Toad, Yoshi, Birdo, Wario, etc., it becomes redundant to make animations that are identical in every manner other than the sprite resource being used.

Let us also imagine they have an animation in which they swing a weapon, and I want this animation to change depending on the weapon equipped; rather than making animations for Mario Hammer, Mario Racket, Mario Club, Mario Bat, Mario Stick, etc., I could simply use a sheet that has Mario making a weapon swinging animation as Image 1, and one of a weapon as Image 2, then when calling the animation, whether by note tags in the skill, or by a script or plugin command if shown on a map, I could pass arguments to change Image 1 to Peach, and Image 2 to a Parasol.
So for example, 8 characters possibly wielding 8 different weapons would result in 64 possible combinations.
This number gets exponentially larger each time a character or weapon is added, and the idea is to not have 1000+ animations, because RPG Maker won't like me very much if I do. lol
 

mogwai

1984
Veteran
Joined
Jun 10, 2014
Messages
875
Reaction score
598
First Language
English
Primarily Uses
RMMV
According to this...
PHP:
Sprite_Animation.prototype.loadBitmaps = function() {
    var name1 = this._animation.animation1Name;
    var name2 = this._animation.animation2Name;
    var hue1 = this._animation.animation1Hue;
    var hue2 = this._animation.animation2Hue;
    this._bitmap1 = ImageManager.loadAnimation(name1, hue1);
    this._bitmap2 = ImageManager.loadAnimation(name2, hue2);
};
If not in the editor, then in this ^ , but this shows there should be a way to in the editor; See it has an animation1 hue and an animation2 hue...

It would only be a microOptimization to do it via plugin. Those animations are stored in a JSON, which is simplified javascript anyway. The editor is the most efficient way to change their colors: Mario red fireball, Luigi green fireball, etc.

EDIT: Consider this, if it's about speeding up the wax-on/wax-off Goku training process of setting all those animationHues one frame at a time (and it doesn't enlighten you).
optional
You could open Animations.json in a text editor... back it up first, but like duplicate an animation line, like...
PHP:
{"id":43,"animation1Hue":0,"animation1Name":"Recovery2","animation2Hue":0,"animation2Name":"","frames":[[[0,0,0,400,0,0,255,1]],[[1,0,0,400,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,150,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[2,0,0,400,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,150,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[3,0,0,400,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,150,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[6,0,-82,500,0,0,60,1],[-1,-103,312,420,0,0,80,1],[4,0,0,400,0,0,255,1],[-1,408,248,100,0,0,255,1],[-1,0,0,0,0,0,0,0],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,150,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[7,0,-77,510,0,0,120,1],[-1,-77.5,312,420,0,0,128,1],[-1,-200,0,300,0,0,255,1],[-1,200,0,300,0,0,255,1],[5,0,0,400,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,150,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[8,0,-80,520,0,0,180,1],[-1,0,-10,420,0,0,128,1],[-1,-200,0,300,0,0,255,1],[-1,200,0,300,0,0,255,1],[5,2,0,350,-80,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,150,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[6,2,-78,530,0,0,180,1],[-1,200,0,300,0,0,255,1],[-1,-87.5,312,420,0,0,128,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[18,0,144,80,0,0,100,1],[-1,0,150,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[7,0,-78,540,0,0,180,1],[9,-200,0,300,0,0,255,1],[-1,0,-10,420,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[18,0,101,90,0,0,200,1],[-1,0,150,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[8,0,-80,550,0,0,180,1],[10,-200,0,300,0,0,255,1],[-1,-85,255,420,0,0,255,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,0,59,100,0,0,255,1],[-1,0,150,0,0,0,0,0],[18,-300,220,60,0,0,100,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[6,0,-80,560,0,0,180,1],[11,-200,0,300,0,0,255,1],[9,200,0,300,0,0,255,1],[-1,-72.5,230,420,0,0,128,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,0,16,110,0,0,255,1],[-1,0,150,0,0,0,0,0],[18,-300,181,70,0,0,200,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[7,0,-80,570,0,0,120,1],[12,-200,0,300,0,0,255,1],[10,200,0,300,0,0,255,1],[-1,-130,285,420,0,0,128,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,0,-27,100,0,0,255,1],[-1,0,150,0,0,0,0,0],[18,-300,141,80,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[8,0,-80,580,0,0,60,1],[13,-200,0,300,0,0,255,1],[11,200,0,300,0,0,255,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,0,-69,90,0,0,200,1],[18,300,228,70,0,0,100,1],[18,-300,102,90,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[14,-200,0,300,0,0,255,1],[12,200,0,300,0,0,255,1],[17,-200,192,300,0,0,100,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,0,-112,80,0,0,100,1],[18,300,193,80,0,0,200,1],[18,-300,63,80,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[15,-200,0,300,0,0,255,1],[13,200,0,300,0,0,255,1],[17,-200,176,300,0,0,170,1],[-1,408,223,100,0,0,255,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,300,157,90,0,0,255,1],[18,-300,23,70,0,0,200,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[16,-200,0,300,0,0,255,1],[14,200,0,300,0,0,255,1],[17,-200,160,300,0,0,255,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,300,122,100,0,0,255,1],[18,-300,-16,60,0,0,100,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[17,-200,0,300,0,0,255,1],[15,200,0,300,0,0,255,1],[17,-200,144,300,0,0,170,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,300,87,90,0,0,255,1],[-1,-297.5,-137.5,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[17,-200,128,300,0,0,100,1],[16,200,0,300,0,0,255,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,300,51,80,0,0,200,1],[-1,-300,-192,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1],[-1,0,0,100,0,0,255,1]],[[17,200,0,300,0,0,255,1],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[-1,0,0,0,0,0,0,0],[18,300,16,70,0,0,100,1]]],"name":"Heal All 1","position":3,"timings":[{"flashColor":[187,255,255,204],"flashDuration":8,"flashScope":1,"frame":0,"se":{"name":"Saint4","pan":0,"pitch":150,"volume":90}},{"flashColor":[255,255,255,255],"flashDuration":5,"flashScope":0,"frame":1,"se":{"name":"Ice4","pan":0,"pitch":150,"volume":90}},{"flashColor":[255,255,255,255],"flashDuration":5,"flashScope":0,"frame":3,"se":{"name":"Heal1","pan":0,"pitch":80,"volume":90}},{"flashColor":[255,255,255,255],"flashDuration":5,"flashScope":0,"frame":4,"se":{"name":"Ice5","pan":0,"pitch":100,"volume":90}},{"flashColor":[187,255,255,136],"flashDuration":10,"flashScope":2,"frame":5,"se":null},{"flashColor":[187,255,255,255],"flashDuration":10,"flashScope":1,"frame":5,"se":null}]},
Put it at the bottom with "id":121 or whatever the last animation is and simply F.A.R.T. (Find And Replace Text), all the "animation1Hue":50, "animation2Hue":50...
 
Last edited:

Zephadus

Villager
Member
Joined
Nov 1, 2015
Messages
11
Reaction score
0
First Language
English
Primarily Uses
In that code above, is there a way to put that in a script call or something?
I know about the json file, and used that to break the hard limit of 1000 animations, but my project requires a great many more than 1000 animations.
What I'm trying to do is condense the number of unique animations to a manageable number, and simply swap resources where needed.
Every character uses the same number of frames to throw a punch, so I only want one "Punch" animation, and to be able to pass an argument indicating which sprites to use.
That way I don't clutter my database (or json file) with Punch Char-A, Punch Char-B, Punch Char-C... 48 times, then Kick Char-A, etc. another 48 times.
The database gets quite large, and not only the game, but the editor starts to lag, and has crashed on several occasions.
Instead of thousands of animations, I'd like to be able to pass arguments to a couple dozen instead.
 

Latest Threads

Latest Profile Posts

I THINK I have a slightly better grasp on drawing my maps now... sorta. I still need to figure out how to draw a city of sorts. I've only got the abstract going so far.
One day, I'll not have this lingering cough and we'll have another make a game stream.
A music I create while practicing E Major scale. :D
Too bad the Boss Battle Build Bout isn't also for VXAce.

Forum statistics

Threads
115,188
Messages
1,087,950
Members
149,761
Latest member
iSexPistols7
Top