Warrior Core Engine XP

Last Update: April 24, 2013
Script Download

This is the core engine for Warrior Engine Ace, made for RPG Maker XP. This script provides various changes made to the main engine including bug fixes and GUI upgrades.

Bug Fix: Interpreter Fix

The script here fixes the multi-line issue with the call script command and improves the execution of the wait idea. For those who don’t know. If the call script evaluates to false then the event waits a frame before running the script call again. (Consider it like Repeat next frame)

If the script call was on multiple lines there was a single frame wait before it continued with the next event commands. This script fixes this issue so it wait whether single-line or multi-line.

Bug Fix: Encounter Fix

This script is more or less a fix to the default rmxp encounter rate. How many people have noticed that when they set the encounter step of the map to something like 30, they’ll encounter monsters after 4 or 5 steps or something bizarre like that? Well, this script fixes that. The default rmxp encounter rate makes it so that the encounter step that you put for the map will be the most amounts of steps it’ll take to encounter another monster. The default script gets a random number from 1 to the number you chose plus 1. This script gets a more reasonable number from the encounter step that you chose. So let say that you put in 30, you’ll probably get something around 25 – 35.

New Feature: Draw Actor Face

You can now add actors faces by adding them to the picture folder by there actor name. You can call the script into any window with this call:
draw_actor_face(actor, x, y [,size = 96])
Note: You can ommite whats in the bracket if you don’t want to change the size. Just make sure the brackets aren’t actually in the real code.

New Feature: Gradient Draw Text

== Example ==
If You want to see your text with gradient colors, use this code:

class Window_Base
# * Draw Name
# actor : actor
# x : draw spot x-coordinate
# y : draw spot y-coordinate
def draw_actor_name(actor, x, y)
gradient_text(x, y, 64, 32, actor.name, Color.new(255,0,0),Color.new(0,255,0), 0, false)

New Feature: Numeric Digit Grouping

This will change various scenes to display numbers in groups where they are separated by a comma every three digits. Thus, a number like 1234567 will show up as 1,234,567. This allows for players to read numbers quicker.

New Feature: GUI Modifications

There are quite a lot of different modifications you can do to the GUI. This includes adding bars to HP and SP, adding Shadow and Outline to Font, changing the colours of each individual font aspect, and more. Also, you can change the default font setting for your games here.

New Methods: class Color

* This Set Defines the Basic Colors

* Name      : Color Between
* Info      : Gets Color Between Two colors given the percent
Color.color_between(color_a, color_b, percent = 0.5)
* Name : Get Color
* Info      : Gets a Color
* Call Info : Integer Value the color code to get
Comment   : 0: Clear 1: Red 2: Blue 3:Yellow 4: Purple 5:Orange 6:Green 7:White 8: Black – 10 for lighter + 10 for darker

New Methods: class Array

    • Random array value

Returns a random object from the array, the method .random! is destructive,
removing the value returned from the array.

    • Sum of the numeric values of a array

Returns the sum of all numeric values

    • Product of the numeric values of a array

Returns the product of all values in the array

    • Average of all numeric values from the array

.average(float = false)
float : float flag
Returns the average of all numeric values, if float is true, the value
returned is a float, otherwise it’s a integer.

    • Returns the Geometric Mean of all values in the array

.geometric_average(float = false)
Zero To One Arguments Defaults to False
Boolean to_float if true always returns a Float else always returns an
Integer regardless of the Types in the array


 This script is made strictly for RPG Maker XP. There would be no need to add this to RPG Maker VX/VX-ace as majority of the features already exist.  Look inside the script comment section at the ‘Script Conflicts and Compatibility’ for more information.

Due to the rewrite in most of these classes, this Engine should be above all other custom scripts and below Scene_Debug.


To install this script, open up your script editor and copy/paste this script to an open slot below  Scene_Debug but above ▼ Main. Remember to save.

Edit the settings in the module below as you see fit.

26 comments on “Warrior Core Engine XP

  1. Pingback: RMXP TP System « Bigace World

  2. I have received an error when I exit the item menu with an empty inventory.

    line 901: NoMethodError occured.
    undefined method ‘dispose’ for nil:NilClass

    If you could fix this, I’d appreciate it. Thanks.

  3. Pingback: ACE Menu Location Window « Bigace World

  4. Pingback: Update2! « Bigace World

  5. 10.02.2012 (v1.15)
    ▼ Fix: Improve Coding
    ▼ Upgrades: Overworked both Window_Gold & Window_Steps
    ■ I added Numeric.grop to both class so a comma would appear after every 3
    digits. ex.(999999999) to (999,999,999)

  6. Pingback: ACE Item System [RMXP] « Bigace World

  7. v1.32 (02.08.2013)
    ● Added MP Death
    ● Added One HP Revival after battle
    ● Improve Coding
    ● Actors name can turn red if below a certain percentage now
    ● Upgrade: Added 5 more colors to the Color class

  8. Pingback: Item Icon Hue [RMXP] « Bigace World

  9. Pingback: Slippery Tiles [RMXP] | Bigace World

  10. Pingback: Stop All Movement [RMXP] | Bigace World

  11. Pingback: Battle Arena [RMXP] | Bigace World

  12. v 1.60 – 04.24.2013 >
    ▼ Added Common Events and Event Troops notetags
    ▼ Added a Cache Optimization System
    ▼ Added a functions to hide the mouse from the game window.

  13. Pingback: Actor Biography [RMVXace] | Bigace World

  14. When entering a Shop, I encontered this error:

    ‘Warrior Core 674 TypeError
    cannot convert Fixnum into String’

    673 align = 0 if align.nil?
    674 self.warrior_draw_text(x, y, w, h, text, align)
    675 self.font.color = orig_color

  15. When using the ID 1 default magic Cure (which scoopes all allies) the following error pops-up:

    ‘Warrior Core 1870 NameError
    undefined local variable or method ‘i’ for #

    and the code:

    1867 def determine_target
    1868 if @target_window.index == -1
    1869 used = false
    1870 $game_party.actors.each {|actor| used |= i.skill_effect(@actor, @skill)}

  16. Pingback: [Script] Stopper tous les mouvements des évènements | RPG Maker XP

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s