Hello! So, I'm using the plugin "Cae_SlopeMove" to have forced diagonal movement in certain parts of my game. It's great. This plugin works exactly how I need it to when the player is moving left or right, but I wanted to have this same effect while moving up and down too. Is there a way to edit the code of this plugin to have the effect expanded?
Caethyril's MZ Plugins
● ARCHIVED · READ-ONLY
-
-
@GustoSerpe - I notice you already made a thread, so I may as well answer over there~
-
Hi Caethyril ! I just downloaded your wonderful Tile Animation Ext plugin.
I would like to thank you for your amazing work.
Also, please, can you tell me what is the priority of your plugin ?
How high should it be placed among the other plugins ?
Visustella (if you know them) plugins are ranked based on their priority in order to place them correctly.
0 is for the highers on the list and 4 the lower ones.
Please can you be kind enough to answer my question ? -
@Somento - I would recommend loading my plugin after VisuStella's, i.e.
- VisuStella's plugins
- Cae_TileAnimExt
As a general rule, I recommend loading smaller plugins (i.e. plugins that make fewer changes) after bigger plugins. :kaohi: -
Having a weird bug that's likely a Battle Core conflict.
I;'m trying to use the On Use plugin, specifically the <target filter:> note tag.
When I onActorCancel or onEnemyCancel party Index 0 is selected/highlighted automatically.
Whenn cancelling targetting:
-
@Puppet Knight - I am not willing to debug compatibility issues with obfuscated plugins, such as the VisuStella library. So let's figure out if your problem falls into that category.
Does it work correctly for you if you turn off VisuStella Battle Core and any plugins that rely on it? (Alternatively, simply turn off all other plugins.) Remember to save your project to apply Plugin Manager changes before testing.
- If it works with those plugins disabled, then yes, it probably is a conflict. VisuStella Battle Core has its own target-related features, so I wouldn't be surprised if that is the culprit. In that case you'll have to ask someone else.
- If it still doesn't work, please:
- Share screenshot(s) of your Plugin Manager, showing the plugins that are still enabled.
- Copy+paste your
<target filter: code>notetag here, so I can test it on my end.
- If it works with those plugins disabled, then yes, it probably is a conflict. VisuStella Battle Core has its own target-related features, so I wouldn't be surprised if that is the culprit. In that case you'll have to ask someone else.
-
I'm not even gonna go the rabbit hole of testing whether it works without VS cause:@Puppet Knight - I am not willing to debug compatibility issues with obfuscated plugins, such as the VisuStella library. So let's figure out if your problem falls into that category.
Does it work correctly for you if you turn off VisuStella Battle Core and any plugins that rely on it? (Alternatively, simply turn off all other plugins.) Remember to save your project to apply Plugin Manager changes before testing.
- If it works with those plugins disabled, then yes, it probably is a conflict. VisuStella Battle Core has its own target-related features, so I wouldn't be surprised if that is the culprit. In that case you'll have to ask someone else.
- If it still doesn't work, please:
- Share screenshot(s) of your Plugin Manager, showing the plugins that are still enabled.
- Copy+paste your
<target filter: code>notetag here, so I can test it on my end.
1) 95% sure it is indeed a conflict lol
2) I know you aren't gonna patch it to work with Battle Core and I need battle core for a lot of my project.
What I will ask alternatively, is what function are you tapping into to alter the targetting/do you know of a function/script call to unselect any currently selected troops/party members
Cause if I have that, thenn i'm fine. - If it works with those plugins disabled, then yes, it probably is a conflict. VisuStella Battle Core has its own target-related features, so I wouldn't be surprised if that is the culprit. In that case you'll have to ask someone else.
-
Cae_OnUseEffects patches 13 different methods to implement its target filtering. For details, you can open the plugin in a text editor and search forWhat I will ask alternatively, is what function are you tapping into to alter the targetting/do you know of a function/script call to unselect any currently selected troops/party members
// +Target restrictions //.
I'll answer the second question on your thread:
-
Thank you for this, I'll look into it and try out the scripts you added to my threadCae_OnUseEffects patches 13 different methods to implement its target filtering. For details, you can open the plugin in a text editor and search for
// +Target restrictions //. -
Last follow up i hope here.
Normally your plugin prevents the skill/item from being used. But since I'm not utilizing the regular skill menus (I built my battle scene out using HUD Maker), I have to manually add in the check to prevent a break based on scope.
I'm not sure which function in the section you highlighted I should be using as a check against the current skill ID/Actor based on the <target filter> set up
EDIT: Nevermind I was overthinking. Can just use `meetsUsableItemConditions ` -
Good evening Caethyril! I have some questions about how to use Cae_MenuDisplayOpts plugin. Is there a method to remove certain options from the menu without altering the window size itself? Is it possible to display the entire window without requiring scrolling to access the bottom?
Some pictures just to clarify what i mean.
Options without plugin
Options with plugin turned onSpoiler
Sorry if those are dumb questions.Spoiler -
@porysha - I checked the code of Cae_MenuDisplayOpts and I think the problem is elsewhere.
By default there are 7 options (maxCommands), with space for up to 12 (maxVisibleCommands) before the window will start scrolling.
You have Language and Fullscreen options in your screenshot. I assume the plugin(s) responsible are either not written for MZ or do not patch MZ'sScene_Options#maxCommandsmethod appropriately.
In either case, a small plugin like this could probably fix it:
JavaScript:/*: * @target MZ * @plugindesc Accommodate more in-game options. * @author Caethyril * @url https://forums.rpgmakerweb.com/posts/1429579/ * @help Free to use and/or modify for any project, no credit required. */ ;void (alias => { Scene_Options.prototype.maxCommands = function() { return alias.apply(this, arguments) + 2; // 2 more than usual. }; })(Scene_Options.prototype.maxCommands); -
Hey hey I'm back.
I am wondering if you could point me in the right direction of what to tweak to have the <target filter:> note tag be based on the users class rather than the current skill/item being used.
My project's targetting is based on weapon class in use. So it would save a lot of extra note taggingn to set up a catch all.
If this isn't possible at all with the way the plugin is currently set up, it would be a nice option to have (even if it has to be a separate note tag to be simpler) -
@Puppet Knight - that would be a fairly deep modification if done properly. Cae_OnUseEffects implements a mini-framework to build relevant tags into functions on plugin boot, but by default it only supports building from Item/Skill records.
For this plugin to support Class tags (<target filter>or otherwise) within its existing structure, I think you'd need to make changes to various parts of the code, such as:
- Both
$._initReffunctions. - The
const L = ...line in$._init. _getTagFctType, to return an appropriate type code.
Alternatively, you could hack it in viaeval, e.g. (untested):
Since this usesplugin code (extension)JavaScript:/*: * @target MZ * @plugindesc Cae_OnUseEffects patch: eval <target filter> on Classes. * @author Caethyril * @url https://forums.rpgmakerweb.com/posts/1435060/ * @base Cae_OnUseEffects * @orderAfter Cae_OnUseEffects * @help Terms identical to Cae_OnUseEffects. */ ;void (alias => { CAE.OnUseEffects.canTarget = function(action, target) { const item = action.item(); const subject = action.subject(); const user = subject; const tag = subject.currentClass?.().meta[CAE.OnUseEffects.tags.tgtFilter]; if (typeof tag === "string") return eval(tag); return alias.apply(this, arguments); }; })(CAE.OnUseEffects.canTarget);eval, it will return the "last" value, like the damage formula (noreturnkeyword). - Both
-
Other changes may be necessary.
Alternatively, you could hack it in viaeval, e.g. (untested):
I'll test the hack out before anything else and report back
Had time to test it finally. Getting this error:
Coming fromreturn eval(tag);
This is the note tag I am using:
<target filter: return target.columnIndex <= subject.columnIndex;>
The notetag works as intended on a skill. So its the hack. I'll look into the code of the original plugin again when I get the chance tonight -
Getting this errorI should've been clearer here: do not useSince this uses
eval, it will return the "last" value, like the damage formula (noreturnkeyword).returnin the tag when it is on a class, becausereturnis only valid in functions and the patch usesevalinstead.
Try this for your class tag instead:
<target filter: target.columnIndex <= subject.columnIndex> -
So realized that i can just sorta.. cheat?
;void (alias => {
CAE.OnUseEffects.canTarget = function(action, target) {
const subject = action.subject();
return eval(((subject.columnIndex - subject.range) <= target.columnIndex && target.columnIndex <= (subject.columnIndex + subject.range)));//}
return alias.apply(this, arguments);
};
})(CAE.OnUseEffects.canTarget);
My project has the skill targeting range dictated by the properties shown. So rather than even using a note tag at all, I can just enter the check directly into the hack you provided ^_^.
Did some testing and I am good to go now !
The original hack script actually gave me a good foundation to add in some extra checks where needed to override the eval I have set (which will basically be the fall back) -
Hi! I have an issue with the Cae on Use Effects plugin.
When I use it in conjunction with the VisuStella Battle Core, after selecting an attack and moving to the part where the enemy is selected, if I choose none and go back, the first party member remains highlighted (as if they were being selected). This happens simply by going back, but it's visually annoying because it can confuse the player. Basically, there's a character glowing that you're not controlling.
Is there any way to fix this?
I've already tried placing the plugin above VisuStella and also below it. I've checked every single option in the VisuStella Battle Core plugin, and nothing seems to fix the issue.
I've attached a GIF to illustrate the problem.
I understand that the VisuStella code is obfuscated, but I'm asking in case there might be something to do from the Cae on Use Effects plugin.
Thanks in advance for your response!
-
@cozathemaster - that sounds like what PuppetKnight reported earlier (post 125 of this thread).
A wild guess: maybe VisuStella's plugin uses negative selection indices for something. You could try editing line 1688 of Cae_OnUseEffects from this:
JavaScript:...to this:}, this)) this.select(-1);
JavaScript:If that does happen to fix it, let me know! :kaohi:}, this)) this.deselect();
Otherwise, my earlier response applies:
@Puppet Knight - I am not willing to debug compatibility issues with obfuscated plugins, such as the VisuStella library. So let's figure out if your problem falls into that category.
Does it work correctly for you if you turn off VisuStella Battle Core and any plugins that rely on it? (Alternatively, simply turn off all other plugins.) Remember to save your project to apply Plugin Manager changes before testing.
- If it works with those plugins disabled, then yes, it probably is a conflict. VisuStella Battle Core has its own target-related features, so I wouldn't be surprised if that is the culprit. In that case you'll have to ask someone else.
- If it still doesn't work, please:
- Share screenshot(s) of your Plugin Manager, showing the plugins that are still enabled.
- Copy+paste your
<target filter: code>notetag here, so I can test it on my end.
- If it works with those plugins disabled, then yes, it probably is a conflict. VisuStella Battle Core has its own target-related features, so I wouldn't be surprised if that is the culprit. In that case you'll have to ask someone else.
-
@cozathemaster - that sounds like what PuppetKnight reported earlier (post 125 of this thread).
A wild guess: maybe VisuStella's plugin uses negative selection indices for something. You could try editing line 1688 of Cae_OnUseEffects from this:
JavaScript:...to this:}, this)) this.select(-1);
JavaScript:If that does happen to fix it, let me know! :kaohi:}, this)) this.deselect();
Otherwise, my earlier response applies:
Thank you for your prompt response. I made the suggested change, and unfortunately, the issue persists...
I hadn't noticed the problem with Puppet Knight, sorry for asking something that had already been mentioned.
I have a question: actually, I only use the "Cae on Use Effects" plugin for the "action Popups" part.
Is there any possibility of greatly simplifying your plugin so that I can only use those functions? If not, what I absolutely need is the ability to edit the "Popup Width Mult" and the Popup Font Size.
I haven't found this latter feature in any other plugin...
Any ideas? :o