Moogle_X's Actors Friendship System

● ARCHIVED · READ-ONLY
Started by Solar_Flare 73 posts Page 1 of 4 View original ↗
  1. Actors Friendship System v3.1
    by Moogle_X & Solar Flare Games
    (continued from Moogle_X's thread)

    Introduction

    This plugin adds a friendship mechanic between the main actor and other actors of your choice. Each actor has their own friendship value that can be increased or decreased multiple ways. As the friendship value grows, that actor's friendship level may level up. You can set some skills to be automatically learned at certain friendship levels.

    There is also the option to store a certain actor's friendship value or friendship level into an in-game variable. You can then use that variable's value as a conditional trigger for a new event, etc.

    An actor's friendship value can be viewed in a custom scene. You can access it from the main menu or simply by using a plugin command.

    Note: If you used version 2 of this plugin, you will need to redo your plugin parameters. The parameters are basically the same (other than some new ones), so you can probably just take a screenshot of the parameters on version 2, replace it with version 3, and then copy them over.

    Note: This plugin only works on MV, but if you're using MZ, there is a conversion available based on Moogle_X's original plugin.

    Features

    • Use a plugin command to increase/decrease an actor's friendship value.
    • Items and skills used by the Main Actor can increase/decrease other actors' friendship value.
    • View actors; friendship values in a custom scene.
    • Learn new skills by increasing the friendship level.
    • Easily change in-game variables using plugin commands.
    • Run any common event at specific Friendship Levels.
    • You are able to use more than one Leader. Decide which actors become leaders by using notetags.
    • You can set a "Best Friend Skill" that's unlocked when 2 actors have Maximum Friendship Level with each other.
    • Global Level Cap feature! Apply a level cap restriction at anytime to any actors by using plugin commands.
    • FP Lock effect. Temporarily prevent a certain actor from gaining or losing FP by using a plugin command.
    • Friendship Icons. Customize which icon(s) show up at each level by using notetags.
    • Custom Friend Icon. Add any icon to any actor at anytime mid-game by using a plugin command.
    • Custom Leader Icon. Use a plugin command to add/remove an icon in the Window Leader List.
    • Lots of variable control. Quickly check which actor has the highest FP or Friendship Level among the Leader's friend list.
    • Complete window customization. Disable or enable some parts of the window. Adjust the Offset X and Offset Y to your liking!
    • Automatic passive states based on the friendship level between actors. Both the leader and the friend can gain a state.
    • Negative friendship levels can be enabled. You can run events or add states or skills when two actors hate each other.
    • Set any action to be performed when you select an actor in the friends window. For example, you could use another plugin to show some more detailed information on that actor. By default, no action is performed.

    Screenshots

    Spoiler
    The format of these note tags is out-dated, see plugin's help file for the proper format.

    jPh0WIP.png


    rrvUqul.png


    6t7oKNP.png

    How to Use

    Install the plugin using plugin manager and edit the plugin configurations (there are plenty). Read the help file for more info on notetags and plugin commands.

    The plugin even supports Multiple Leaders. You can view all actors' relationship value with each other.
    You have a choice between Single Leader scene or Multiple Leaders scene

    Single Leader
    D4XMrgV.png
    The Multiple Leaders version will contain both Window Friend List and Window Leader List.

    Multiple Leaders
    L7VOYMi.png

    Terms of Use
    Free to use in both commercial and non-commercial projects as long as credit is given.
    Simply credit "Moogle_X" in your in-game credits. You can optionally credit me as well as either "Solar Flare" or "Solarflare Software".

    Based on Moogle_X's GitHub page, their version of the plugin appears to be licensed under the Apache license. As such, I've chosen to license my version under the same license. The details can be read here, but basically that means you can modify it however you want and distribute your changes anywhere, as long as you don't remove Moogle_X or me from the credits in the plugin file and add a notice to the file indicating that you modified it. (If you don't distribute your changes, I believe you don't need to add the notice.)

    Download

    You can download the latest version of the plugin from the attachment on this post.
  2. Looks like you did some good work adding cool features to this system! :D
  3. is there a way to make it so that the friendship adds skills to the Leader?
  4. That doesn't exist right now, but I can look into it. Maybe it won't be that hard.
  5. First I can't thank you enough for giving this plugin a second chance at life!

    I seem to be having a bit of trouble bringing up the friendship menu using Yanfly's Main Menu Manager plugin. I've set up the parameter the way you've labeled it in the help file however I still seem to getting this error?

    Screenshot 2020-07-14 14.54.44.png

    I've set it up as such
    Screenshot 2020-07-14 14.55.58.png
    The only thing I changed was the "Symbol" since that is what I want the command to be called in my game.

    I'd like to know if I've set something up wrong?

    Edit: I found a work around by just calling the scene via the plugin command, since it doesn't have to be in the main menu anyway. Though if you know what went wrong feel free to let me know regardless.
  6. There might be an error in the help file... can you try SceneManager.push.bind(this, Scene_ActorsFriendship) and see if that works? Basically, just adding "this," to the script call.
  7. Solar_Flare said:
    There might be an error in the help file... can you try SceneManager.push.bind(this, Scene_ActorsFriendship) and see if that works? Basically, just adding "this," to the script call.

    Still no dice. I tried running the script call from a completely new game with only yanfly's menu manager, thinking the problem might have been my Moghunter plugins instead, and came up with a completely different error. Screenshot 2020-07-15 11.10.06.png
  8. If i may add a second suggestion:somewhere to show the actor's Nickname,maybe?
  9. @Fangzarie I just tried it in a blank project using only YEP_MainMenuManager (the version in the dlc folder) and this plugin, and it works with the settings as given in this plugin's help. I do notice that you set the symbol to something different; I'm not sure if that would cause a problem, but I don't think it would cause this problem.

    The symbol is an internal identifier that the game uses to link the menu command with the action that it will perform, so setting it to Relationships won't make it show as that in the menu - the name that actually shows is Moogle_X.AFS.fpTitle, which is code that tells MainMenuManager to ask this plugin what the name should be - ie, it will use the name you set in the ActorsFriendshipSystem plugin parameters. You can of course set it to something else, if you want; just be sure to enclose it in double quotes if you do that.

    As to your actual error, there is something very strange about that stack trace... can you try removing the "this," we added earlier and instead put "window." at the beginning of the bind command? No quotes there.
  10. the names need those "thingy" so name "YOUR MENU ENTRY" sp "Relationship"
    so that name show up in the menu.

    if you leave you the "those" you get the error.
  11. Yes, if you're putting a literal name there. However, if you set the name as shown in @Fangzarie's screenshot, without quotes, then it will work and use whatever you set as the name in the ActorsFriendshipSystem's parameters.

    Note: Fangzarie also put the name in the symbol field, which is incorrect. I'm talking about what they actually have in the name field, which is correct.
  12. Solar_Flare said:
    Yes, if you're putting a literal name there. However, if you set the name as shown in @Fangzarie's screenshot, without quotes, then it will work and use whatever you set as the name in the ActorsFriendshipSystem's parameters.

    Same situation same error. Though, far less errors coupled with it. Screenshot 2020-07-15 14.17.26.png
    I'm using engine version 1.6.2 if that could help any?
  13. That's the same error as before, it's just that you had a plugin that changes how errors are displayed. Using engine version 1.6.2 is fine (in fact it's required, not sure if I mentioned that in the opening post).

    Can you press F8 and let me know if there are any other errors in the console besides this one? Maybe there's an error loading the plugin which then causes this error.
  14. Solar_Flare said:
    Can you press F8 and let me know if there are any other errors in the console besides this one? Maybe there's an error loading the plugin which then causes this error.

    Screenshot 2020-07-15 21.19.53.png
    It's strange because the plugin works from a script call when it is not showing in the menu but trying to call it from the menu gets this result.
  15. Nothing new, huh... but I did a little experimentation, and found that SceneManager.push.bind(SceneManager, Scene_ActorsFriendship) seems to work. Try that?
  16. Solar_Flare said:
    Nothing new, huh... but I did a little experimentation, and found that SceneManager.push.bind(SceneManager, Scene_ActorsFriendship) seems to work. Try that?

    I am not at all sure what difference that made but for some reason or another that seemed to work!? Thanks so much for the help on such a weird little niche error!
  17. The weirdest thing for me is that the original command did seem to work when I tried it in a blank project, even though in retrospect I can clearly see how and why it's wrong.
  18. Carmifele said:
    If i may add a second suggestion:somewhere to show the actor's Nickname,maybe?
    Almost missed this post, sorry... to clarify, do you mean you want to show the nickname in the friend list? Or in the leader list? Or both?
  19. Well,since im making a single leader game,id like It to show the friends' nicknames...but for people making multiple leader games,i feel like showing both friends'nicknames in the friend list and the leaders'nicknames in the leader list would be best
  20. any demo of it on how exacly use this plugin?
    I have a single actor, the rest is NPC which I want to use on it. thank you.