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.

LoD Combo System...

Title refers to Legend Of Dragoon...

I searched for it..and I looked through many other forums relating to combo system stuff..but yet nothing contained what I need..(well want..it really isnt a need) What I need is I hope simple...

Example (One Button Push):
If Hero1 Selects Attack, then selects an Enemy, a special event should happen..(Everytime You select an enemy) You should be able to push a button in sync with a timed bar or timer...and execute a part of an attack...but if you miss the button push it only executes one attack..not two..

ok I feel like I explained that wrong...let me try again...

If you attack an enemy...(Lets say Hero1) And Hero1 uses a sword...and has the "Addition" (I'll figure out a better name) "Double-Slash" selected for the battle...(Pre-selected before battle) okies...I say a push button sequence should then pop up, arrow keys..letters...etc...but just 2 button push sequence...and a red bar should pop up..decrease to 0 at a set time (Dont matter the time) and if the user pushes the shown button then the combo continues...then another button appears for the next attack (same scenario with the bar thing) and if the person misses the button..or pushes the wrong button, the attack should halt and Hero1 has to end his/her turn...if you need a better explanation go ahead and ask..im trying my best to explain this....

Ill try one more example:

1. Prebattle Addition select (A Common Event done on map or menu or w/e)
2. Selected Double Slash (Two Button Combo)
3. Battle
4. Hero1 Uses Attack
5. Before the Hero Attacks, a Button (Up Arrow Picture) Appears (Center of Screen)
6. A Two Layered Bar (Timer Thing) Also Appears (Red on top, Black underneath) (Hopefully underneath arrow picture)
7. User Inputs Up Arrow Key Before Timer Ends
8. Attack One Is Initiated (Damage is 55-65% of Total Damage)
9. Another Button appears (Down Arrow Picture) (Center Of Screen)
10. Red Bar Timer Again Appears underneath picture
11. User Inputs Down Arrow Key Before Timer Ends
12. Attack Two Is Initiated (Damage is 35-45% Of the Total Damage)

And this is all done Using the normal combat system (Not that side view one).
 
LoD battle system is really interesting, yet a little bit complicated. Since you entitled LoD, and I know LoD system, let me make things clearer (to make your script easier, or maybe harder to do ;))

1. Does each actor have his/her own Addition skill? Let's say...

We have AddSkill1 and AddSkill2. Will everybody be able to perform it, or just some of them? Maybe...
Arshes can perform AddSkill1, but not AddSkill2
Basil can perform AddSkill2

2. Do addition skills level up? If not, it makes things easier ;)

3. If #2 answer is "no", will every addition skills make 2 combo only? Or each skill can perform different number of combo. Let's say...

AddSkill1 perform 2 combo
AddSkill2 perform 2 combo or not?

4. Do must-to-press buttons appear at random or are specified first? Let's say...

AddSkill1 always perform Up and Down button, or
AddSkill1 may perform Up/Down at a time, and Left/Up at the other time.

5. You sure don't need the counterattack system, do you? ;)

6. About the damage%, are they the same for every skill, or each skill has their own damage%? Let's say...

AddSkill1 has 55-65% and 35-45%
AddSkill2 has the same one, or maybe 40-50% and 50%-60%?

I don't really sure though how you define those (just guessing :D).

Interesting, but I don't have time to make it right now :( if no one makes it, I'll try after July 2007.

EDIT:
I found this timed-based battle system. Maybe you want to look at it and mention which features you'd like to keep? Find it here: http://www.rmxp.org/forums/showthread.php?t=19042
 
I would do it myself if I knew RGSS, but alas I have yet to learn it...(Ide use logic..or html...or a different scripting but it seems that RGSS doesnt use any of them..lol...)

1. Yes each character should have his/her own addition skill's...

2. That make take to long to make a leveling addition...but if possible...just make a counter count up for each skill used... (addskill1_times, addskill2_times, etc...) this would make it so the characters would each obtain an addition after so many uses...

3. Hmmm...it would be cool if the additions could link..but that is a different system I have in mind...;)

4. If it would make it easier, then yes it could be set button combo..or random..whatever works for you...(I really dont mind what it is...do waht you think It should be)

5. (Feels like I just got baited...lol) counter attack system...hmmmm...I thought of that..but it isnt neccesary...do it if it makes you feel better..lol...but it would be a tad complicated with random button pushing and a counter..yet very challenging to the player...perhaps so..do it if you want...

6. I forgot to add that...damage percent would be good...what if it was bonus damage? like you complte the move..do your damage...then if the addition was completed succesfully add bonus damage...so addskill1 would get 25%-35% bonus....addskill2 would get 35%-45% damage...and so forth...should be customizable to fit it to my needs...its not that I cant read the coding or anything..just dont know how to script it...

And about that timed base system..I tried it...its a good system..but not of what I like..the LoD combo system soo much better...if it works...lol...thanks for considering that..

I am gonna have the blitz system going along with the LoD system..so both skill and attack has special button pushing events...but the question is...can the LoD system be compatible with the blitz system? (the blitz system im using...is not coded with the SDK thing...and if i did put sdk into the game..it would make the Blitz system useless, If only the blitz system could be changed to be used with sdk....ill post a topic about that one...)
 
It has been some months and I was wondering if someone could do this or atleast give me some examples I can work off of in order to make this script work...I really don't know much about this scripting but I am getting an idea of how it works..but still..examples...or even the whole script would be very much appreciated...

Thanks in advance!!

And If possible...the examples could contain only the script for actor 1, and hopefully 2 combos atleast..(Because I can't work off of just 1 combo attack...I could try..but my scripting knowledge is very limited...) and I hope combo one has one button push and the second combo has 2 or 3 button pushing...
 
Here's how I would go about a system like this:


In RPG::Skill, create some new stats for skills that have combinations and such. Since each skill that you set as your active attack, it will have x combinations and they will happen at x times with x animations.

Code:
class RPG::Skill
  LOD_Skill_Settings = {}

  # Begin Mods Here

  # Starting a skill setting
  LOD_Skill_Settings[skill_id] = []
  # Add Timing, and animation id to play as attack
  LOD_Skill_Settings[skill_id] << [20, 1]
  LOD_Skill_Settings[skill_id] << [25, 2]
  LOD_Skill_Settings[skill_id] << [15, 1]
  
  # End Mods Here
  LOD_Skill_Settings.default = []
  
  def is_a_lod_combo_skill?
    return LOD_Skill_Settings.keys.include?(@id)
  end
  def lod_combo_setting
    return LOD_Skill_Settings[@id]
  end
end

Now, you will need something to set which skill is your active skill combo, list of which actors have which skill combos, and what the starting skill combo is. Something like this is a sample startup.

Code:
module LOD_Combo_Settings
  # actor_id => skill_id
  Startup_Combos = {}
  # actor_id => { level => skill_id, ... }
  Learnable_Skill_Combos = {}
end

class Game_Actor
  attr_accessor :lod_skill_combo_id
  attr_accessor :lod_skill_combo_list
  alias_method :seph_lodskillcombos_gmactr_setup, :setup
  def setup(actor_id)
    seph_lodskillcombos_gmactr_setup(actor_id)
    @lod_skill_combo_id = LOD_Combo_Settings::Startup_Combos[@id]
    @lod_skill_combo_list = []
    for i in 1...@level
      if LOD_Combo_Settings::Learnable_Skill_Combos.has_key?(@id)
        if LOD_Combo_Settings::Learnable_Skill_Combos[@id].has_key?(i)
          @lod_skill_combo_list << LOD_Combo_Settings::Learnable_Skill_Combos[@id][i]
        end
      end
    end
  end
end

Now you have the inner part of the system done. From here, in Scene_Battle 4, when you are making an attack, you need to create an instance variable for what attack frame you are in. (Start with 0) When it sets the @phase4_wait_count or whatever it is, set it equal to the wait count set in the RPG::Skill class skill setting (read the first variable in the array (your_skill.lod_combo_setting[@your_instance_variable][0]). Depending on how many frames you want to give your player to press your combo button, add half of that to the wait count as well.

Now, you will need to create a sprite (I suggest a custom Sprite_LOD class), that draws a square starting from the outside of the screen, to the inner screen. Something that draws a square the gets smaller as the timer decreases. This should be fairly simple to pull off.

Now in your step 4 or 5, keep checking if your combo button is pressed. If it is pressed, compare how many frames you wish the player to have to get hit the button with the current wait count. If they press it right, then restart step 1 in phase 4, set the players animation, reset your timer, etc. I actually recommend making a new method for this, and just sending it back to the right step in phase4. That all is if the combo isn't already completed. Then just do whatever.

That would be a true lod combo system. Of course you could modify it to have any button, and specify it your RPG::Skill class.

This isn't something a beginner scripter can pull off without a lot of dedication, and even then, it may not be the best way, but it doesn't take a master scripter either.
 
Ok, Now one thing, is this for an Attack sequence and not a skill/magic sequence in battle? Or is this for a skill/magic sequence and not an Attack sequence? And if is the latter, then I really hope it can be turned into an attack sequence.

Idk if that made sense so heres an example...

1. Player chooses fight in the battle scene.
2. Player chooses Attack for actor 1 (Not the Magic/Skill Button)
3. Player chooses the other actors actions
4. When it becomes Actor's 1 turn, then the LOD combo system starts working, thus player try's to do the combo button pushing...

The code above looks like it is for a Skill/Magic sequence...since the word skill is used...or maybe I don't know what I am talking about...but if it is for the Skill/Magic sequence, then I hope this couild be translated to an attack sequence....and what I am thinking, since this would be using the attack, wouldn't there need to be combos.rxdata file? then the attack combos can be scripted into that...I remember seeing in tricksters Steal/Mugging/Scan script that he uses a steal.rxdata...I was just curious about this...

And i read through all of what you said Seph and well, it is for an Attack sequence, I was just reading things to quick and skipped over some stuff...but I still am curious about the .rxdata file stuff...
 
It is for the attack sequence. I would just use the skill tab to set you skill name, icon, etc. You could create your own 'AttackSequence' class, but I figured this would be just a little easier.

I actually feel a little inspired to do a little work on this system. If I find a free moment, I might take it a little farther.
 
Well...I made the sprite for the time bar and such...but would it be better to use gradient bars? i would think sprites would be a tad easier..im not completely sure...but I would rather the sprite..hmmm...but i looked the code over and over...and i really tried since the code post you put...and thus i have completely only made errors over and over..so i trashed and tried to start over agian...but i havent added to the code yet...I understand methods and arrays and such...but i dont know all the commands that you can use..and the SDK is something I am currently looking over...i am going to use commands off of that....I do appreciate the small code that you provided, but I dont understand the scripting language enough to do anything, so if possible...i little more help woulod be nice...and all I want for now is to be able to do one combo...if i can figure out how 1 combo works...and i dont want to worry bout the choosing screen part...the screen which is used to select the attack that will be used for each battle...i just want to get the combo part down...and with one small (2 button) combo for the 1st actor..make it a triple slash attack...then i could probably learn how to add to it and such...and thanks for taking the time to explain how to make the code work...but I still dont know that much scripting....
 

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