Learn Condition Formulas

This script allows you to specify custom conditions that must be met in order to learn a skill or forget a skill

There are three types of conditions available

  1. Required conditions
  2. Learn conditions
  3. Forget conditions

Required conditions are conditions that must be met before you can potentially learn the skill. By default, level is a required condition. This script allows you to specify additional required conditions

Learn conditions are conditions that must be met in order to learn the skill. The learn condition is only checked when all required conditions are met. It is only checked once: if you did not meet the learn conditions when all required conditions are met, then that learning object expires and you won’t be able to learn from that object again.

However, you can have multiple copies of a learning object with different required conditions so that the actor has multiple chances at learning the skill.

Forget conditions are conditions that must be met in order to forget the skill. Once this condition has been met, the actor will forget the skill.

A single learning can have all three types of conditions, for example if you learn a skill at level 5, but then forget it once you reach level 10.


Script: download here
Required: Core: Learning


Place this script below Core – Learning and above Main



To specify a required condition, use this note-tag in the Class Learning
object. Note the slash before the end of the tag.

<req condition: FORMULA />

To specify a learn condition, use the note-tag

<learn condition: FORMULA />

To specify a forget condition, use the note-tag

<forget condition: FORMULA />

Where the formula is any valid ruby statement that returns true or false.
There are some special variables for your formula:

a – the actor
p – game party
s – game switches
v – game variables

You may also like...

10 Responses

  1. SFVM.exe says:

    I cannot figure out how this script works. Help please.

  2. Dominic says:

    Can I use this for MV too?

  3. Anonymous says:

    Can you make it so if there not a class they forget them say like a your a warrior you turn them into a mage they forget the warriors skills?

  4. Matthew says:

    I was wondering, how does the ‘s’ and ‘v’ statements work?

  5. Anonymous says:

    this is probably a dumb question, how would I do a learn/requirement formula so that a certain switch or switches needed to be on in order to learn the skill?

    • Hime says:

      You can use the formula


      To require switch 1 to be ON.


      v[8] == 5

      Would check whether variable 8 is equal to 5.

  6. rubydragon44 says:

    Aww sniggity snap, it works!
    Now, if only I could find level-up events…

  7. rubydragon44 says:

    Is it possible to have it so that when Switch 32 "Hero went through Bloodmage ritual" is on and Variable 75 "Levels raised since became Bloodmage" is 5 or greater and the level of the actor is 25 or higher, even if these conditions were met after the actor passed level 25, they will learn the skill "Samaritan Surge"?

  8. Hime says:

    Script has been updated with more ways to set up your learnings.

Leave a Reply

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax