Full Status CMS 1.0d

0 Members and 1 Guest are viewing this topic.

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
Full Status CMS
Version: 1.0d
Author: modern algebra
Date: May 14, 2010

Version History


  • <Version 1.0d> 05.14.2010 - Fixed the no party members bug that arose in 1.0c. If you already have the patch for that, there is no reason to update.
  • <Version 1.0c> 10.03.2009 - Fixed a bug that arose in 1.0b where it wouldn't draw the partylist guage if actors had less than full health
  • <Version 1.0b> 09.28.2009 - Fixes a bug that would occur when a party member has 0 Max MP, as well as increasing the maximum number of states shown from 4 to 6
  • <Version 1.0> 08.23.2009 - Original Release

Description


This screen shows a full status window in the menu itself. It also allows for command list customization and design customization by giving you the options of which commands and scenes you can call from the menu, and also allows you to call common events from any of these commands. It further allows you to choose which other windows show up in the menu, such as location, gold, steps, etc...

See the screenshots for the design.

Features

  • Shows all status data in the menu itself, thus eliminating the need for a status scene
  • Allows you to add commands to the menu fairly easy.
  • Allows you to run a common event from a command chosen in the menu. It further allows you to require actor selection and save the ID of the actor chosen to a variable for use in the common event
  • Allows you to add or remove optional windows to the menu, including a gold window, a location window, a playtime window, a steps window, and a window that displays the value of a specified variable
  • Allows you to set icons to commands in the menu
  • Allows you to pass scenes even if they have arguments
  • Allows you to choose command and actor concurrently, if you choose, rather than sequentially
  • Automatic index finder, so that you do not need to modify the return_scene methods of scenes called from the menu unless more than one command calls the same scene

Screenshots


Concurrent command & actor selection.


Sequential command, then actor selection.

Instructions

Place this script above Main and below any scripts you intend to add to the menu.

For instructions on configuring the script, please see the header and the Editable Regions of the script.

Script


Note that this script REQUIRES Bitmap Addons 1.5 (or higher version).

The code is too long for the post. Please find it attached at the bottom of this post: Full Status CMS 1.0 Script

Credit


  • modern algebra

Thanks

  • Yanfly - some of the basic configuration is based on how configuraiton is handled in Scene Menu Redux
  • munkis - for a bug report on the no party members error

Support


Please post in this topic at rmrk.net for swiftest response

Bug Fixes

This is where known bugs are listed along with the fix, until they can be incorporated into the next version of the script.

No currently known bugs.

Known Compatibility Issues

Will not work with other Custom Menu Systems, and may have problems with some menu-altering scripts such as the Integrated Reserve Party.

There may be some scripts that will not work as expected directly upon adding it. If this is the case, please post in this topic and I will post a fix.

Spoiler for ziifee's Animated Icons:
Icons won't animate in the menu status window when using this script with FSCMS. To fix, simply insert the following code into its own slot in the editor below the FSCMS.

Code: [Select]
#==============================================================================
#    FSCMS + ziifee's Animated Icons Patch
#    Version: 1.0
#==============================================================================
# ** Scene_Menu
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - update
#==============================================================================

class Scene_Menu
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # * Frame Update
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias ma_fscmsziifee_upd_2hl8 update
  def update (*args)
    ma_fscmsziifee_upd_2hl8 (*args) # Run Original Method
    @status_window.update
  end
end

Spoiler for OriginalWij's Row Changer:
The row position of the characters doesn't show up in the menu status window. To fix that, simply insert the following code below both the Row Changer script and the FSCMS in the script editor:

Code: [Select]
#==============================================================================
#    FSCMS + OriginalWij's Row Changer Compatibility Patch
#    Version: 1.0
#==============================================================================
#  ** Window_FSCMS_MenuStatus
#++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
#  Summary of Changes:
#    aliased method - draw_basic_info
#==============================================================================

class Window_FSCMS_MenuStatus
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  # Draw Basic Information (Mod)
  #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  alias mamunk_fscmsorc_basinf_5yh2 draw_basic_info
  def draw_basic_info(x, y)
    rw = self.contents.text_size(Row_Text).width
    self.contents.font.color = system_color
    self.contents.draw_text(Row_X, Row_Y, 100, WLH, Row_Text)
    self.contents.font.color = ROW::COLOR[2 - @actor.row]
    self.contents.draw_text(Row_X + rw, Row_Y, 100, WLH, Row[@actor.row])
    self.contents.font.color = normal_color
    mamunk_fscmsorc_basinf_5yh2 (x, y)
  end
end

Note that you will still need to position it appropriately in the Row Changer script itself.

Demo


Note that this script REQUIRES Bitmap Addons 1.5.

See Attached Demo. It is recommended you retrieve the script from the text document, rather than the demo, as the demo is setup with a number of extraneous scripts, whereas the text version is clean.


Creative Commons License
This script by modern algebra is licensed under a Creative Commons Attribution-Non-Commercial-Share Alike 2.5 Canada License.
« Last Edit: August 01, 2012, 09:58:21 AM by modern algebra »

****
Rep:
Level 83
It looks great but I won't use it. I see problems with some scripts. I am currently using Yanfly's and though his has been around longer, I still have problems with some scipts such as the Advanced Crafting System.

Anyway, maybe in a few versions, I will attempt to use it with my scripts because it really does look great. good job

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
I'm glad you like the design :)

Though I'd like to know what problems you see with regard to adding scripts to the menu, so I can hopefully fix it in the future.

It doesn't have any trouble with the ACS, as far as I could tell.
« Last Edit: August 25, 2009, 04:10:59 AM by modern algebra »

****
Rep:
Level 83
Well with Yanfly's CMS, I could go into the ACS and back out to the menu, as long as I didnt try and open one of the crafting catigories.  It would give me an error if I did. So I removed scripts one by one until it turns out that Yanfly's CMS was causing it. I don't know how but it was. Someday, when I switch from Python to Ruby, I'll find whats causing it and fix it but....

Have you tried ACS with this script? If you have, I probably will switch. I am stilll missing a crafting feature in my game.

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
I haven't tested extensively, IE I haven't tested with actually having recipes and stuff; all I tried it with was opening the menu and opening categories, but when there's no recipes in those categories it might function differently.

Speaking without any extensive knowledge of the ACS, I do not believe it will cause errors, primarily because the way the automatic index finder of this script works is it ignores the arguments passed to Scene Menu unless it is specifically instructed not to ignore them. So, I imagine it should work. But there might be something unexpected in the ACS that would cause an error.

****
Rep:
Level 83
Well I suppose I'll test it and post the results. Let me dig up that old file. lol.

I'll post it tomorrow though, because I need to get up early.

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
Alright.

Let me know if it doesn't work and I will look into it.

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
I updated the script to 1.0b now;

It fixes a division by zero bug that occurred whenever a character had 0 MaxMP and also made it so that it will show up to 6 states in the menu status window rather than just 4.

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
Updated to version 1.0c. An oversight in Version 1.0b allowed bad things to happen, namely that MP and HP wouldn't show up in the partylist window if it was less than full.

**
Rep: +0/-0Level 82
ok. i will try it. :)

**
Rep: +0/-0Level 82
first off very nice script like it alot. ;8

secondly ive got a stat distrabution script (by Lettuce) and i want to add that onto my menu bar instead of the seranade that is alrdy there how would i go about doing this?



« Last Edit: March 10, 2010, 07:35:14 PM by haru »

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
Well, I've tried to put out the instructions as well as I know how in the script, but if you give me some indication of where it confuses you I might be able to clarify. The first thing you need to do is set it up, around here:

Code: [Select]
CommandID => ["Name", IconID, DisableCondition, ActorSelect?,
  #                    SceneName, SceneArguments],
  #
  #     CommandID : this is the ID that this command is represented by. It is
  #       used in denoting the order in which it appears in the command list
  #       at line 194. This MUST be unique for each command
  #     Name : This is how the command appears in the list. If it is represented
  #       by a method or value included in Vocab, then you can input its
  #       call. Otherwise, write it exactly as it should appear.
  #     IconID : The ID of the icon that will appear next to the name of the
  #       command in the command window.
  #     DisableCondition : if this is put as a string, it will evaluate the
  #       string as code and use it's an integer, then the command will be
  #       disabled if the switch with that ID is ON. If it is a string, it
  #       will evaluate the string as code. This is useful for scripts that
  #       have disable conditions updated through event-inaccessible booleans.
  #       If this is set to -1, it will never be disabled
  #     ActorSelect? : Truth value of whether or not actor should be selected.
  #       If true, the first argument sent to the scene will always be
  #       @target_window.index. If true when the command calls a common event,
  #       then the ID of the actor chosen will be saved to a variable as
  #       designated by FSCMS_CE_ACTOR_VARIABLE_ID at line 78
  #     SceneName : This is the class name of the scene being called once this
  #       command is selected. You MUST know this data from whatever script you
  #       are trying to add. If you want this command to call a common event,
  #       place the ID of the catalogue you wish to call instead. If there is
  #       more than one command that calls the same scene, then there will
  #       need to be some manual index setting when returning to the menu
  #       from that scene.
  #     SceneArguments : a String of the arguments to be passed to the scene
  #       when it is called. This too must be known from the script you are
  #       trying to add.

I don;t know anything about this Lettuce script, but if you link it to me I could do this part for you. It will be something like:
Code: [Select]
17 => ["Stat Distribution", 137, -1, true, Scene_StatDistribution],

You would then need to add the ID to this array:
Code: [Select]
  FSCMS_COMMANDLIST = [0, 1, 2, 4, 5]

So, something like:

Code: [Select]
  FSCMS_COMMANDLIST = [0, 1, 2, 17, 4, 5]

********
Resource Artist
Rep:
Level 94
\\\\\
Project of the Month winner for June 2009

**
Rep: +0/-0Level 82
Here ya go MA, http://rmrk.net/index.php/topic,26799.0.html

ahh thanks :D

And im confused on well just about everything.. :( ive read it over and over again and it just confuses me more if some one could pre right the script again with the stat dist in it so its all ready to go id be very very greatful!!

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
Well, the simple thing to do if you don't want to interfere with stuff you might have already set up is to go to around line 167 and see something like this (it may be different, since if you have Serenade you must have taken it from the demo and not the txt):

Code: [Select]
    0 => ["Vocab::item", 144, "$game_party.members.empty?", false, Scene_Item],
    1 => ["Vocab::skill", 128, "$game_party.members.empty?", true, Scene_Skill],
    2 => ["Vocab::equip", 51, "$game_party.members.empty?", true, Scene_Equip],
    3 => ["Vocab::status", 137, "$game_party.members.empty?", true, Scene_Status],
    4 => ["Vocab::save", 133, "$game_system.save_disabled", false, Scene_File,
            "true, false, false"],
    5 => ["Vocab::game_end", 179, -1, false, Scene_End]

Add in a new line:

Code: [Select]
    0 => ["Vocab::item", 144, "$game_party.members.empty?", false, Scene_Item],
    1 => ["Vocab::skill", 128, "$game_party.members.empty?", true, Scene_Skill],
    2 => ["Vocab::equip", 51, "$game_party.members.empty?", true, Scene_Equip],
    3 => ["Vocab::status", 137, "$game_party.members.empty?", true, Scene_Status],
    4 => ["Vocab::save", 133, "$game_system.save_disabled", false, Scene_File,
            "true, false, false"],
    5 => ["Vocab::game_end", 179, -1, false, Scene_End],
    6 => ["Distribution", 137, -1, true, Scene_Stat_Dist]

then go down to somewhere around line 194 and see:

Code: [Select]
FSCMS_COMMANDLIST = [0, 1, 2, 4, 5]

Put in

Code: [Select]
FSCMS_COMMANDLIST = [0, 1, 2, 6, 4, 5]


And you're done. In case you didn't follow it, I put the modified script into a text document and attached it, so you can just copy paste it directly. However, it is the same process everytime you want to add another script to the menu, so I suggest you learn it.

You might also want to go to line 655 of the Stat Distribution script and change:

Code: [Select]
  $scene = Scene_Map.new
to:
Code: [Select]
  $scene = Scene_Menu.new

**
Rep: +0/-0Level 82
thanks alot!! works perfectly now  ;8 :o

**
Rep: +0/-0Level 82
if i knew how to add rep to your name i would!

***
Rep:
Level 75
What the...?
Modern,
Hey, I'm trying to place the LargeParty Scene accessible from the Full Status CMS.  Here's what I've got.  But I think there may be some arguments I need to add at the end.  I'm just not sure where to look.  Can you help me?

Code: [Select]
   0 => ["Vocab::item", 144, "$game_party.members.empty?", false, Scene_Item],
    1 => ["Vocab::skill", 128, "$game_party.members.empty?", true, Scene_Skill],
    2 => ["Vocab::equip", 51, "$game_party.members.empty?", true, Scene_Equip],
    3 => ["Vocab::status", 137, "$game_party.members.empty?", true, Scene_Status],
    4 => ["Vocab::save", 133, "$game_system.save_disabled", false, Scene_File,
            "true, false, false"],
    5 => ["Vocab::game_end", 179, -1, false, Scene_End],
    6 => ["Party", 260, "$game_party.members.empty?", false, Scene_PartyForm]

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
Well, you'd look in the initialize method of Scene_PartyForm. Is it not working as is? Remember you have to add 6 to the FSCMS_COMMANDLIST array as well.

***
Rep:
Level 75
What the...?
Ah!   Right you are! (as always)  Thanks.  I was leaving it out of the commands list.

**
Rep: +0/-0Level 76
RMRK Junior
is it compatible with large party script?

***
Rep:
Level 75
What the...?
Naiz,

Yes, this script is compatible with Large Party.  You just have to set it up.   Add to the custom commands list making it call whatever party scene you want.  If you read the instructions in the script it will help ya.  Good luck.

**
Rep:
Level 67
Eternal Newbie
I've been messing around and I've resized the HP/MP bars, but I can't find the lines that draw the stats (like ATK/DEF/etc) so I can shift them over. I also want a more full picture to show up instead of the normal picture (this isn't priority. I've found a very crude way of doing this).

EDIT: I've got the parameters to line up, but the spacing between the parameter name and the numbers doesn't change, so it still looks weird.

Here's a mock-up of what I want it to look like:


I'm still messing with the script myself so if I get an answer before someone replies I'll either post again or delete this post.
« Last Edit: August 30, 2011, 05:16:20 AM by JonFawkes »

*
Rep:
Level 97
2014 Most Unsung Member2014 Best RPG Maker User - Engine2013 Best RPG Maker User (Scripting)2012 Most Mature Member2012 Favorite Staff Member2012 Best RPG Maker User (Scripting)2012 Best MemberSecret Santa 2012 ParticipantProject of the Month winner for July 20092011 Best Use of Avatar and Signature Space2011 Best RPG Maker User (Scripting)2011 Most Mature Member2011 Favourite Staff Member2011 Best Veteran2010 Best RPG Maker User (Scripting)2010 Most Mature Member
I'll take a look tomorrow. I'm travelling today though :(

**
Rep:
Level 67
Eternal Newbie
No rush o: I hope you have fun on your travels

EDIT: Got it! It was a matter of searching for "draw_parameter" in another script (in this case Window_Base) and editing that.

So now it's just a matter of finding a way to draw_actor_face better. Here is my version of your script, like I said, very crude.
Code: [Select]
  def draw_actor_face (actor, x, y)
    super (actor, -210,-215, 530) #(actor, x, 0)
  end

Here's what it looks like right now (non-mockup)
« Last Edit: August 30, 2011, 08:06:01 PM by JonFawkes »