Felskis Skilltree Plugin

Felski

Veteran
Veteran
Joined
Jan 5, 2018
Messages
113
Reaction score
95
First Language
german
Primarily Uses
Other
@boikish
1.) I have no intention to do this. I will consider it, but it is unlikely that I will do this soon.
2.) The terms should be respected. I suggest that you write another plugin file and just overload the functions. Also, are you on Linux or MAC? Kinda weird that the "/" is not working.
3.) Same as 2.

Best regards,
Felski
 

Jrrkein

Insert Witty Title Here
Veteran
Joined
Apr 20, 2014
Messages
164
Reaction score
37
First Language
Indonesia
Primarily Uses
RMMV
@Felski Why the game suddenly lags a bit when viewing a skilltree?
 

boikish

Always trying to help :)
Veteran
Joined
Sep 8, 2016
Messages
154
Reaction score
49
First Language
English
Primarily Uses
N/A
@Felski thanks for the reply. I am on Windows. I'm unsure why the issue exists regarding the forward slash..

The terms should be respected. I suggest that you write another plugin file and just overload the functions.
Can you explain what you mean by this? I would happily write another plugin file, but I don't want to rip off your hard work by copying the bulk of your coding.
 

Felski

Veteran
Veteran
Joined
Jan 5, 2018
Messages
113
Reaction score
95
First Language
german
Primarily Uses
Other
@Felski Why the game suddenly lags a bit when viewing a skilltree?
There are some calculations done when you open the tree menu. That might lead to lags. Kinda depends on how many nodes are in the tree.

@FelskiCan you explain what you mean by this? I would happily write another plugin file, but I don't want to rip off your hard work by copying the bulk of your coding.
I think overloading is the wrong word here. I meant overwriting. Basicly copy the function you need to change to an extra plugin file. Don't alias it and just change it to your needs. That way you dont change the original plugin file and still change the way the plugin works.
 

Jrrkein

Insert Witty Title Here
Veteran
Joined
Apr 20, 2014
Messages
164
Reaction score
37
First Language
Indonesia
Primarily Uses
RMMV
Just 3 goes to the left and 1 bottom node.
 

Felski

Veteran
Veteran
Joined
Jan 5, 2018
Messages
113
Reaction score
95
First Language
german
Primarily Uses
Other
That's weird. Does the same error happen when you replicate it in a fresh project?
 

Jrrkein

Insert Witty Title Here
Veteran
Joined
Apr 20, 2014
Messages
164
Reaction score
37
First Language
Indonesia
Primarily Uses
RMMV
It's not a bug, I have a tree that points to the right and 1 below the first section.
 

Felski

Veteran
Veteran
Joined
Jan 5, 2018
Messages
113
Reaction score
95
First Language
german
Primarily Uses
Other
I understand that, but does it also lag in a fresh project? You can also send me the project folder, then I can check it out.
 

Felski

Veteran
Veteran
Joined
Jan 5, 2018
Messages
113
Reaction score
95
First Language
german
Primarily Uses
Other
Just pushed a major update for the plugin. You can now bind skilltrees to classes. Also Yanfly's Class Change Core is compatible.
You can check out the full changelog here.

@boikish This update should fix the loading issue you had.

@Jrrkein This update should fix your performance problems.
 

boikish

Always trying to help :)
Veteran
Joined
Sep 8, 2016
Messages
154
Reaction score
49
First Language
English
Primarily Uses
N/A
Works great. Thanks!
 

falken14

Veteran
Veteran
Joined
Dec 6, 2016
Messages
55
Reaction score
20
First Language
English
Primarily Uses
Great job Felski. The plugin works well in-game so far, and the tree builder makes it very easy to construct a tree without having to use a lot of notetags.

Some suggestions for a future version:
- Play SE upon learning node;
- Show a database animation on the node upon learning node.

Keep up the good work :thumbsup-left:.
 

Crysillion

Veteran
Veteran
Joined
Sep 25, 2014
Messages
138
Reaction score
20
Primarily Uses
Hey Felski. One thing I don't quite understand with your plugin is how to move between skill trees.

For instance, in your demo, one of the characters has more than 1 Tech Tree. They have HEALER and HOLY. However, when I open up their skill tree, all I can see is the HEALER tree. I cannot figure out a way to move to their HOLY tree.

EDIT: Oops, looks like I just had an old version. I updated it and it looks fantastic. Thanks.
 

Felski

Veteran
Veteran
Joined
Jan 5, 2018
Messages
113
Reaction score
95
First Language
german
Primarily Uses
Other
Hey Felski. One thing I don't quite understand with your plugin is how to move between skill trees.

For instance, in your demo, one of the characters has more than 1 Tech Tree. They have HEALER and HOLY. However, when I open up their skill tree, all I can see is the HEALER tree. I cannot figure out a way to move to their HOLY tree.

EDIT: Oops, looks like I just had an old version. I updated it and it looks fantastic. Thanks.
Hi Crysillion,

I recently changed the way that works. In the older version you could only change to another tree by clicking on it with the mouse. The new version is more in line with how MV handles menus normally.
Glad you enjoy the plugin. Have fun!

Cheers,
Felski
 

Crysillion

Veteran
Veteran
Joined
Sep 25, 2014
Messages
138
Reaction score
20
Primarily Uses
I was poking through your code trying to figure out a way to disable the automatic displaying of skill ability text. Here's an example:

https://i.imgur.com/DZhD6wu.png

The top text of "ATK Aura" is something I defined and it's great that it's there, but what I'm seeing is that within the window itself lay the skill name and its skill description. As you can see - in my example - listing the skill name is redundant because it's already in the name of the node itself.

The real issue for me is the forced inclusion of the skill description. If I'm trying to use text scaling or color codes or what-have-you within the skill description itself, it does not translate well into your plugin.

If at all possible, would there be a way to exclusively use the tech_description node? I can definitely put all of the necessary info there, but not if I don't have a way to opt out of how it forces the skill acquired to be displayed in fullness the way it is now.

Apologies in advance if it's something I overlooked somewhere.
 

Felski

Veteran
Veteran
Joined
Jan 5, 2018
Messages
113
Reaction score
95
First Language
german
Primarily Uses
Other
@Crysillion
Thanks for the feedback. I'm glad people use the plugin.
Currently the description of the skill is always included. I'm gonna make this optional in future updates.
For now, if you want to change it, just create a new plugin file add copy the function Window_Techtree_Confirm.prototype.drawNodeInfo into it.
Then change comment out this line "this.drawTextAutoWrap(skill.description, x, y+ih*i+lh*2, (w-ip));" (line 2729 in the original file).
Load the new plugin after my plugin and the description should be gone.

Cheers,
Felski
 

Crysillion

Veteran
Veteran
Joined
Sep 25, 2014
Messages
138
Reaction score
20
Primarily Uses
@Felski

Honestly, this is one of those hidden gem plugins. I'm surprised I don't see people talking about it more often. People have asked about skill tree plugins like this for ages and have always been met with how it's such a huge task that nobody wants to do it, so it's great that you're willing to do it in a publicly available fashion.

That said, your suggested fix works and I'm thankful for that, however I'm running into a new issue where the tech_description doesn't wordwrap. No big deal, I can just break lines manually, except I'm not sure if I actually can. I've tried /n and that didn't quite work. What would I type to start a new line in the tech_description?
 

Felski

Veteran
Veteran
Joined
Jan 5, 2018
Messages
113
Reaction score
95
First Language
german
Primarily Uses
Other
Hi Crysillion,

thanks for your kind words. You could use the drawTextAutoWrap function, but I think the plugin still uses the bugged one. Here is the updated version:
Code:
Window_Base.prototype.drawTextAutoWrap = function (text, x, y, maxWidth) {
    if (!text) {
        return 0;
    }
    const words = text.split(' ');
    let lines = 1;
    let x2 = x;
    let y2 = y;
    words.forEach((word) => {
        word = this.convertEscapeCharacters(word);
        const width = this.textWidth(word + ' ');
        // Check for linebreak symbol '/n'
        if (word === `\x1bn`) {
            lines++;
            y2 += this.lineHeight();
            x2 = 0;
        }
        if (x2 + width >= maxWidth) {
            lines++;
            y2 += this.lineHeight();
            x2 = 0;
        }
        this.drawText(word + ' ', x+x2, y2);
        x2 += width;
    });
    return lines;
};
 

falken14

Veteran
Veteran
Joined
Dec 6, 2016
Messages
55
Reaction score
20
First Language
English
Primarily Uses
Hi @Felski

I echo the sentiments of Crysillion. Have you considered my suggestion of having a plugin parameter to set a custom SE on activating a node? As I was testing my trees, I found it was very underwhelming to learn a final skill e.g. "Ultimate Omni-Slash Lv.99" and only get the cursor sound.
 

Felski

Veteran
Veteran
Joined
Jan 5, 2018
Messages
113
Reaction score
95
First Language
german
Primarily Uses
Other
Hi @Felski

I echo the sentiments of Crysillion. Have you considered my suggestion of having a plugin parameter to set a custom SE on activating a node? As I was testing my trees, I found it was very underwhelming to learn a final skill e.g. "Ultimate Omni-Slash Lv.99" and only get the cursor sound.
Hi @falken14 ,

thanks for your kind words. I've read your suggestions and I think they are really good and I want to implement them. Recently I sadly didn't had time to work on the plugin, but I'm collecting and considering every suggestion made so far. I just need to find time :).
The animation you mentioned, do you want to see it in the skilltree scene or back on the map?

Best regards,
Felski
 

falken14

Veteran
Veteran
Joined
Dec 6, 2016
Messages
55
Reaction score
20
First Language
English
Primarily Uses
Hi @falken14 ,

thanks for your kind words. I've read your suggestions and I think they are really good and I want to implement them. Recently I sadly didn't had time to work on the plugin, but I'm collecting and considering every suggestion made so far. I just need to find time :).
The animation you mentioned, do you want to see it in the skilltree scene or back on the map?

Best regards,
Felski
I understand, no rush. I thought it would look good to play an animation in the skilltree scene appearing to show the node glowing or sparkling, similar to that shown in FFX when activating a sphere grid node:

freegifmaker.me_2dx5s.gif

The player might have to make a custom animation to fit their node dimensions, but I think that would be fairly straightforward.
 
Last edited:

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

Oh my gosh. Thank you, Macy's! Thank you so much! You have made me very happy!
Happy Thanksgiving everyone! What are you thankful for? I'm thankful that I no longer have PTSD, and that I get to enjoy a good meal with my mom and stepdad! It might not be the same as before COVID, but at least I still get to enjoy the holiday!


Made another map, this one even has a cool moving waterfall. I'll have an animated GIF later whenever I'm done adding stuff. :LZSwink:
Back here again?! RPG MAKER, I can't quit you. :kaosigh:

Forum statistics

Threads
105,547
Messages
1,014,534
Members
137,225
Latest member
d5n1hit
Top