Envision, Create, Share

Welcome to HBGames, a leading amateur game development forum and Discord server. All are welcome, and amongst our ranks you will find experts in their field from all aspects of video game design and development.

A custom skill with an unusual effect

I'm working on a game right now and there's a character who is supposed to have a very specific skill, but i can't figure out how to make it work.

Basically it works like this: The character has a skill which when used on an enemy has a chance of inflicting a specific status ailment (Draw Blood). This status does nothing by itself, however...

The character also has a second ability which can be activated at any time. As long as this ability is active (i'll use a status effect to keep track of it) ANY damage done to him is also done to every enemy with the Draw Blood status on them.

He also has an ability in which he wounds his own body to hurt his enemies. It's basically an attack on himself. Self torture, basically.

I'm not sure exactly how to do this, however. I think i might have to use a script to check which enemies have the status effect in question as there doesn't seems to be any suitable way to make a check for this among the events.

Notice that i'm NOT asking someone to write the script for me. I'm just interested in some general guidelines as to how to solve this problem.

I'm quite a n00b to RGSS scripting but i'm not new to programming (c++, basic) so with some guidelines i'll probably be able to solve this. Any tips are greatly appreciated :3

If you can help me with this i'll draw you a custom Naruto, Bleach or One Piece sprite >_>;

http://i6.photobucket.com/albums/y207/K ... yajump.gif[/IMG]
 
I *think* this can be done with simple events.

Create the skill, create the status effect, create a common event for the skill.

Skill Name: Blood Link (just for an example)
Status Effect: Draw Blood
Common Event: Blood Link

Have the skill point towards the common event. Now in the common event itself, enter this:

Conditional Branch: Monster Status is [Draw Blood]

....

Crap, I just lost my train of thought....maybe someone else can continue this for me. I have a head-splitting migraine right now sorry.
 
Hey I'm new in this forum...My name is Cerberus(as you can see,lol) and I'm a RMXP noob(actually I'm kinda good with events,not scripts though!)...from what I see,Mr Alerith's way wouldn't work,cuz the common event would only work when the skill "Blood Link" or whatever it's name is,only when used....but what you're after is the constant checking of the damage dealt to the using hero(of the skill,that is)by the infected monster(with the status)...I frankly don't have any ideas at the moment....but you could play around with troops' battle events....
 
cerberus;126648 said:
Hey I'm new in this forum...My name is Cerberus(as you can see,lol) and I'm a RMXP noob(actually I'm kinda good with events,not scripts though!)...from what I see,Mr Alerith's way wouldn't work,cuz the common event would only work when the skill "Blood Link" or whatever it's name is,only when used....but what you're after is the constant checking of the damage dealt to the using hero(of the skill,that is)by the infected monster(with the status)...I frankly don't have any ideas at the moment....but you could play around with troops' battle events....

Yo, Cerb! I'm rather new here to actually. Yeah. I realized his method would not work because of that reason. I'm sure it has to be done in a script so i'm doing research on how to write it.
 
Interesting, I'm guessing this is Hidan you're talking about. You could try using common events and loops, possibly battle events, but I'd reccomend using a script. It would probably save you a lot of trouble. Plus, having knowledge of RGSS is near essential for complex techniques. I'll try and look around myself, see if I can't figure it out.
 

Anonymous

Guest

I'm assuming you're using some sort of individual battle commands script? Or is this a skill he can use to injure himself?

That aside, in Scene_Battle 4, you'll find phase 4 of the default battle. This is where all the action takes place. If it's a skill, you'll want to put this in #make_skill_action_result. If not, you'll probably want to create a custom action kind and a new method (make_blood_draw_action_result?) to hold this.

At any rate, the enemies you're currently fighting are stored in an array in a global variable ($game_troop.enemies), and Game_Battler has the accessible attribute states, and Game_Enemy inherits from Game_Battler. So:

Code:
for enemy in $game_troop.enemies
  if enemy.states.include?(i)  # replace i with state number from database
   # deal damage, show battle anim, show damage pop
  end
end

For damage pop, you need to set the damage attribute of the Game_Battler object to an integer, and set damage_pop to true. For animations, set the animation_id attribute of the Game_Battler object to the animation number from the database (omit leading 0's, numbers starting with 0 are read as octal) and animation_hit to true.

Hope that helps, if it's not enough information, let me know.
 
Towairaito;132555 said:
Interesting, I'm guessing this is Hidan you're talking about. You could try using common events and loops, possibly battle events, but I'd reccomend using a script. It would probably save you a lot of trouble. Plus, having knowledge of RGSS is near essential for complex techniques. I'll try and look around myself, see if I can't figure it out.

Yep. Hidan :P

I'm making a Naruto parody game, sortof.

The current custom sprites:
http://s6.photobucket.com/albums/y207/KGanryuS/?action=view&current=Akatsuki_V1_big.jpg

ccoa;132704 said:
I'm assuming you're using some sort of individual battle commands script? Or is this a skill he can use to injure himself?

That aside, in Scene_Battle 4, you'll find phase 4 of the default battle. This is where all the action takes place. If it's a skill, you'll want to put this in #make_skill_action_result. If not, you'll probably want to create a custom action kind and a new method (make_blood_draw_action_result?) to hold this.

At any rate, the enemies you're currently fighting are stored in an array in a global variable ($game_troop.enemies), and Game_Battler has the accessible attribute states, and Game_Enemy inherits from Game_Battler. So:

Code:
for enemy in $game_troop.enemies
  if enemy.states.include?(i)  # replace i with state number from database
   # deal damage, show battle anim, show damage pop
  end
end

For damage pop, you need to set the damage attribute of the Game_Battler object to an integer, and set damage_pop to true. For animations, set the animation_id attribute of the Game_Battler object to the animation number from the database (omit leading 0's, numbers starting with 0 are read as octal) and animation_hit to true.

Hope that helps, if it's not enough information, let me know.

Thank you. That was just what i needed to know.
 

Thank you for viewing

HBGames is a leading amateur video game development forum and Discord server open to all ability levels. Feel free to have a nosey around!

Discord

Join our growing and active Discord server to discuss all aspects of game making in a relaxed environment. Join Us

Content

  • Our Games
  • Games in Development
  • Emoji by Twemoji.
    Top