Submit Your Article


 
RPG Maker

Welcome Guest ( Log In | Register )


  Games Resources RPG Maker VX RPG Maker XP Scripts Tutorials Downloads

 
Closed TopicStart new topic
> Grathnode Install
Kread-EX
post Jan 17 2012, 11:58 AM
Post #1


(=___=)/
Group Icon

Group: +Gold Member
Posts: 4,136
Type: Scripter
RM Skill: Undisclosed




Grathnode Install


Version: 1.11

Author: Kread-EX


Introduction
This script is inspired from the Ar Tonelico series. In a nutshell, it allows the player to assign special items called Grathnode crystals to skills in order to add special effects.
For an in-depth explanation, you will create items with certain properties. They can cause damage, possess traits, etc... When one of those items is put inside a skill, the skill will take all its properties, be it additional damage with a different formula, or status effects, debuffs... The "upgrades" made that way are actor-dependent, meaning that several actors with the same skill won't necessarily share the same Grathnodes set.

Instructions
There are several steps to follow in order to use this script.

Create the grathnode items. It is a regular item, which can cause damage/recovery, have certain traits and so on... All of those abilities will be transferred to the skill. Therefore, for balancing issues, really powerful Grathnodes with a lot of effects should be scarce in-game because for all those effects only one slot will be used.
There are several tags that can be written in the item's notebox:

CODE
<grathnode>

Mandatory tag used to identify an item as a Grathnode crystal.

CODE
<scope: string>

This tag allows you to determine on which kind of skill an effect can be applied or not. "string" can be any of those:
CODE
for_opponent?
for_friend?
for_dead_friend?
for_user?
for_all?

Basically, the item scope must match the skill scope. If you omit this tag, the Grathnode can be used on any skill; you could potentially put damaging effects on healing spells for instance.

CODE
<mp_inflation: x>
<tp_inflation: x>

The MP and/or TP cost of the skill will raise per x% if this item is assigned.

Limit the slots on the skills. By default, a skill can take 5 items at maximum. However, you can balance things out by limiting the number of slots either individually or globally. Global setting can be accessed within the script: you need to change the value for ABSOLUTE_MAX_GRATHNODES to whatever you fancy. Note that this script's visual interface is not designed for more than 5 slots.
Individual settings are made in the skill's notebox, with this tag;
CODE
<max_grathnodes: x>

x should be below ABSOLUTE_MAX_GRATHNODES and will actually be ignored if superior.

Call the scene. SceneManager.call(Scene_Grathnode) is the way to go; however, this is an actor related scene, just like Skill or Equip. Therefore, it is strongly recommended to use a menu manager to put the option directly in the main menu. I prepared beforehand the required methods to use with Yanfly's Ace Menu Engine so you would be well inspired to use it. All you have to do is add this line in the CUSTOM_COMMANDS hash:
CODE
:grath => [ "Install", 0, 0, :command_install],

Needless to say, you can rename "Install" to whatever you want, and you're free to add switch conditions too. Refer to the script for more details.
Once it's done, just add :grath to the COMMAND hash.

Screenshots





Script
Download

Compatibility
Works with most of Yanfly's scripts, as we both try to maintain compatibility with each other.

Terms and Conditions
You are free to adapt this work to suit your needs.
You can use this work for commercial purposes if you like it.
Credit is appreciated.

Special Thanks
The sheer volume of bugs this script contained (and it might contain more) has been fixed thanks to Yanfly, Adalwulf, renegat92, killer690, Cassy and etanal. They did report quite a lot on my blog.


__________________________
FRACTURE - a SMT inspired game (demo) made by Rhyme, Karsuman and me. Weep and ragequit.

My blog.

Click here for my e-peen


Go to the top of the page
 
+Quote Post
   
Kread-EX
post Jan 19 2012, 12:24 PM
Post #2


(=___=)/
Group Icon

Group: +Gold Member
Posts: 4,136
Type: Scripter
RM Skill: Undisclosed




Fixed compatibility issues with Cannibalism and various YF scripts. Fixed my post too actually, since it was a mess due to my system being set to Japanese locale.


__________________________
FRACTURE - a SMT inspired game (demo) made by Rhyme, Karsuman and me. Weep and ragequit.

My blog.

Click here for my e-peen


Go to the top of the page
 
+Quote Post
   
Kread-EX
post Jan 20 2012, 01:58 PM
Post #3


(=___=)/
Group Icon

Group: +Gold Member
Posts: 4,136
Type: Scripter
RM Skill: Undisclosed




Fixed another important bug, so you really should download again.


__________________________
FRACTURE - a SMT inspired game (demo) made by Rhyme, Karsuman and me. Weep and ragequit.

My blog.

Click here for my e-peen


Go to the top of the page
 
+Quote Post
   
Ndoelicious
post Jan 20 2012, 03:20 PM
Post #4


Level 15
Group Icon

Group: Revolutionary
Posts: 282
Type: Mapper
RM Skill: Intermediate
Rev Points: 50




Nice! Feels like an IPC already here..
thanks dude ^^


__________________________
One idiot is actually talk more than three geniuses combined!
-Patrick Star-

Go to the top of the page
 
+Quote Post
   
Milton Monday
post Jan 25 2012, 07:55 PM
Post #5


Unassuming Local Guy
Group Icon

Group: Revolutionary
Posts: 634
Type: None
RM Skill: Beginner




A few questions from a scripting n00b who's planning out his project, playing with the trial and very much likes the look of this script...

1) Is it possible for the user to change the term "Graphnode" to something more... lore friendly? I don't have Reyvatiels running around my game world, after all.
2) Can I restrict the graphnode menu to a single actor and skillset? How would I go about doing that? Not a huge concern, but the game would seem sort of unpolished if all party members were able to access a feature only one of them can actually use.
3) What happens to equipped Graphnodes if the skill is removed from the actor? Are they returned to the inventory? Stay in place (and inaccessible) until the skill is regained? The system I'm planning involves swapping out spells via equipment, so this is a concern for me.

None of these are deal-breakers, though, and this script looks seriously awesome. I can find work arounds or make compromises if necessary.


__________________________
"Game development is a very special job that requires a very special person. The high stress levels often drive our staff members to become...subhuman. They're violent and need to be caged. But we need them to make good games. This is the unfortunate truth of the game industry." - Segagaga
Go to the top of the page
 
+Quote Post
   
Kread-EX
post Jan 26 2012, 12:31 AM
Post #6


(=___=)/
Group Icon

Group: +Gold Member
Posts: 4,136
Type: Scripter
RM Skill: Undisclosed




1) Yes, you can change the name. Just find this in the beginning of the script:
CODE
  module VOCAB
    GRATHNODE = 'Grathnodes'
  end
And change the GRATHNODE value to whatever you want to be displayed. You can use pretty much any item you want to do the trick.

2) The menu is accessible to everyone. I can make you the required modification to restrict the usage if you want. You'd need to tell me how you access it however (by menu, by script call) and if there is a possibility that you need to extend the scope of users.

3) If you forget the skill, the grathnodes stay on it and are as such inaccessible. Again, it's easy to change, so I can do it if you need them to be removed.


__________________________
FRACTURE - a SMT inspired game (demo) made by Rhyme, Karsuman and me. Weep and ragequit.

My blog.

Click here for my e-peen


Go to the top of the page
 
+Quote Post
   
Milton Monday
post Jan 26 2012, 05:48 AM
Post #7


Unassuming Local Guy
Group Icon

Group: Revolutionary
Posts: 634
Type: None
RM Skill: Beginner




1) I thought that's what that might have done, but like I said, I'm a n00b and didn't want to explode anything.

2)That would be great! I'm (going to be) using Yanfly's Ace Menu Engine, so that's squared away (I managed to get that much working, at least). If you could tweak it so that only Actor 1's Magic (Skill Type 1) is accessible, and disable Q/W toggling through party members, that would be ideal for my purposes.

EDIT: Never mind this part, I found a work around by calling the script via a common event command from the menu and removing all party members before hand, then re-adding them and opening the system menu once the scene is finished. Not very elegant, perhaps, but it works and is almost seamless. Since I don't use the caterpillar system, the player ought to be none-the-wiser.

3)That'd be helpful, but not essential. I really just wanted to know what to expect. Automatically unequipping graphnodes would be convenient for the player, but the spell-granting items would be unique and unsellable, so it's not like they could lose their graphnodes forever in a moment of absent-mindedness.

EDIT: Easy work around, using the same method, giving the characters all the skills they own the corresponding items for before the menu opens, and removing them after it closes (while temporarily removing non-magic skills as well). The player can add graphnodes to a spell even if it's not currently equipped that way, and they have less menu fiddling to do to set up a specific spell. Also handy if I decide to implement mid-battle hot-swapping; the player can have their spells set up in advance. This method actually works out better than an auto-unequip would.

Thanks for clearing things up!

This post has been edited by Milton Monday: Jan 26 2012, 06:58 PM


__________________________
"Game development is a very special job that requires a very special person. The high stress levels often drive our staff members to become...subhuman. They're violent and need to be caged. But we need them to make good games. This is the unfortunate truth of the game industry." - Segagaga
Go to the top of the page
 
+Quote Post
   
Kread-EX
post Jan 30 2012, 01:11 PM
Post #8


(=___=)/
Group Icon

Group: +Gold Member
Posts: 4,136
Type: Scripter
RM Skill: Undisclosed




Sorry I haven't checked this topic in a while. Anyways, it's great you found workarounds for the issues and I have to say this isn't surprising coming from you. Nevertheless, I implemented the options you wanted via script in case you run into future problems or anything of the sort.

- In the config module, setting CLEAR_FORGET_SKILL to true will liberate all grathnodes when a skill is forgotten. This only applies to the installs belonging to the actor in question (if two actors have the skill with different grathnodes and one forgets it, only the grathnodes of that actor will be removed).

- You can tag an actor to be unable to use the function. Use the following script call:
CODE
$game_actors[actor_id].barring_grathnode = true

This actor will not be listed and won't be available when you press the Q/W buttons to switch between members. If you're using YF Ace Menu Engine, you won't be able to select them in the main menu either.

- You can also make the entire menu available for one single actor and nobody else. In this case, the menu will always display the chosen actor and nobody else - no selection will be involved at all. You'll need to check the following conditions in the config module:
CODE
  SINGLE_ACTOR_INSTALL = false
  SINGLE_ACTOR_INSTALL_ID = 9

The first enables the single actor mode and has to be set to true.
The second is the ID of the actor who will use the system.


__________________________
FRACTURE - a SMT inspired game (demo) made by Rhyme, Karsuman and me. Weep and ragequit.

My blog.

Click here for my e-peen


Go to the top of the page
 
+Quote Post
   
Milton Monday
post Jan 30 2012, 05:38 PM
Post #9


Unassuming Local Guy
Group Icon

Group: Revolutionary
Posts: 634
Type: None
RM Skill: Beginner




You, sir, are awesome incarnate.

I'm still quite interested, as this would make everything much cleaner! My workarounds were marginally functional, but clumsy, as event based work arounds often are. The first one ended up not working so well after all; after some more testing, it goes to the last selected actor, whether they're in the party or not. Facepalms ensued. Calling the script via common event skill solved that problem but it was, well... pretty dinky.

In short, Thankyouthankyouthankyou.


__________________________
"Game development is a very special job that requires a very special person. The high stress levels often drive our staff members to become...subhuman. They're violent and need to be caged. But we need them to make good games. This is the unfortunate truth of the game industry." - Segagaga
Go to the top of the page
 
+Quote Post
   
GameMakerXD
post Feb 19 2012, 04:28 PM
Post #10



Group Icon

Group: Member
Posts: 1
Type: Developer
RM Skill: Masterful




Good Job!
Go to the top of the page
 
+Quote Post
   

Closed TopicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 

Lo-Fi Version Time is now: 18th June 2013 - 12:51 PM
RPG RPG Revolution is an Privacy Policy and Legal
eXTReMe Tracker