User-Made Plugin Links

Return to Index

This page contains links to plugins created by members of the SRPG Studio Community. Content is organized by creator, with each section providing links to the creator's GitHub/Google Drive/etc. where plugins can be downloaded, and descriptions of the plugins.

**Please note any usage restrictions set by the creators** (for example, if a plugin is not approved for use in commercial projects)**.**

If you have a problem regarding a script here, please refrain from using the comments section to place a inquiry--you will get a much quicker response if you ask in the Discord server instead.

Some errors may be caused by using multiple plugins at the same time, resulting in code conflicts. It is recommended to test plugins independently before running them together.

## **2chang**

### **2chang's GitHub**

https://github.com/2changi/SRPG-Studio-Plugins

### **Plugins**

#### **Attack Target Conditions**

This script adds a custom skill that allows you to create units that are only targetable under certain conditions. Counterattacks are not handled here, so they can still happen.

#### **Random Unit Call**

This script allows you to use a line of code in your events to spawn a random unit defined in the event ally/event enemy/bookmark tab of the SRPG Studio enemy/ally unit window. You can even pick player units that are defined in the database.

## Anarch16Sync

### **Plugins**

#### **AI**

##### **AI Seizes**

This plugin allows to create a custom skill that makes AI Units move and trigger SEIZE Events, with this one can automate the trigger of special events, like enemies capturing secondary castles.

##### **Ai Visits Villages**

This plugin allows to create a custom skill that makes AI Units move and trigger VILLAGE Events, with this, one can automate the destruction of villages or make Allies go to them, retrieve their rewards or trigger a special events.

#### **Calculator**

##### **Fibonacci Pursuit**

This plugin makes it so that is possible to have more than 2 rounds of combat based on how much big is the Agility difference, but each extra round of combat needs an agility increase that follows the Fibonacci sequence.

i.e., with a pursuit value of 3 in the settings, the thresholds for rounds are like this:

Difference
 8
 16
 29

The pursuit value in the setting now determines in what value of the sequence the threshold starts (i.e., a pursuit value of 3, means that the agility difference starts at 3, but a pursuit value of 5 means the difference needed starts at 8, because 8 is the 5th value in the sequence).

Optional Settings: This can be changed to required a special skill that allows to trigger the extra rounds, this allows it to coexist with the default pursuit and to work when pursuit is disable in the difficulty settings.

#### **Class**

##### **Class Fixed Growth**

This plugin adds the Fixed Class growths that is set on the class prototype info as fixed stat increases on a player unit level up. This extra level up points are added to the normal level ups and to level ups that happen at the base.

How to use: Add into your plugin folder, set the desired Growth Settings under prototype info on the Class tab. Now player characters will gain the same stats as a enemy unit when level up plus their own personal growths.

#### **Transform**

##### **Free Custom Transformation**

Adding the custom parameter {FreeTrans:true} to a Transformation allows to take different actions after transforming and canceling the transformation (Works like Trade or Convoy commands).

##### **NoFusion Transformation**

Allows a way to disable unit transformation while carrying another unit (Fusion).

The custom parameters is added to the transformation data (Config -> Transformation -> Custom Parameters). This makes that transformation disabled while the unit is carrying another unit.

##### **Transformation Command Ex**

This plugin adds multiple features to the Transformation command from skills:

* The Transformation Command doesn't appear if there aren't any valid transformation options
* The Cancel Transformation Command doesn't appear if the original class can't move on the current terrain
* Adds a Config option to allow for skipping the transformation select screen when there is only one possible transformation.

#### **UI**

##### **Growth Radar Window**

This plugin adds a new bottom window that displays a unit growth rates as radar graph. Growth rates displayed are total growth rates, including class and item bonuses. Requires Radar\_chart.js to work.

Graph visuals can be configured with the parameters inside the draw function, there is also a gradient color version commented out that can be swapped for the polygon fill.

### **Translated Plugins**

These are plugins created by the Japanese SRPG Studio community that have been translated and made available on this GitHub for greater accessibility. Please observe any restrictions noted with the plugins and make sure to credit the creators.

#### **Namaemitei Plugins**

##### **Arena Event Command**

This plugin allows you to create various types of Arena events/scenarios.

##### **Maniac Stock Pack**

This pack contains the following plugins:

###### **Stock Categories**

Weapon types can be grouped by category group. It is also possible to display an image as an icon that is not the weapon type icon displayed in the stock classification (Fire, wind, and thunder can be used as logic magic, and by preparing separate icon images for logic magic).

###### **Stock Item Visibility**

When you put in or take out an item from the stock side or when you switch weapon types, the text color of the item becomes darker when the weapon tool on the unit side cannot be used.

##### **Maniac Wand Pack**

With this plugin is possible to add more item types the function as Staves, and make different classes use different Staff Types.

This pack contains the following plugins:

###### **Increase Wand Types**

With this plugin is possible to add more item types the function as Staves, and make different classes use different Staff Types.

###### **Item Master Skill**

With this plugin you can create a skill that allows the use of items to not end the unit's turn.

###### **Wand Master Skill**

With this plugin you can create a skill that allows the use of the Staff command to not end the unit turns.

###### **Item to Unsortie Allies**

A script that creates an item (cane) that repatriates allies.

###### **Scope of the Wand Depends on Mag**

You can make the range of the staff dependent on magic power.

###### **Staff Secondary State Effect**

When creating HP recovery , Full recovery, Damage, Unlock, Again, Teleportation, Rescue, Resurrection, Repair, Inflict State, Cure State, Fusion or Transform Staves/items, you will be able to add the option to Add and/or Cure specific effects to the Staff User and/or Target on top of the normal effect of the item.

###### **State Staff Accuracy Change**

Makes the accuracy of staffs that give bad states conform to FE. It uses the following formula:

(30 + (Magic Power -Enemy Magic Defense) x 5 + Skill -Distance x 2)%)

###### **Wand Weapon Level**

This plugin adds Proficiency and Weapon Levels to Staves.

###### **Wand Goes to Top**

The staff used with the staff command will now move to the top of the staffs you have.

##### **AI Counter Weapon Swap**

A script that switches the enemy to a weapon that can counterattack when your army attacks.

When your unit attacks an enemy, automatically select a weapon that can counterattack from the weapons possessed by the enemy. (Uses the weapon that is detected first among the weapons that can counterattack. Currently, it is not considered whether the power or accuracy is optimal.)

##### **Counter Weapon Select**

Script that allows weapon selection when counterattacking. During the enemy turn, you will be able to select a weapon when counterattacking when attacked by an enemy.

If you set a custom skill with the keyword 'weapon\_select' to the unit in question, Only that unit will be able to select a weapon when counterattacking. (In the initial state, only units with counterattack weapon selection skills can select weapons when counterattacking.)

#### **O-to Plugins**

##### **AoE Pack**

By installing it, you can use items that can perform ranged attacks. You can:

* Reflect the unit ability and weapon power to the power of the item. Effects can be played when using items. You can also specify effects for hits, effects for avoidance, and effects for damage when used.
* When used, recoil damage and states can be added or eliminated.
* The hit rate can be set and the ability of the unit can be reflected in the hit rate. It is also possible to fix it.
* You can give or extinguish a state for the hit unit. You can specify multiple grant/disappear states, and you can also set the grant probability.
* The shape of the effect area can be made into a cross shape or a breath shape.
* It is possible to change the terrain of map chips that have specific terrain effects.
* In addition to the set fixed value, the amount of experience gained when using the effect will increase as the number of target units within the effect range increases. Also, if the level of the target unit is higher than the user's, if the user is a lower class and the target unit is a higher class, and the target unit is defeated, the experience gained will increase. Conversely, if the target unit is lower in level than the user, the user is a higher class and the target unit is a lower class, and no damage is taken, the experience gained will be reduced. (If the target is a ranged attack or ranged recovery that requires 5 or more people to be involved, set the IER\_EXPMagnification to 0.5 or less to set the acquisition experience value multiplier low. It is recommended to set it to 0 and set only IER\_GetEXP)

Regarding the item description window and the information window of the target unit within the effect range, The explanation display can be switched with the key specified by SYSTEM in [keyboard] of game.ini (default: left shift).

##### **Battle Talk**

Lines will appear at the bottom of the screen every time the character acts during battle. Also, depending on the settings, you can change the facial expression when the dialogue occurs.

##### **Enemy AI Randomization**

Regarding the enemy's behavior, it is usually selected from the highest score obtained by simulation. Pick up multiple actions with high scores in the simulation and select randomly from among them.

SRPG Studio's enemy algorithm aims only at opponents with high damage (or can be defeated) when there are two or more attack targets. As long as the attacked target does not move to a place where it cannot be targeted, it will never attack there even if there are many other targets that can be attacked. By introducing this plugin, if there are two or more attack targets, you will not always aim at the opponent with a large amount of damage. It is possible to occasionally attack with a weapon that grants status ailments while using a weapon with high power.

**Note:** Please be careful about conflicts with plugins that change AI.

##### **Extra Damage**

By changing the value of the array described in , you can correct the correction value and the presence or absence of the correction to the final damage.

Final damage includes skills, attack power, opponent's defense power, presence or absence of critical hits, etc. This is the damage value to the opponent's unit calculated after various calculations.

##### **MP (EP) & Special Gauge**

By introducing this, ep (mp) and fp (special gauge) will be added to the unit's parameters. Additionally, it is now possible to set the remaining amount of EP and FP to be added to the conditions for determining the use of weapons and items.

EP is intended to be used in the same way as MP in regular games, and FP is intended to be used with the premise of charging every turn.

##### **Skill Expansion**

This pack contains plugins that modify how skills operate:

###### **Extra Config Skill**

By passing a custom parameter to the skill that can set the activation rate, the activation probability can be set to 50+ (force x 0.5), etc. It is a script that can set the activation condition such as HP is 50% or less (It has no effect on skills that cannot set the activation rate (re-attack, critical hit, etc.).

**Note:** Please be sure to use it as a set with TemporaryDataVirtualAttack.js.

###### **Extra Config Base**

Scripts that define functions and constants used in various scripts.

###### **Temporary Data Virtual Pack**

At the time of battle, create an object called tmpNowVirtualAttack in custom of Unit. It is a script to temporarily hold virtualAttackUnit in tmpNowVirtualAttack.

###### **Window-Skill Info Extra**

By ExtraConfigSkill.js in the skill description column of the unit details, it is a script that displays the set activation conditions. Also, skills during cool time or skills that have a sustained effect. The skill icon is blinking and the number of turns is displayed.

###### **Command Skill**

It is a script to activate the skill from the command. Create an element in the skill list window from "Command Skills".

###### **Window Manager - Skill Select Menu**

It is a script to activate the skill from the command. Generates a skill list window from "Command Skills".

###### **Window Skill List**

It is a script to activate the skill from the command. Create an element in the skill list window from "Command Skills".

###### **Command Skill Runtime**

It is a script to set the conditions of the skill to be activated on the map such as unlocking with the official skill. For the items that can be set, refer to "Conditions that can be set for unlocking, re-action and others.txt".

###### **Duplicate Skill**

If you have multiple skills of the same type in some official scripts, only the one with the highest activation rate will be activated and checked. Modified to give priority to the one specified in priority in Custom Parameter and check the activation in order of priority.

###### **Break Attack / Armor Break**

Luna-like armor-break skill. When this skill is activated, it will be an attack that ignores the defense power of the enemy. If you want to set what percentage of defense is ignored, set custom parameters. If you do not set the parameter, the defense power of the opponent will be completely ignored.

###### **Critical Attack**

When this skill is activated, the attack becomes critical. Put it with the "OT\_ExtraConfigSkill" folder 100% activation rate, with custom parameters {EC\_NowHP: '0-50%'}. If you specify, you can reproduce the FE skill "Wrath" (critical attack with HP 50% or less).

###### **Boisterous Dance**

When the skill is activated, it will be a random attack multiple times. Damage dealt while possessing this skill is reduced (It is also possible to reduce damage only when activated with custom parameters).

Custom parameters that can be passed:

* DamageRate : (number) //Set how much damage will be done
* MaxAttackCount : (number) //You can set the maximum number of attacks
* MinAttackCount : (number) //At least this set value will be attacked when the skill is activated
* isRateChange : (number) // 0 changes the damage rate just by having the skill, and 1 changes the damage rate only when the skill is activated.
* isNoReattack : (numerical value) //Set whether to be affected by Mr. 1-239's integrated CalA noreattack, 1 to receive, 0 to not

###### **Damage Absorption**

Recovers HP by absorbing the damage received from the opponent when the skill is activated. If AbsorptionPercent is not set, it will be 100.

###### **Battle Continuation / Assault**

When the skill activates, the battle will continue. However, it will not activate in situations where the skill owner is attacked unilaterally. (It can be activated if the skill owner can attack unilaterally, but can be set to not be activated with Custom Parameter)

Custom parameters that can be passed:

* AS\_Max: (number) //Maximum number of activations (50 if not specified)
* AS\_OneSide: (Boolean value) // Will it be triggered in situations where it is possible to attack unilaterally (true if not specified)
* AS\_AbortCheck: (logical value) //If the opponent is an immortal unit, suppress the activation when the immortal unit is dying (false if not specified)

The default value when AS\_Max is not specified is defined in AS\_MaxActivate of skill-Assault.js.

###### **Cancel**

Reduces the opponent's number of rounds when the skill is activated. If CancelCount is unset, decrements all rounds.

###### **Status Dependent Attack**

The attack power of the skill owner and the defense power of the attack target were specified with custom parameters. It will be status dependent. Basically set the skill to the weapon. If you want to give it to a unit, it is recommended to make it a command skill. You can also use (strength/2 + technique/2) as attack power like the bow of Disgaea.

It is also possible to turn it into a command skill when adding skill activation conditions. Normally, non-command skills are activated, and command skills are activated when command skills are activated.

##### **Sortie Restriction**

By passing a custom parameter in the map settings, you will be able to set whether the unit can sortie. The items that can be set for event sortie prohibition are as follows:

* Set the sortie prohibition flag individually SetNGSortieList( { unit ID:flag, … } )
* Sortie prohibited for all characters AllNGSortieList()
* Release all character sortie prohibition flag SetNGSortieList()
* Prohibit sorties only for sortied characters AddSortieNGSortieList()
* Prohibit characters that have not sortied from sortie AddNonSortieNGSortieList()

## Blindcoco

### **Plugins**

#### **Miscellaneous Plugins**

##### **Combat Art Session Var Reset**

This is a quick fix to Goinza's Combat Art Plugin for a rare edge case. If a chapter ends with the defeat of a target while using a combat art, the session vars aren't properly cleared and the player is unable to perform followup attacks until another combat art is used during the following chapter.

##### **Get Unit ID by Custom Skill Label**

Returns the ID of a unit with the skill you asked for. This is useful if you create a State with a Skill attached to it to attach Events to.

##### **Lower State Turn Count on Unit Turn**

Statuses will now decrease their timer on unit's turn instead of always on Player Phase Start.

##### **Targeted Repair Item**

This plugin enables targeted repair items. To use the plugin, create an item with the Item Type "Repair" and add the custom parameter in the readme file. For advanced use, you can add a repairLabel to weapons and allow weapons to only be repaired by specific repair items.

NOTES:

* This plugin will clash with other plugins that affect the function "Miscellaneous.isDurabilityChangeAllowed".
* There is a hardcoded lock on repairing repair items to prevent infinite repairs.
* Removed the default behavior allowing repairs of undamaged item to limit misclicks.
* Repair Items without custom parameters will not work anymore once plugin is installed. If you want to make a general repair item, use { repairTypes: ["Weapon", "Staff", "Item"] }
* Params who are in plural form are arrays (require square brackets and can be multiple items), params who are in singular form are strings (only require quotations)

##### **Unit Command Placement**

This plugin moves the Unit Commands a bit lower in the Unit Menu instead of being near the top.

#### **Skills**

##### **Distance Damage Modifiers**

This plugin allows the use of damage modifiers based on the distance between two opponents. This can be equipped on weapons (making bows that have 2-3 range, but deal less damage at 3 range, for example).

You can equip multiple distance-modifiers at once, so it's possible to make a character who takes more damage at melee range, but deals more damage at a distance, for example. You can also make a single skill that describes multiple modifiers that are spread in multiple skills, but check the Hide on the Menu box to avoid clutter.

##### **Granular Coefficient**

This plugin allows to use a coefficient that has decimals. For instance, you could have a skill that triggers with a (Skl x 0.25)% or (Skl x 1.5)% activation rate. This coefficient will be applied to the appropriate stat you have chosen and the in-engine coefficient will be ignored.

##### **Ploy Skills**

This plugin enables Ploy skills (like in Fire Emblem Heroes), with some extra options!

Here is a breakdown of the parameters and what they can do:

* Mandatory fields
	+ widthModifier : The amount of columns/rows. 0 makes it a 1 tile cross. 1 makes it a 3 tiles cross (adds 1 tile on either side of the user). etc.
	+ stateId : The ID of the state that will be applied to the targets. In a more typical FEH fashion, this could be a -5 Res debuff, but this can be anything.
	+ target: What affiliation will be targetted by the Ploy. The options are player, ally or enemy. (You can also target player and enemy groups).
* Optional fields
	+ statCheck : The stat that will be compared from the target & user to determine if the buff/debuff is applied. If you don't add one, it will always be procc'd. Stat options are: Res, MaxHP, Str, Mag, Spd, Skl, Luk, Def
	+ isMore : Will determine if the state is applied if the USER of the skill's stat is HIGHER (or equal) than the TARGET. You can set it to false to have the opposite be the case.
	+ excludeUser : If the Ploy can affect units of the same allegiance as the user, this determines if the user can buff himself too.

NOTE: This plugin will have conflicts with any plugins that affect display for staves, for example.

## **CeruleanAcorn**

### **CeruleanAcorn's GitHub**

https://github.com/CeruleanAcorn/SRPG-Studio-Plugins

### **Plugins**

#### **Limit EXP by Level**

This plugin allows the reduction (via division, rounding down) of EXP gained by a unit based on whether or not their level and class rank (unpromoted or promoted) is equal to or above certain thresholds.

If the unit's level and class rank is equal to or greater than the numbers specified within a current map's custom parameters then the EXP they gain is reduced by dividing the EXP they would normally get with a flat value. This affects EXP from combat and when EXP gain is specified in-engine, item use (i.e Staves).

#### **Shatter Strike**

Using this plugin, through a skill with the keyword "shatter-strike", the user's damage will change depending on the current remaining durability the weapon has.

For example, you can make a weapon that deals more damage when its durability is 1 - presumably the final attack with that weapon before it breaks, hence the name "Shatter Strike"!

#### **Spread Penalty**

Works like Claris' Distance Accuracy Plugin; this plugin allows you to impose a penalty or boost to a unit's Attack and Hit values depending on the distance between them and their target. You can set the distance that must be exceeded for the effects to begin kicking in. You can also set the values to affect the calculation on a flat or percentage basis (for example, -2 per exceeded tile vs -20% per exceeded tile). **Plug and play! Custom Parameters Recommended!**

#### **Superiority Complex**

With this plugin, using a skill with the custom keyword "superiority-complex", this unit's damage, targeted defensive stat, hit, avo, crit, crit avo and agility (\*) can all be modified depending on the matching or mismatching of the unit and their target's weapon type and stat target (physical vs magical weapons). For example, you can boost the unit's values in any of the aforementioned areas if they are both wielding the same weapon type.
This PLUGIN IS NOT PLUG AND PLAY!!

The custom parameters for this plugin are as follows:

* Mandatory
	+ sameWeaponTypeOnly: Either this and/or sameStatTargetOnly must be defined true or false for this skill to have a chance of activating!
	+ sameStatTargetOnly: Either this and/or sameWeaponTypeOnly must be defined true or false for this skill to have a chance of activating!
* Optional
	+ powerBoost: Modifier for unit's attack stat when skill is triggered. By default, 4.
	+ defenseBoost: Modifier for unit's targeted defensive stat when skill is triggered. By default, 4.
	+ hitBoost: Modifier for unit's hit when skill is triggered. By default, 0.
	+ avoidBoost: Modifier for unit's avoid when skill is triggered. By default, 0.
	+ critBoost: Modifier for unit's crit when skill is triggered. By default, 0.
	+ critAvoidBoost: Modifier for unit's crit avoid when skill is triggered. By default, 0.
	+ agilityBoost: Modifier for unit's agility when skill is triggered. By default, 4. By default, to prevent plugin clashing, this will NOT be used unless certain parts of code are uncommented.
	+ logicOperator: Logic operator for use with sameWeaponTypeOnly and sameStatTargetOnly, when both are not null.

NOTES:

Functions overridden without an alias: Calculator.calculateRoundCount

To ensure modifying agility works properly in this plugin, the plugin changes the logic of an existing function without an alias. Because this means the plugin may clash with any other that work with the function listed above, the applicable lines of code have been commented out, and can BOTH be uncommented where marked at your own discretion (and risk).

If you are working with plugins that also override the above without an alias, ensure that they are named alphabetically AFTER this plugin's filename to use this.

#### **Weakest Link**

This plugin allows the skill owner's damage to be based on their target's defense OR resistance, whichever one is lower. Think of the Vajra-Mushti's Combat Art, Eviscerate, from Fire Emblem: Three Houses! **Plug and play!**

## **Claris**

### **Claris's GitHub**

https://github.com/RogueClaris/SRPGStudioScripts/

### **Plugins**

#### **Audio**

##### **Unique Message Voice**

A simple plugin that uses two custom parameters on a unit to change the sound that plays when a textbox displays text from them. Think Undertale. Instructions are inside, but the two custom parameters are as follows: {UniqueVoiceId:1, UniqueVoiceRuntime:false}
UniqueVoiceId is the ID number of the file you wish to use. UniqueVoiceRuntime is if the Sound Effect is a runtime package file or not. Set those and the rest will take care of itself!

#### **Aesthetic / Graphics**

##### **Charchip Mod**

This plugin is incompatible with the RTP (base assets) of the SRPG Studio engine. When creating assets to use with it, you need to make them six sprites wide. These are for character chips, or the sprites used to display units.

##### **Custom Animation**

This plugin requires custom parameters to use. Mark a Skill with the parameter {CustAnime:#}, where # is the ID of an animation within a motion, and that animation will play when that Skill activates in Real Battle.

##### **Face Front**

This plugin is plug and play. It causes units to face forward instead of right when selected on the map.

##### **Map Name Variables**

This plugin introduces a new control character to the SRPG Studio engine, \mn[x], where x can represent any whole number. This Control Character will query the engine for the name of the map with the matching Data ID and place it in your message events.

As an example, you could put \mn[3] in to a message box and it will be replaced by the name of the map with the ID 3. The code will do everything else for you!

##### **Mid-Text Face Changer**

This plugin enables a new control character, \fc[x], where x represents a number between 0 and 23. It has been upgraded to allow for as many facial expression changes in a single textbox as you can fit, though timing can be slightly wonky.

##### **No Icon Blink**

This plugin stops State Icons from blinking. It is plug-and-play.

##### **Speed Charchip**

This plugin changes the speed at which Character Sprites ("Charchips") cycle through their animation. The file has an easy to edit line to change this, marked with a comment.

##### **Talking Heads**

This plugin requires different resource layout for faces than usual. You must format it so that each "expression" is a new frame of animation for talking. You may use some additional rows to get more expressions, but currently the engine has a hardcoded limit of 24 "frames" available. It is recommended you make each animation 4 frames long; this will get you 6 rows of faces, if the engine allows.

##### **Third Layer**

This Plugin creates a layer in the mapchip system that will visually appear over unit sprites. I was able to make this by modifying a plugin created by SapphireSoft, "highlevel-outside.js". It causes terrain with the right custom parameters to be drawn on top of units, so units can hide go "under" tree tops and such. It should be useful for aesthetic purposes, even if it makes units hard to see with certain terrain.

##### **Twin Real Battle Background**

This script is plug-and-play, meaning you only need to drop it in to your Plugins folder to use it; doing so will cause the backgrounds in Real Battles, where combat animations are shown, to use the tile background for the tile each unit is standing on, and not just the one of the attacker for the whole screen.

It can be slightly jarring since there is no transition smoothing in the middle.

#### **Aesthetics / Misc**

##### **Display Message Level Up**

This plugin builds off the official code by SapphireSoft to display Level Up messages for units. Different messages can be presented depending on the total stat gains a unit receives in the level up (i.e., No Gains, Bad, Normal, Good, Best Gains).

#### **Aesthetics / Parameter Rename Package**

This is a pair of scripts. The first, **Cust-Param-Names**, allows you to customize Stat names such as STR (for Strength) in to POW (for Power). The second is a patched version of the **Lvup\_1** script that enables these name changes within its custom window.

Please note that only the first script was created by Lady Rena - the second is merely patched for compatibility. Instructions for the first script's use are in-file.

##### **Custom Parameter Names**

Hello! This script was created to rename stats with custom parameters. This should work for any stat, even custom ones. This Parameter can be applied to either the Unit or the Class, so you can make it sweeping or specific as you see fit.

##### **Lvup 1**

This script enables name changes with the above script within the custom window. Not created by me, simply modified to play nice with Custom Parameter Names and included for that purpose.

#### **Aesthetics / UI / Text**

##### **Colored Item Names**

This nifty plugin allows you to customize the colors of specific item & weapon names! It is also very easy to use - simply add it to your Plugin folder and then create a Custom Parameter on the item {color:"colorhere"} - for example, {color:"blue"} will net you a deep blue, distinct from the item drops, or {color:"red"}, which obtains a hot new crimson coloration!

You can even add custom colors to it yourself quite easily - just get a hex code and add "0x" to the start of it, along with a new if statement to check for your desired color name. Instructions for use are found inside the file.

##### **Custom Color Values**

This plugin allows you to modify the color of various texts in the game engine. Color is changed via hex codes; default hex codes for the engine are included in the plugin's notes.

##### **Green Drops**

This script changes item drops in an enemy's inventory to have a green name, reminiscent of Fire Emblem. Plug and play.

##### **Skill Description EX**

To use this script, give a skill the custom parameter like so: {RS\_Desc:"Description here."} If you do this, it will bypass the limit set in the engine.

##### **Slower Scroll**

This plugin slows the scrolling of scrolling text in events. Change the 4.5 in line 5 of the script to modify how fast or slow it moves. Plug and play, with mod potential.

#### **UI / Text / Effectivity Recolor Package**

This is a pair of plugins to modify the color of Effective weapons in the engine.

##### **Mark Effective Skill**

Marks a Sure Attack skill with the custom parameter "EffectiveShowCL:true".

**RS Effectivity Recolor**

This plugin recolors Effective attacks in the engine.

#### **Aesthetics / UI / Title**

##### **Menu Centered**

This script centers the options of the title menu. Instructions for editing the location are in-file, but it is otherwise plug-and-play, requiring no setup beyond dropping it in your Plugins folder.

##### **Menu Horizontal**

This script, like the one above, changes the layout of the title menu; it makes the bars appear horizontally instead of vertically. Instructions for shifting the locations are in-file.

Note that this script, while plug-and-play, does not play nice with smaller screen resolutions, and should be used on projects intended for larger resolution settings, if not full-screen play. Using at least 800x600 is recommended.

##### **Title Menu Invisible**

This script is for those of you who worked your title in to the background art. It hides the actual menu bars and text, while leaving the cursor alone. It automatically centers the cursor, ala Centered Title Menu, and instructions for moving it are in-file. Further updates to this script can be requested by contacting Lady Rena.

#### **Aesthetics / UI / Windows**

##### **Always Draw Scroll**

This script causes the scroll arrow to always be drawn on the inventory. Does not use a call, so may be incompatible with other scripts modifying ItemListScrollbar.drawScrollbar()

##### **Persistent Unit Window**

This script attempts to make it so that sliding your cursor off of a unit does not cause the unit info window to lose that unit's info.

##### **Durability Gauge**

This plugin creates a visual gauge to emphasize weapons' durability values.

##### **Hide Bonus**

This script uses custom parameters. Set the parameter {HideBonus:true} on an item and it will not show stat bonuses in the description, keeping those secret.

##### **Hide 0 Avoid**

This script hides the **Avoid: 0** on terrain that has no avoid bonus and shortens the window appropriately, resulting in a cleaner look. It is plug and play, requiring no setup beyond dropping it in your Plugins folder.

##### **Inv Mark**

This script displays an icon next to equipped weapons. Plug and play.

##### **Last Name & Title**

This script uses custom parameters. Set the parameters {LastNameCL:"Text", TitleCL:"Text2"} on a unit and they will show up in the unit menus with a last name and title. Both are optional, and nothing will crash if you do not name or title a unit.

##### **Multi-Row Skills**

This script creates a second row in the Skill section of the window, displaying Skills in two rows and allowing for twice as many skills to display. Plug and play.

#### **Mechanics / AI**

##### **AI Evader**

This script is plug-and-play, and causes the enemy AI to favor ranged weapons when counterattacks are avoidable using them.

For instance, if a Bandit has an Iron Ax and a Hand Ax, it will use the weaker Hand Ax to attack a Knight from two tiles away to avoid being hit by a Lance counterattack instead of rushing blindly to its death.

##### **Ally First**

This script is plug-and-play, and rearranges the order of the phases. Normally, it is Player > Enemy > Ally. With this script, it is Player > Ally > Enemy. That's all.

##### **Ally Initiates Talk**

This plugin allows you to set up Ally units to initiate Talk events with the player.

##### **Cowardly AI**

This plugin allows to create "cowardly" enemy units that will avoid the player.

##### **Improved AI Teleports**

This plugin causes the Enemy AI to take into account the range of movement of the unit being teleported. For instance, a Thief with 6 movement is being warped by a Bishop with a 5-range Warp staff. The Bishop will check all 5 tiles of Warp plus for enemies within the Thief's 6 movement tiles.

##### **Modular Recovery Score**

This plugin affects the AI responsible for weighing targets for healing with a modular scoring function.

#### **Mechanics / Bugfixes**

##### **Camera Fix 3**

This script is a plug-and-play fix for a specific bug. On maps large enough to scroll, reinforcements spawning may force the camera to the upper left. This script should now force the camera to the last-spawned enemy unit.

##### **Gold Fix**

This script is plug-and-play, but supports modding. It edits the stringtable to support calls to an Engine's native UI feature for renaming Gold and Bonus to other things.

##### **HP Minus Fix**

This script is a plug-and-play fix for a specific bug. When a unit equips a weapon with a negative Health "bonus" larger than their current health pool, they end up with a null health meter and die upon attacking - even if they take no damage. This script fixes that by setting their HP to 1 at the minimum, never allowing it to drop to 0 or below.

#### **Mechanics / Levels**

##### **Double Dice**

This plugin creates a custom skill using the keyword "Double-Dice", without quotes. A unit given the skill, upon levelling up, will roll failed stat-ups again as a second chance mechanic, making them much more likely to gain stats. Twice as much, in fact!

##### **Fixed Level System**

This plugin allows you to apply a system on units where they have fixed final stats and will level up to those values.

##### **High Healer Half Exp**

This plugin halves the EXP gained from using staves if your staff user is a High-Rank class. Plug-and-play.

##### **Normal Bonus Levels**

This plugin "fixes" the Bonus EXP Level Up system. In vanilla SRPG Studio, only 3 stats may be raised at most, and it often ignores growth chances. This plugin changes that. It uses the built-in growth chances, including +2s for above-100% growths and not increasing 0% growths, and it offers a chance to increase any and every stat.

##### **Point Buy System**

Welcome to the Point Buy System! This script enables levelup management! When in Base or at the Battle Prep screen, you can go to Manage > Customize to spend stat points. These points are granted upon levelup, which can be used to augment your natural levelups with further point gains. The lower your growth is, the more expensive it is to raise the stat.

With a custom parameter, units will gain the combined amount from their own and from their class' custom parameters, so check it carefully! From there, you can setup an optional global parameter to re-enable RNG levelups.

#### **Mechanics / New Systems**

##### **Ammo Script**

The Ammo Script works on Custom Parameters. Set {Ammo:true} on a weapon or item, and when used up it will not disappear. Instead, it will be set to Broken. Meant to be used in tandem with the Durability Item Rework to create items that "reload" anything that is "out of ammo", but any durability restoration will work.

##### **Mana System**

Written as an English-community accessible replacement to o-to's MP/SP script, this is an "alpha" release of the script. It is certainly missing some features. However, currently, it does not force anything on the user. Setting no parameters will not cause the game to utilize any of the plugin beyond setting a new Unit Bottom Window. This window will feature some VERY barebones Mana information. It will be expanded in due time.

##### **Scaled EXP System**

There are two options here, one of which contains a reworked Dynamic EXP Bar in a zip. It is not required, but it is a neat feature to have. I did not create the Dynamic EXP Bar, merely modified it. Now, this script enables a per-level EXP requirement that can be set to anything, as well as a per-level EXP *multiplier* to make things easier with the static EXP amounts enemies have available. Setup instructions are in-file.

#### **Mechanics / New Systems / Command**

##### **Restore Map**

When you run a map chip change that affects much or all of the map, and wish for it to return to how it was, you can use this script. This script has been updated and supports a large variety of new functions to do this with, so please read the instructions inside.

#### **Mechanics / New Systems / Items**

##### **Banish Items**

This plugin allows you to create items that can Banish units. You are able to create items with a specific Banish location via custom plugins.

##### **Percent Healing Items**

This is a script with some setup required, though instructions are in-file. It allows you to create items and staves that heal based on a percentage of the unit's max health, rather than a fixed value.

##### **Revival Herb**

This is a script that requires some setup, but enables you to create an item which will be automatically consumed upon death to revive the unit holding it. Read inside for details. Enemies cannot use it so as to allow them to be dropped as rewards, instead of having to get them from chests.

##### **Summoning Package**

This is a script package that requires heavy amounts of setup, but which enables items that can summon endless copies of a designated unit...item durability accounted for, of course. Instructions are in-file.

#### **Mechanics / New Systems / Misc**

##### **Alchemy Plugin**

This plugin creates a new alchemy function where you can use recipes to combine items in the game.

##### **Broken Tile**

Started by Pike, this is the Ledges/Broken Tile script. It prevents units from standing on specific tiles, as they are assumed to be too narrow to keep steady on. However, passing them is no problem.

##### **Deathsell**

A script that sells all of a player unit's non-Important items upon their death, generating money for the army. Important items are, as normal, returned to the Convoy.

##### **Elemental Drain**

This script works on Custom Parameters. Set {RS\_Element:"Fire"} on a unit, and then {RS\_Element:"Fire"} on a weapon. Doing this will cause the damage dealt to become health restored instead. A primitive version of an elemental interaction system.

##### **Flash White**

This plugin makes a white flash on the screen when a hit occurs in combat. Plug and play.

##### **Return All**

If a player unit dies, this script returns all of its held items to the convoy, including Important Items.

##### **Stock Place Event**

This plugin lets you create a tile on the map that allows units to access the Convoy.

#### **Mechanics / New Systems / Misc / Rogue Package**

This is a set of six scripts designed to be used in tandem with each other. With the exception of **Rogue-Movement,** they all require setup, though setup instructions are in-file for each. Rogue-Movement is plug-and-play. **These scripts are designed for creating a hybrid SRPG-Roguelike**, and should not be taken in to a project lightly. Be aware of what you are after, and **be doubly aware** that **Variance-Level-Setter** and **Rogue Reinforcements** are already coded to depend on each other. You cannot use the latter without the former, as it *will* cause a crash.

#### **Mechanics / New Systems / Skills**

##### **Cooldown Skills**

This is a minor-setup-required script with instructions in-file. It enables a Fire Emblem: Heroes-style cool-down system, where Skills with cool-downs will not activate until the cool-down is at 0 and another attack is made.

#### **Mechanics / System Mods / Class Changes**

##### **Extended Class Changes**

This plugin allows you to set up units that can infinitely change classes. You can also set up a class that will decrease the class up count after increasing it.

##### **Middle Class**

This plugin creates a middle Class for a unit, in addition to the standard Low and High classes.

#### **Mechanics / System Mods / Combat Stats**

##### **Damage Variance**

Sets up damage variance for weapons. Plug and play, with mod potential. Set the following custom parameters on weapons and/or weapon types - all must be numbers, and decimals are allowed: **{minMod:0.5, maxMod:1.25}**. The displayed numbers are the default variance, and will kick in without any modification for all weapons.

The default damage values are 50% minimum, 130% maximum, though these can be customized.

##### **Delete Hit**

This plugin is designed to be used with Sure Attack skills to create a static accuracy value on a weapon.

##### **Dice Power**

This script requires no code editing, but does require other setup. It changes the damage formula to use a D&D-inspired Dice system. If you do not add mechanics to a weapon type or weapon yourself, it will default to **1d4** damage, defense accounted for.

To set up your weapons, give them Custom Parameters like so: **{dice:1, damage:4, bonus:0}**. Dice determines how many dice are rolled; damage is the cap each dice can add; and bonus is a raw amount added to the end result. Bonus can be omitted and it will be automatically set to a weapon's set Might.

##### **Distance Accuracy**

This script costs the user accuracy for every tile between the user and the target beyond the weapon's start range. Default hit loss is -10 accuracy per panel, and a **global parameter** can be set as follows to change it: **{hitloss:5}**.

##### **Round Block**

This plugin uses Custom Parameters. If you grant the parameter {single:true} to a weapon, no doubling will occur by that unit or the enemy when this weapon is in play.

##### **Weapon Type Power**

Welcome to the revised "damage formula by weapon type" script. This script requires no internal editing and incorporates the concept of Goinza's "damage formula by specific weapon" script.

To use, assign custom parameters to the weapon or weapon type (example in script), and remember that weapon formula trumps weapon type formula. If you wish for a weapon to not use its weapon type formula, but to use the vanilla 100% Strength or 100% Magic formula, you may give it the custom parameter "{VanillaFormulaCL:true}", and it will ignore the weapon type's parameters.

#### **Mechanics / System Mods / Item Changes**

##### **Ban Keys**

This plugin lets you create keys that cannot be used by certain classes.

##### **Custom Item Trigger Skills**

This plugin works on Custom Parameters. Set {SkillTrigger:"Trigger"} on a Skill, and {SkillTrigger:"Trigger"} on an item. Optionally, you may add {EquipOnly:true} if the item is a weapon. If SkillTrigger does not match the other SkillTrigger, the Skill will refuse to activate. If EquipOnly is set, SkillTrigger will not activate if that weapon is not equipped.

##### **Durability Item Rework**

This plugin allows you to modify how durability repair items work (Instructions in-file). Using custom parameters, you can set the item to repair via two methods:

* Static Addition, where a fixed number of durability points will be repaired
* Percentile Addition, where a specific percentage of the item's max durability will be repaired

##### **Equipment Script**

This script introduces Shields and Accessories to your SRPG Studio game! As an upgrade to the Shield script, which enables the creation of Shields, you can...create Shields. You simply make a Custom Item with the keyword "Shield", and set it to a custom item type which has a limit of 1 maximum held.

Further, as stated, this script now introduces Accessories! They are like Shields, but they are not designed to have uses and will not decrease on hit, nor will they be usable, so it's best to make them infinite. Just create an item with the keyword "Armband" and again, you're good to go! Just be sure to create an item type with 1 maximum held, as before, separate from the Shield item type.

##### **Key Extend**

Enables the creation of Skeleton Keys/Master Keys that target both chests on the same tile as the user, and doors within 1 tile of the user. Simply create your keys as normal and select both Door and Treasure as options. The script is plug-and-play.

##### **Multi-State Weapon**

This plugin allows you to create weapons that can inflict multiple states upon a target. All states will share a universal infliction rate and the weapon is required to already inflict a state.

However, if you want your weapon's states to have individual shots at activating even though they're bound to the same activation chance set on the weapon - for example, a 30% chance for every state individually - you can add the custom parameter IndividualStateProc:true. This will disregard if the original state is inflicted and inflict each state independent of it on the same chance set for that state.

##### **Range-Based Decrement**

This script requires minor setup, and it increases the Durability cost of ranged-use items by 1 for every tile between you and your target. For example, if a Physic Staff has a range of 1-8, and you use it from 5 tiles away, you will use a total of 6 durability: base 1, plus 5 tiles.

To use, set an item with the custom parameter **{DistanceDrop:true}**. That is all you have to do!

##### **Stackable Item System**

This script changes how items are laid out in your inventory & convoy. To use, follow the instructions in-file. It will allow you to set items that increase their Durability, **even beyond their max based on your settings**, by obtaining up copies of that item with a unit. Once the custom limit has been hit, it will start a new stack. A nifty way to stash all those health potions, yes?

Additionally, Amount is a custom parameter that determines how many uses are added when merging copies of the same item. It should usually be equal to the amount of uses the item has at maximum, but you can set it to any number you want, really.

##### **Staff Accuracy**

This plugin adds FEGBA style Staff accuracy to Staves. Plug-and-play. The formula is below:

`"Staff accuracy = 30 + (Magic x 5) + Skill", "Staff avoid = (Resistance x 5) + (Distance from enemy x 2)"`

##### **Staff Miss**

This plugin makes it possible that Rescue staves have a change of missing/failing to work.

##### **WLv Items**

This script allows you to set items to be restricted or usable according to a unit's WLvl rating.

#### **Mechanics / System Mods / Menu Changes**

##### **Enable Convoy View**

This script is plug-and-play, and adds a **View** button to the Convoy. This lets you look at your collection of items without being able to remove them from the window you're in.

##### **Eversave**

This plugin lets the player save at any time.

##### **Skip Battle Start Confirm**

This plugin lets you skip the Battle Start Confirmation.

#### **Mechanics / System Mods / Misc Changes**

##### **Block Dance Loop**

This plugin prevents repeated Dance looping.

##### **Equip Alter**

This script enables the creation of skills that, themselves, enable a unit to equip new weapon types. Just create a Custom skill with the Keyword identical to the weapon type's name, e.g. "Sword" for equipping Swords, "Spear" for equipping Spears, and so forth.

##### **Held Weapon Guard**

Modifies the Item Stealing system to enable Weapon Theft, but stops thieves from stealing equipped weapons if "Steal Weapon" is enabled in the skill's options. It is plug-and-play.

##### **No Escape**

This script makes it impossible to move more than 1 tile if an enemy is adjacent to you. Note that "enemy" is subjective and means "someone you can attack", as this script affects Players, Enemies, AND Allies. Plug-and-play.

##### **No EXP**

Welcome to the NoEXP script! In order to use this script, simply create a Custom Skill with the keyword NoEXP. Then, give it to enemy units who will not be giving any EXP for being damaged or slain, and that's it! They give 0 EXP!

Alternatively, you can give the skill to a player-side unit who you do not want gaining EXP...for whatever reason. The effect will remain. Instructions are in-file.

##### **Time-Alter**

Welcome to Time Alter - aka, save scumming: the script. This is based on a plugin by ふわふわ, which saved at the start of every turn and let you reload one turn back with a custom command. It was based on an official plugin.

I have edited this script further to introduce a customizable amount of "rewind turns". You can now go back as far as 3 turns by default, and you can save more by adding the following custom parameter to your game's difficulty settings.

##### **Wandguard**

This script protects a unit's Staves / Wands from being stolen by Thieves. It is plug-and-play.

##### **Mechanics / System Mods / Misc. Changes Battle Setup**

###### **Recruit Point System**

This plugin creates a system where the player is able to purchase units for sorties.

##### **Mechanics / System Mods / Misc. Changes / Singular Funds**

This set of plugins modifies units to have individual wallets in which they carry money. These funds can be traded, stolen, and affected by other interactions.

###### **Draw Funds**

This script contains graphic modifications for displaying an individual unit's funds in the Singular Funds system.

###### **Gold Steal**

This script lets you create units that can steal gold from the player. The amount of gold that can be stolen can be set to a specific range and by certain divisions (i.e., 100s, 10s, or any numeric value).

###### **Gold Trade**

This script lets you trade gold between individual units' wallets.

###### **Gold Trade Event**

This script allows you to set up gold trade events in the Singular Funds system.

###### **Minor Changes**

This file contains edits for the Singular Funds system.

#### **Mechanics / System Mods / Skill Changes**

##### **True Miracle**

This plugin makes the Survive script function like Miracle from Fire Emblem's later entries, where you need at least 1 Health Point in order to survive lethal blows.

##### **Controllable Allies**

This is an incomplete script that enables the control of selected, specially marked Ally units during the Player phase. It does not prevent the turn from ending when no Player units are left to act with Auto End enabled; it does not stop the Ally from acting during their phase; it merely lets you move them to your whims once per turn cycle. Instructions are in-file.

##### **Split Army Sortie**

Enables the player to hide some of the units on the Sortie / Battle Prep screen, to enable a project with two paths a la Fire Emblem Echoes: Shadows of Valentia. Give maps meant for another army the custom parameter **{Divided:true}**, and units meant for the other army the parameter **{Army:"text"}**. The text can be anything.

If the two armies are to merge at some point, run the following in a Code Execution command during an Opening Event, before anyone shows up on-screen: **ArmyControl.Wipe()** - and then you're good to go! Enjoy your split-path games!

##### **Unit Event Forced Battle**

This plugin lets you set up forced battles through Unit Events.

##### **Untouchable**

Install this script and give an enemy the custom parameter **{Untouchable:true}** - you will be unable to attack them with player units, though allies will still target them. Useful for creating immortal bosses without messing with damage guard skills.

#### **Skills / Combat Mod / Accuracy**

##### **Slip Dodge**

Create a custom Skill with the keyword "Slip-Dodge" and give it to a unit. When activated, the unit will dodge all attacks after the initial strike, making them slippery against Brave weapons and the like.

#### **Skills / Combat Mod / Critical**

##### **Redline Critical**

This script enables a +50% critical chance boost at low HP (specifically, if your unit is below 25%). Instructions are in-file. To use, simply grant them a Custom Skill with the Keyword, "Redline-Critical" and go about your day!

#### **Skills / Combat Mod / Damage**

##### **Crazy Beat**

Crazy Beat is a Custom Skill that increases your damage when your Unit is inflicted with a Bad State. To use it, just create a Skill with the keyword "Crazy-Beat". Hyphen included. Instructions are in file.

##### **Opportunist**

Creates the Opportunist skill. Keyword is Opportunist. Add the custom parameter {Bonus:#}, where # is any whole number to be added to the unit's damage. Damage is added when the enemy cannot counterattack.

The damage should be reflected in the combat display on the map. Thus, this skill will not popup in combat.

##### **Redline Slayer**

In order to use this plugin, create a Skill with the keyword "Redline-Slayer". When the unit it is assigned to drops below 25% HP, within a variance of +1HP higher, they will gain a 40% damage boost. Instructions are in-file.

#### **Skills / Combat Mod / Defense**

##### **Def Swap**

Create a skill with the keyword "Force-Mdf" and give it to a unit wielding a physical weapon. It will now deal damage to Resistance. Do the same with magic weapons and a skill using the keyword "Force-Def" and you will deal damage to defense.

##### **Defense Crush**

Allows a weapon to bypass a percent of target Defense / Resistance when attacking. Keyword: **Bypass** / Custom Parameter: **{Crush:0.75}**

##### **Health Shield**

This script enables a 30% increase in defense or resistance when a unit's health is above half. You can, of course, change these values to suit your project's needs. Instructions are in-file.

##### **Range Guard**

Instructions NOT in file. Boosts Defense/Resistance when relative skills are equipped. Keywords are **Range-Guard** and **Close-Guard**. Each Skill needs a custom parameter **{percent:0.5}**, where 0.5 can be any decimal 0.9 or below. This will reduce damage by multiplying the damage dealt by that number. This one doesn't actually modify defense but whatever, I don't feel like moving it after typing this much.

#### **Skills Combat Mod / Misc**

##### **Blows/Stances/Riposte Skills**

This plugin is a combination of various "Blow"-, "Stance"-, and "Riposte"- type skills seen in the Fire Emblem series.

Skills can be created by modifying the following custom parameters:

* BonusDamage
* BonusAccuracy
* BonusAvoid
* BonusDefense
* BonusCritical
* BonusHits

Use the keyword "RogueBlowCL" to make the skill activate on the unit's own phase. Use the keyword "RogueRiposteCL" to make it activate only on the turn of someone who can harm the unit. Lastly, use the keyword "RogueStanceCL" to make it activate on both turn phases.

You may also lock a skill to particular weapon types with the following custom parameter: WeaponTypeCL:["Lance","Bow"]

##### **Breakers**

This script enables Awakening/Fates-style Weapon Breaker skills. The Keyword is your weapon type's name plus "-Breaker" or "-Breaker+", so for example: "Sword-Breaker" or "Tome-Breaker+". You must set a Custom Parameter on the Skill in question, {Bonus:#}, where # is the bonus to be given. Instructions are in-file.

##### **Durasaver**

This plugin replicates Fire Emblem's Armsthrift, as well as keeping the engine's default always-save version. Keywords: **Lucky** / **Limitless**

##### **Killing Wind**

It's Fire Emblem's Galeforce. Kill an enemy to gain an extra turn. Once per turn, though. Keyword: **Killing-Wind**

##### **Risk Stance**

Replicates Life-and-Death from Fire Emblem. Attack given & received +10. Keyword: **Risk-Stance**

##### **State Block**

To use this script, create a Custom Skill and make the keyword "No" plus the name of the State you are blocking. Instructions are in-file. Additionally, you may block several states based on their option type - the keywords are as follows for those:

* Calm: Blocks Berserk
* Manual: Blocks Auto Action
* Willful: Blocks No Action
* Omnisafe: Blocks all three

#### **Skills / Commands / Command Pack**

Hello, and welcome to the Skill Command script suite! This set of scripts contains the following additions to your project:

##### **A Master Command**

Inserts a new command called "Skills" in to your unit's command list. No setup is required for this one.

##### **Berserk Strike**

Enables an attack dealing +50% damage at the cost of one-third of your unit's current health, and a 15% accuracy penalty. Instructions on creation are found in Berserk-Strike.js!

##### **Defend**

Enables the addition of a state-granting skill which will reduce damage intake in exchange for the unit's turn. Setup instructions are found in Defend.js!

##### **Rest**

Enables a unit to inflict themselves with a state. Setup instructions are found in Rest.js!

#### **Skills / Misc**

##### **After Combat Unit Summon**

This plugin creates a "Zomblade" skill, where a hostile "zombie" clone of a player unit is summoned if they are killed by an enemy with the skill.

##### **Combat Penalty**

Welcome to the Penalty script. This script deals damage to a unit after combat via the custom parameter "PenaltyCL".

##### **Growth Skills**

Create a Parameter Up skill with the bonuses you want to add to your Growth Rates. The bonuses will be neutralized in the unit's stats and added as growth bonuses instead.

##### **Healthy Vantage**

Creates a skill where the defending unit is able to attack first if their HP is above a certain threshold.

##### **Payday**

This skill makes it so the unit receives gold upon defeating an opponent. Keyword: **Payday** / Custom parameters: **{MinGold: #, MaxGold: #}** where # is the minimum and maximum gold this skill will give.

##### **Omnicounter**

Creates a skill that allows a unit to counter attacks regardless of their range or type. "One Way" weapons are not countered.

##### **Stealth**

Create a custom skill with the keyword "Stealthy". Equipper's chance of being attacked goes down, as the targeting score for hitting them with a weapon is reduced by 75%.

##### **Wallskill**

This skill has the following effects:

* Unit can be attacked by any army.
* Unit does not display any info when you press option or hover over it.
* Unit does not counterattack if equipped with a weapon. Setting to Wait > Wait Only ensures it never attacks.
* Unit cannot be passed through even by its own army.
* Unit does not display range panels when highlighted.
* Unit is not selected when cycling through units on the map.
* Unit is not selected when cycling through units in the unit menu.
* Units individual range is not displayed when you cancel on it.
* You cannot miss when attacking a unit with this skill.

This skill can allow you to create destructible objects and terrain on the map.

### **Plugins Derived from Other Scripters' Plugins**

These are plugins built from other creators' plugins. Some of these plugins may be found under other sections of this page, and some may have limitations on their usage in commercial projects. Please read the readme files for these scripts, and please be aware that some scripts were highly experimental and may not be usable with the current version of SRPG Studio.

#### **Custom Unit Menu Window Ver. Claris**

Plugin built from Goinza's **Custom Unit Menu Window** plugin (Version 2.3). Additions to the base plugin include:

* Supports the Equipment Script, adding Shields and Accessories. Read z-Equipment-Script for usage details.
* Supports a split inventory. Read z-RS\_InvSplit for usage details. In short, creates a separate item and weapon window.

#### **Splash Damage**

Plugin reverse-engineered from plugin made by Japanese scriptmaker "o-to". Due to the sheer complexity of this plugin, it has its own page, found here.

o-to's terms of service state you can use the script commercially, just don't pretend to be the author. So credit **o-to** and **not me, Claris.**

#### **Weapons & Items as Original Data Ver. Claris**

Plugin built from Goinza's **Weapons and Items as Original Data** plugin (Version 2.1).

## **CrazyLi825**

### **Plugins**

#### **Custom Defense**

This allows you to define a custom parameter in a weapon to change the target's defense stat for calcuation. Normally, you can only target def or res, but this allows just about any other stat to be used instead.

Valid values that can be used:

* hp = current HP
* mhp = max HP
* str = strength
* mag = magic
* skl = skill
* spd = speed
* luk = luck
* mov = movement
* wlv = weapon level
* bld = build

Example: {altdef:"luk"} This would make the weapon target luck.

#### **Double Terrain**

This allows you to put a custom parameter in a class type that will multiply all terrain bonuses for members of that class type, akin to Engage's Covert bonus.

Example use: {tbonus: 2} will double the bonuses.

#### **Flanking Bonus**

This plugin gives a bonus to hit and crit to the skill possessor for every ally that is adjacent to the target enemy.

As written, it's +10 hit and +20 crit, but these numbers can be manually modified by changing the values of lines 36 & 69.

#### **Ignis**

This can replicate FE's Ignis (華炎) skill where half of STR gets added to calculation for magic attacks and half of MAG gets added to calculation for physical attacks.

To use, create a skill with Custom type and set the keyword to "Ignis".

#### **Jugdral Critical Damage Formula**

This changes the way the Critical Coefficient is used in the engine. By default, it's just the value times the damage that would have been done normally. In FE4 and FE5, criticals are instead atk\*2-def. With this plugin, I've changed the formula to atk\*critcoefficent-def so if you put a critical coefficient of 200%, you can have it work just like those games or you can augment the attack power by whatever value you'd like.

#### **Jugdral Hit**

This script alters the way hit rate is calculated to be more in line with how it works in FE5 (or FE4 if you ignore stuff like love bonuses).

* Hit Rate = Weapon Accuracy + Skill x 2 + Luck
* Avoid = Attack Speed x 2 + Luck + Terrain Bonus

#### **Minimum Damage**

This allows you to change the minimum damage an attack can do via a global parameter. By default, the minimum is 0, allowing for no-damage attacks. In Genealogy of the Holy War (as well as Shadows of Valentia), this was not possible and all attacks did at least 1 damage. You can replicate this by adding a {minDamage: 1} Global Parameter.

For proper Genealogy settings, make your Critical Coefficient 200% and add the following Global Parameter: {minDamage: 1}

## **Ephraim225**

### **Ephraim225's GitHub**

https://github.com/Ephraim225/SRPG-Studio

### **Plugins**

#### **Absorb HP Modifier**

This one is simple; it allows you to customize the Absorb HP effect to absorb a custom amount of health. On either your weapon or skill that absorbs HP, enter the custom parameter "absorbrate" to set a percentage of damage inflicted to increase the attacker's HP by. (Make it a decimal value, as in 0.5 means 50%).
Another customparameter is "absorbflat". This will restore a flat amount of health instead. If you input both, you absorb whichever value ends up higher.

##### **Akaneian Growth Patterns**

This plugin recreates a phenomenon in the original Akaneia Fire Emblems. Due to a technological limitation at the time, during a level up, the game rolled one random number for the first stat and then added a constant value for every stat thereafter. The result is that there is a consistent pattern of stats gained based on whatever that first random number is.

Though originally a necessity due to limitations of the old systems, this could be preferable to pure, chaotic random level ups. Change the "constant" variable to whatever you want the constant added to the initial random number to be. Then put the plugin in your plugin folder and see how it works.

#### **Basic Armor Penetration Skills**

Based on Goinza's example. This very simple script lets you make a skill that penetrates a fixed amount of DEF or RES. To make it work, make a skill with the keyword 'ExtraDamage'. Then fill in ONE of these three custom parameters:

* "defpen" to make it penetrate defense
* "respen" to make it penetrate resistance
* "allpen" to make it penetrate either

Only use ONE at a time unless you want to add a percentage of multiple stats to the damage amount at once.

#### **Copy Enemy Skills**

This plugin adds a custom skill that allows the user to use an enemy's skills while in combat with them. The user of that skill will have the enemy's skills in combat with them. If they negate skills, so will the user. If they negate criticals, so will the user. If they have a % chance to activate a skill, the user will also have that same chance to activate that same skill. To make this skill, simply create a custom skill with the keyword "CopySkills".

Note that it seems enemies can't copy YOUR skills at this time. Also, not all skills will be copied (such as Parameter Bonus.) I will continue to work on this in the future.

#### **Fusion Mod**

Literally the only thing the first part of the plugin does is comment out the bit of code that prevents CPU units from being able to do Fusions. The AI won't do it naturally, but they can do Fusions in events.

NEW: You can make skills that leave you or your opponent at one health and add a State when killed.

Use the keyword "DefeatEnemy" for a skill that adds the state to your foe when defeated. Use "KilledByEnemy" to add the state to yourself when you are defeated instead. To determine which state, set the custom parameter "addstate" to the ID of the state you want. You can use this to trigger an event on the unit when they have whatever state you specified.

#### **Guns and Ammo**

This makes it so weapons such as bows use ammo. Here's how it works. First, create your bow and create an ammo item. Create a new item type for the ammo and remember what you named it. Make it so the user must have ammo in their inventory to use the bow. Then make the following custom parameter for the bow:

* "ammo" will tell this plugin what item type to look for when deducting ammo. Enter the name of the item type you made earlier in "quotation marks". If this parameter is not present the item is presumed to not use ammo. Now, when you attack with the bow, both the bow and ammo will lose durability.

* However, if a unit possesses a custom skill with the keyword "Infinity" the ammo deduction is not done.

You can make different types of ammo. If for example you want a poisoned arrow, make an ammo item that adds a skill that inflicts poison. Any skills on such items will only apply if you are using the correct type of gun in a fight. Also, make sure your ammo item type transforms into useless junk when it breaks. It doesn't get removed automatically unfortunately.

Now it's probably annoying to move the ammo you want to the top of your list so I recommend LadyRena's (Claris's) equipment script since it takes care of that annoyance (see Claris's section on this page).

#### **Map Command (Tile Select)**

This plugin allows the user to trigger a global switch when the player selects a certain tile, rather than a unit. This allows for events such as a prompt for selecting what unit to summon to the selected tile, which is how you build units in Advance Wars, for example. It starts with selecting the tile, rather than issuing a command to a unit.

To use this plugin, place it in your project's plugin folder. Then go to the Terrain tab in the Database and set the following custom parameters to the terrain type you want to use:

* triggerswitch - the ID of the global switch you want to set
* variabletable - the variable set to store the X and Y coordinates of the tile for later use
* variablex - which variable to store the X coordinate
* variabley - which variable to store the Y coordinate

For example, you could put: `{triggerswitch: 0, variabletable: 1, variablex: 0, variabley: 1}` Which would cause global switch 0 to be set to true and the tile's coordinates would be stored in the first two variables of the second variable set. You could then create an Auto Event with the trigger condition that global switch 0 is set to true. The actual event could have whatever you want, just be sure to set the global switch back to false so it doesn't trigger again when you don't want it to. Note that if the tile selected is occupied by a unit, the game will assume you're opening the start menu and will not run the event.

Examples of events you could create:

* Summoning a unit to that tile a la Advance Wars
* Creating a static, automatic "unmanned gun turret"
* Manually detonated bomb or mine
* Player-controlled terrain shifting

This plugin's functionality doesn't require you to edit it directly. UPDATE: I have updated the plugin with a new function. It will now store the cursor's coordinates into variables of your choice (and you WILL need to edit this file to change which variables) whenever you select a unit. This means the game can now remember the starting coordinates of a unit you're moving, which can help if you want to refund a player's move when a command "fizzles out" or the event made a mistake.

#### **Poker Damage**

Based on the sample plugin by Goinza. The idea here is that you can create a custom skill with the keyword "PokerDamage". When it activates, it will check your damage, hit and crit, and examine the digits contained in these numbers (if any go over 100 it counts as 99.) Bonus damage will be added if you have a certain number of digits.

Use these custom parameters:

* "checkdigit" is the number you're checking for
* "requirement" is how many of that number you need
* "bonus" is the amount of extra damage

So for instance, I can set checkdigit to 6 to check for sixes, requirement to 3 to require three sixes, and then if hit is 66 and damage is 6, bonus damage is applied.

#### **Reverse Mode**

FE12 had a game mode in which all enemies attacked first regardless of whose turn it was. This plugin recreates that game mode.

First, create a global switch that will represent whether or not the plugin is enabled, then go to line 14 of this file and change the variable to the ID of the switch you created.

#### **Save File Window**

This lets you display additional data about your save file when loading. It's simple. Make a custom function like the one below, then add it to the drawWindowContent function. Edit this plugin as much as you wish for the purposes of your own project.

#### **Status Staff Accuracy**

This changes the staff accuracy to work like the GBA games (including a penalty to hit based on distance to the target) with a minor amount of customization possible. Without the plugin, you have three options for items that inflict a state: Absolute, HP Drop Rate, and Stat. Only the latter of the three is altered by the plugin.

Originally, the formula was `UserStat*Coefficient`, where the user would define what stat is used and what the coefficient is. With the plugin, the formula is now `(30+(UserStat - TargetRes)*Coefficient)+UserSkill-(Distance*2)`

To use this plugin, place the file in your Plugin folder. Then create an item that inflicts a state, and choose a stat and set the coefficient to whatever you want. In addition, you can add custom parameters to your items to alter the formula somewhat on a per-item basis.

Here are the parameters:

* "base" The base accuracy for the item, default 30.
* "penalty" The distance penalty multiplier, default 2.
* "bonus" Adds the stat defined by this parameter to the accuracy. Default is SKL.
* "enemystat" Defines which enemy stat resists the item. Default is RES.
* "jugdral" Defaults to 0. If it's anything but 0, staff accuracy will always be 100 if UserStat is greater than TargetRes, like in FE4.
* "addluck" If this parameter is present, the luck stats of both units will be added to the defined stats for Jugdral-style calculations.

##### **Track Item Uses**

This will increment a variable of your choice each time an item is used. This is run alongside the function for giving a unit EXP for using items, but it'll work regardless of whether the item gives any EXP at all.

## **Goinza**

### **Goinza's GitHub**

https://github.com/Goinza/Plugins-for-SRPG-Studio

### **Goinza's Plugins for SRPG Studio Website**

https://goinza.github.io/srpg-plugins/

This site contains a list of all Goinza's plugins with descriptions and instructions, Help information, and Tutorials on making plugins in SRPG Studio. Contact and donation links are also provided.

### **Plugins**

#### **Automatic Stats for Enemy Units**

This plugin sets the stats of every "Mob" enemy on the game automatically. You only need to add a custom parameter on each class for the class growths, and a optional global parameter for random variance, if you choose to add that to your game. Note that 'Subleader' and 'Leader' enemy units will have to be set up manually.

#### **Combat Art**

This plugin allows you to use Combat Arts, which are attacks with special effect at the expense of more weapon uses per attack. For example, you can make an attack that deals more damage but cost 2 weapon uses instead of 1. This system also allows for adding effects from skills to the attack, and restrict the combat art to a specific weapon or weapon type.

IMPORTANT: This plugin only works for player-controlled units. AI units can't use combat arts.

#### **Cover System**

This plugin adds a cover system for ranged attacks. It comes with two types of cover:

* Walls: This type of terrain blocks line of sight between units, so units from opposite sides of the wall can't attack each other.
* Cover: This type of terrain allows for attack to be done, but provide some bonus to the unit next to the cover. For example, it can help reduce the hit rate and/or damage of the other unit.

Note that if an unit is standing in a wall or cover tile, it may not work as intended. It is recommended that those tiles are not passable by any unit.

#### **Custom Unit Menu Window**

This plugin allows to change the default bottom window of the unit menu screen, so you can show data from the unit that is not available by default. You can also add more windows, with each window showing different data of the unit. The data that will be displayed will be chosen by the user from the list of data that was added to the plugin.

You don't need to use custom parameters and you don't need to know about programming. To modify the window, you only need to change some options (more detailed instructions below). For example, you can make windows show things like races, states, class type, among other things.

#### **Damage Formula for Weapons**

This plugins changes how the damage of weapons is calculated. By default, weapons use the Strength and Magic stats for physical and magical attacks, respectively. But with the use of this plugin and some custom parameters on the weapon, you can change which stats are used for each weapons. For example, you could make a Dagger use Skill instead of Strength, or use 50% of Strength and 50% of Skill.

To make this work, you have to add the custom parameters to the weapon that you want to modify: {alternative:true}, this is necessary to change the formula, you also have to add more parameters depending on the stats that you want. Using the same example, it would be {alternative:true, skl:50, spd:30}. Details on how to use each stat are on the script.

##### **Double Attack Command**

This plugins adds a custom skill, which allows a unit to attack twice in one turn. It works similar to a normal attack, but once you select the weapon and the target, you can choose again for a weapon and a target.

Both the weapons and the targets can be repeated, or you can choose to change either of them (For example: first attack is with Iron Sword to Enemy A, and second attack is with the same Iron Sword against Enemy B).

#### **Enemy Range Display**

This plugin adds two features regarding the display of enemy range:

* First, it adds an individual enemy range, which keep tracks of certain units' range. Each individual range is activated or deactivated by pressing the select button while the cursor is over that unit.
* Also, you can now edit the color and transparency of the enemy range. You can also assign a different color and transparency to the individual enemy range.

#### **FE GBA Battle Formula**

This plugin changes the battle formulas used by the engine to match the ones used in the Fire Emblem games for the Game Boy Advance. To use it, you just need to drag this folder into the Plugin folder of your project.

#### **Fog of War**

**Note:** This plugin is not on Goinza's GitHub, but Google Drive. Click here for the script. Created by Goinza and Lady Rena (Claris).

This plugin allows you to create a "fog of war" effect on the map screen, with a default vision range of 3. You are also able to customize each unit's range of vision.

#### **Heal Range Display**

This plugin displays a heal pane that shows the healing range of the selected unit. Note that if a unit can attack and heal on the same tile, the color of the panel will be a mix between the attack panel and the heal panel colors.

WARNING: the heal panel is made using the sortie panel resource. To make this plugin work, make sure that sortie\_panel has a different graphic than move\_panel and range\_panel.

#### **HP Cost for Weapons and Items**

With this script, you can make weapons and items cost HP to use. You need to use the custom parameter "lifeCost" on the weapons/items and
 write as value the HP cost of each attack of that weapon. For example, a weapon with {lifeCost:5} costs 5 HP for every attack, even if the unit misses.

It is important to notice that if the unit doesn't have enough HP to use a weapon that costs life, it can't initiate an attack. The unit also won't be able to counterattack. On the other hand, if the unit had another weapon available in its inventory, it will use that second weapon to counterattack.

If the unit can make two attacks during a round of combat, but doesn't have enough HP to make the second attack, it won't do it, even if it has other available weapons. This also applies to counterattacks: if the unit has enough HP to wield the weapon, but receives too much damage before being able to counterattack, it won't counterattack.

IMPORTANT: This script does not work for items with the Custom type. For those items, you need to find the script that created that specific custom item type modify it to make it work. Because this requires modifying another script, it is impossible to give the exact instructions, so I included a generic explanation and provided an example of a script I made that creates a new Custom item.

#### **Hybrid Weapons**

This plugin allows to create "hybrid weapons", which behave as different weapon types depending on the range of the attack. For example, you can make a "Wind Sword" which acts as a Sword weapon during melee and acts as a Wind weapon during ranged attacks. In this example, you can even make the melee attacks deal physical damage, while the ranged attacks deal magic damage, or make all attacks do physical or magic damage.

This script allows to make hybrid weapons in two different ways: one is making a weapon that changes the weapon type according the the range attack (Wind sword that attacks like sword at melee and like wind at range), and the other way is to make weapon have two or more weapon types at the same time--for example, a magic tome that is both dark and fire type. Details on how to apply one or both of this effects on weapons are in the readme file.

#### **Learnable Skills by Class**

This plugin allows to make a units learns skill at a specific level and class. (Awakening and Fates style). By default, SRPG Studio already lets a unit learn a skill based on its level, but not in its class. Instructions on how to use this plugin are included inside the file.

To make this, you need to assign a custom parameter 'skills' to the class. Note that you don't have to assign the skills to the Learned Data of each unit. Ignore that part of the editor and just use the class custom parameter.

#### **Neutral Faction**

This plugin allows you to create a new faction of units, which will be hostile to all other factions (player, ally and enemy). This faction will also have its own phase that starts after the ally
faction ends its turn. The faction will be controlled by the AI.

**NOTE:** Sample assets are provided. Assets created by SapphireSoft and edited by BlueLeafy. These assets can only be used on SRPG Studio projects.

#### **Range Modifiers**

This plugin contains a group of skills that allow to increase the range of a unit when using a weapon, staff and/or item. It also comes with a way to make the range of a staff or item depend on the Mag stat of the unit.

* Extended Range Skills
* Dynamic Magic Range

#### **Restricted Weapon Attack Count**

This plugin changes how the Attack Count option works for weapons that use the custom parameter 'brave'. Basically, an unit with a "brave" weapon will only attack once if it is the defending unit.

For example, a "Brave Sword" with an attack count of 2 will attack twice if the unit is the attacker, and it will attack once if the unit is the defender.

#### **Skills Pack**

This plugin contains a collection of custom skills. All of the skills are compatible with any other plugin, so even if you don't use some of them, they won't be a problem.

##### **General Skills**

* **Live to Serve:** When healing an ally, the skill's user recovers the same amount of HP
* **Critical Factor:** Normally, the critical multiplier is the same for all the critical hits of all the units. With this skill, a unit can have a different critical multiplier that the rest of the units.
* **Wary Fighter:** A unit with this skill can't double or be doubled. The exception are weapons that can attack more than once for round, like the Brave weapon from FE.
* **Extra Healing:** A healer unit with this skill has bonus to all healing done. You can choose to make this skill work on all items or staves only.

##### **Movement Skills**

All these skills work similar, they all involve the skill user being adjacent to another unit and changing the position of both or one of them. This skills only work for interacting between player's units, not for enemies or allies.

* **Shove:** A unit can move another adjacent unit one space away from it.
* **Swap:** Swaps the position between the skill user and another adjacent unit.
* **Smite:** A unit can move another adjacent unit two spaces away from it.
* **Draw Back:** Moves the skill's user one space away from the other unit. The other unit moves one space too, in the direction that makes both units keep being adjacent.
* **Pivot:** Skill's user moves to the opposite side of target unit.
* **Reposition:** The target unit moves to the opposite side of the skill's user.

##### **Other Skills**

* **Sacrifice:** The skill's user can sacrifice its own HP to heal an adjacent unit. The amount of healing depends on the custom parameter. If the unit doesn't have enought HP to sacrifice, it heals as much as possible, staying at 1 HP
* **Buff on Staff:** A staff user with this skill can give a buff (state) to the units, when using staves over them. You can choose which type of staff give this boost. For example, make healing staves and staves that cure states give the buff.

#### **Support System**

**NOTE:** This plugin is not located on the GitHub; the script may be found on Google Drive here. This plugin is not currently being updated, and may have issues with more recent versions of SRPG Studio.

This script introduces support conversations that trigger whenever two units are together for a amount of turns. JtheDuelist has created a tutorial video on using the plugin on YouTube.

#### **Trait System**

This plugin allows you to add "traits" to units and classes, similar to how the "Races" option works. The main difference is that races can only be assigned to classes, while traits can be assigned to individual units, classes, and items.

This system includes making weapons be effective against units with a certain trait, restricting the use of weapons and items to units with a certain trait, and making the traits a possible requirement for a class change. Instructions on how to add traits are on the readme file.

In order to display the traits that an unit has, a new window has been added to the unit menu screen.

#### **Weapon Rank**

This plugin allows you to make individual ranks for each weapon type, without having to edit anything on the code itself.

One of the main features of this script is that it doesn't require any editing to work, it just needs custom parameters, so you can use it without needing to know how the code works. The ranks work like the GBA games, going from E rank to S rank. To make the units have the appropriate ranks, you must use custom parameters. This parameters allows you to write the rank of each weapon for the unit, as well as making additional rank through the parameters of the classes, weapons, items, skills and states.

This script also lets you specify a minimum and maximum rank for each weapon type for each class, as well as making the requirement and experience gained for every weapon. Finally, there is the possibility to add stat boosting items that can increase one or more ranks of a certain weapon type, or even make a unit learn a new weapon type without needing to change class.

#### **Weapons and Items as Original Data**

This plugin allows the creation of Original Data entries that act as weapons or items. This means that you can, for example, make a magic system where the magic is not in the inventory, but instead it is from Original Data entries.

### **How to Support Goinza**

PaylPal: https://www.paypal.com/paypalme/Goinza

## **Kirby5790 (Sir Dude)**

### **Kirby5790's Google Drive**

https://drive.google.com/drive/folders/1sGiMuIxro4xsD7hwpNsAy5vndvfMrizM

### **Plugins**

#### **Double Move**

Some tabletop RPGs allow you to double move instead of move and attack; this means you can move a unit twice as far as they normally could in one turn, at the expense of forfeiting any other action with that unit that turn. This plugin aims to recreate that.

#### **Growth Range**

A simple add-on to the growth function so that each parameter has more varied growth potential than x with a chance of x+1.

## **MarkyJoe**

### **MarkyJoe's GitHub**

https://github.com/MarkyJoe1990/SRPG-Studio

### **Plugins**

#### **AI**

##### **Trade AI**

This plugin creates AI for foes to trade for weapons if they are unequipped, and HP-restoring items if they are low on health.

##### **When Unarmed Go Shopping**

If a foe lacks a weapon, they'll scan for the nearest shop and buy one there. Foes are treated as having infinite funds.

#### **Components**

##### **Enemy Range Collector**

It scans the enemy team, then collects, stores and updates their movement and attack ranges in an efficient matter.

Aside from being necessary for some of my plugins to work, It's actually very useful for improving performance (aka reducing lag and slowdown) for your game! By having a separate component handle all enemy range data, it means other scripts and functions don't have to waste time doing it themselves. And since they're all grabbing that data from the same place, the data used will be consistent between all of them.

NOTE: This plugin overwrites the following functions:

* MarkingPanel.drawMarkingPanel
* MarkingPanel.updateMarkingPanel
* MarkingPanel.updateMarkingPanelFromUnit

##### **Zone Digger**

This plugin allows you to select parts of your map, fill them in with a specific tile of your choice, and build outward from the parts of the map you selected. It's a primitive form of map generation, but it might be useful to some people. Note that you will need a little programming knowledge to use this.

#### **Converters**

This plugin allows you to export various data lists in your game as CSV, HTML and TXT files. For CSV and HTML, it exports a spreadsheet showing whatever properties you ask for, and shows every custom parameter set for it. For TXT, it scans your datalist for any items that contain the property you ask for. These do not work for reference list objects such as a unit's skill list.

WARNING: Some SRPG Studio API and scripting knowledge required to utilize this. This plugin does not override any functions.

#### **Event Commands**

##### **Name Entry**

It's a custom event command that opens up a window and prompts the player to put in a new name for the specified unit.

Key button graphics created by CardCaph (Discord: CardCaph#0588).

##### **Selector Event Commands**

In this folder are 8 custom event commands usable in SRPG Studio. Each prompt the player to select from a list of either items, skills, units, classes or states. The resulting selection is stored as an ID variable that can be used for other event commands.

Let's say you wanted an NPC villager on the map whom - when talked to - would offer the player a choice between one of his inventory items. With the "Unit Item Selector" event command, you can have a menu pop up that shows every item in the villager's inventory, and let the player choose which item they want. Then you could use the "Increase Item" event to give that item to the player using whatever ID variable the Unit Item Selector command modified.

Let's say you wanted a unit with the ability to copy the skills of enemies. You could create a Unit Event Command called "Mimic", select a target using "Extract Map Pos", select which skill to copy from the enemy using "Unit Skill Selector", then add the skill to the Mimic user using "Increase Skill" and the ID variable provided by "Unit Skill Selector".

Let's say you wanted to make a staff that can inflict one of two status effects. You would make the staff a switch item, have an auto event check for the switch, select the enemy target using "Extract Map Pos", select what state to inflict on them using "State List Selector", then use the ID variable and "Inflict State" to inflict the chosen status.

Screw it, let's throw the kitchen sink at them! Let's say you wanted to make a tower defense map where each turn, you spawn a unit whose location, class, inventory, and skills are all selected by you.

Aside from me, you can thank Goinza since I looked at his Combat Arts plugin a lot to figure out how to make the window appear and have you select something.

#### **Items**

##### **Damage Item Uses Strength or Magic**

This plugin allows items with the "Damage" effect to factor the user's strength or magic stat into the damage formula.

##### **Item Conversion On Enemy Trade**

This simple plugin allows for the option to convert an item into another item when traded from a player unit into an enemy unit's inventory.

#### **Mechanics**

##### **Crowd Control**

This allows your game to accept crowd control commands made by users on fecentral.org. These commands include setting unit HP, and adding/removing items, weapons, status effects, skills and combat arts (if they are installed).

Made by MarkyJoe1990 with help from PurpleManDown & Piketrcechillas.

##### **Enemy Kills Influence Level Ups**

This adds a new system to your game where killing enemies will influence the stats you gain on level up based on their class.

##### **New Game Config**

This plugin gives you additional settings to configure when starting a new game, or when calling the event command "Config". What the settings do are up to you, and you can define what variables and global switches it uses.

##### **Turn Rewards**

When you complete a chapter, you can set what rewards the player gets for fast clears, whether it be items, gold or bonus. The player can view the turn conditions in the **Objective** Screen.

##### **Unit Event Sub Menu**

This plugin takes unit events and consolidates them into a sub-menu similar to how the Attack command brings you to a sub-menu of weapons to select.

It also adds numerous additional functionality, such as:

* Option to make unit event not waste a turn
* A skill that makes all unit events not waste a turn
* Ability to have "global" unit events that apply to all units
* Long descriptions
* Ability to check if unit event "costs" something
* Ability to apply that cost to the unit

##### **Weather Effects**

It implements weather and other effects in SRPG Studio. You can finally have effects such as rain, snow, and more in your games!

##### **1 Percent Always Crits**

If you or the enemy has a 1% chance of landing a critical hit, they will automatically land it.

##### **Expanded Extract Map Pos Event Functionality**

This plugin allows you to:

* Set additional conditions for the Extract Map Pos Event Command
* Force the Extract Map Pos Event Command to use the battle preview, complete with calculations that use your currently equipped weapon.

##### **Global Unit Events**

This plugin allows you to have unit events that can be used by any unit, not just the one who has the unit event. This allows for a tremendous number of possibilities, including fully customizable rally skills.

##### **Half RN System**

Normally, when determining if an attack will hit, the game generates an RN, or Random Number between 0 and 99. If that value is less than your hit rate, then the move connects. In a 2RN system, two RNs are generated, then averaged before being compared to your hit rate. 2RN has the effect of making higher hit rates much more likely to hit than what the game displays, and lower hit rates much less likely to hit than what the game displays.

However, this script creates what I'll call a "Half RN" system. It makes high hit rates LESS likely to hit than what is displayed, and low hit rates more likely. Whereas 2RN increases the "consistency" of hit rates, this system decreases it, which might make it the perfect mechanic for games designed to frustrate the player.

##### **Magic Doubles as Resistance**

This function removes the Resistance stat, and uses Magic to determine magical defenses instead.

#### **Optimization**

##### **Disable Enemy Supports**

With this plugin, you get the option to disable certain kinds of enemy support bonuses. Specifically, enemies will not get support bonuses obtained from their allies via support skills. The only exception is if those allies are sub leaders, or leaders.

This is important, because the greatest cause of lag in SRPG Studio is from calculating enemy support bonuses, which is done every time you check an enemy's stats, or hover your cursor over an enemy you're about to attack. Since it's generally bad design to give enemies support skills, and since this causes such a substantial amount of lag when lots of enemies are on the map, this feature is generally a nuisance more than it helps.

#### **Presentation**

##### **Character Swipe In**

When the battle preview/battle forecast shows up on screen, each unit's character illustration will swipe in on screen.

##### **Character Swipe In Config Menu**

Adds a config menu option that allows the player to turn off the character illustration swipe in animation.

Made by HeyItsKyo.

##### **Command Smooth Swipe**

When you call the command menu, it swipes in instead of blinking into existence.

##### **Cursor Slide**

Your cursor will smoothly slide from tile to tile instead of just teleporting to the destination tile.

##### **Damage Preview**

This plugin makes it so you can see how much HP you and your target will have left should you choose to initiate the current battle. It assumes all attacks will hit, and does not distinguish multiple hits from each other. It simply shows how much your total damage will be.

##### **Movement Interpolation**

This plugin interpolates movement during battle animations, making them significantly smoother and allowing them to display at 60 FPS without extreme effort. This is achieved by positioning the unit and their weapon based on the current animation frame's coordinates, the upcoming animation frame's, and the time it takes between the two.

##### **Player Phase Scroll**

When the phase change animation plays, the screen will scroll to your team's leader.

##### **Scroller**

This is a scrolling object meant to handle map scrolling when the player has control of the cursor. It only works if you have smooth-map-scroll.js (Smooth Map Scrolling) in your plugins as well.

##### **Smooth Map Scrolling**

This makes the map screen scroll smoothly when you are using a keyboard. While this does not apply to enemies, the game already has a config option that allows it for them. Look for "Scroll Speed" and set it to normal or slow.

##### **Movement Interpolation**

This plugin interpolates movement during battle animations, making them significantly smoother and allowing them to display at 60 FPS without extreme effort. This is achieved by positioning the unit and their weapon based on the current animation frame's coordinates, the upcoming animation frame's, and the time it takes between the two.

This plugin overrides the original functions for: AnimeMotion.drawMotion . Be wary of any new plugins that change this function, as they might not be compatible with this plugin.

##### **Player Phase Scroll**

During phase change, the camera will smoothly scroll over to the player team's leader.

##### **Scroller**

This is a scrolling object meant to handle map scrolling when the player has control of the cursor. It only works if you have the Smooth Screen Scroll plugin as well.

##### **Targeting Lines**

This implements enemy targeting lines similar to Fire Emblem: Three Houses. Compared to the Japanese script, this version has significantly higher performance, but no further bells and whistles.

##### **Unit Menu Smooth Swipe**

When you check a unit's stats, the windows will swipe in instead of just appearing.

#### **Skills**

##### **Rally**

This plugin adds the Rally skill from the Fire Emblem series. It also adds the effect of rallies as an item you can use. If you have a skill with the custom keyword "Rally", you gain a command that allows you to inflict one or multiple status effects on units that fit your skill's affiliation criteria.

This plugin also adds AI implementation for Rallies, which means that if an enemy has a Rally Skill or item, they can and will use it. While the enemy doesn't have access to features such as rally comboing, it's easy enough to work around this by creating enemy exclusive rallies that fill the same role.

##### **Dynamic Skill Invocation Rate**

This plugin allows you to set a skill invocation rate to be whatever you want, with any criteria you want.

##### **Multiply Weapon Triangle**

This script adds a custom skill that - when equipped - multiplies the bonuses the user gets when they have weapon advantage. The amount it gets multiplied is determined by the custom parameter "amount".

With this in mind, you can create the "Reaver" weapons from the GBA Fire Emblem games that reverse the weapon triangle, or the "Gem" weapons from Fire Emblem Heroes.

##### **Blows Riposte**

This script adds two separate skills. Blow Skills and Riposte Skills. Blow Skills give bonuses to your battle stats when you initiate battle. Riposte skills do the same thing, but when someone initiate battle on YOU.

Instead of a pre-defined list of bonuses, you define the bonuses yourself using custom parameters.

Made by MarkyJoe, inspired by Claris/LadyRena's Blow and Riposte Skills Scripts.

##### **Enable Self Crit**

Normally, in a game where critical hits are not enabled automatically, being able to land critical hits on an enemy requires a skill with the "Allow Criticals" effect. This skill, instead of enabling crits against enemies, enables crits on the user. This might be useful for certain harmful status effects.

##### **Free Counter**

This script adds a skill that allows the user to counter attack depending on how far or close the opponent is. You can set the exact distance range by setting the custom parameters startRange and endRange.

This script also allows you to utilize the "effective targets" field in the skill editor. In other words, you can make the counter activate depending on more specific circumstances.

Made by MarkyJoe, inspired by HeyItsKyo's Close and Omni Counter scripts.

##### **Lonewolf**

This script adds a new custom skill that gives the owner bonuses to their attack, hit, avoid, critical, critical avoid, defense and resistance, but ONLY if there aren't any allies nearby them.

##### **Partial Accost**

This plugin adds the "Accost" skill from Fire Emblem: Thracia 776. If the user's HP is higher than 50%, they will go a second round of combat against their target.

It's not quite perfectly accurate, however. Particularly, the ordering of attacks:

* If you initiate combat, the order is: You, Them, You, Them, then you two more times if you double
* If the enemy initiates combat, the order is: Them, You, Them, You, then you two more times if you double

Another issue is that Accost activates based on what your HP was at the start of the battle. If the enemy lowers it below this threshold, Accost will still activate. Conversely, if you start the battle below 50%, Accost will not activate even if you heal mid-battle.

##### **Revenge Pursuit**

This adds a new skill called "Trick Room", based on the move from the Pokemon series. When a unit has this skill, the follow up formula is reversed: if you are slower than your opponent, you will attack twice instead of them.

While this skill doesn't overwrite any functions, it may bypass the limitations of other plugins that calculate round count, particularly if the unit has the Trick Room skill.

##### **Special Recoil**

This script adds a new skill that heals, hurts, or inflicts the user if they either hit, or kill their opponent, depending on what you set. This effectively allows you to implement skills such as Lifetaker or, to a lesser extent, Bloodthirst.

##### **Take Only 1 Damage**

This adds a new skill called "1DMG". Units that equip this skill can only take 1 damage, even if the attack is a critical hit.

#### **States**

##### **Count Down State**

This plugin allows states to have additional effects after their timer runs out, whether it be dealing damage to the inflicted unit, giving them a separate status effect, or even running an event set up by the user (see readme file).

If this status effect is removed before its countdown is complete, the exit effects will not occur.

##### **Disable Healing Status Effect**

This plugin allows for status effects that prevent healing of all kinds, whether it be from healing tiles, or from healing items. Units with the status effect CANNOT be targeted as healing partners.

##### **Taunt**

This plugin allows the creation of "taunt" status effects. Units inflicted with the taunt status will prioritize attacking the unit that taunted them.

#### **Wrappers**

##### **Expanded Item Control**

When using ID Variables, the editor needs a way to distinguish items from weapons. The way the SRPG Studio developers handled this was by adding 65,536 (0x10000 in hexidecimal) to the IDs of items when they are stored as variables, but keeping weapon IDs the same.

What this means is that if you are trying to write code that stores items as variables for use in the editor - such as with Execute Script - you need to account for this. That's what this wrapper is for.

##### **Object Printer Control**

A convenient way to print an object and all of its properties. It's not perfect, but I've found it quite useful for debugging.

##### **Variable Finder**

This allows you to easily and conveniently get and set both variables and switches without having to check the editor for the tab and index locations of each. Useful for when you don't want to/can't use the event editor to grab variables and switches.

### **How to Support MarkyJoe**

If you like what you see, consider sending me some dough over at https://www.paypal.me/markyjoe.

## **McMagister**

### **McMagister's GitHub**

https://github.com/McMagister/srpg-studio-stuff

### **Plugins**

#### **Enemy Range Display**

This is the Enemy Range Display script by Goinza, modified by me to add red outlines around the enemy range and also add a visual indicator of marked units.

Requires the UNIT STATE ANIMATOR plugin to work!!! It is available from this repository as well. Make sure that !unit-state-animator.js is loaded before any other .js files. As long as you don't remove the exclamation mark from the filename, that should be the case.

#### **Movement UI Options**

This plugin is created by me to provide several Quality-of-Life UI enhancements when moving a unit around the map. It is built on the Movement Arrows plugin created by Cube, a Japanese scripter.

There are 4 config options that can be toggled in the config menu in-game. All four features are independent so please pick and choose whichever combination you like.

* **Display Movement Arrow:** When selecting a unit to move, displays a blue movement arrow between target and destination like in the GBA Fire Emblems.
* **Display Ghost Preview:** When selecting a unit to move, displays a translucent version of the unit at the destination location like in the 3DS Fire Emblems.
* **Display Remaining Movement:** When selecting a unit to move, displays the remaining movement points, allowing you to easily figure out the movement cost of different types of terrain.
* **Display Targeting Lines:** When selecting a unit to move, a line wil be drawn between your unit and all enemies that are in range of that unit, similar to FE: Three Houses except that the AI is not taken into effect. Targeting lines will be drawn for every enemy in range regardless of whether that enemy will actually attack your unit on the next enemy phase. (Two options are provided, straight arrows and curved arcs. The difference is merely aesthetic.)

#### **Multiple Level Ups**

What this plugin does is remove the EXP cap of 100 per battle, allowing a unit to level up multiple times in a single battle.

#### **Unique Select Animation Plugin**

What this plugin does is display a unique charchip animation when a unit is selected.
In order to use this plugin, all the charchips you use must have a new row at the bottom for the select animation, otherwise the unit will be invisible when selected.

#### **Unit State Animator Plugin**

The Unit State Animator is a plugin that serves as a framework to display icons over enemy units without the use of states, like for example the exclamation icons that appear over enemy units with effective weapons or high critical rates in the later Fire Emblems. Or the support levels of your allies, or to display which units have talk events. Or display an icon for your custom implementation of pair-up, or display an icon over bosses... the list goes on and on.

*Example of a script using this plugin to draw icons over units with critical hit warnings and talk events. It is by Repeat, check it out!*

https://github.com/TheRepeat/SRPG-Studio/tree/master/Repeat%27s%20QoL%20Enhancement%20Pack/Markers

## **Nelow/Lyn**

### **Nelow/Lyn's GitHub**

https://github.com/Nelow-Lyn/SRPG-Plugins

### **Plugins**

#### **3rd Class Group**

A simple plugin which allows to add a third class group. To work it needs a custom parameter on a unit called ThirdClassGroup with the id of the group you want. It's also possible to add more class groups beyond the 3rd but that would require minimal changes to this plugin.

Absorb Damage Item Use

Plugin to make a Damage Item heal the user. This works for both normal items and staffs.

This plugin allows some customization:

* RunTimeAnime = true/false  Decides if you want to use a Runtime or Original effect.
* ScaleWithMag = true/false  Adds the Mag of a unit on top of the Damage dealt to the heal effect.
* ScaleWithStr = true/false  Adds the Str of a unit on top of the Damage dealt to the heal effect.

If neither of them is set to true, it will scale by constant instead, meaning it will multiply the healing by the variable constant (default 2).

#### **Alacrity (from Fire Emblem)**

Plugin to make a custom skill like Alacrity in Fire Emblem Engage (or Desperation, in other entries in the series).

#### **Animated Attack Preview Unit**

Plugin to animate the CharChip in the BattlePreview Window. Plug and play.

#### **Animated Char Unit Menu**

This plugin changes the drawing of the Class Sprite to be animated in the Unit window.

#### **Animated Unit Select Window**

Plugin to animate the unit sprites in the Base/Battleprep window.

NOTE: The plugin overwrites the UnitSelectScrollbar.drawScrollContent method.

#### **Block Item Usage on Map**

Plugin to block Item usage on the map. Items with a custom parameter of {blockItemUsage:true} can't be used on the map.

#### **Block Support**

The plugin allows a Weapon to bypass the Defense gained by Support. To enable it, give a Weapon the custom Parameter {blockSupport: 1}.

#### **Change Class After Level**

This Plugin allows you to set up automatic class changes after a unit reaches a certain level.

#### **Fix Heal Window Centered**

Plugin to fixate the heal window in the center. Plug and play.

NOTE: Overwrites HpRecoveryEventCommand.\_drawWindow

#### **Free Steal Action**

This plugin makes taking a second action after using the Steal action possible.

#### **Free Unit Event Command**

This plugin makes taking a second action possible after a unit event command (such as use the unit event command, and then attack).

#### **Half Def Skill**

Plugin to add a custom Skill to make the engines Ignore def on weapon/Skill use half the defense instead.

To use give a Unit the custom Skill with the Keyword 'Half-Defense'.

#### **Inflict State on Crit**

Plugin for inflicting a state on a critical hit.

#### **Invocation X Adjust**

Plugin to adjust the position of the Magic Invocation effect to use give either the weapon or the class a custom parameter called {invocationAdjust: 50}. The number is pixels in the x direction away from the character. 0 is default, 0 will be directly on the Character.

#### **Keep Names When Blackout**

Plugin to keep the names displayed when the option to blackout the message is selected. The color for the blackout can be customized with the variable selectBlackoutColor in hex.

#### **Map Color**

Plugin to draw custom colours on the Map. Can be heavily customized to draw the entire map in a colour, or only a part of it.

#### **Move Second Unit**

This is a funny little script I made just to see if it's possible: This Script allows you to assign a unit a second unit which will then follow the first unit.
The intention of this was to display a capture or rescue better on Screen since I disliked how the unit just gets absorbed. This sadly only works for the Player so far, might update it to work in events/Enemy turn as well, since that was the original goal.

#### **Real Crit Animation**

This plugin changes how the real critical animation of a mage is played. Instead of playing the real critical on hit, it will now play the animation as its own thing. This should allow for better options to display critical animations.

#### **Reduce Hit of Specific Unit**

Very specific plugin. Reduces the hit of a specified unit against an Enemy.

Give the enemy the two custom parameters: {reduceHitOfUnit:0, reduceHitOfUnitAmount:50} where reduceHitOfUnit is the ID of the unit you want it to be applied to and reduceHitOfUnitAmount is the hit value to be reduced.

#### **Rescue Staff Command**

Plugin to make the Rescue Staff into an command. Explanations of the Parameters you can change are in the comments within the file.

For the Condition the command shall show up with:

* CHECKSKILL If you want to check for a custom skill. true to enable, false to disable.
* SKILLKEYWORD to define the keyword used by the skill to check for.
* CHECKSTATE If you want to check for a specific state. true to enable, false to disable.
* STATEID the ID of the state you want to check for.
* CHECKCUSTOMPARAM If you want to check for a custom parameter true to enable, false to disable.
* CUSTOMPARAMNAME The name of the custom parameter to check for.
* CUSTOMPARAMNUMBER If just checking for the existence is not enough, you can specify a number to check for here. Only performs this check if the parameter is a number.
* USESPERMAP Limits the uses of the command per map per unit. Each unit has its own counter. The counter gets reset every Map. If you do want unlimited uses, set this to -1.

Scaling Max Parameters

Plugin to scale the Maximum of the Parameters. This Plugin scales the max Parameters/Stats of all Units by the chosen method. If a Unit changes class with a class change item, this will keep track of the internal level.

The available methods are:

* ADDLEVEL (0) Adds the level of the Unit to the max stat.
* MULLEVEL (1) Multiplies the max stat with the level of the unit
* MULLEVELWITHCONSTANT (2) Multiplies the level with a constant, then adds that to the max stat.
* INCREASEEVERYXLEVEL (3) Increases the max stat by 1 every x level

#### **Shove After Battle**

Plugin inspired by Goinza's unitcommand-skills plugin. If a Unit attacks with a weapon with the custom parameter { shoveAfterAttack : 1}, the target unit will be shoved away by a square.

If a Unit attacks with ha weapon with the custom parameter {pullAfterAttack : 1}, the target unit will be pulled towards the unit.

Works for both Players and Enemies/Allies now!

#### **States While Captured**

Simple Plugin which allows states to tick while a unit is captured. Requires no setup.

NOTE: It does overwrite these two Methods:

* RecoveryAllFlowEntry.\_completeMemberData
* StateTurnFlowEntry.\_getPlayerList

#### **Draw Race Icon**

Plugin to draw the race Icon of the unit/class next to the name. Moves the Icon dynamically with the length of the char name. That may cause the icon to be drawn over other UI Elements if the name is too long.

Should it be preferred to draw it on a static position, simply change the line of the var x.

Should a unit/class have more than one race, one can select the Icon which should be drawn.

## **(Pike)**

### **piketrcechillas' GitHub**

https://github.com/piketrcechillas/Scripts-for-SPRG-Studios

### **Plugins**

#### **Blademail**

This plugin allows Blade Mail skill that reflects the damage to the attacker. You can specify which weapon types and damage types are deflected in custom parameters.

#### **Claris' Zone**

Welcome to Time Alter - aka, save scumming: the script. This is based on a plugin by ふわふわ, which saved at the start of every turn and let you reload one turn back with a custom command. It was based on an official plugin.

I have edited this script further to introduce a customizable amount of "rewind turns". You can now go back as far as 3 turns by default, and you can save more by adding the following custom parameter to your game's difficulty settings.

NOTE: This plugin may also be found in LadyRena's plugin section under the name "Time-Alter".

#### **Coordinate Range**

The script will make the game only highlight attackable targets! Just plug it in and use.

#### **Custom Menu**

This plugin creates a custom menu similar to that found in the Final Fantasy series.

#### **Disease**

The Disease state prevents all kind of healing from working on the afflicted unit.

#### **Full Weapon Range**

This scripts will display the full range of the weapon, instead of only attackable targets like before. Just insert it in the plugin folder.

#### **Local PvP**

This plugin allows for local PvP gameplay.

#### **Online Multiplayer Core**

This plugin allows for online multiplayer.

#### **PIKE Barrack**

This plugin creates a barracks where you can buy and summon units.

#### **PIKE Dynamic Theme**

This plugin allows for dynamic map music, similar to the "Blazing" music style in Fire Emblem games. The music track continues between the Map and Combat screens, with the latter being a more aggressive, energetic version of the tune.

The setup for this plugin requires the use of the Voice channel/function in the SRPG Studio engine. Also, it is recommended to use WAV file for battle music if its track is lengthy, or else the game will freeze a bit when loading OGGs or MP3s. A performance - filesize tradeoff :D

#### **PIKE Inverse HP Enemy Bar**

This plugin makes the HP bars drop symmetrically to each other on the combat screen, similar to many 2D fighter games.

#### **PIKE Mid Combat Skills**

This plugin allows for the creation of combat skills that activate in combat.

#### **PIKE Speed-Based Combat**

This plugin creates a turn system based on each units' speed (SPD), similar to the system in Final Fantasy Tactics. At the end of every unit's turn, each unit will gain Charge Time (CT) equal to their SPD.

For example, a unit with 9 SPD will gain 9 CT at the end of any unit's turn. Whoever gets to 100 CT first will be the next to act.

#### **Stacked Status**

This plugin affects how status effects work when applied to a unit already under its effect. You can have the status effect extend its turn countdown instead of refreshing to the default count, or it can be upgraded to a stronger version of the effect.

#### **Tetrakarn and Makarakarn**

This plugin allows a status that erects a barrier to reflect the damage to the attacker ONCE (like Persona). The barrier's effect can be customized (for example, reflecting physical, magical, or both types of damage).

## **TheRepeat (Repeat)**

### **Plugins**

#### AI Mods

##### **Rescue Staff AI**

This plugin enables basic AI allowing enemy units to use Rescue/Entrap staves. It also allows Rescue/Entrap staves to make an accuracy check.

Plugin originally by Claris, modified by Repeat.

##### **Rhythm AI**

This plugin adds custom AI where the unit will "waste" every other turn. I.e., their AI is set to Wait Only every other turn, and Approach otherwise.

There are two variants, Even and Odd. If Odd, unit will only act on odd turns and will skip evens. The variants are tied to skills. If no skill, Even is the default.

#### **Fatigue**

This plugin enables a fatigue system akin to Fire Emblem: Thracia 776. When units perform actions, such as engaging in combat, a new Fatigue stat is incremented. If that unit's Fatigue stat equals or exceeds the user's maximum HP by the end of the battle, then the unit will not be able to sortie on the next map. Fatigue carries over across maps, but resets to 0 if the unit is not sortied for a battle.

This plugin also adds the ability to create a custom S Drink item, which manually resets the user's Fatigue to 0.

These actions will increment a unit's Fatigue stat:

* Participating in a round of combat at all
* Using a staff
* "Dancing" (using any "Again"-style unit command)
* Stealing (including reverse-pickpocketing)

If you're only using this plugin's most basic features, which closely resemble those of Thracia 776, then this plugin is plug-and-play. However, there are a few optional niceties you can take advantage of:

* With a unit custom parameter fatigueRate, you can determine a multiplier at which a unit's Fatigue stat increases, rather than sticking to the default of 1. 0 means the character will never increase their Fatigue, like Leif from Thracia 776. 2 means the unit's Fatigue increases at double speed.
* By default, every weapon and staff costs 1 Fatigue to use. With custom parameter fatigueCost, that can be customized on a per-item basis. This could be used to recreate the system in Thracia 776 where higher-rank staves cost more Fatigue than lower-rank ones.

#### **Miscellaneous**

##### **Autoberserk**

This plugin creates a weapon that turns a player unit into an ally unit upon using a certain weapon in combat.

NOTES:

* No further effects occur if the unit is not on the Player faction. The weapon behaves as normal for allies and enemies.
* The unit, if alive, is reverted to a player unit at the end of the map (by default).
* AI will always prioritize using the autoberserk weapon if they have it (by default). They should anyway since it should be a really good weapon, but best to be sure.
* You can't trade the autoberserk weapon away while a unit is berserked. I mean, blue & green units can't even trade by default. Easiest implementation of all time.

Besides EOC, should it wear off in other circumstances? All optional custom parameters for the weapon:

* {autoberserkTurns:n} - wears off after n number of turns. This includes the same turn that the unit is changed to an ally
* {autoberserkBreakCures:true} - wears off if the weapon breaks
* {autoberserkKills:n} - wears off at start of Player Phase after killing n number of enemies. This does NOT count if an enemy is killed by the same attack that autoberserks the player unit
* Status-curing staves that have custom parameter {curesAutoberserk:true} can cure autoberserk status on units, as long as the staff is able to affect ally units

##### **Trick Room**

This plugin adds functionality to terrain that changes combat in a similar manner to Pokemon's Trick Room. That is, during combat, if either unit is standing on this "trick room" terrain, then the slower unit will be the one that can follow-up attack, rather than the faster unit.

There are two variants: the default Trick Room, and the alternative that I'll call "Super Trick Room."

* Trick Room: The normal one that takes the Pursuit threshold into account; that is, just like how a unit may need to have 4 extra Speed to be able to double in normal circumstances, the slower unit would in this case need to have 4 LESS Speed in order to double.
* Super Trick Room: Ignores the Pursuit threshold, so if a unit is slower AT ALL, then that unit will double. I figure, since this plugin will likely be used as a one-chapter gimmick for most kinds of projects, this could make the gimmick suitably threatening and memorable. :)

#### **Magic Avoid**

This plugin separates Avoid and Magic Avoid. Default value is Spd+Luk, like Gaiden.

#### **Alternative Controls**

Normally, button 2 (CANCEL) does 5 things. Five! Show enemy range, fast forward, fast cursor, unit menu, and cancel are all mapped to the same key. Insanity. This plugin separates those commands.

* CANCEL (BTN2): show enemy range and cancel.
* OPTION (BTN3): unit menu, as usual. What's unique is that it is now the only key that does this.
* SYSTEM (BTN7): handles fast forward like default, but now also handles fast cursor.

##### **Berwick EXP gain**

Replicates the Berwick Saga EXP system. In Berwick Saga, EXP calculations are pretty simple: EXP gain = ECE + MOD

* ECE = Enemy class experience, taken from a table of classes in Berwick. Here determined by class's "Optional Exp" in-engine
* MOD = EXP modifier. Comes from formula based on the difference in levels between the player unit and the killed unit
* EXP is only gained after a kill

This plugin doesn't affect hardcoded means of gaining EXP (e.g. staves), events, or Paragon (via skill or difficulty option)

This plugin removes the check for DataConfig.isFixedExperience ("Get optional exp of class when enemy is killed").

NOTE: Functions overridden without aliases:

* ExperienceCalculator.\_getNoDamageExperience
* ExperienceCalculator.\_getNormalValue
* ExperienceCalculator.\_getVictoryExperience

##### **Control Characters**

Special control character logic. Adds the ability to shake a line of dialogue and the ability to rainbowify a line of dialogue.

Equip Item Blink

Simple on/off config switch for the engine's new IconDecorationType.EQUIPWEAPON feature. On=show blinking icons (like status effects or rescue/capture icons) representing units' equipped weapons. Off=do not do that.

##### **Fates RNG**

This plugin changes hit calculations to use (a close approximation of) Fates RNG, aka Hybrid RN, aka 1.5RN. Tl;dr it's 1RN at or below 50 hit and is a less extreme version of 2RN above 50.

##### **Free Use Item**

Give any item custom parameter {freeUse:true} and the item won't end the user's turn instantly when used.

##### **Group Experience**

Intended use is Gaiden-style shared EXP distributed to all party members at the end of a battle.

#### **Ignore Avoid Plus**

A weapon with custom parameter {althit:true} will ignore the opponent's Avoid stat. A skill with the keyword "althit" will provide the same effect.

##### **Hide Phase Change**

Hides the phase change graphic and SFX for certain maps. (The "PLAYER PHASE" graphic and such). This is a generalized version of another plugin on my github that has the same behavior but only for walking maps.

Functions overridden without an alias: TurnMarkFlowEntry.\_completeMemberData

##### **Log Names**

A plugin to root log the names of every unit on the field.

##### **Set Level Total**

Execute Script event that returns a value equal to the total level of all player units.

##### **Show Recollection Description**

Shows descriptions for recollection events even if they have not been unlocked yet. Plug and play.

##### **Song Unlock**

Unlocks all music in the sound room immediately.

#### **Repeat's QoL Enhancement Pack**

This quality-of-life enhancement pack contains several plugins that improve various functions of the SRPG Studio engine and layout.

##### **Detailed Unit Window**

This plugin changes the Map Unit Window from two sizes to four: Small, Medium, Large, and Extra Large. The small size is the same as vanilla.

In the in-game Config, the size of the unit window can be changed under Map Unit Window. The larger the setting, the more information is displayed. The numbers shown DO take supports and terrain into account, e.g. forests giving extra Avo, or a support giving extra Def/Res.

##### **Forecast & Map Battle Enhancements**

###### **Danger Skills**

Shows icons for an enemy's dangerous skills in the combat forecast. See the file for more info

###### **Detailed Easy Battle**

Displays combat stats when animations are off.

###### **Easy Battle Pauses**

Lets you customize the length of time to wait between each attack when combat animations are off (the vanilla pause time is really short!).

###### **Intuitive Seals**

Before battle, if a unit's attacks will be sealed by the other's skills/equipped weapon, that unit's battle stats will not display in the battle forecast.

If you're using the Effectivity Recolor plugin, then make sure this one is LATER in the load order!

###### **Player Only Battle**

Adds a third choice to the Real Battle config that lets the player have combat animations only occur on player phase. Player can hold a "Cycle Units" key (A/S by default, or LB/RB on controller) as combat begins to invert the chosen config option.

Plug and play.

##### **Key Bind Display**

This plugin has 2 main functions:

* Display the player's relevant keybinds (controls) onscreen in normal gameplay
* Allow the player to rebind their controls in-game without needing to consult game.ini externally

This is very nearly plug-and-play. All you need to do is move the "Keybinds" folder, included in this plugin, into your project's Material folder. It contains several image files necessary for the plugin to function. With that done, this plugin should be fully functional. In-game, players can choose which type of controls to display onscreen during battle: keyboard keys, controller buttons (specifically those of an Xbox 360 controller), or none.

##### **Warning Markers**

This plugin allows for warning markers like later FE games and many GBAFE romhacks use. When a player unit is selected, the following units have a marker put over their heads:

* Enemies with a dangerously high critical rate
* Enemies with a weapon effective against the player unit (e.g. an armorslayer)
* Enemies that will seal the selected unit's attack
* Any unit that the selected unit is able to have a conversation with
* Specific enemy units or weapons with the custom parameter {warning:true}
* Allies that grant support bonuses to the selected unit

In addition, units who can participate in a Talk event will have an icon next to their name on the unit selection screen during battle preparations.

##### **Objective Window**

This plugin gives the map window the functionality of a GBA Fire Emblem game's map window. Along with the unit window and terrain window from vanilla SRPG Studio, this adds an Objective window as well.

##### **Flash White**

Original Flash White plugin by Claris. Modified by Repeat so the white flash fades out.

##### **Dialog Arrow Always**

In Show Message events, the arrow is not usually shown for the final textbox. This plugin changes it so the arrow is always drawn as long as the text has finished moving.

NOTE: Function overridden without alias: MessageAnalyzer.drawMessageAnalyzer

##### **Icons for Droppable Items**

This Plugin draws a still icon over units that will drop an item when defeated (also offers a config menu option that lets the player disable this if they find it distracting).

By Repeat, using McMagister's Unit State Animator. This plugin will not work without the Unit State Animator plugin.

##### **Faster Healing**

Vanilla damage effects are really fast. A quick animation + sfx plays simultaneously to a number popping up, and that's it. Healing is much slower, being a healing animation + sfx followed by an animation of the gauge increasing with more sfx. This plugin matches the speed of healing effects to the speed of damage effects.

By default, healing will flow like this: animation -> hp increased -> number popup. If you change SHOW\_POPUP\_DURING\_ANIME to true, healing will flow like this: animation + popup simultaneously -> hp increased. Keep in mind that the length of the healing animation will still factor into how long the whole healing process takes. i.e., if you use a shorter animation for HP recovery, this plugin will be more effective.

NOTE: Functions overridden without an alias:

* (not a function but) RecoveryBall is overridden entirely instead of simply adding functions to it, for cleanliness
* HpRecoveryEventCommand.moveEventCommandCycle
* HpRecoveryEventCommand.drawEventCommandCycle
* HpRecoveryEventCommand.\_moveAnime
* HpRecoveryMode enum is replaced

##### **Show Weapon Type**

This plugin adds new "WeaponType" object to ItemSentence. That is, the weapon's type is displayed alongside its stats when checked.

This is plug and play, but there are a few values you can edit based on your preference.

##### **Terrain Details**

This plugin hides Avoid on terrain when it equals 0 and displays the terrain's recovery/damage value. Edit the constants at the top to change the displayed string for recovery/damage values.

By Repeat, inspired by Claris. Modified from Claris's Hide 0 Avoid script.

##### **Unit Roster**

Adds new options to the map commands that allow you to view the full rosters of player, enemy, and ally units on the field, including plenty of information about all of them and allowing you to snap your cursor to a unit by selecting them in the menu.

##### **Visualize Sortie**

Modified from a Cube script for visualizing sortied units. Cube's original script added floating green text to sortied units, while this modification grays out the names and charchips of non-sortied units. As a result, this does not use an alias like Cube's, but I prefer this implementation and you might too.

#### **Selection Actions**

This plugin makes things happen when a player unit is selected. Currently, there are two functionalities of this plugin:

* When a blue unit is selected, a particular sound is played. Similar to games like Fire Emblem Heroes where units play a particular voice line when selected.
* When a blue unit is selected, an event will play where they speak custom dialogue. Similar to the endgame of Fire Emblem Echoes, where each unit has a special final chapter speech when selected.

#### Skill Plugins

##### **Brave as Skill**

Creates the Brave effect (guaranteed follow-up attack) as a skill. Can be controlled to work either in both phases or just during initiating combat.

##### **Break Damage Guard**

Given a Damage Guard type skill with the custom parameter {damageGuardIndex:n} (where n is a number), you can add a custom parameter {breakDamageGuardIndex:n} to a weapon, where n is the same number as the one on the skill, and that Damage Guard skill will be negated by that weapon.

Alternatively, instead of a weapon custom param, you can use a custom skill.

NOTE: Function(s) overridden without alias: AttackEvaluator.ActiveAction.\_getDamageGuardValue

##### **Ignore Avoid Plus**

A weapon with custom parameter {althit:true} will ignore the opponent's Avoid stat. A skill with the keyword "althit" will provide the same effect.

##### **Matchup-Based Avoid Boost Skill**

This plugin grants the skill holder an avoid bonus against units wielding a certain weapon category type (physical, bow, or magical).

##### **Powermove**

When a unit has a skill with keyword "Powermove", the unit will gain attack power based on how many tiles it crossed to reach its target. By default, the power boost is equal to how many spaces the unit moved. With the custom parameter {boost:n}, where n is an integer, the unit's power is instead increased by n times the number of spaces moved.

More custom parameter shenannies:

Use custom parameter {weaponcategory:n,weapontype:n} if you want this skill to only work with one weapon type. weaponcategory is a value from 0 to 2. 0=weapon, 1=bow, 2=magic ; weapontype is the ID number of the valid weapon type (You can find these ID numbers in Database>Config>Weapon Types in SRPG Studio.)

NOTE: This plugin allows either ALL weapon types or ONLY ONE weapon type, nothing in between. You can make multiples of the skill with different custom params if you want it to behave more specifically.

If you want to exclude a weapon from being able to use Powermove, then give that weapon the custom parameter {noPowermove:true} to prevent it from taking advantage of the Powermove skill.

##### **Recovery Status**

When the user has a custom skill with keyword "recoverystate", they are given a state when healed. Custom parameter {recoveryStateId:x} on the skill defines the ID of the state (x) to inflict.

By "when healed", I mean:

* Healed using an item of type HP Recovery
* Healed using an item of type Full Recovery
* Healed via a skill of type Damage Absorption
* Healed via a weapon that has the Damage Absorption weapon option

NOTE: Function(s) overridden without an alias: AttackEvaluator.ActiveAction.\_arrangeActiveDamage

##### **Weight Power**

This plugin creates a skill that adds the weapon's weight to attack power.

##### Skill Plugins / Reverse Vantage

###### **Greatweapon**

Kinda like reverse vantage, but the enemy gets to do all their attacks in a row before the player's are considered. Basically Engage's Greatsword et al.

Keyword for your custom skill: Greatweapon

###### **Reverse Mode**

Another "reverse vantage" script but this time based on difficulty. Essentially it lets you have a Lunatic' mode (aka Reverse Lunatic) like FE12, where enemies always go first.

In Difficulties, add custom parameter {reverseMode:true} to your difficulty of choice.

###### **Reverse Vantage**

Skill that basically gives Vantage to the enemy (the enemy always goes first even if this unit initiates). Keyword: reverseVantage

#### **UI Alternatives**

##### **Radial EXP**

Appends the config option to switch between a rectangle-shaped or a circle-shaped EXP bar.

##### **Custom "Manage Units" Window Column Count**

This plugin changes the unit list in the Manage Units screen to always be 3 columns instead of 2 on smaller resolutions. Or if 3 isn't the number you want, feel free to edit UNIT\_COLUMN\_COUNT.

**NOTE:** Functions overridden without an alias: UnitSelectWindow.setInitialList

##### **Objective Screen**

This refers to the screen in the list of map commands, which shows the objectives, map description, and remaining units.

Changes:

* Removes chapter number from the top. Just shows the map name, bookended by hyphens for style.
* Removes the faces, stacks unit counts vertically, and puts the turn and gold to the right of the unit counts. ObjectiveFaceZone is no longer used at all.
* Shrinks the screen height slightly since this takes up less space than the vanilla version with the faces.
* "TURN: 0" text in (for example) battle prep is replaced with "TURN: --"

NOTE: These functions are overwritten without aliases:

* ObjectiveWindow.\_drawTop
* ObjectiveWindow.drawWindowContent
* ObjectiveWindow.\_drawArea
* BaseObjectiveParts.\_getTitleTextUI
* BaseObjectiveParts.drawObjectiveParts
* ObjectiveParts.Turn now has its own drawObjectiveParts function instead of inheriting it from BaseObjectiveParts

##### **SNES Battle UI**

An alternative flavor for the battle UI that moves all the info to the bottom of the screen. Inspired by the Kaga-era Fire Emblem games and TearRing Saga.

NOTE: Overridden without alias:

* UIBattleLayout.\_drawFrame
* UIBattleLayout.\_drawNameArea
* UIBattleLayout.\_drawInfoArea
* UIBattleLayout.\_drawHpArea
* UIBattleLayout.\_drawWeaponArea
* UIBattleLayout.\_drawMain

#### Walkies

A collection of translated Walkies plugins, with additional features. These let you move a character around with the arrow keys like in a JRPG.

The instructions are all inside the files, at the top of each. I recommend opening them with an editor like Notepad++, VS Code, or Sublime Text. "character-walking.js" in particular is the one you're probably here for.

Creator, original author: 名前未定（仮） / name TBD (tentative)

##### **Character Walking**

By specifying custom parameters on the map, you will be able to create a map that allows you to move a unit with the arrow keys. Translated to English with a couple of new features.

This plugin has support for the Fog of War plugins. However, the fog will be scrolled "in the case of a walking map, taking into account the scrolling state of the map". (Because the original background scrolling process does not consider the map scrolling state, it makes the fog drawing feel strange when scrolling the map.)

##### **Unit Direction Control**

Script to change the orientation of the unit. You can change the way a unit is facing via an Execute Script event. This plugin is also used by character-walking.js

## **SirFrancisOfTheFilth**

### **SirFrancisOfTheFilth's GitHub**

https://github.com/SirFrancisOfTheFilth/SirFrancisOfTheFilth/tree/main/Plugins

### **Plugins**

#### **Aesthetic**

##### **Mirror Image**

With this plugin water or other reflective surfaces can have mirror images of units! Simply give the mapchip tile the custom parameter "mirror".

The custom parameter "mirrorAlpha" sets the opacity of the mirror image (0-255). "mirrorAlpha" is optional. If it's not specified, 255 alpha (full opacity) will be used.

##### **Third Layer v3**

This plugin was modified from Claris's plugin. Original notes: I was able to make this by modifying a plugin created by SapphireSoft, "highlevel-outside.js". It causes terrain with the right custom parameters to be drawn on top of units, so units can hide go "under" tree tops and such. It should be useful for aesthetic purposes, even if it makes units hard to see with certain terrain.

Firstly, also download my Layer Renderer plugin (FotF\_LayerRenderer.js) as it is required for this plugin to work. Put both this file and the Layer Renderer plugin in your Plugin folder.

I modified this plugin to only render the mapchips over units if there is no unit on the mapchip under the mapchip in question (as in y + 1).

Exceptions from this rule occur, when:

* There is a unit directly on the mapchip in question --> head of lower unit cut off, but upper unit will be hidden
* The mapchip below the one in question also has it's third layer enabled --> no random heads sticking out from trees etc.

I redesigned this plugin to work in modules with other terrain rendering plugins of mine. This was a somewhat necessary step to guarantee full compatibility and customizability. Two important improvements over the former version of this plugin are that this plugin also renders the third layer in map color and updates it during movement simulation.

##### **Unlimited Layers**

This plugin gives you unlimited power over SRPG Studio's 2-Layer Mapchip system! Ever wanted to overlay a transparent mapchip with another transparent mapchip? SRPG Studio won't let you do that, as it overwrites the first with the second one. But with this plugin, exactly that is possible now! And it even works with the Third Layer plugin! (My version at least)

NOTE: Requires Layer Renderer plugin (FotF\_LayerRenderer.js)

#### **Music**

##### **Save Music Variable**

This plugin adds functions to save the currently playing player turn music into a variable and play it at a later time.

#### **Parameters**

##### **Hide Parameters**

This plugin lets you hide unit parameters per unit/class/faction by passing a custom parameter. Just replace the name of FotF\_ParamName1/2 in line 54 to the name of the parameter you want to hide and give your unit/class the custom parameter "hideParameter:x", where x is the index number of your parameter.

##### **Parameter Control Character**

This plugin introduces a new control character to be used in messages: \up ; It displays the numerical value of one of the specified player unit's parameters.

Use like all other control characters by including it in the message's text as \up(Index)[(ID)]

##### **Parameter Face Changer**

With this plugin you can change the face graphic of units of all factions in the map unit window, unit menu and real battle depending on the value of one of their unit parameters. The face graphic used in the message command is not affected. To do this, you have to set the custom parameter "faceChanger" in the unit's custom parameters.