Class Change Core (YEP)

From Yanfly.moe Wiki
Jump to navigation Jump to search


System

This is a plugin created for RPG Maker MV.

For help on how to install plugins, click here.

For help on how to update plugins, click here.

Got errors with your RPG Maker MV plugin? Click here.

Download

Extension Plugins

The following plugins are Extension Plugins that require this plugin as its Parent Plugin.

Place the following plugins below this plugin located in the Plugin Manager if you plan on using them.

Yanfly Engine Plugins

This plugin is a part of the Yanfly Engine Plugins library.


Introduction

This plugin adds the ability for your player to freely change the classes of
actors outside of battle from a menu. When changing classes, this script
gives the option for the developer to choose whether or not classes have
their own levels (causing the actor’s level to reset back to the class’s
level) or to maintain the current level.

Notetags

NotetagsMV.png

RPG Maker MV's editor is unable to allow for custom traits/properties that a game dev may wish to associate with a database object, event, map, etc. Notetags are used to work around such limitations by allowing the game dev to tag certain traits/properties using specific Notetags declared by the related plugin.

Here is a list of Notetag(s) that you may use.

The following are some notetags you can use with the Class Change Core
plugin.

Actor Notetags:
  <Unlock Class: x>
  <Unlock Class: x, x, x>
  <Unlock Class: x to y>
  This actor will have class(es) x unlocked at the start of the game in
  addition to its current class and access to any of the global classes.

  <Cannot Change Class>
  This prevents this actor from being able to change primary classes. This
  could be reversed from plugin commands, however.

  <Class x Character: filename y>
  When this actor's class is x, the actor's character sprite will become
  'filename' and index y on the fieldmap.

  <Hero Character: filename y>
  <Warrior Character: filename y>
  If you prefer to use class names instead of the class ID, use the above
  format. When this actor is this class, the actor's character sprite will
  become 'filename' and index y on the fieldmap.

  <Class x Face: filename y>
  When this actor's class is x, the actor's face graphic will become
  'filename' and index y for menus.

  <Hero Face: filename y>
  <Warrior Face: filename y>
  If you prefer to use class names instead of the class ID, use the above
  format. When this actor is this class, the actor's face graphic will
  become 'filename' and index y for menus.

  <Class x Battler: filename>
  When this actor's class is x, the actor's battler sprite will become
  'filename' in battle.

  <Hero Battler: filename>
  <Warrior Battler: filename>
  If you prefer to use class names instead of the class ID, use the above
  format. When this actor is this class, the actor's battler sprite will
  become 'filename' in battle.

Class Notetags:
  <Icon: x>
  Sets the icon for this class to x. This icon is used in the Class Change
  menu listing.

  <Use Nickname>
  This will cause the class to use the nickname used by the actor instead
  of the class name.

  <Help Description>
   Text
   Text
  </Help Description>
  Sets the help description for the class to the specified text.

  <Level Unlock Requirements>
   Class x: Level y
   Class x: Level y
  </Level Unlock Requirements>
  Sets the requirements for unlocking that particular class. The unlocking
  of the class will require classes x to be at level y. Insert multiple of
  the strings in between the two opening and closing notetags to require all
  of the class levels to be met.

  <Level Unlock Requirements>
   Hero: Level y
   Warrior: Level y
  </Level Unlock Requirements>
  If you prefer to use class names instead of the class ID, use the above
  format. This will set the level requirement for the mentioned class to y.
  If there are multiple classes with the same name, the class with the
  highest ID value will be taken.

Plugin Commands

PluginCommandsMV.png

Plugin Commands are event commands that are used to call upon functions added by a plugin that aren't inherently a part of RPG Maker MV.

Here is a list of Plugin Command(s) that you may use:

Included in this plugin are multiple Plugin Commands to help assist you with
class changing for your game.

Plugin Command
  OpenClass
  - This opens the class changing scene.

  ShowClass
  HideClass
  - This shows/hides the Class option from the main menu.

  EnableClass
  DisableClass
  - This makes the Class option enabled/disabled.

  UnlockClass 5 6
  - This allows Actor 5 to unlock Class 6.

  RemoveClass 5 7
  - This causes Actor 5 to no longer access Class 7.

  UnlockClassAll 8
  - This unlocks Class 8 for the global pool.

  RemoveClassAll 9
  - This removes Class 9 from the global pool.

  EnablePrimaryClassChange 5
  DisablePrimaryClassChange 5
  - This enables/disables primary class changing for actor 5.

Main Menu Manager Integration

To integrate access to a scene from this plugin into Yanfly's Main Menu Manager, use the settings below:

For those using the Main Menu Manager and would like to position the Row
command in a place you'd like, use the following format:

      Name: Yanfly.Param.CCCCmdName
    Symbol: class
      Show: $gameSystem.isShowClass()
   Enabled: $gameSystem.isEnableClass()
       Ext:
 Main Bind: this.commandPersonal.bind(this)
Actor Bind: SceneManager.push(Scene_Class)

Insert the above setup within a Main Menu Manager slot. Provided you copy
the exact settings to where you need it, it will appear there while using
all of the naming, enabling, disabling, hiding, and showing effects done by
the plugin parameters.

Remember to turn off 'Auto Add Menu' from the plugin parameters.

Changelog

Version 1.13:
- Updated for RPG Maker MV version 1.5.0.

Version 1.12:
- Optimization update.

Version 1.11:
- Added <Use Nickname> notetag for classes. This will cause the class to use
the actor's nickname instead when listed in the class list.

Version 1.10:
- Added <Cannot Change Class> notetag for actors and two plugin commands:
EnablePrimaryClassChange and DisablePrimaryClassChange for actors.
- Added 'Auto Add Menu' to plugin parameters. This way, users don't have to
make conflict with it if manually positioning the command with the Main Menu
Manager plugin.

Version 1.09a:
- Optimization update.
- When switching classes to a globally unlocked class, actors won't unlock
those classes anymore. This is to keep the RemoveClassAll working without
having to manually use RemoveClass for all classes individually.

Version 1.08:
- Updated for RPG Maker MV version 1.1.0.

Version 1.07:
- Fixed a bug that carried over a previously changed actor's stats into the
stat comparison window.

Version 1.06:
- Made an update to the 'Change Actor Images' to give changes to actor
images priority over class images. Setting the 'Change Actor Images' to
(None) will return it back to using class images.

Version 1.05:
- If using the Skill Learn System and Skill Menu Integration, the
"Learn Skill" command now carries over to the Skill menu itself to utilize
the integrated system.

Version 1.04:
- Fixed a bug that would revive dead party members by changing their class.

Version 1.03:
- Fixed a bug that would duplicate non-independent items.
- Fixed a bug that prevented visual appearances from updating until entering
a new map.

Version 1.02a:
- Added a failsafe for users to prevent them from attempting to learn skills
from classes that don't exist.

Version 1.01:
- Fixed an asynch issue with changing class images when moving to another
face graphic that isn't on the same image.

Version 1.00:
- Finished Plugin!