RMRK is retiring.
Registration is disabled. The site will remain online, but eventually become a read-only archive. More information.

RMRK.net has nothing to do with Blockchains, Cryptocurrency or NFTs. We have been around since the early 2000s, but there is a new group using the RMRK name that deals with those things. We have nothing to do with them.
NFTs are a scam, and if somebody is trying to persuade you to buy or invest in crypto/blockchain/NFT content, please turn them down and save your money. See this video for more information.
[VXA] ATS: Face Options 1.0.3

0 Members and 1 Guest are viewing this topic.

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
ATS: Face Options
Version: 1.0.3
Author: modern algebra
Date: 20 July 2013

Version History


  • <Version 1.0.3> 2013.07.20 - Fixed a bug where face would scroll in and fade in every message even if same face being used. Also added a feature to match face tone to the screen, as well as a new code to display battle animations on the face.
  • <Version 1.0.2> 2013.07.16 - Fixed a bug where abnormally-sized faces in traditional format were not being drawn correctly.
  • <Version 1.0.1> 2013.07.16 - Fixed a bug when placed below ATS: Formatting. I also made animating large facesets a little easier by permitting the use of $ and %[n] together to indicate a file with n poses.
  • <Version 1.0.0> 2013.07.15 - Original Release

Description


This script allows you to control the face settings of a message. Not only can you now give faces a talking animation and a blinking animation, but this also lets you use bigger facesets, to set the faceset based on actor ID or party ID, to encapsulate faces in their own windows, to set its position, to fade it in or scroll it in, and much more. For a complete list of features, be sure to read the Instructions and the Editable Region in the script.

Features

  • Allows for talking animations and blinking faces
  • Allows for large facesets
  • Can set a face to that of an actor or party member - great for games with character selection
  • Can use smooth scrolling and fadein animations
  • Can set the position of the face to anywhere on the screen, along with a number of automatic positioning settings
  • Can change graphical options of the face (e.g. mirror it, change the tone, opacity, etc.)
  • Can encapsulate the face in its own window and set border size
  • Can play battle animations on faces

Screenshots


Instructions

Paste the script into its own slot in the Script Editor, above Main but below Materials.

Script


The script is too long. You can get it either from the demo or from Pastebin

Credit


  • modern algebra

Thanks

  • Acolyte, for giving me incentive to finish the script and for reporting errors
  • Yin, for reporting errors

Support


Please post in this topic at RMRK.net if you have any questions, suggestions, error reports, or comments about this script. It is perfectly fine to post here even if this topic has not been posted in for a very long time.

Please do not message me privately, as any concerns you have are likely shared by others and they will benefit from our correspondence being public. Additionally, I am occasionally absent, and posting publically will allow other members to assist you when I am unable to do so quickly.

Known Compatibility Issues

I am currently unaware of any compatibility issues, but it has not been fully tested with all the other ATS scripts yet.

Demo


See attached. I've attached ATS Face Options.exe, as well as ATS Face Options.rar for anyone nervous about running an .exe. They are exactly the same demo though, so you only need one.

Please excuse the size; I included a song from the amazing Bobby Richeson. If you like it, you can download the whole pack here.

Author's Notes


It is not fully tested yet, especially for compatibility with other ATS scripts, but this script has been held up for about a year and I didn't know when I'd get a chance to test it fully, so I figured I'd release it and let you all be my testers. Please let me know if you encounter any bugs!

Terms of Use


I adopt RMRK's default Terms of Use.
« Last Edit: July 20, 2013, 03:02:26 PM by modern algebra »

*
A-pow 2015
Rep:
Level 81
2014 Best RPG Maker User - GraphicsFor frequently finding and reporting spam and spam bots2013 Most Unsung MemberSecret Santa 2013 ParticipantFor taking arms in the name of your breakfast.How can I help you? :Da^2 + b^2 = c^2Secret Santa 2012 ParticipantSilver - GIAW 10Silver - GIAW 9Bronze - GIAW HalloweenGold - Game In A Week VII
Thank you so much modern. :tpg:

*
The Hero of Rhyme
Rep:
Level 83
( ͡° ͜ʖ ͡°)
2014 Best RPG Maker User - Story2014 Queen of RMRKProject of the Year 20142011 Best Newbie2014 Best RPG Maker User - Creativity2014 Kindest Member2013 Queen of RMRKBronze SS AuthorBronze Writing ReviewerSecret Santa 2013 ParticipantFor taking arms in the name of your breakfast.GOOD!For frequently finding and reporting spam and spam bots2012 Best RPG Maker User (Creativity)2012 Best Yuyubabe Smiley;o
Ahhhh!! LOVE it! :gracie:
Spoiler for My Games and Art:
ℒℴѵℯ❤


My Artwork Thread

The Lhuvia Tales [Current]

Ambassador [Complete]

The Postman [Complete]

The Wyvern [Complete]

Phoenix Wright: Haunted Turnabout [Complete]

Major Arcana [Cancelled]


pokeball YinOfflineFemale
**
Rep:
Level 86
 :discosect: This is excellent news! I'll be trying it out and if I come across any bugs I will be sure to let you know! Thank you soooo much! I was waiting for this!

pokeball YinOfflineFemale
**
Rep:
Level 86
Found an error when used with the rest of the ATS. This is in a bare project with just the ATS scripts. Everything gets put on one line each when adding the face options in.


Will report more when/if I find more.
Script order is :
ATS Special Message Codes
Ats Formatting
ATS Message Options
ATS Advanced Choices
ATS Face Options


I'll play around with the order and see what I find.


changed the order and the formatting corrected itself I put face options above the formatting script. But then when I spoke to animated face guy, this error popped up:



---------------------------
ATS: Choice Options 1.0.0
---------------------------
Script 'ATS: Face Options' line 1152: NoMethodError occurred.


undefined method `empty?' for nil:NilClass
---------------------------
OK   
---------------------------


The error pops up after this message:

\c[3]Colin\c[0]

Also, the :animate_faces setting is true
as it always should be. Now, you may
see that I am blinking. This is because




Which seems to be stopping because of the script call after it:



n = "BrownHair%[4]"
ats_next(:blink_face_name, n)
ats_next(:blink_face_index, 4)


Line 1152 is :

     atsfo_change_face($1.empty? ? $game_message.face_name : $1, $2.to_i, blink)

Edit: I have another suggestion. If a character's face is still the same, still talking, same postition, etc. then it should not play the animation over again (The slide/fade in animations)
« Last Edit: July 16, 2013, 04:44:29 PM by Yin »

*
A-pow 2015
Rep:
Level 81
2014 Best RPG Maker User - GraphicsFor frequently finding and reporting spam and spam bots2013 Most Unsung MemberSecret Santa 2013 ParticipantFor taking arms in the name of your breakfast.How can I help you? :Da^2 + b^2 = c^2Secret Santa 2012 ParticipantSilver - GIAW 10Silver - GIAW 9Bronze - GIAW HalloweenGold - Game In A Week VII
If you put it in the order of:

ATS Special Message Codes
ATS Face Options
ATS Message Options
ATS Formatting
ATS Advanced Choices

it seems to get rid of the error. Though I'm having trouble getting a portrait animated. :irock2:

You said that you can format the portraits like a faceset right?

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
Yes, you can format the portraits like a faceset, and that's how you'll need to do it to animate it. You'll need to take out the $ in the portrait's name though.

Thinking about it now, it may make sense to be able to use $ and %[n] and have it so that the set only has n poses. It might cut down on making big mostly empty facesets for portraits.

Anyway, apart from that, what is the trouble?

@Yin - The first error I will fix shortly. The second error occurs because of the space between , and 4 in the \fb{} code in that message, and I think I will need to update the paragraph formatter to fix that (though I can at least stop the error message for now).

Anyway, v. 1.0.1 should be out soon.

*
Rep:
Level 85
I solve practical problems.
For taking arms in the name of your breakfast.
This is awesome MA :D

*
A-pow 2015
Rep:
Level 81
2014 Best RPG Maker User - GraphicsFor frequently finding and reporting spam and spam bots2013 Most Unsung MemberSecret Santa 2013 ParticipantFor taking arms in the name of your breakfast.How can I help you? :Da^2 + b^2 = c^2Secret Santa 2012 ParticipantSilver - GIAW 10Silver - GIAW 9Bronze - GIAW HalloweenGold - Game In A Week VII
I'm probably missing something in the instructions here. I named this Marian%[4] :

Spoiler for:


And then I get this :<


*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
Alright, updated to 1.0.1 to fix the first bug mentioned by Yin and add the feature to combine $ and %[n] to use faces like the one attached.


"$Nessiah-Actor4-1%[2].png"

I did not make that image. That credit goes to the wonderful Archeia Nessiah at Division Heaven, and she has a lot more where that came from if you are inclined to use portraits.
« Last Edit: July 16, 2013, 09:11:24 PM by modern algebra »

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
@acolyte - Sorry. You aren't doing anything wrong. That was an oversight on my part and will be fixed shortly.

Edit:

Updated to v. 1.0.2 to fix that error.
« Last Edit: July 16, 2013, 09:18:00 PM by modern algebra »

*
A-pow 2015
Rep:
Level 81
2014 Best RPG Maker User - GraphicsFor frequently finding and reporting spam and spam bots2013 Most Unsung MemberSecret Santa 2013 ParticipantFor taking arms in the name of your breakfast.How can I help you? :Da^2 + b^2 = c^2Secret Santa 2012 ParticipantSilver - GIAW 10Silver - GIAW 9Bronze - GIAW HalloweenGold - Game In A Week VII
Wow, that was fast. Everything works great now. Thanks modern  :aco:

pokeball YinOfflineFemale
**
Rep:
Level 86
What Acolyte said. Everything is working now! Great work! Thanks

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
I had another query about animating large facesets (called busts by the inquirer and I retained that terminology in my response) and how to make them blink if using the $%[n] combination. Since I think it might be helpful, I repeat my answer below:

Quote
It is possible to animate a bust. If you do not have version 1.0.2, you may need to upgrade, but if you do then you can, for instance, just put them all in a regular 8 pose faceset that is simply bigger than usual. You wouldn't put the '$' in the filename at all, and you could then use the %[n] code to specify the number of frames of animation. See, for instance, Acolyte's graphic for Miriam in this post: http://rmrk.net/index.php/topic,48031.msg545961.html#msg545961

Alternately, if you did not want to have a full faceset, then you can combine $ and %[n] to have less, but in that case the poses would all need to be arranged horizontally. See, for instance, Nessiah's graphic for Eric that I arranged: http://rmrk.net/index.php/topic,48031.msg545962.html#msg545962

Either way, that will give you a bust that can animate. If you wanted to do that and then also have a blinking face, however, then you'd need to specify the blink_face_name and not just the index.

In other words, if you had "$Nessiah-Actor4-1%[2]" have two poses for talking and "Nessiah-Actor4-1-Blink" have one pose for blinking, then you would have to set "$Nessiah-Actor4-1%[2]" as the regular pose and specify the other face_name for your blinking. Put another way, you would need to either do:

ats_next(:blink_face_name, "Nessiah-Actor4-1-Blink")
ats_next(:blink_face_index, 0)

OR, if you want to use message codes, then:

\fb{"Nessiah-Actor4-1-Blink":0}

Generally speaking, I would recommend the 8-pose set if you have blinking faces for every talking animation, and otherwise use the latter method.

The inquirer also asked whether multi-pose blinks are possible (i.e. something like eyes fully open => eyes half-closed => eyes fully closed => eyes half-closed => eyes fully open). Currently, that is not a feature of this script and it only supports a (eyes fully open => eyes fully closed => eyes fully open) animation. I figured that blinking is a subtle enough gestue that it was unnecessary, but is it perhaps more noticable with large faces?

Anyway, it would not be hard to add and if other people are interested then I will consider adding it.

Also, I think I will add a true or false setting to make the face tone match the screen tone, but am having trouble naming it. :face_tone_match_screen seems a bit long.

For large faces, I was also thinking of adding a message code which would allow you to play a discrete animation at the specified point of text and then revert or change. I.e. it would replace the face, play through the animation once, and then go back or use a new face, as desired. It could be used for a gesture like brushing hair aside, drawing a sword, etc. I'm leaning towards no at this point, since it would probably be kind of useless for small faces. And, for large faces, it would take a lot of work for anyone to draw all those poses and so would likely be used very rarely if at all.

Anyway, let me know what you guys think of all those features.
« Last Edit: July 19, 2013, 05:41:18 PM by modern algebra »

pokeball YinOfflineFemale
**
Rep:
Level 86

The inquirer also asked whether multi-pose blinks are possible (i.e. something like eyes fully open => eyes half-closed => eyes fully closed => eyes half-closed => eyes fully open). Currently, that is not a feature of this script and it only supports a (eyes fully open => eyes fully closed => eyes fully open) animation.


However, it would not be hard to add and if other people are interested then I will consider adding it.

Also, I think I will add a true or false setting to make the face tone match the screen tone, but am having trouble naming it. :face_tone_match_screen seems a bit long.

I am interested in that blinking animation feature, I already have mine animated, but it's only using the the 1 frame allowed.

As for the naming of the screen tone match,  I think you explain your options very well, so you can keep the name short or abbreviate it and it would still work out fine. Maybe :face_match or something.... I don't know :P


Also any word on my suggestion of not having to reload the face if the parameters are the same in the immediate next message? Although I'm not using the slide or fade features,  I did try it and it seemed weird to have it keep sliding in as if someone different was talking.


Haha, you edited your post as  I was writing mine. The small animation, times at a specific time in the message would be a neat feature, even for the small faces. Mainly for emotion changes mid message, characters emphasizing words, or as you said moving hair, etc. It would be neat, but as you said it will probably be something less used. (I'd use it though lol)
« Last Edit: July 19, 2013, 05:49:05 PM by Yin »

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
Yeah, the reloading thing is a bug. I will fix it.

Also, I think you can already change faces mid-message with the \f{} code, so the animation feature would only be required if you wanted there to be an animation preceding the shift.

pokeball YinOfflineFemale
**
Rep:
Level 86
Also, I think you can already change faces mid-message with the \f{} code, so the animation feature would only be required if you wanted there to be an animation preceding the shift.

Even better! I didn't know I could do that in the middle somewhere. I'll be using that feature.

**
Rep:
Level 65
OMG I WAITED FOR LONG FOR THIS, GONNA TRY RIGHT NOW

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
I've updated to v. 1.0.3. I fixed the bug with constant re-fading and re-scrolling even when same face being used.

I didn't add the multi-frame blink or pose animation features I mentioned earlier, but I did add a message code that plays a battle animation on the face. I also added the option to match the face tone to the screen tone.

**
Rep:
Level 65
MA thanks for finishing all the ATS modules after so long, I tried like 4 different scripts to achieve the large faces and this one is the most comple as I expected. Also making sets of large faces removed a lot of clutter from my face folder.

*
*crack*
Rep:
Level 64
2012 Most Unsung Member2012 Best NewbieFor frequently finding and reporting spam and spam bots
Good to see the local scripting god getting back into action. Such a useful script too.



Thanks

  • Acolyte, for giving me incentive to finish the script and for reporting errors
  • Yin, for reporting errors
'Incentive' is not the word I'd use :-X
'Ransom' sounds more appropriate :V
« Last Edit: July 22, 2013, 09:01:47 PM by D&P3 »
All of my scripts are totally free to use for commercial use. You don't need to ask me for permission. I'm too lazy to update every single script post I ever made with this addendum. So ignore whatever "rule" I posted there. :)

All scripts can be found at: https://pastebin.com/u/diamondandplatinum3

pokeball YinOfflineFemale
**
Rep:
Level 86
Thank you for this update!

**
Rep: +0/-0Level 76
Long-time Lurker
The inquirer also asked whether multi-pose blinks are possible (i.e. something like eyes fully open => eyes half-closed => eyes fully closed => eyes half-closed => eyes fully open). Currently, that is not a feature of this script and it only supports a (eyes fully open => eyes fully closed => eyes fully open) animation. I figured that blinking is a subtle enough gestue that it was unnecessary, but is it perhaps more noticable with large faces?

Anyway, it would not be hard to add and if other people are interested then I will consider adding it.

Yes, definitely interested in something like this! It'll definitely make blinks much smoother this way. Right now, it just feels a bit too choppy.

*
RMRK's dad-in-training
Rep:
Level 72
Busy Husband, Dad, and Youth Minister
GIAW 14: 2nd Place (Easy Mode)2014 Best WriterBronze - GIAW 11 (Normal)Secret Santa 2013 ParticipantFor taking arms in the name of your breakfast.2012 Best NewbieContestant - GIAW 9
Hey MA,

I seem to be having an issue getting Formatting and Face options to play nicely together.

It's not a problem until I try to mirror the face and put it on the right:

Spoiler for:



I get this error when I attempt to both mirror the image and put a large face on the right:



If I turn off mirror, this occurs:


The text now goes behind the portrait.

Thoughts?

***
Rep:
Level 86
This part of me, I choose not to see.
Hm...is there any way to scroll from the opposite side of the screen? I have a habit of displaying my faces on the right side rather than on the left, and if I scroll them in they fly across the screen, which looks kind of silly.

****
Rep:
Level 43
Somewhat got a project? (\ô/)
GIAW 14: ParticipantParticipant - GIAW 11
I will surely use this in my game with credits to you. ;)
This is really awesome, I looked for a script that shows bigger faces. :)

**
Rep:
Level 74
He with the Grin to Scare Young Children
OH GOD YES YES YES THANK YOU SO MUCH IVE BEEN WAITING FOREVER FOR THIS SCRIPT IN ACE OH GOD OH GOD OH GOD.
Websites:
         
Social Media:
   

*
Rep: +0/-0Level 74
RMRK Junior
Orz, I apologize in advance if i'm doing something really dumb/blind/wrong, but I am extreley stupid when it comes to script, so please bear with me ;-;

I installed all five scripts and they're doing fine so far, but I'm running across an oddity I can't seem to fix:


I'm trying to make a compact little message box+face+name.
The setup works fine except for the width of the message windows, which does not fit the message. It works fine when there is no face present, so I can only assume it's something to do with the face being the cause (I'll be damned if I know, scripting is all magic words to me OTL)

I'm using:
-Disabled paragraph formatting and appending
-Enabled fit to window (obviously)
-Face Overlap NOT allowed.

The idea is to have a less clunky big box (if you use a face with little text things get a bit weird, but if you have the face overal allowed it just makes one box within the other and it looks clunky anyway ;-;).

Thanks for your time and I hope I'm not just beign a friggin blind idiot and missing something basic *crosses fingers*

Edit: After some more testing I found out that leaving the Face overlap ON will remove the problem, but it still looks a bit iffy with the box within the cut box that happenes when the windows overlap, so if possible I'd like to make it compatible with the setup above.
« Last Edit: September 27, 2013, 03:35:20 PM by indrah »

**
Rep: +0/-0Level 75
RMRK Junior
I'd love to use this script for my projects, but I'm running into an issue with it and automatic formatting of messages from ATS: Formatting and ATS: Message Options.

When using \af[n] to set face graphic, it works properly as long as you specify a specific ID. If you use \V[n] to get the value of a variable storing the index of an actor in the database to get the portrait from (EG. '\af[\V[2]', where variable 2 contains the index of an actor with a portrait), it still grabs the portrait properly, but seems to break the automatic linebreaks implemented in ATS: Formatting and ATS: Message Options; for sufficiently-long messages it will wrap off the right side of the screen. A longer message than displayed for the first example will eventually wrap; is this something to do with both the size of the portrait and/or the length of the message code?
Including the variable-displaying option without using \af[n] to set the portrait doesn't seem to break paragraph formatting for a message.
Examples are below, anyway.

Spoiler for Examples:

Message used was '\af[\V[2]]This is a test of the conversation system.', where variable 2 in this case currently holds the value 14.


Message used was '\af[14]This is a test of the conversation system.'

*
Rep:
Level 82
GIAW 14: 1st Place (Easy Mode)2013 Project of the Year2013 Best RPG Maker User (Programming)2013 Most Promising ProjectParticipant - GIAW 11Bronze - GIAW 10
I have created a tiny add-on which allows for using wave_amp, wave_length, and wave_speed on the face picture. Although most people do not use those sprite functions, I have found that they make for a nice 'ghostly' appearance.

The coding is quick and dirty. Probably a better way of going about the addition without re-loading keys multiple times, but should work fairly well. Simply place the following code in the slot underneath of the ATS: Face Options script. Then simply use the ats_next or ats_all command to set face_wave_amp, face_wave_length and face_wave_speed to whatever you desire.

The only issue is setting wave_amp, wave_length, and wave_speed to zero, which borks any further usage of the options. Not sure exactly why, and I am currently too preoccupied to spend time figuring the problem out. Not too big of an issue, as there should be no reason to set all three to zero anyway.

Code: [Select]
class Game_ATS
 
  CONFIG[:ats_face_options].merge!(  {
    face_wave_amp:           0,
    face_wave_length:        180,
    face_wave_speed:         360,
  }   )
 
  CONFIG[:ats_face_options].keys.each { |key| attr_accessor key }
 
end


class Game_Message

  Game_ATS::CONFIG[:ats_face_options].keys.each { |key| attr_accessor key }
 
end


class Spriteset_ATS_Face
 
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Setup
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  unless method_defined?(:addon_05202014_satsf_setup)
    alias_method(:addon_05202014_satsf_setup, :setup)
  end
 
  def setup(*args, &block)
    addon_05202014_satsf_setup(*args, &block)
   
    unless empty?

      @face_sprite.wave_amp    = $game_message.face_wave_amp
      @face_sprite.wave_length = $game_message.face_wave_length
      @face_sprite.wave_speed  = $game_message.face_wave_speed

    end

  end

end

UPDATED 05-29-14


IS YOUR PROJECT OPTIMIZED?
UPDATED 07/04/15 - v2.5

RPG MAKER TOOLBOX
UPDATED 07/04/15 - v1.5

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
I received the following question by private message:

Quote
Hi! Sorry for doing a dumb question, but I wonder if you can help me with this OTL I-I'm trying to do a visual novel and I need this script of yours to set faces like I want:

http://rmrk.net/index.php/topic,48031.0.html

But I'm totally lost! OTL It's the first time I use a Script and I don't understand a single thing >_o Surely you wrote perfect instructions but I'm afraid I can't understand it, no matter how many times I read it. Thing is, I don't know how to make a proper Script Call. Even if I found the option, I don't know what code should go there or what code should go on the dialogue box Uu I want the pic to show the same way as the first screenshot, but I don't know what to do and it's frustrating because I'm sure it's not that complicated but I just can't see it, haha Uu

Can you please help me? I'll be gratefull forever! ;-;U

I answered this way:

Quote from: modern algebra
Well, there is a demo that shows how to do everything. If you log in to RMRK, you should be able to access it.

As for script calls, it is the very last command on the third page of event commands. You can see which codes to use from the demo.

For large facesets though, you don't really need to use any script calls. All you need to do is make the graphic and use it. If you want to have just one face in a graphic (i.e. not a set of 8), then just include a $ at the start of its name.

**
Rep: +0/-0Level 37
RMRK Junior
Sorry, how can I use two steps for the picture that blink the eyes??? I have an intermediate image that have the eyes semi-closed, how can I make it appear before the one that has the eyes completely closed? Thanks!  ;)

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
That's not currently a feature in this script.

**
Rep: +0/-0Level 37
RMRK Junior
So, can you implement it in your script please?

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
I don't intend to do that at the moment, since I haven't had a lot of time for scripting recently. Sorry.

**
Rep: +0/-0Level 37
RMRK Junior
Ok, thanks, one more thing, I want to overlap the text of my message on my large face, how can I do it? This is because most of my image is trasparent, so I want to put my text a bit more to the left. Thanks! :)

P.s. I don't speak English very well, excuse me for my mistakes, if I did it!

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
You can change the :face_width to a specific number, and then it will horizontally only take that much of the centre of the face.

Alternately, I suppose you could reduce the :face_padding to a negative number. That might cause errors if it's too small, so the safer route would probably just be to edit your images so that they don't have so much empty space on the right side.

**
Rep: +0/-0Level 37
RMRK Junior
I just took the time to work through this script (awesome, by the way) to make a face set of 5 Large Faces that are selected based on the party member index.

However, there is one glitch that keeps happening.

Whenever I first call a message to appear with a large face/bust, the message window lags a bit. It expands like normal, but stops for a split second, then skips to the window being fully drawn. It seems like there is a lag between the script determining which face to load and the message being drawn.

If this can be fixed to be smoother, that would be great! I can try to get either a screen recording or example snapshots to explain if needed.

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
Sorry for responding so late. I have not been around recently.

Unfortunately, the lag is probably from loading the graphic. While it could be cached, it is probably not the best idea to cache many images that are that large. The best solution would be to make them individual graphics instead.

**
Rep: +0/-0Level 37
RMRK Junior
That's what I thought.

Unfortunately, my set up, along with how the script accesses the pictures, makes it seem like that isnt possible.

Each faceset is 1 actor with 5 poses (Smiling, frowning, etc.) and a 6th "face" used as the Face for menus pictures, etc. Correct me if I'm wrong, but the script is set up so I cannot do both "Face of actor based on party index" as well as having each face pose as a different file.

If I have to, I may just remove the luxury of automatically using the faces based on index, and just use a Conditional Branch each time to check for different actors and use different faces.

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
Yeah, you should be able to do that.

**
Rep: +0/-0Level 37
RMRK Junior
I should be able to have different files for each actor pose, and be able to access them based on the index in your party? If so, I have no idea how to, because I have read through the script multiple times and am not able to figure it out... :/

*
Rep:
Level 97
2014 Best RPG Maker User - Engine2014 Most Unsung Member2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Best Member2012 Best RPG Maker User (Scripting)2012 Favorite Staff MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Veteran2011 Most Mature Member2011 Favourite Staff Member2011 Best RPG Maker User (Scripting)2011 Best Use of Avatar and Signature Space2010 Most Mature Member2010 Favourite Staff Member
Oh you might be right. I wasn't sure what you meant with the poses at first, since I was thinking the actor only had one face assigned to him in the database anyway. I guess you must be using \f{n} to change the pose during the message? In that case, you're right.
« Last Edit: August 15, 2014, 02:04:28 AM by modern algebra »

**
Rep: +0/-0Level 37
RMRK Junior
Any fix to this?

https://www.youtube.com/watch?v=e5ScndqO354&feature=youtu.be

I tried everything and can't get rid of that lag. Everything was coming along so nicely T.T Help?

Edit: I solved it by moving the message window out of the screen but I'd like a more 'clean' fix if possible as as for now it won't let me use fade-in options for example.
« Last Edit: September 30, 2014, 11:57:04 AM by Kyuukon »

やれやれだぜ。

**
Rep:
Level 35
A Modest Proposal
Hopefully this is a quick question.

 In my game, the player is able to select a character to play. Using \af[x] in text boxes works great.  Is it possible to use an emoset with the script? I feel like there's some way to manipulate the animation portion of the script to do what I want.

Many thanks. I've been enjoying many of your scripts. ^^

***
Rep:
Level 86
This part of me, I choose not to see.
Reading back over the script, are all normal animation functions available if you're using faces as individual images (so both blinking and talking?). I can't seem to see an option for blinking in the description for large faces.

I was using it the normal way (a sheet of eight, 4 talk frames, and iterations of each with a blink) but I'm getting the lag. So, obviously, it's no longer an option to use since I've had reports of it from even the fastest computers.

I can't seem to fathom how to actually set up the animated faces with the individual images. "In other words, "$Actor3-3%[2]" would be a set with two faces in, the first half of the image with one pose and the second with the second pose." is this not the same as using a faceset sheet? Or am I missing something in terms of naming the frames?

*
Rep: +0/-0Level 32
RMRK Junior
This is going to be a silly question, but I want to make sure I can use this script in my (commercial) game Die Nachtblume... the default terms of service are for non-commercial use only, so I was wondering if this script is likewise ONLY for non-commercial use?