Summon Actor

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
Summon Actor v1.3.2

LadyBaskerville
Introduction
Summoning creatures that replace the party in battle is a feature in many RPGs. While it is possible to create a Summoning system purely with events, doing so can be quite cumbersome, especially with a large number of actors. This plugin is meant to reduce the eventing work for those of you who want to create a Summoning mechanic with single Summons that replace the entire party, similar to the Aeons in Final Fantasy X.

Features
The plugin includes plugin commands to summon actors and return the party, which can be used in a skill's Common Event, and provides multiple options to choose when Summons should be automatically healed and what happens when a Summon dies in battle. It also allows you to specify how EXP should be distributed at the end of battle and provides a simple notetag in order to diasable skills if a certain actor is dead.


How to use

Plugin Parameters

On Summon Death: Specify here what should happen when the Summon dies in battle. (return the party, run a common event, lose the battle)

Death Common Event: If a Common Event is called on Summon Death, enter the Common Event ID here. Usually, you will want to either revive the Summon or return the party somewhere in the Common Event.

Return On Battle End: Should the party return when the battle ends?

Summon Battle End Common Event: Enter the ID of a Common Event that should be called after a Summon ends a battle. Use this to e.g. reset map tints.

Heal Mode: When should Summons be healed automatically? (each time they are summoned, after each battle, never)

EXP Mode: How should EXP be distributed? (only party, only Summon that ends the battle, party and Summon that ends the battle, party and all Summons that took part in the battle)

Change Victory Aftermath (Yanfly): When using Yanfly's Victory Aftermath (and Aftermath Level Up), should the actors that appear on the EXP and Level Up screens be changed to reflect the EXP Mode? If true, Summons that gain EXP will appear first, then the party members that gain EXP, no matter who is on the screen when the battle ends. (If the EXP mode is set to "party" or "summon", only party members / the last Summon will be listed, respectively.)

Max EXP Items: When using Yanfly's Victory Aftermath is installed and the parameter above is set to true, up to how many actors can appear on the EXP screen? Use -1 to automatically set this to the maximum number of battle members (default). (Any more actors will still gain EXP - and appear on the Level Up screen if Aftermath Level Up is installed as well - they just won't be shown on the EXP screen.)

Plugin Commands

Use the plugin command
Code:
SummonActor n
to summon the actor with the ID n.

Use the plugin command
Code:
ReturnParty
to return the party members that were in the party before the summon.

Notetag:

You can automatically disable skills and items if an actor is dead (e.g. if you don't want to be able to summon a dead actor). Use the notetag
Code:
<Require Living Actor: n>
to only enable the skill / item if actor n is alive.

Script Calls:

$gameParty.LB_summonActor(n): This is the same as using the Plugin Command SummonActor n.

$gameParty.LB_return(): This is the same as using the Plugin Command ReturnParty.

$gameParty._LB_summonId: The actor ID of the current Summon. 0 if there is currently no Summon.

$gameParty._LB_summon: The current Summon (a Game_Actor). null if there is currently no Summon.


Plugin
Download it here: LB_SummonActor.js

Demo
None yet, but if you would like one, let me know :)

Credit
- LadyBaskerville

Terms of Use
- You may use this plugin in both non-commercial and commercial projects.
- You may edit this plugin and redistribute your edits, but do not claim you wrote the original code.
- You may redistribute this plugin elsewhere. In that case, please link back to this plugin thread if possible.

Version 1.3.2
- Improved compatability with Yanfly's Victory Aftermath: Added two plugin parameters to adapt the Aftermath screens to the EXP mode.
Version 1.3.1
- Added compatability for Yanfly's Victory Aftermath and Aftermath Level Up.
Version 1.3.0
- Fixed script calls: made summon and summonId properties of Game_Party.
- Added Item notetag.
- Added Common Event to run after a Summon ends a battle.
- Fixed a small bug where actors would still execute their actions after the party was replaced by a Summon.
Version 1.2.0
- Added Skill notetag to require living actors.
- Allowed Summons to summon other Summons (replacing the current Summon)
Version 1.1.0
- Added EXP modes.
- Removed the Summons parameter as it is now obsolete - the plugin keeps track of all Summons that take part in a battle automatically.
 
Last edited:

Damaris

Villager
Member
Joined
Jan 5, 2017
Messages
24
Reaction score
21
First Language
English
Primarily Uses
I was literally days away from eventing a system like this. Thank you for saving me countless hours.
I'll throw some thoughts in here once I've tested it thoroughly.
 

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
@Damaris
I'm happy this plugin is of use for someone! I'm looking forward to your feedback, any suggestions on improvements are welcome :)


Also, I updated the first post with a new version - you now have more control over how EXP is distributed at the end of battle.
 

Damaris

Villager
Member
Joined
Jan 5, 2017
Messages
24
Reaction score
21
First Language
English
Primarily Uses
I like it. Tested it in a fairly script-heavy game as well as on a blank project. There are some minor incompatibility issues with custom graphical interfaces - but compatibility fixes are not something I'd expect from most plugin developers. That's my job ;). I figured out that these issues can be solved by simply reloading the scene/sprites after the actor has been summoned and again once he dies. I have yet to find the exact script to run - but opening and closing yanfly's formations scene solves the issue so I know where to look =].

I played around with it a little and got a nice fade-in, fade-out in a common event to cover up the rather sudden visual swap in SV battle, but eventually I'll cover it up with a nice animated entrance and make it super pretty. Using common events for the actor entrance and exit is a good choice in that regard. I'll might even post a video to show it off when I'm happy with it.

I do however, have a suggestion for a feature. A plugin parameter that links an actor id and a skill id. If the actor isDead then the skill is unusable. I attempted this with a yanfly custom requirement evaluation;

<Custom Requirement>


if ($gameActors.actor(31).isDead) {


visible = false;


} else {


visible = true;


}


</Custom Requirement>

For some reason it didn't work. I didn't try very hard, I'll fix it eventually, but for users without js knowledge it might prove to be a valuable parameter.

Other than this, its working flawlessly. I could think up some other nice features to add but any developer worth his salt wouldn't expect you to do his work for him. ;)  This plugin does what it says and does it well. Good work.
 
Last edited by a moderator:

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
@Damaris Thank you! :)


If you know which plugins are causing compatability issues, I can try to fix it - especially if it's a matter of reloading the sprites, which I can imagine might prevent display problems with other plugins as well.


Yes, I had thought about giving such a requirement option for skills, but figured Yanfly's Skill Core would be better suited / more customizable for that. But you're right - people might not want to use another plugin (and Lunatic mode, too) just for that simple feature. I'll probably implement a skill notetag along the lines of <Living Actor Requirement: x> in the next version to make it more user friendly. Btw, the Yanfly notetag should be:


<Custom Requirement>
if ($gameActors.actor(31).isDead()) {
value = false;
} else {
value = true;
}
</Custom Requirement>


as far as I tested it :)


Oh, just go ahead and throw your feature ideas at me ;) I probably won't implement things that other plugins already cover (and do a better job at it), but I am looking to improve this plugin as time goes on.
 

Damaris

Villager
Member
Joined
Jan 5, 2017
Messages
24
Reaction score
21
First Language
English
Primarily Uses
Aha, I was so close with my custom requirement =P. I'm always missing something, Thanks.


The plugins that I'm using for my GUI are SRD's Battle GUI Core and Battle Status Customizer. The specific issue is that status window isn't updating to match the change in actors. All of the original party members and their respective Status windows, face images and values remain, and the new actor's window isn't appearing. I setup a project with just these 4 (Status customizer is two parts) plugins to confirm these were the culprits, and had the same issue - it is easy to replicate.


As for feature ideas...


Something I considered while using the plugin, it would be nice if you could give users the ability to show the summoned actors status window individually of the party status (possibly in a separate window). Thus allowing the player to see the current status of his absent party members. It would also make the summon feel more unique and grand, less like it was just another actor.


Many of the other features I'm considering are achievable with other plugins. If I think of anything particularly useful I'll be sure to let you know.


Also... What happens if a summoned actor summons an actor? Does it overwrite the reserve party or just the summoned actor? Just a thought that has the potential to break something =].


I have a few ideas that might not be in the design scope of this plugin either. Things like swapping individual party members are requested a fair bit on the forums. I think something like this would be worthy of a plugin of its own though.
 

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
Alright, I'll definitely look into making the plugin compatible with SumRndmDde's (I'd like to use them myself as well :D ) EDIT: Actually, that appears to be a bug in his Battle Status Customizer plugin - with my plugin switched off and the plugin commands replaced by standard Add/Remove Party Member event commands, the same thing happens. I'll do more testing in the next days.


Yes, that sounds like a nice option to have. I'll see what I can do while keeping it as compatible as possible with plugins that modify the battle gui.


For swapping individual party members, there is already a plugin here, but I haven't tested compatability or looked into its specific features.


Finally, when a Summon attempts to summon another actor, nothing will happen (to avoid the original party being overwritten). I could also make it so that the new Summon replaces the old one and swapping back would still return the original party. "Nested" summoning seems a bit too complicated to keep track of.
 
Last edited by a moderator:

Damaris

Villager
Member
Joined
Jan 5, 2017
Messages
24
Reaction score
21
First Language
English
Primarily Uses
"Nested" summoning seems a bit too complicated to keep track of.
Agreed. I think giving users the ability to overwrite the original summon could be beneficial to users who want to swap between summons without having to return to the original party. Really just a quality of life improvement for the player in that circumstance. Depends on how they want to utilize this plugin.

Somehow I missed that Actor-swap plugin. I've only come back to the world of RM a few months ago (After several years away), so I'm still catching up on everything. =]
 

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
I think giving users the ability to overwrite the original summon could be beneficial to users who want to swap between summons without having to return to the original party.
Added to my to-do-list :)
 

Damaris

Villager
Member
Joined
Jan 5, 2017
Messages
24
Reaction score
21
First Language
English
Primarily Uses

A quick little demonstration of how I'm using your plugin. Took me a little over an hour to put it together. Still needs some work - but it's good enough for a place holder until I want to further develop and balance the system.
 
Last edited:

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
Wow ... that looks awesome! I love it :D


I could confirm that the problem with the battle status menu is a bug in SumRndmDde's Battle Status Customizer with the Change Party Member command and happens without my plugin as well - sent a bug report to him.


I'll update the thread with a new version of my plugin soon, which will include skill notetags and the option to swap Summons without needing to return the party. I'll get to the GUI eventually, but that will take a bit more time.
 

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
Version 1.2.0 is now out. Added a skill notetag to disable skills when an actor is dead and included the possibility to swap Summons when a Summon is already summoned.


@Damaris SumRndmDde has updated his battle status plugin. It is now working for me, let me know if you find any more compatability issues in your project.
 

Damaris

Villager
Member
Joined
Jan 5, 2017
Messages
24
Reaction score
21
First Language
English
Primarily Uses
Awesome.


Edit: Faded text was my fault.
Upon testing I noticed that there is still an issue with SRD's status plugin not reading actor battlestatus notetags for summoned actors, but it only took me a few minutes to find a work around for my project. Interestingly - the updated functionality seems to work exclusively in full-playtest mode. Battle-test mode operates the same as before. That might be something to do with RMMV or my setup though.


I also noticed something with your plugin while testing. So... During my summon-actor common event, I adjust the screen hue. I restore it with my summoned actor death common event. However when my summoned actor is victorious the hue is not re-adjusted. I kind of like the lingering visual effect after combat, due to my weather system it only lasts a little while... But I think for a lot of users it'd be important to have a common event for summon victory to clean up adjustments made during the summon actor common event. Just an idea.

Everything else seems to be working great. I have yet to thoroughly test summon-swapping though. I'll be sure to let you know anything else I find. =]
 
Last edited by a moderator:

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
Interestingly - the updated functionality seems to work exclusively in full-playtest mode. Battle-test mode operates the same as before.
You're right, that's interesting. I have heard of plugins that operate differently in battle test and play test, but this is the first time I see it in action. I wouldn't be too bothered by it, since it works fine in-game, but if you want, you can ask SumRndmDde if it's possible to fix it in battle test as well.

But I think for a lot of users it'd be important to have a common event for summon victory to clean up adjustments made during the summon actor common event.
Good point. Noted for the next update :)
 

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
Updated to version 1.3.0: Bugfixes, Item notetag for living actor requirement, and Common Event to call when a Summon ends a battle.

I also played around a bit with the battle HUD and realized that a) it will take me longer than I expected and b) I will make an extension plugin for it so that it can be left out in plugin heavy projects where compatability issues are likely (and the HUD design is already handled by other plugins).
 

ViviCJ

Prince of Parties
Member
Joined
Jun 4, 2016
Messages
29
Reaction score
2
First Language
English
Primarily Uses
RMMV
Loving this plugin! I've created a skill to dismiss the summoning to which is handy should you decide to conserve it's Hp!

I was wondering if you had any plans to make it compatible with YanFly's Aftermarth Level Up, for example:

- If you choose for the EXP to go the party and not the summons
BUT the summons is still on screen from winning the battle
It is still showing the summon earning 0 EXP rather than the party getting any.

If you don't plan to please dont feel obliged to! Either way, thanks for the great plugin!
 

LadyBaskerville

Hell-poodle
Veteran
Joined
Sep 12, 2016
Messages
645
Reaction score
511
First Language
German
Primarily Uses
RMMV
Thank you for your kind words!

I added a parameter "Change Victory Aftermath (Yanfly)" - if you set it to true, the EXP and Level Up screens will be adapted to the EXP Mode (e.g. if you have the EXP going to the party, no Summons will appear on the EXP screen). I've attached the new plugin file to this post for now; there are still a few issues I would like to fix before I make it an "official" update (e.g. the party reappears for the victory pose). I'll work on that when I have a bit more time.
 

Attachments

ViviCJ

Prince of Parties
Member
Joined
Jun 4, 2016
Messages
29
Reaction score
2
First Language
English
Primarily Uses
RMMV
Woah that was quick!

I love it already, I can't wait to see you fine tune it up!

Thanks so much and look forward to an update whenever you can!
 

danoplay199027

Villager
Member
Joined
Mar 5, 2017
Messages
8
Reaction score
0
First Language
english
Primarily Uses
RMMV
Cannot get this to work.
were is the actor id i need?
 

Andar

Veteran
Veteran
Joined
Mar 5, 2013
Messages
30,037
Reaction score
7,031
First Language
German
Primarily Uses
RMMV
were is the actor id i need?
The actor ID is the number of the actor in the database (same goes for every database part, those numbers in front are the IDs)
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

On the plus side, if all this rioting sparks another Covid outbreak... I will have a whole lot of time to work on my game. Not exactly how I wanted to get that time, but hey I'm a glass is half full... of RM kind of guy. :LZSwink:
A video once in a while won't hurt.
Have a craving for a Nesquik milkshake. No idea why. Haven't had one since I was a kid. lol. I remember them kinda tasting nice, but also leaving a lot of nasty powder at the bottom of the cup.
The more I think about it, the weirdest part of going to work post-virus will probably be getting used to seeing my coworkers' mouths again. :LZYshock:
I think one of my weirdest realizations is that my speed of game development would probably be about the same if I *didn't* work a full-time manual labor job.

Forum statistics

Threads
98,061
Messages
948,983
Members
129,340
Latest member
guangdi
Top