FEATURES
This plugin creates a tool system, where the player can cycle between items that are designated as tools and press a button to use the tool that is selected on the screen.
The basis behind this plugin is to allow players to event what happens when a tool is used, giving the player script calls to use to assist them with tool functionality. Each tool activates a common event to control this.
This plugin requires database and eventing knowledge.
VERSION 1.3 – RPG Maker MV
Download Plugin file
Download Demo
I love this! It would be great with crop system! :)
I love how versatile this is; really useful! By the way, could you please make it so that the item name is also shown on top of the tool hud? I spent hours trying to achieve this but I don’t know a thing about programming :/ thanks for the plugin!!
Will add to my to-do list but not sure when I can get to it
Galv, can you please help me? I wanted to smash rocks with more that one hit, how can I achieve it? Tried with self switches but I failed…
That’s a question for an RPG Maker forum as it would be done with eventing.
Yeah, tried to do this with eventing, but I still want to use your tool script, so it’s not so easy this way :( But I try ask on forum, then.
I meant using the tool plugin as it relies heavily on eventing.
Galv, is it possible to change notetags from upper event comment field to comment inside event pages? Would be so cool If I can use different tool on broken rock or tree stump for example. I can’t achieve it right now :( Thanks for your patience.
I’m not sure what you mean… What exactly are you trying to do?
I want that I can smash crates for random items, also you can use crowbar on crates for planks, but I want that you can’t use crowbar on broken crates (after braking it with pickaxe), so in this way I can only make one event and you can use that tool on every page (even if the crate is broken) – I’m using self switches so don’t wanted to use switches to check is every crate broken or not, it’s lot of crates.
Why can’t you use self switch to change the crate to a broken page and add the comment to that page so that tools won’t work on it anymore?
Hi Galv.
In advance, sorry to ask you again something about compatibility between plugins. Your plugin “Tools” seems to have a little worry of incompatibility with the plugin QMovement (https://quxios.github.io/#/plugins/QMovement): indeed, it is impossible for me to use my tools because the Key does not work. I tried the “alt”, “control”, “shift” but no results. Of course, when I disable the plugin “QMovement” everything works perfectly. Can you help me please ?
Hmm, not sure it will work effectively with pixel movement. But did you try putting this plugin under QMovement one?
Yes i tried but no effect. Indeed, it is a pixel movement plugin and it seems to pose quite a lot of problems with other plugins of any kind, but I must say that this one is the one that bothers me the most because My game is largely based on your system tools (hacking doors, consoles, etc).
Yeah, pixel based movement changes the default engine so it’s less likely to work with other plugins. I’ll take a looksy and see if I can get them to play nice when I get some time.
Thank you :-)
Has anyone had any issues lining up correctly to water the crops? I am new to the game so maybe there is some trick that I am not aware of?
NVM Just found the plugin probably needed right here! Thanks Galv for being awesome!! You Rock!!
Hey Galv, just wondering if it would be possible for you to add pixel movement support. Loving the plugin :)
Unfortunately I don’t have enough time to support pixel movement at the moment, sorry
Alright, not a problem, I think I’ll try to commission someone to add it. Thanks anyways though :)
Hello Galv, any chance to add durability function for tools?
The tools use common events, you could event durability
Good idea! Thanks for help.
I want to change the size of the tool icon on the screen.
Change or zoom in the icon to 64 pixels.
Can you increase the parameter of adjusting the length and width?
Or change the tool icon into a picture?
I’m super busy at the moment but one day I will update this plugin to allow you to do that
Had some time and updated this to version 1.1
Tool icon can be set to appear at different sizes. (plugin settings have changed). Can also use images from /img/pictures/ in place of the tool icon if using a note tag (details in help doc of the plugin)
That’s so cool update!
Thank you! ˊˇˋ
The plugin update is great, however it doesn’t seem to refresh the number of items when and item is ‘used’
for example, I’m using this as a way to give gifts to npcs, I have 2 apples, if I give them an apple, it stays at 2 apples unless I scroll back and forth, any way to make it update automatically so that the current amount is always reflected?
I will add this in next update when I get time. For now, you can try a script call:
Galv.TOOLS.needRefresh = true;
To refresh the hud after you reduce the number of items in inventory
Perfect! Thanks so much :)
The Tool plugin is great work! I’m using it in my game. :)
A suggestion… could the tool HUD disappear a few seconds after use? And then come back once a selection button is pressed?
The tool functionality is evented, you would do this via common event using script calls:
$gameSystem.toolBtnDisabled = false;
$gameSystem.toolBtnDisabled = true;
Hi, first of all I wanted to thank you for the great system. Second, I apologize because I am Brazilian and maybe I write wrong.
Anyway, I encountered this problem. It is not possible to harvest when I am on top of another event. Look at the image: http://imgur.com/8D54Goj
I can only harvest if I am out of the area where it is planted. Is there any way to prevent this? Thank you.
Ahhh darn. Yeah RPG Maker prioritizes the lower event when activating instead of the event in front. Thanks for letting me know, I’ll have to work something out when I get time
Well, for the time being I put the condition “Galv.TOOLS.frontEvent ();” In the common event “Interact With Crop” and created a new TOOL called “Hands” to harvest. I’ll be waiting for you, if I can.
Again, excuse my English.
Hi,
I really like this plugin (actually, all of them ;)). Been playing around with this one combined with the crops plugin and that gives lots of options. I’m trying to have the player clear a field before being able to use it, so I created an event that can be cleared with a tool, and then use the spawn plugin to place a crops event on top of the cleared one. However, right now I have to event that for every possible cropplot-x/y coordinate. Is there a scriptcall I can use to get the Tool.EventID location, that I can use as input in the Spawn.event scriptcall? (I hope this makes sense…, English is not my first language)
Thanks!
Hi,
I have problem keying the main functions of this plugin to fit my project.
Lets say I want to put the “switch Left”, Right” and “Use Tool” on the keyboard numberkeys 1, 2 and 3 or maybe z, x and c, which do not correspond accordingly in MV, is there any way to make the plugin recon these keys without manually altering the rpg core?
By default MV only recognises certain keys/buttons. You’ll need to find a separate plugin to add more buttons to it.
By default these are:
‘tab’, // tab
‘ok’, // enter
‘shift’, // shift
‘control’, // control
‘control’, // alt
‘escape’, // escape
‘ok’, // space
‘pageup’, // pageup
‘pagedown’, // pagedown
‘left’, // left arrow
‘up’, // up arrow
‘right’, // right arrow
‘down’, // down arrow
‘escape’, // insert
‘pageup’, // Q
‘pagedown’, // W
‘escape’, // X
‘ok’, // Z
‘escape’, // numpad 0
‘down’, // numpad 2
‘left’, // numpad 4
‘right’, // numpad 6
‘up’, // numpad 8
‘debug’ // F9
this plugin doesn’t work with the 1.5 or my computer have a problem??
This plugin works fine in MV 1.5.0
I downloaded the Demo and copied the database tools, common events, toolHUD image, and plugin settings directly into my own project. Everything works fine, however, when I press “alt” to use a the correct tool on an object I get this error: “cannot read property ‘list’ of undefined”. Is there something I missed importing, or is it possibly an incompatibility with another plugin?
You will need to test yourself if it’s an incompatibility with another plugin – I can’t tell from here.
Here’s a list of things you can try to error trap:
https://galvs-scripts.com/errors-using-plugins/
My first question would be – did you start a new game after adding the plugin?
Hey Galv, is it possible to check in conditions which item id is in use?
Do you mean which is currently equipped? Try using:
$gameSystem._tools.selected
Hello Galv,
I’m using your plugin, and its perfect for what I needed, but seems it doesn’t recognize copied events id ? I’m using Hudell’s Orange Custom Events to copy events from another map, and when I try to use tools, it gives a error, “cannot read property ‘crop’ of undefined”. Do you think there is a way for me to solve this issue? :)
Thank you anyways~
The plugins are not compatible. You could try my event spawner (I haven’t tested those together yet, though)
Thanks, Galv, I’ll give a look at Event Spawner :)
Hay man Love this script :) Quick question tho. Iv been trying to figure out how i can store the currently selected tools item id in to a variable so i can check what tool is currently equipped in game in a conditional branch. My intention is to have some tools create light round the character when selected. ie selecting a torch.
Any help would be greatly appreciated :)
Try $gameSystem._tools.selected
I think that will return the item id? I forget. You’ll have to test :)
Thanks man it worked perfectly !! :) very much appreciated
Thanks so much! You’re a miracle worker. One weird thing though- somehow my “use tool” has become TAB? I didn’t set it to that, and I have Yanfly,but I don’t think that adds more buttons…. ? >.> Tab isn’t even an option on the keyboard layout menu, apparently.
It could be you have another plugin that changes how default buttons work
Thanks! I’ll check it from that angle.
Hello.
I downloaded and played this plugin and demo game.
However, pressing q and w key, did not switch the tool.
Why? This is broken?
I am using the RPG Maker MV Mac version, and the version is 1.6.1.
Please help me, thank you.
Sorry, I do not know why and don’t have a mac to test. I would try asking in a forum
Hello Galv!
I have a picture that covers all of the screen. It’s used to simulate dark corners on a dungeon like a vignette. I can’t find a way to make the tool hud image
be above this vignette. It stays behind it.
Is there a way to make the hud image be on top of this picture? Or any other picture?
https://gph.is/2EbADsp (my issue)
How are you drawing the darken picture? With another plugin or with ‘Show Picture’ command?
With ‘show picture’ command.
And thanks for quick reply
Forgot to mention is on the lowerest level so its below everything.
Hmm unfortunately it sounds like it might require a plugin update to fix that. I’ll look into this when I get some time one day.
Oh that’s ok! thanks anyway. i’ll find a way to make both graphics look good. ;)
Great plugin! One question: should I use
Galv.TOOLS.event.erase();
to remove rocks or should I use
var key = [$gameMap._mapId, Galv.TOOLS.event._eventId, ‘A’];
$gameSelfSwitches.setValue(key, true);
to remove rocks? It seems like you use the latter in your demo but the former seems easier. Can you shed some light on when to use which?
Thanks.
It would depend on your project. I recommend doing tests and looking up what erasing an event does compared to flipping a switch to a new page.
Hey Galv.
I guess you created wonderful plugin.
But have a question for detail about “tools” plugin.
I want to use mouse click button instead “pagedown” or “pagup”
another else “alt” for using tools. Right click or Left.
I tried to write “mouse”, “right”, “click” … what else. But they do not work :(
Please help me in this metter.
In addition, i want to use “picture click” for calling this script.
I don’t have to use any key in keyboard, just use mouse click.
I hope tell you my problem in this issue.
Sorry, I didn’t include that functionality in this plugin
Oh ! Okey whatever
Well,
Is there any way of calling “switch left” and “switch right” by scripts ?
I don’t know, I recommend asking in a forum if someone else might have experience doing that
I solved issue above. But I wonder about something now.
We use to
” Galv.TOOLS.frontEvent(‘rock’,1) ”
in comment event for smash rock.
But i want to ‘aboveEvent’ instead of ‘front’
How can i use this ?
I didn’t add that to the code, you’ll have to ask in a forum for that one, sorry.
Last question
I want to change event’s ‘ID’ or event’s ‘Note’ with script
for “tool” be inactive. Doesn’t work no longer.
I don’t want to erase event just change note or ID with script.
How can i do this :(
Thank you for reply.
That’s not something coded into the plugin, sorry.
Im using Galv.TOOLS.equipTool(id); to manually set the tool after opening a box. I entered the item id number and nothing happens. everything else runs though.
It won’t do anything if the player doesn’t have that item in their inventory. If you pick the tool up from the box and give the player the item, try adding a wait of 1 after giving the item and before equipping the tool.
Nope still nothing. My item is number 19 in the database.
Event code is
change item : Axe +1
wait : 60 frames
Script : Galv.TOOLS.eqiptTool(190:
wait : 60 frames
Control Self Switch : A = On
I even tried adding the item on a separate event parallel process and then activate the first event.
I definitely have the item waaaay before I try the event with the manual code.
I tested it in the demo and it works. Unfortunately without testing your project, I don’t know what you are doing exactly or why it doesn’t work. I assume your above message you made a typo in the script? It should be:
Galv.TOOLS.equipTool(19);
It needs to be an item and not a weapon. I assume you’re using the script field and not the plugin field. Try testing without other plugins running to see if there’s a plugin conflict.
If you still have issues, I recommend asking in a forum to see if someone can work out what’s happening in your project.
yeah its correct in my project..I figured out that Yanflys Itemcore plugin is stopping just that function all other functions work, which is just frustrating. Don’t know what to do about that.
I did try putting your plugin above it and it still doesn’t work.
You did try below it, I assume.
I recommend asking in a forum to see if anyone has time to look into why that’s not working.
yes I did. still no luck. but I have a request, maybe a two part request. I will try to do this on my own also but can you change the swapping of items to weapons instead? the second part would be when the weapon is selected it equips it.
Im thinking I can edit find and replace all codes dealing with items and switch it to weapons. I hope that works. but the equipping part maybe difficult for me.
I thank you so much for this plugin. When I first commented I did thank you and had all the niceties included but then it got erased by the site so when I tried again I wrote the bare minimum. Sorry if I sounded demanding or entitled, I really do appreciate all the plugins you’ve made that I’ve been using. Have a great day!
You’re welcome, I am glad the plugin has been useful. I don’t have any spare time to make the weapon change, though. It might be relatively easy so you could try and ask in a forum if someone else is willing to do a plugin patch for it.
I did it! I got it to swap weapons and use the common event to equip it. (just beware of upper and lower case letters and leave numItems as is) I thought by doing that Yanfly item core would stop interfering with the Galv.TOOLS.equipTool(); but nope, I can just use the manual equip from eventing now though and I like that better anyways. Although when I use the tool the icon disappears I’d much prefer it just goes to the next item. Which Im guessing that’s what Galv.TOOLS.equipTool(); could’ve done for me but is there a work around? Like even if it would just not disappear then I’d disable it and bring it back up when they want to swap again.
what is the function that swaps the weapons maybe I can call it through script or plugin command?
Im sorry for so much responses. but I figured it out
Galv.TOOLS.shiftTool(1)
I can’t remember which was left or right 1 or 0 or -1 just wanted it to shift. Thanks again maybe someone will find this useful.
Glad you got it worked out!
Hi again I definitely tried to figure this out for a while now I ‘m hoping since you are knowledgable with scripting to just help me out with a script call. I want to change the HUD when I select a tool. I got as far as
Galv.TOOLS.hudImg =
I know I need to set this to a picture file name but I don’t know the what the other side of the script call is suppose to be.
Not quite as simple as that. Technically what you want is:
Galv.TOOLS.hudImg = “Filename”;
Without the file extension… BUT, issues with that:
The scene won’t show the new graphic until it is reloaded.
The new filename you chose is not stored in the save file, so if you close the game and open it again, it will revert to the original.
I see I thought as much since I couldn’t find a solution right away. would that same problem exist if I decided to move the tool icon on top of the hud img using
Galv.TOOLS.hudIconXY = [Number(txt[0]),Number(txt[1])];
and changing the txt 0 and 1 to:
Galv.TOOLS.hudIconXY = [Number(25),Number(25])];
what Im trying to do is use the hugimg as the hud for what’s in the players hand. the tool icon disappears when selected but I think I can stop that from happening and just move the icon to cover the hudimg. My hudimg is an icon too.
I am not sure what you’re trying to do, but did you see the notetag for items?
You can select an image from the pictures folder instead of an icon for the equipped tool.
yes I see that but what I wanted was the hud image to change when I equip an item through script but since I can’t achieve that easily, I wanted to know if I can just move the xy position of the tool img by script be it icon or image doesn’t matter. Since the tool image is drawn over the hud image I can do that work around.
this is what happens:
– I made the hud image a hand icon (same size as the tool image icons)
– When you swap tools the tool image\icon xy position is below the hud image
– When you select a tool the tool image disappears
What I want now (instead of changing the hud image) is:
– When you select a tool the tool image xy position moves to the hud image xy position.
You said:
Galv.TOOLS.hudImg = “Filename”; would have issues
would:
Galv.TOOLS.hudIconXY = [Number(25),Number(25])];
have the same issue? Cause I think I can figure out how to stop the tool icon from disappearing on my own and achieve what I want, but if its the same problem, it resetting after game closing.
Yes, same issue would happen with that as that variable is created when someone starts the game and is not saved in a save file.
what if I use variables?
Galv.TOOLS.hudIconXY = [$gameSystem.Variable(1),$gameSystem.Variable(2)];
just example might not be correct code
could I change it in the js file to that
You need to change the plugin to do what you want. I don’t have time to do so, sorry – I recommend asking in a forum to see if someone else wants to.
oh I was talking about changing the the plugin but I guess I could just give it a shot and see if it works. Thank for clarifying though because I would’ve wasted days searching for a way to do it. in the end I could just use a hud plugin it’ll draw above it. I just didn’t want to make all those img files though.
Its a shame, after i fell in love with this plugin a few months ago, i am currently one step away from purchasing MZ… Are there any plans for you, Galv, to bring the features of this plugin into the MZ engine?
I want to, but I haven’t had much time to get to porting them since I had to get 2 jobs to survive. I hope to one day.