Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

Ramza

322
Posts
394
Followers
13
Following
A member registered Apr 18, 2017 · View creator page →

Creator of

Recent community posts

Thanks for the report.

Unfortunately, because of the obfuscation of their code, there's no way for me to know what they're doing with that note tag, or how I managed to break it. Does the tag not work entirely or only on shields? It could be that the Shield slot doesn't count as an armor slot for their plugin anymore when you're dual wielding, because it would normally be a weapon slot. It could also be that the modification I made to force unequip items from the offhand when equipping a two handed weapon, or when a main hand weapon disallows a specific wtype in the offhand simply overwrite some change they'd already made to that function.

You can try moving around the plugin load order, but I don't think that will help, unfortunately.

I wish that were the problem.

I'm not sure what's going on here now, tbh. The version I have on my PC is 1.11, and I ran it through diffchecker with the version up for download and they're exactly the same except my version has notes in the patchnotes section that says it fixed an issue with that function. The actual function is exactly the same in both versions though.

It's like I'd started to fix a problem with that function, and wrote the patch notes first (which I honestly never do), and then... stopped making the fix and forgot about it? I don't know what crash problem I allegedly fixed with the function if the function is exactly the same between versions, either.

In any case, your load order is correct. It works for me in a completely clean test project, and my own test project. The only thing I could think of that might be causing problems if if you changed the experience curve, and the changeCraftExperience function can't get a usable value out of it to check against, but if that were the case, none of your crafts would ever level up, not just this one you're gaining experience with using the function. And also if that were the case, I think it'd probably cause a crash rather than just not work, since I used 'eval' instead of 'try', if there was some unforeseen problem with the formula the function would end up comparing a number to NaN, and not like that.

Good evening.

The only time currentTime is used in the plugin is during a skip. To skip the video to the end, it sets the current frame of the video currently playing to the last frame, which causes the video to end. I did this because I couldn't figure out how to make it actually abort the video playback, as I'm just using the built in video playback from rpg maker.

If I'm correct, you're getting this error because you're skipping videos, and he likely isn't because he's not. What the error actually means, though, is a mystery to me. It could be an issue with the actual video, as the error would seem to imply that it can't properly detect how long the video is to set the current time on the playback to the end of it.

Okay, I just typed up a giant response and then accidentally hit a keyboard shortcut that refreshed the page and lost the whole thing... so bear with me.

I created a brand new MV project, with only the latest versions of all three plugins:

CS_Core (1.11)

CraftingSystem (1.31)

CraftingLevelsScene (1.01)

In this test project, I left all plugin params as default with two exceptions:

I made an alchemy recipe for item 1, which needs one item 1 and one item 2 to craft.

I set 'Hide Unused Categories' to false in the levelscene plugin.

On the default map, I added one NPC who says a chat and then uses the function I gave you in a script call to add 51 experience to alchemy. 

$gameParty.changeCraftExperience('alchemy', 51)

Opening the menu before talking to the npc correctly shows craft experience for Alchemy as 0/100 level 1. Talking to her once shows it as 51/100 level 1. Talking to her again shows it at 0/200 level 2.

This function is not doing anything fancy, and it has a pretty unique name, so it's unlikely another plugin is causing this compatibility problem. The best was to troubleshoot this further is to open the console from the test run (f8 or f12) click the console tab at the top, and then type the following:

$gameParty.changeCraftExperience

Without providing the ()s, or the params, instead of running the function, the console will output the code for the function, like below:

ƒ (category, add){     $gameParty._craftExperience[category] = $gameParty._craftExperience[category] + add     var level = $gameParty._craftLevels[category]     var requiredexp = eval(Ramza.CSParams.Experien…

if you click on this blurb in the console, it will take you to the sources tab and show you the whole thing, including the name of the js file it's coming from at the top, which should be CS_Core.

My version control isn't the best in the world, downright crappy, actually, so I can't tell exactly at what point I spun this function out of the original plugin and moved it to the core, but at least on version 1.15 of the base crafting system plugin, the function was there, and identical to the one in the CS_Core plugin. If your sources tab is showing a different plugin name than CS_Core at the top, then something is overwriting the function. The only thing that could be doing that is probably the craftingsystem plugin, but if you're using the newest version, that shouldn't be possible.

The only other thing I can suggest is maybe trying with a new save? The experience and levels, and maybe even the level curve could be stored in the save file, and might not be updating properly.

The only requirement for core is that it is loaded before the maker specific plugin in the load order (ie: the Ramza_CraftingSystem plugin). You should also update that plugin as well, if you haven't already, if the version you were previously using was old enough that it didn't require the core plugin, you're working with a version that had several bugs in it that have been fixed, at the very least. There had been an apparently long standing bug where the function I described above simply caused a crash.

With that being said, I loaded up my test project after some hilarious cloud based backup shenanigans on my new laptop, and managed to confirm that using the function above does grant experience to the specific crafting category, and caused it to level up, and reset the rollover experience as I expected it would, in both MV and MZ versions.

I would definitely recommend updating the crafting system plugin for sure, since you weren't previously using the core plugin, your older version is likely woefully out of date, and that function not doing what it's supposed to is likely the least of your problems.

~Ramza

There sure is.

The last version of the Core plugin actually fixed an issue with this previously undocumented feature, which made it cause a crash when used. $gameParty.changeCraftExperience(cat, value) can add or remove experience from a crafting category, and will cause it to level up (but not level down). For cat you'd use the category name in the form of a string ie: "cooking", "alchemy". The value is any number, positive or negative, and will be added to the total craft experience for that category. 

So, if you use the 'script' command, you can run the following script:

$gameParty.changeCraftExperience("alchemy", 12)

and it will add 12 experience to the alchemy level. If this makes the alchemy experience high enough to level up, the level will increase as well, but there will not be a message generated by the plugin, you'll have to handle that via whatever common event you're running to give the experience.

$gameParty.getCraftLevel(cat) can be used to check the current crafting level at a specific time. You could store the value it returns in a variable via the 'script' operand, grant the experience, and then check it again and compare the two to see if a level up occurred as a result of your experience gain, then show a message after gathering is completed.

~Ramza

Good day.
That error doesn't mean much to me, unfortunately. It sounds like something failed to load, possibly the video file you chose, but without the console output I wouldn't know where to start troubleshooting.

Make sure the path of the file you're loading is correct, and that it doesn't have any spaces in it.

Good day.

This plugin shouldn't be capable of doing this unless you have something else that's going back to Scene_Boot on the title screen. 

The normal flow without this plugin:

Scene_Boot -> Scene_Splash -> Scene_Title

With this plugin:

Scene_Boot -> Scene_PretitleSplash -> Scene_Splash -> Scene_Title

This plugin aliases the SceneManager.goto function, checks for what the current scene is, and what the scene called is, and injects scene_pretitlesplash only if it's currently in Scene_Boot and going to either Scene_SPlash or Scene_Title. It doesn't change anything on the title scene at all, and the only time is plays splash screens is on the pretitle splash scene. The only way it could replay these is if something sent the interpreter back to Scene_Boot and it started the whole process over again.

~Ramza

If I had a nickel for every time I've heard that one.

Glad you got it sorted out.

I've never seen that error before, not just for this file specifically, but in all of my time using windows. Perhaps the original file is corrupted somehow in your original location? Clearly after making the copy + paste action, the file pasted is also corrupted to throw that error.

Have you tried redownloading the plugin file and pasting that file instead? I don't think the js file has any weird file properties that would cause that error, unless some antivirus program has already been messing with it thinking that it's a malicious file or something.

Glad to hear it, sorry it took so long.

That is odd, considering it now works for me in a completely stock project, even with only a single video splash.

It's possible that the issue is that your core files are also out of date, from somewhere between 1.0.2 and 1.8.0, and that they'd made some changes to the scene load order in earlier versions, before settling on what they have in 1.8.0.

First I'd check to see if an image splash works, to see if it's something weird with the video specifically. If that also doesn't work, test it in a brand new project, and then compare the versions of the core files from your project with the new one and see if rmmz_scenes.js is out of date (although be warned updating it might break other things).

If the image splash works fine but the video doesn't there might be something else going on with it. Try playing the video using the event command in game and see if it will play there, if it won't the format might be something that simply won't work in rpg maker for... some reason. Like I've said to some other people in the past, I didn't do anything fancy to make it play videos, just hooked into whatever the engine already uses to play them in game, so I'm not really in control of what works and what doesn't, unfortunately.

(1 edit)

As it turns out, all battlers, even non sideview ones have a number of parameters added to them whenever VS_BattleCore is enabled, and the name will be a blank string if the enemy doesn't have a battler set via that note tag.
I have used this, and it appears to work, at least in my quick testing, and it doesn't seem to cause the project to implode if the enemy is not an animated one, or if the VS_BattleCore isn't present in the project, so I consider that a win. The new version should be up in a few minutes, let me know if I missed something glaringly obvious on this one.

Indeed, it has been a long time since this request.

If I'm being honest, I haven't been particularly active these last several months. I apologize for that. I've started looking into this request this evening. I don't foresee it being too difficult to apply, assuming there's an easy way for me to tell if an enemy is using an animated battler through VS_BattleCore.

Okay, so I looked into this a little bit, as you're not the only person to report it (see below), and I was once again unable to reproduce the problem on my end. It works fine in my test project, with images and with videos.

The problem, as it turns out, is that some update to the core files in the past made it no longer work anymore. I made a brand new test project and copy+pasted the same test files I was using in the test project into it, and it doesn't work. In fact, none of the splashes work, not even the images.

I looked into it a bit more and it seems that RMMZ has an entire splash scene that it defines in RMMZ_Scenes that it goes to before the title scene. I'm not sure what this scene actually does, though, as I don't see any options in the database to use it. Anyways, I managed to quickly fix the issue, as my plugin aliases the function to call a scene, checks if the current scene was Scene_Boot, and that the scene being called was Scene_Title, and then intercepts that call to send it to my pretitle splash scene instead. I just changed that to intercept scene_title or scene_splash. 


The fix will be uploaded shortly.

~Ramza

Hello there.

I've never tested it in MZ. It does require the YEP_SkillCore plugin to work in MV, though, so if it was going to work in MZ, you'd either need to be running that one via FOSSIL, or the Visustella equivalent. 

Since Visustella plugins are mostly 1:1 recreations of their equivalent yanfly plugins, it might still work without changing anything, but there's no guarantee, and their plugins are obfuscated, so if it doesn't work there's not a lot I could do to try to fix it.


Best thing I can suggest is to download it and give it a try, if it works, it works. There's no cost for this plugin, so get it for free to try it out, and if you end up liking it, or you wanna pay after the fact, you shouldn't have an issue after.

~Ramza

Hello there.

A couple of people have told me of this problem, and there's not much I can do to resolve it.

The plugin doesn't do anything fancy with video playback, it just uses the built in function from rpgmaker to play them, so any problems with playback it has (low framerate, sound issues, etc) are coming from the engine itself, not the plugin. I might maybe be able to mitigate this specific problem by only allowing the videos to be skipped after a certain number of frames, and maybe that'll give the garbage collection functions time to do their jobs and stop this from happening. But since I'm only using the default engine to play those videos, the problem would still happen any other time a video player.

The best thing I can suggest is to have the final splash video be a very short blank video with no sound (like a couple of frames), so that if it is skipped past and its audio keeps going, it won't have any audio to interfere with the title screen.

  • Put your videos/splashes into a folder inside your project (the default movies and/or img/pictures folder work well here).
  • Open the parameters for the splash plugin.
  • Open the parameter for 'Splash Screens'.
  • Double click a blank space in the list (labeled 1, most likely).
  • The next window that comes up is a spot for you to set what this splash is
    • Select either video or image for the type box
    • for the file box you need to type the full path to the video/image
      • /movies/1603494526247.webm /img/pictures/Actor1_5
    • CustomHold is a value for static images only, when you set it, that image stays on screen for that amount of frames, instead of the default amount set in the normal plugin parameters.
  • Add as many splashes as you like. You can drag them around to adjust the order they're played in game.

~Ramza

Hello there. I'm sorry you're having issues with this plugin.


When I released it, I had tested it with a base MZ (and MV) project, so there's no guarantee that it worked with Visustella plugins. However, I've received no messages prior to now indicating there was a problem with them.

Do you have some sort of a VS title screen plugin? Anything else that might be modifying the startup sequence?

What happens if you turn off all other plugins temporarily? Is this project deployed already? Does it work in test play? What format are your videos? I had tested exclusively with .webm videos I'd downloaded somewhere, mp4s for mobile deployment might not work at all. Heck, mobile deployment probably doesn't work at all either. Also insure your video files are in the correct folder, and that there are no spaces in your file tree, as MZ has issues navigating those sometimes.

Also give a try with a static splash screen as well.

~Ramza

That shouldn't be required, and isn't turned on in my test project where I was trying to duplicate your crash.

I'm glad it's working for you now, though. Let me know if you have any other issues.

Greetings.

I'm sorry you're having this issue. But I am unable to reproduce the problem on my end, so it might be being caused by a bug with some configuration you're using.

  • Please ensure that you are starting a fresh savegame when you're testing this, as the equipment in an old saves database files may not contain all of the metadata that the plugin is expecting.
  • Did you use the <Forbidden Wtypes: x y z> note tag on any weapons that are currently equipped, or might show up in the equipment list?
    • If yes, can you temporarily remove that tag and test to see if the crash still happens?
  • How is dual wielding set on an actor? Is it on their class traits? Their actor traits? A piece of equipment? A weapon?
  • Does the crash happen when trying to equip a weapon in the main hand or offhand slot? Both?
  • Does the actor start with two weapons already equipped? Does the crash still happen if they have only one, or no weapons at all equipped?
  •  If you make your actors no longer dual wielding type (remove the trait), does the crash still happen?

Once I get a little more info, we'll try to get this sorted out for you.

~Ramza

Good evening.

First of all, thanks for purchasing this plugin.

To answer your question: under the 'rules' heading in the plugin parameters, you will find 'Block Resistance' and 'Flat Block Value'. Block resistance is a number that the incoming damage is multiplied by when the defender blocks. By default, it is zero, meaning all damage from the incoming attack is blocked. Set this to 1 and all incoming damage will be left alone.

The second value is the flat amount removed from all successful blocks. It is also set to zero by default, but you'd want to change this, likely. You can also leave it at zero and set the <Block Value: X> note tag on your shields to make some shields block better than others.


~Ramza

There is currently no way to do that exactly.

The modifier plugin parameters for dual wielding, offhand, and two handing a weapon can all be eval'd. By default, they're just a float number (0.75 for example), but you can use code in this box to make the number different based on a condition being met using a ternary operator: 

(user.isStateAffected(21) ? 0.90 : 0.75

Something like the above would make the offhand do 90% normal damage if the user is affected by state 21, or 75% or not. These can be nested as well, allowing for different levels of offhand mastery, or ambidexterity, or whatever

(user.isStateAffected(21) ? 0.90 : (user.isStateAffected(26)) ? 0.80 : 0.75

I'm not entirely sure that's the exact code you'd use to do that, I didn't get a chance to test it, but I had set it up once a long time ago, in an old project, and it was designed for that use case. It's not exactly what you're looking for, but it can work for what you need.

The hit and crit bonuses are weapon specific. Any source of hit rate or crit rate that isn't on a weapon is given to both hands, and any that is on a weapon is only given to that one weapon. There is no way to change this currently.

~Ramza

There isn't currently an easy way to do that. I don't do enough work with sprites to know how to define and draw one like that, unfortunately. I used battle animations for that reason.

However, since every block effect is custom defined, you can modify the definition in the plugin parameters to do anything you want it to. So if you (or someone else) can figure out how to draw an icon at a specific battler's position on the battle scene, based on the iconId of the icon of the shield currently equipped, you can put that into the block effect and have it happen. I don't really have the slightest clue how easy or hard that would be, though, but it's a good place to start, or have someone else start for you.

~Ramza

This plugin injects its calculation into the damage formula, so it should be fully compatible with any other plugins that change how damage is calculated, as long as they still use the damage formula box in the database to deal any sort of damage.

Hello there.

Most plugins rely on the .js file having its original name in order to read the plugin parameters. Mine are also like this, so it would've failed loading very early in the load process, likely without throwing any crash errors, and simply would've acted as if the plugin wasn't installed at all. That means the error you were getting from the Visu plugin was correct, that function is not a function - because the plugin which defined it as a function was not loaded :)

For what it's worth, there is a way to make plugin parameters work when renaming the .js file, but it needs to be written in a specific way to allow that, and as it was simply the easier thing to do, I chose not to do that, like most people.

~Ramza

Sorry, I haven't gotten a chance to look into it yet. It is in the pipeline, but it's a busy time of year right now.

Greetings.

This error is happening because both of our plugins are using the constant 'params'. You can edit both of our plugins to use var instead of const and it should stop that from happening. If you swap the order the plugins are loaded in, you'll find his plugin probably throws the same error too.

In my plugin this line is line 627, I'm not sure about his.

~Ramza

My discord account name is on my main page? profile? whatever it is, and you don't have to be my friend, or share any servers in common with me to send me a dm.

I'm not sure when, or how much time I can devote to helping you out, though, since I'm at work right now. But send me what you have and we can work something out.

~Ramza

I believe that is because when the character doesn't have anything in their offhand, the menu considers them only wielding one weapon, so it doesn't show the possible change of the atk value of the offhand weapon.

Unfortunately, I don't have a good way to fix this, as the VS plugins are all obfuscated, and I don't have a way to hook into and change their menu scenes. It's frankly surprising that there was any change at all on that one.

Does it evaluate the proper way on the equip scene?

~Ramza

Hello there.

I've never tested it with that plugin before. It doesn't do much to modify equip slots, only making it so the second weapon slot can also hold shields, so I don't think there'd be any issues. You might have to change around the load order and see if it works better one way or the other, though.

Of course, if there is any compatibility problems, you can always post about them and I can take a look to try to fix them, too.

~Ramza

(1 edit)

Hi there.

It should show the category, there are options in the plugin params to control what it draws when it finds a category ingredient. At least one of the options has it scroll through a list of ingredients of that category, so the issue might be one of the ingredients it's finding being bugged or something.

I think what's likely happening here is that it's set to show the category name with an icon, but the icons weren't set up in the plugin parameters, so the window can't draw the icon because the length of the list is undefined.

That error could also be caused if you're using an old save, as well. Since the icon list might be tied to the save file or something. There's always something screwy going on when you use an older save file.

~Ramza

Thank you for saying. Let me know if you have any issues :)

Hello there.

Sorry that you're experiencing this issue. In order for me to track down what might be causing it, I need to ask some questions:

  1. Are you using MV or MZ?
  2. If you are using MV, are you also using YEP_ItemCore?
    1. If you're using MZ instead, are you also using YEP_ItemCore via FOSSIL, or from the Independent Items patch I'd made for use with my crafting system plugin?
  3. If you are using ItemCore, are the food items giving the buff an independent item? You set this by setting an item quantity limit in the plugin parameters of ItemCore. 

I ask these questions about independent items specifically because they change the item ID of the item, and it might cause issues with this plugin detecting which item had been used (due to an oversight of mine, most likely). Clearly it knows the item being used is a favorite food, as it plays the sound effect, but it's not applying the effect to the actor, so something is going wrong.

~Ramza

Yikes. You've made so many aesthetic changes to it that if I'd seen this anywhere else I'd never have been able to tell it was my plugin at all.

I absolutely love it! :)

Thanks for saying so. When I first launched it, I wasn't even sure if people would want to use it over the yanfly synthesis one. This was the first plugin I'd made entirely for other people to use, and not for my own use as well. It feels good to get reaffirmation once in a while.

For now, I'd suggest making the ingredients independent items. I'll work on trying to fix it, but progress on that is going to be a little slow as I don't have a lot of time, and I've been using what little time I do have to work on a couple of extensions for this plugin.

So, ideally the traits were only ever supposed to work on independent ingredients/result items. When I first made the system that was the plan, but an oversight caused them to work with non independent ingredients as well. What was originally supposed to happen was that in order for an item to be on the 'additive traits' list in game successfully, it had to be put there by the dev in the plugin params, and also be an independent item.

Somehow, I'd mucked that second part up, and for a long time, you were able to have ingredients that weren't independent, but did have additive traits on them. When the other user I was talking about earlier reported a very similar issue, I realized it was possible in the first place to have additive traits on non-independent ingredients, but rather than fix the problem by disabling those traits on non-independent items, I "fixed" the problem he reported. 

As it turns out, my fix likely only worked for ingredients in the first slot. During the function that combines all of the traits on all of the ingredients, the traits of the result item were being added to an ingredient, which would never have caused a problem if the ingredients were independent items. The item that would inherit all of those traits would normally be removed from the inventory after. However, if the ingredient was non-independent, all instances of that item would inherit the traits. The instances already in the player inventory, the instances in the shops, the instances in treasure boxes. If you then make the same recipe again, that ingredient has way more traits than intended, and adds them all back onto itself a second time, causing the bonus to increase again.

Worth noting, is that those traits aren't saved on the item, so if you saved the game and then reloaded a save and crafted the same recipe again, it would be normal again.

The fix I applied to solve the problem originally must've only been for the first ingredient, or the first slot, or both maybe. I'd have to look more closely at what I did originally, to solve this problem for you, or find a better way to more permanently solve it.

-Ramza

Hmm.

I recall someone having a similar issue to this a long time ago that I'd thought I'd fixed. It revolved around the fact that his ingredient items weren't independent items (from the YEP_ItemCore), and a weird interaction with the way my plugin was adding traits together. It's possible the fix I implemented didn't take the second (or third or fourth) ingredients into account when doing whatever it was I made it do to fix the problem.

One question, though, are you using the YEP_ItemCore plugin to make your ingredients independent items? The problem I mentioned above was actually because the user wasn't using the ItemCore at all, and while that is okay, the additive traits were never intended to work in projects that didn't have that.

It isn't currently, but it can be.

You might be the first person I'm aware of who uses that parameter, so be sure to let me know if you run into any weird issues with it as well :)

Actors need something on them that enables block.

<Enables Block> needs to be on an actor, equipment, state, etc to enable to actor to block. Enemies don't have this requirement because they wouldn't normally have a block chance.