Jump to content

Coolie

Member
  • Content Count

    1,254
  • Joined

  • Last visited

  • Days Won

    5

Everything posted by Coolie

  1. Looks like the option in the YEP_Core plugin to launch with the console open is set to true. Set that to false and that should go away. EDIT: Just want to add, you can press F8 during play to open the console manually to look for error messages and things.
  2. Hey, a situation where I can help! OK, so Kayzee had it right. Here's some other stuff I've been doing with it also. To check if a character is equipped with a certain weapon type while also NOT using a shield (Doublehand): <passive state: x> self.equips[0].wtype_id == 1 && @equips[1].is_nil?; </passive state> Checking to see if the character is equipped with ANY weapon (could be used to create a bonus for a weapons master, but not benefit a bare-handed fighter) <passive state: x> !@equips[0].is_nil?; </passive state> Conversely, to check if a character is NOT equipped with a weapon (providing the state to a character who benefits from being bare-handed): <passive state: x> @equips[0].is_nil?; </passive state> You can probably also reference this if my syntax is right... <passive state: x> !@equips[0].is_nil? && self.equips[0].name == "Legendary Sword"; </passive state> To create a state that only benefits the character when equipped with a specific weapon, by name, rather than using the ID (because it would be easier for you to read what it's doing rather than see numbers. This would ensure that the slot would have to first not be empty, then check for the equipped item's name. Another one that I didn't test but should work... <passive state: x> self.skill_learn?(y); </passive state> Should check if a character has skill ID y learned, and thus return true (could be used to create a state that empowers a certain skill once it is learned)
  3. Don't see a thread for RMMV questions that don't deserve their own thread (if there is one, I apologize)... Anyway, I am hoping to convert a formula I am looking at on a wiki page to its equivalent in JS. From the wiki page: Growth Factor * 500000 * { [ Current Level / 99 ] ^ ( 5 / 2 ) - [ ( Current Level - 1 ) / 99 ] ^ ( 5 / 2 ) } Growth Factor and Current Level would obviously be written using actual integers (or referencing a variable) in the JS version of this, but so far I have only been able to have it always return a value of 1.
  4. Just to get the ball rolling and because I am lazy (but mostly to get the ball rolling), does anyone happen to know the name of the function used for displaying a character's status in menus (YEP probably alters this as well)? Also, would there be a way to offset every battleback image's Y value? Windows in this project I am helping with ae all opaque (no transparency) so there is no need for the battleback to go all the way to the bottom of the screen. But, I don't want to squish it or stretch it. I simply want to change the Y value by subtracting it by a certain numerical value. I'll take a look now to see if I can do that on my own and find the function for it, but if anyone knows exactly where to look, that'd be rad.
  5. Coolie

    Help with mathematical formula

    Yeah it might be a better option. I was hoping to save myself from that level of data entry on something, but it would definitely work better setting the value for each level on each curve.
  6. Coolie

    Help with mathematical formula

    It is a formula that exists in a game already that I was trying to convert to RMMV, so it'd have to stay. Anyway, I got it to require about 11 million EXP to get to level 99 by changing it up a little, which is good enough for now, haha.
  7. Coolie

    Help with mathematical formula

    Yeah I think those symbols are for readability. Genius! It definitely no longer returns a 1, but it's still not giving the number it should be giving. The formula is referencing the amount in EXP a character would need to gain their next level. Hmm... let me get some exact numbers. OK, so in-game at level 1 it takes 36 EXP to gain level 2. That's about normal (number should be 37 but I assume it is rounding down rather than up, that's fine for now). To get to level 3 from level 2, it should take another 169 EXP. However, it is returning a level up at 131 EXP and TOTAL EXP of 167 (again, rounding), rather than 169 EXP and a TOTAL EXP of 205 (169 plus the previous 36). So yeah, this is definitely working, it's just slightly off the numbers it should be giving, I think.
  8. I am trying to add a notetag to Actors (and only Actors), in this format... <notetag: 3> The notetag's function would be to read the integer (3) and return the icon and name of the armor (and only armor) associated with that ID number. That information would then be displayed in a draw_icon and draw_text call in a method that can tell which actor it is on. For the life of me, I can't seem to get this to work. Now, I should note, I have avoided ever learning anything about making my own notetags in the 800 years since RPG Maker VX Ace came out, so I understand very little about how they work (but I do love that so many of you do know how they work, because scripts are pretty rad when we can just notetag stuff). I have tried to learn a little from looking at other scripts code, but I am sort of lost when a lot of the things in notetags that parse things looks like gibberish, and note tag code friendly seem to be written differently on a per-author basis. So, please help another would-be scripter learn how to do this, and maybe I can apply that knowledge to updating some of my older scripts, too. :D EDIT: I actually got the effect I wanted to work (with notetags!), so this issue is solved, but if we wanna use this thread to discuss note tag stuff I am all for that.
  9. It wouldn't let me only apply those states under certain conditions, such as only when wearing a hat, or only when above level 50, etc. Without that functionality, I am stuck with the VE script unless Kayzee is inspired to make one. :P
  10. Doesn't seem like it offers conditions to be evaluated on whether or not a state should be applied or removed. I would need that.
  11. As long as it allowed custom conditions I'd be all over that lol
  12. Thank you for the fix, even if it isn't the most optimized. Can always figure that out later AND that is something I wouldn't be against paying for. Just sayin'. :D
  13. Alright, so I should note that the items in question that I am testing are both accessories (Yanfly Equip to be able to equip multiple). Equipping object 1 in the example (state 50) in the first accessory slot and then equipping the second object (state 51 relying on state 50) in the other accessory slot, and then switching both with each other, both return the same issue. I then changed the first object to an entirely different armor piece (a hat) and an accessory, same thing. If it is checking equips by slot ID and doing so in ascending order, the hat comes before the accessories in ID number, and thus should have worked (assuming I even have the right syntax). So I put the passive state on an item that comes AFTER the accessories, and guess what? Works fine. So I guess it checks them in descending order (from the bottom slot ID to the top) Now this presents a huge problem either way, because the order in which it checks is causing certain passives not to work when they rely on another state. Doesn't seem to affect any other calls I made in the passive state tags so far for anything. So, is there any way I could potentially fix this, or am I just boned here?
  14. OH! A battle pose in the VE - Animated Battle script! OK! Yeah, as Roninator said, just change the row/frames you want to use for a dead animation. One other thing, if you are using a different style of battler (:sprite, :charset, :kaduki and the elusive, never-explained-but-its-there-and-it-works :default), make sure you are using the proper syntax. Some of them require you to use the row's name rather than number, like: # Pose displayed when incapacited <action: dead, loop> pose: self, row dead, all frames, wait 4, return; </action>
  15. Gaining the new passive state (51) that I am aiming for is not dependent on the equipment specifically, it is dependent on the actor having another state (50). That state can be added by other equipment or abilities in battles, etc. The only condition I want for having state 51 is by first having state 50. Surely, there has to be some expression I can put in that eval to check the actor's current states. I should point out that the character I tested with already had state 50 applied before even trying to equip ANYTHING (just for testing) and it still would not give them state 51. The script is versatile, I've used it to do some pretty wild things with equipment, but checking for a state should be a simple thing in the grand scheme of things. It's super weird that it doesn't have support for that up front, but there has to syntax that exists to check for it.
  16. Are you saying that when you kill an enemy, their sprite begins rotating? If that is what you are saying, that is not a function of that script. There is no functionality in VE - Custom Collapse that would cause a sprite to begin rotating, as it is not one of the tags you can use. Are you sure another script isn't causing that problem? Try disabling every script except the custom collapse one.
  17. Oh, you're looking for a CTB (Conditional Turn Battle) system for battles. There are a few for VX Ace, if I'm remembering right.
  18. OK, so, I'm having another syntax issue, with VE - Passive States (found here) So, I have a passive state on a piece of gear, let's say it's an accessory. <passive state: 50> true; </passive state> ^ That is the note tag applied and it works just fine. Now, I have ANOTHER piece of gear, let's say it's also an accessory. This one has this tag: <passive state: 51> state?(50); </passive state> This should mean that the actor would have both of these passive states when both of these items are equipped at the same time, due to the first time applying state 50 at all times when equipped, and the second item applying state 51 when the actor also has state 50 applied. That second note tag there, does not work. Here, in the script instructions... # Useful script calls: # Here some useful script calls that can be used: # # state?(x) # checks if the battler is under state ID x So, either this was written in the instructions in error, or it was poorly explained on what syntax exactly, to use. That's what I need help with. I have tried a million different ways to do this. Just to assist a little more, here is the code in question that handles custom evaluation in the conditions for a passive state. #-------------------------------------------------------------------------- # * New method: passive_state_custom? #-------------------------------------------------------------------------- def passive_state_custom?(notes) eval("#{notes.gsub(/\r\n/i, ";")}") rescue false end Thanks for any help!
  19. One question, why would you need to remove it? Couldn't you just... not make enemies rotate in your custom collapse animations? I just took a look through the script, and there absolutely no mention of any rotate tag, or even the word rotate. Can you explain the issue you're experiencing with a little more detail?
  20. Using VE Passive States script ( https://victorenginescripts.wordpress.com/rpg-maker-vx-ace/passive-states/ ), I am able to accomplish a few things I want to do when characters equip certain pieces of gear. What I am now looking to do is also look into how to check which TYPE of gear is equipped in the script tags as well. <passive state: 3> !@equips[1].is_nil? && @equips[2].is_nil?; </passive state> The above code works fine as it is checking whether or not the actor is a) equipped with something in slot 1 and b) NOT equipped with anything in slot 2. This is great for states that increase ATK or some other stat when wearing, let's say, a body armor but also no shield. However, if I wanted to check if the actor was 1) equipped with something in slot 1 and 2) that the item equipped in slot 1 is a shield (from armor types in the system tab), that is where I run into issues with the syntax. I cannot seem to get it to work unless I use something like this: <passive state: 3> !@equips[1].is_nil? && self.armors.any?{ |eq| eq.atype_id == 2 }; </passive state> This will tell the script "There must be an item equipped in slot 1 (etype_id) and ANY item the character has equipped in ANY slot has to be id 52 (atype_id). As you can guess, this creates a lot of lag in menus when the game has to check every single piece of gear the character has equipped in order to return true or false. It gets even worse if a character has multiple passive states for different types of gear. I would like it to only check that specific slot (etype_id 1) for that type of armor (atype_id 2). I expect that the lag will be reduced significantly if I can get this written out correctly. Thanks in advance for any assistance! EDIT: It appears this works, figured out by searching through some other calls dealing with equips. <passive state: 3> !@equips[1].is_nil? && self.equips[2].atype_id == 2; </passive state> So, no need for the help, but I hope this can help anyone else using this script who may have been wondering about how to check for specific gear slots/types.
  21. Hi, all! I am using a script by Neon Black that allows the user to input notes on items, skills, gear, etc. to give more detailed information about the particular items. However, it seems the script is not functioning the way the author intended. What is happening is that all of the item's note contents are being displayed, rather than just what is between the specified tag that the script should be reading. What this is doing is causing an extreme amount of lag when it is loading every single note box from every single item, even ones that do not have notes in the tag from the script. As the player gains more items, gear and skills, the lag gets increasingly worse, until even scrolling through windows is nearly impossible. Can anyone help me fix this script by making it... - Only load the information inside the tags - Only load the information the item in question has the tag to begin with? - Only load the information of the item being viewed (you press a button to bring up the effects box window) ##----------------------------------------------------------------------------## ## Effects Box Script v1.0 ## Created by Neon Black ## ## For both commercial and non-commercial use as long as credit is given to ## Neon Black and any additional authors. Licensed under Creative Commons ## CC BY 3.0 - http://creativecommons.org/licenses/by/3.0/. ##----------------------------------------------------------------------------## ## ##----------------------------------------------------------------------------## ## Revision Info: ## v1.0 - 3.3.2013 ## Wrote and debugged main script ##----------------------------------------------------------------------------## ## $imported ||= {} ## $imported["EFFECTS_BOX"] = 1.0 ## ## ##----------------------------------------------------------------------------## ## Instructions: ## Place this script in the script editor below "Materials" and above "Main". ## This script requires Neon Black's Features and Effects name module. You can ## obtain it from http://cphouseset.wordpress.com/modules/. If you do not ## import it, you will get errors. ## ## This script is plug and play. It allows a pop-up boxes to display on equips, ## items, and skills. You can choose to have these pop-ups be constant, toggle ## with a button press, or only appear while a key is held down. These display ## 3 bits of information. First an added note, second all the stats equipping ## the item will provide, and finally all the effects or features of the item. ## A note can be added using <effect note> and </effect note> and placing your ## note in between those tags, like so: ## ## <effect note> ## This will display line 1 ## This will display line 2 ## </effect note> ## ##----------------------------------------------------------------------------## ## module CP # Do not touch ## module EFFECTS_WINDOW # these lines. ## ##----------------------------------------------------------------------------## ## Config: ## The config options are below. You can set these depending on the flavour of ## your game. Each option is explained in a bit more detail above it. ## ##------ # This is the padding around the edges of the box. Increasing this number will # increase the size of the box without increasing the size of it's contents. EDGES = 6 # This is the font size of the pop up's text. Adjusting this affects the entire # box's size. FONT_SIZE = 20 # Choose to use font shadow or outlines. SHADOW = false OUTLINE = false # If this value is set to false, stats will not be shown on equips. SHOW_STATS = false # The key to press to toggle or show the box. BOX_KEY = :Z # The show type for the pop-up box. Any value other than these three will # prevent the box from being show. # 0 = Hold button to display the box. # 1 = Press button to toggle the box. # 2 = The box is constantly show. SHOW_TYPE = 0 # If type 2 was selected above, this is the default state of the box. Set it to # true to show the box or false to hide the box until the key is pressed. @show = false ##----------------------------------------------------------------------------## ## ## ##----------------------------------------------------------------------------## ## The following lines are the actual core code of the script. While you are ## certainly invited to look, modifying it may result in undesirable results. ## Modify at your own risk! ###---------------------------------------------------------------------------- def self.toggle_effects @show = !@show if Input.trigger?(BOX_KEY) return @show end end end module SceneManager class << self alias :cp_rshp_run :run unless method_defined?(:cp_rshp_run) end def self.run cp_module_check_features cp_rshp_run end def self.cp_module_check_features return if $imported["CP_FEATURES_EFFECTS"] a1 = "One or more scripts require Neon Black's Features and Effects module." a2 = "This can be obtained at http://cphouseset.wordpress.com/modules/" a3 = "Please add this module and try again." a4 = "Please contact the creator of the game to resolve this issue." if $TEST || $BTEST msgbox "#{a1}/n#{a2}/n#{a3}" Thread.new{system("start http://cphouseset.wordpress.com/modules/#features")} else msgbox "#{a1}/n#{a4}" end end end class Window_Selectable < Window_Base def item return nil end alias :cp_itembox_update :update def update(*args) cp_itembox_update(*args) show_fet_window end def show_fet_window key = key_show_features_box show_feature_box if key && active && open? remove_feature_box unless key && active && open? end def key_show_features_box case CP::EFFECTS_WINDOW::SHOW_TYPE when 0 return Input.press?(CP::EFFECTS_WINDOW::BOX_KEY) when 1 return CP::EFFECTS_WINDOW.toggle_effects when 2 return true else return false end end def show_feature_box ## Creates the box if "A" key is held if item != @last_box_item if feature_box_item? @feature_box.dispose unless @feature_box.nil? rect = item_rect(@index) x = rect.x + self.x + padding + 24 - ox y = rect.y + line_height + self.y + padding - oy - 2 @feature_box = Window_FeaturesShow.new(item, x, y, self) @last_box_item = item else remove_feature_box end end end def feature_box_item? item.is_a?(RPG::EquipItem) || item.is_a?(RPG::UsableItem) end def remove_feature_box ## Dispose the box. @feature_box.dispose unless @feature_box.nil? @feature_box = nil @last_box_item = nil end end class Window_FeaturesShow < Window_Base def initialize(item, x, y, parent) @parent = parent @bx = x; @by = y @item = item super(0, 0, 500, 500) self.z = @parent.z + 500 self.windowskin = Cache.system(($game_system.windowskin)) self.opacity = 255 self.back_opacity = 255 self.tone = Tone.new make_width make_height make_position draw_all_items end def make_width contents.font.size = line_height contents.font.outline = CP::EFFECTS_WINDOW::OUTLINE contents.font.shadow = CP::EFFECTS_WINDOW::SHADOW i = 120 unless notes.empty? i = [i, notes.collect{|n| contents.text_size(n).width}.max + 2].max end self.width = i + standard_padding * 2 end def make_height sw = self.width - standard_padding * 2 i = standard_padding * 2 i += notes.size * line_height i += seps * line_height / 2 self.height = i self.visible = false if i == standard_padding * 2 create_contents contents.font.size = line_height contents.font.outline = false contents.font.shadow = false change_color(normal_color) end def make_position self.x = @bx + self.width > Graphics.width ? Graphics.width - self.width : @bx self.y = @by + self.height <= Graphics.height ? @by : @by - self.height - @parent.line_height + 4 > 0 ? @by - self.height - @parent.line_height + 4 : Graphics.height - self.height end def standard_padding CP::EFFECTS_WINDOW::EDGES end def line_height 24 end def seps i = -1 i += 1 unless notes.empty? return [i, 0].max end def stats return [] unless CP::EFFECTS_WINDOW::SHOW_STATS && @item.is_a?(RPG::EquipItem) r = [] 8.times do |i| next if @item.params[i] == 0 r.push("#{Vocab.param(i)} #{@item.params[i]}") end return r end def notes @item.effect_desc end def effects if @item.is_a?(RPG::EquipItem) @item.features elsif @item.is_a?(RPG::UsableItem) @item.effects end end def draw_all_items contents.clear y = 0 notes.each do |l| draw_text(1, y, contents.width, line_height, l) y += line_height end end end class RPG::BaseItem def effect_desc make_effect_desc if @effect_desc.nil? return @effect_desc end def make_effect_desc @effect_desc = [] noted = false self.note.split(/[\r\n]+/i).each do |line| case line when /<effect note>/i noted = true when /<\/effect note>/i break else @effect_desc.push("#{line}") end end end end ###--------------------------------------------------------------------------### # End of script. # ###--------------------------------------------------------------------------###
  22. Coolie

    Help request for Effects Box script

    So far, it is returning an error on line 113 citing an undefined method for "each_with_index" EDIT: I believe I fixed that problem, I'll let you know if any issues pop up. Thank you for your help!
  23. Create a copy of Window.png in your game’s folder and name it Window_Enemy.png This script meant to be used alongside An active battle system, you may encounter other issues in the default battle system. I’ll try to help with any incompatibilities, though.
×