Emotion Manipulation Magic


I’ve been seeing a lot of request and asks for this. So you want to make your game use the bust shots like these?

I’m actually disappointed people think it’s made via scripts! No guys, it’s just a simple variable, show picture, move picture, erase picture and conditional branch manipulation. This is where your eventing knowledge comes in!  But since we don’t want to give you guys that much of a hard time, Rhyme kindly made a script so we don’t have to do it the tedious way. But you still have to set it up.


  • First of all, name your filenames accordingly. For example, ErikAngry/Erik-Angry/Erik(Angry) anything goes. The script has tons of example on how I set up the emotions.
  • Make a common event, “Who is speaking?” this is how it will look like (Click on the images for full version):
By the end of this event, add a move picture #100 to however you want it to go into your screen.
  • After that, inside the Erik Emotions Common Event, Use Show Picture and set the coordinates. I recommend making the coordinates variable based. But in this one, I accidentally already inputted a consistent coordinate for all the bust shots. Oops. But here’s what I did.
Make sure to make the variables consistent. For example, 0 = Normal, 1 = Happy, 2 = Sad, and so on. This way, it’ll be easier for you to remember the variables when calling them.
  • Then make a common event that erases them. Seriously people, dispose your pictures to avoid  lag even if it’s opacity 0, blank name or whatever!
  • And here’s how you call it into the game WITHOUT the script:
Set up an empty faceset and then proceed with spacebar spammming. After that, test it in the game. After you’re done with that as well, you can just copy and paste the entire thing throughout the game for consistency.
  • If you want to use the script:
Set the variables accordingly =w=)b

Download the demo over here!

109 thoughts on “Emotion Manipulation Magic

  1. CTRL+MouseWheelScroll readable tutorial…

    Thanks for sharing this event magic, I’m learning from it how eventers work and solve problems.

    You said dispose images, is it in CloseMessageBox common event?

    1. Oh, the Message Box in the screenshot is a picture. Which is what you can see in the screenshot. As far as I remember, Pictures appear below the message box window so I had to make it transparent and make the message box a picture.

      1. Well that makes sense. I didn’t know that about pictures and message boxes (I’ve never used a lot of pictures), that’s a really good tip on making fancy message boxes.

  2. I put the script in my game and when I call it, I get an error

    Script ‘Game_Interpreter’ line 543: SyntaxError occured

    unexpected ‘,’, expecting $end
    “Mary”, “Normal”

      1. Yes, I did. This is exactly how I have it

        when “Mary”
        name_id = 1
        case $game_variables[4][1]
        when “Normal”
        emotion_id = 0
        when “Happy”
        emotion_id = 1
        when “Serious”
        emotion_id = 2
        when “Sad”
        emotion_id = 3
        when “Jealous”
        emotion_id = 4
        when “Scared”
        emotion_id = 5
        when “Blush”
        emotion_id = 6
        when “Angry”
        emotion_id = 7
        emotion_id = 0

  3. This is really nifty if you think about it; slapping-hard work at first and when it’s done, the rest is a breeze~

    Oh, I’ve also been wondering how you format your text like that… after further inspection of your screenies, it seems that Tab did the magic :P

  4. i was wondering if there was an easier way to set this up cus i still dont kno how to use varibles an branches and stuff…im just starting to get the scripting down.. but hey im a noob….

    1. Variables, Switches and Conditional Branches are a must thing that you have to learn in RPG Maker if you want to make a game. Please check tutorials in regards to those since that’s the only way for you to make decent games.

  5. How do you show the picture above the text message? I can’t make it work, it always shows up below it. I suppose i should look for a z somewhere, but don’t know where.

  6. Thanks for explaining this, it was very helpful for me. I did spend a while trying to get the text box beneath the displayed picture, but finally gave up. Is there no way to set the Z value for the built-in text box?

    I guess I’ll have to use a text box graphic as you have done.

  7. I have scripts from yanfly and victor, when I use this script I cant have yanfly’s ace messanger script installed. But I have all the events and stuff set properly accept I get no picture its just the text being shown only.

  8. I use mostly Yanfly’s scripts for major portion of my game along with Victors Animated Battler engines. The problem I’m getting is the image’s are not being displayed at all, just the text. Yes, I removed Yanfly’s Message system, put your emotion scripts below Victors, and above Yanfly’s. I entered all the information for one character to just test it out in a one sided conversation.

    1. Nevermind, I figured it out I think, something stupid I should have noticed in the first place.

  9. Hello, it was amazing, but i don’t understand how to install it ><, don't know how to put the script and don't understand how to make dialog

  10. nevermind, i looked over the image above and i tried to put the script in the common events but it wont paste at all. itll just do this bing sound instead

  11. ok I feel like a total idiot, but I have no idea what I’m messing up… I’ve copied the scripts over and changed names and Id #s to be correct (unless Im over looking something) Ive basically gone through and copied the exact places you put variables, all the locations of the common events…I have to be over looking something small thats messing it up. The pictures don’t show up. (copying how the demo is setup) I’ve done it how you have it on the pictures on here and it works but I was hoping to get it to work like how it does in the demo… x.x Also with how its setup on the demo the text doesn’t move unless you do it how you show it on here in the pictures above….

    when “Shino”
    name_id = 6
    case $game_variables[4][1]
    when “Normal”
    emotion_id = 0
    emotion_id = 0

  12. Hello, Archeia.
    I have a problem and I need your help to solve it.
    I can’t open the game file ’cause it appears a message box saying:
    Script “Game Interpreter” line 175: SyntaxError ocurred
    unexpected $end, expecting keyword_end
    I don’t know about scripting, so I don’t know how to fix it. Can you help me, please?
    Thanks and sorry if my English it’s not good.

  13. Hello there.
    If I am using different variables (66 for Portrait Decision, 67 for variable and 68 for Line Space variable), do I need to edit the scripts ‘Emotion Manipulation Magic’ and ‘Change Text Position Via Variable’?

    Thanks in advance.

    1. Sorry for the double post.
      All scripts that are using game variables ($game_variable[x]) are to be edited if the variable ID is different.
      For instance:
      Demo’s variables are: 1: , 2: Who is Speaking, 3: What Emotion, 4: Portrait Decision, and 5: Line Space. I already used those variables, so I set them up like these: 62: Who is Speaking, 63: What Emotion, 66: Portrait Decision, 67: , and 68: Line Space.
      In the ‘Emotion Manipulation Magic’ script (by Rhyme), line 22 needs to be edited (where it says “if $game_variables[4].is_a?(Array)” it should say “if $game_variables[66].is_a?(Array)” since I am using a different variable. The same should be done with line 23, when setting more portraits up in the script (case “$game_variables[4][1]” is case “$game_variables[66][67]” in my script), and at the end of the script the lines “$game_variables[2] = name_id” and “$game_variables[3] = emotion_id” should be edited too (“$game_variables[62] = name_id” and
      “$game_variables[63] = emotion_id” in my script).
      The Change Text Position Via Variable also needs to be edited, at line 12, with whichever variable is being used instead of 5: Line Space (in my script: “$game_message.face_name.empty? ? $game_variables[68] : 112”).

      You might want to add this into the tutorial, Arche.

      Thanks for the system!

  14. Man, it’s so good!
    but, well…where can I download the bustshots?
    I can’t find the NPC’s (maid, people, etc.) bustshot here…and some actors bustshot aren’t available here…
    thank you

  15. Hmm i have a problem with the faceset. I cant move it in a different position. it always moves back :(

  16. Aaaaah i have another question! I really did it like in the demo and the description but when i tested the game, the face was onelay normal and not happy and so on. i wrote in there [“Player1″,”Happy”] and i put the “Happy-Thing” also in the script and the common event and it loooks similar to the ones in the demo. i also adjusted the varibales. but it doesnt work!

    1. It’s been a while since I used this method so my memory is fuzzy, but the script itself has variables on them that you need to change too. Especially since you said you changed them. Above, Say41Plz says something about it.

  17. I have the same problem Beccy has! I cheked everything a thousand times and did it like Say41Plz said. But what ever i try, i only have the “Normal Face” and not for example the sad one. im very sour that it have something to do with the script, because my common events and so on are really exactly the same. And even in the script i changed some variables… The idea and look of this script is really wonderfull but it makes me kinda agressiv searching since a couple of weeks for a way to solve this problem :( I cant find any mistakes. Please help me D:

    1. Sorry for double post but i kinda solved the problem! After trying really everything i changed the variables in the demo too. Everything worked until i changed the variables in the Emotion manipulation magic script! There is an array called game vairables [4] [1]. The [1] variable is a not used one in the game, its empty, and i changed it to another one that isnt used. in this case [8] and when i try the demo, the same problem as in my game occured. so i changed the variables back and changed them in my game to0. At first i had the varaibles [7] [11] and i changed them to [7] [1]. And tadaaa it works! i think there might be another way to solve the problem, so that 11 would work to but i dont find a way.

      I hope this helps you beccy!

  18. What do you use to get the pattern/gradient for the message box?
    I’m using Gimp, so I do a Purple Gradient, Inner Glow, Stroke, then Black to Transparent gradient for the edges… but I can’t seem to get the namebox to seem ’round’ like yours.

    What steps did you use for this?
    p.s. I don’t want to make a replica, but something similar and unique to my game~

  19. I gave this script a shot and it works great!
    I have one problem though, after talking to a character/expression dialogue, the rest of my dialogue is still in the same position even when triggered for events like “Picked up ‘item” or “Door is unlocked” dialogue, is there any easy way to fix this?

  20. Is there any posibility to show the text above the picture? I want the text window to be under the picture of my charakter but the text in the window over the charakter. is that possible to do?

  21. Archeia I’m using your script right now (p.s it’s really awesome *w*) but there’s a problem…when the message start it come this error :

    SystemStackError occured
    stack level too deep.

    what can i do for this problem?

  22. Is it a big problem if I leave the [character] emotions coordinates constant? If so, what do I set the variables to, and where/when? I’m new to this, so thanks for any help!

    1. It could be a problem if you change them later. Just set the variables on show picture/move picture however you did it and set it before calling them? Lots of ways to do it :o

      1. Thanks for the quick reply, but I don’t really understand what you mean by setting the variables on show picture, and how to set it before calling them. Like I said, I’m new to this level of RPG Maker, so if you could please explain that would be great! (:

  23. I’m also unsure as to how to do a variable operation, the ‘Portrait Decision’ variable, specifically. Sorry about my lack of understanding your guide, most of it makes sense to me, except for a few parts that I’m sure I would get if I knew what I was doing. c:

      1. I got I syntax error ):
        Script ’emotion_manipulation_magic’ line 68: SyntaxError occurred.
        unexpected $end, expecting keyword_end
        I have no idea how to fix this, or what I might have done wrong.

  24. I really want to use this script, but I keep getting an error:
    Script ’emotion manipulation magic’ line 200: SyntaxError occurred.
    unexpected $end, expecting keyword_end

    I know this means I have a problem with something ending, as I have read the comments before commenting myself, but I just cant seem to find the problem on. The only thing I have done is changing the names of the characters in the script, and the only thing on that line is the word “end”

  25. I’m getting the busts to show up, but they’re off to the left. I couldn’t figure out how to do it so I just copied the Common Events/Normal Events/Script from the demo :P I just placed Naia’s Event over a random character as a test, and that’s when the picture is off to the left

  26. I do have a question as well. My resolution is going to be a bit different than normal (640×363) So naturally the full image doesn’t show. The problem I’m having is when I try to adjust the position of the image it still pulls it down to the bottom hidden off where it was before. Is there a way to fix this?

  27. Hey, i really love your script, but, have a problem:

    I am using the “Khas Awesome Light Effect” in my game, and the Message box is affected by the Light…

    One of my maps are totally dark, so, I can’t see the message…. Can you help me????

      1. Thank you so much, but… Well… This solves the face image problem… But, the message box continues being affected by the light… If I change ther “Z Value”, he stands on front of the face….. :(

  28. First off, amazing job with this. Second, I cannot get the script to make it easier to work. When I set the variables manually, it works fine (control var: who is speaking = x). When I try to call the script with (who is speaking = [“Kaeko”, “Normal”]) I get the error message: “Script ‘Game_Interperter’ line 374: NoMethodError occurred. undefined method >= [“Kaeko”,”Normal”]:Array.

    I have set the common events, variables, and edited the script to match my heroes, and just don’t get why it isn’t working. The ONLY thing that is different between my map and your demo is the variable #’s are different. Meaning your portrait decision is in variable #0004 while mine is in #0006. I don’t see why this would be a problem, but I have no idea what else could be causing the issue. Do you have any idea?

      1. Thank you. However, the line spacing isn’t working now. I ran the common event after the script call and nothing. Do I have to do something different with this script setup? Also, do I still need all of the scripts I copied over from the demo? I noticed the “Change Text Position Via Variable” script looks combined with the one provided above.

      2. Thanks. I am just going to use the old one. There are just too many things that are different and I don’t have all the information needed. The old way is working, so I’ll just stick to that..

  29. Hello Archeia!!
    First of all, many thanks for this amazing script!
    Being able to change emotions like that brings another life to the game, kinda like a soul! ^^
    I have run into many problems, but after a few hours of study I have been solving them.
    But there are currently two problems which I cannot seem to fix:

    1.After the image appears, it does not disappear;
    2.I made sure that my pictures are properly named and the right emotions to the right constants, but I cannot make the emotions appear. Just the normal one.

    If you could help me I would really apreciated, since I really want to use this…

    (P.S: I have checked and rechecked the demo for any inconsistencies, though some might have escaped. Meanwhile I’ll keep trying.)

    Once again, thanks for this great work! ;-)

    1. I am sorry for double-posting. Just wanted to say that the issue of the image not disappearing as been solved.
      I forgot to add: Control Variables: [(whatever my variable)]=””
      Call Common Event Who is Speaking.

      Now only .2 to go…

  30. This tutorial is wonderful! I was running into too many complications with the script but, I was very successful with the Control Variables.

  31. I feel like this may be a bit of a silly question, but how do you get the portrait to be in another place? I’m using another artist’s portraits and because of size differences, the portrait is just sorta floating halfway up the textbox, but I can’t seem to figure out how to move it so that the portrait is in the right place.

  32. Huh my screen shot didn’t go through, but it says “Script ’emotion_manipulation_magic’ line 217: SyntaxError occured. un expected $end, expecting keyword_end

      1. Ah yeah what’s weird is that when I try to open your demo it gives me an error stating “Failed to load actor data.”

  33. Sorry to bother you, but I have recently began to use this script with Luna Engine and all the settings in the base version given with the purchased version. Everytime I try to start up the game, it says “line 134: syntaxerror occurred, unexpected $end, expecting keyword_end”. Line 134 is exactly the end of the code and, checking up on the three portraits I’ve integrated, there are no missing ends. The RAW Pastebin is here http://pastebin.com/raw.php?i=xTtdwAPg and I’ve checked everything I needed to check, but it’s not working even though every actor is paired with one in the Common event. Thanks for the help in advance!

  34. Please help-

    I’ve copied and pasted the script as is, but when I run my game, it gives me a syntax error on the last line.

    It says, “unexpected $end, expecting keyword_end”, and I’m not good with Ruby script, or whatever this may be just yet.

    I know it’s supposed to stop the script, but what do I do there?

  35. Like Garrus, I’ve copied and pasted the code as is, but it’s still giving me an error message at the end with “line 214: syntaxerror occurred, unexpected $end, expecting keyword_end”.

    It’s rather annoying, and I’m new to this type of code, so I was wonder if you may kindly assist me?

    Thank you in advance ^^

      1. How about that, I looked over the other comments, and turns out I needed to add two more ends after the previous end.

        Haha, sorry I didn’t see taht answered comment before making my own.

        Later and thanks!

  36. First of all, thank you so much for making this.
    Second, how can I make the character portrait too… appear somewhere else?
    I tried changing the one in the Common Events, but it the portrait still appear in the bottom left of the screen anyway.
    And I didn’t find anything in the script to adjust the coordinate.
    Or am I missing something?

  37. Is there any way to make the character portrait appear somewhere else?
    You see, my project is in a 640×480 resolution and I also want to make the portrait appear on the left of the screen, on top of the message box.
    But no matter what I do it always appears on the bottom left of the screen.

  38. Heyla! Your links to the demo and the script appear to be broken. Would you still happen to have working links to them? Thank you!

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.