Octopath Traveler's Battle System Plugin Request

● ARCHIVED · READ-ONLY
Started by ThunderDragon32 20 posts View original ↗
  1. Essentially, I would like to have the boost battle system used in "OctoPath Traveler" as a plugin for Rpg maker mv.

    I would like it to have full customization.

    How does this battle system work?
    Every turn a character is given a BP point (Boost Point) which is used to pay for stronger versions of skills.
    Only up to 5 BP can be held by a character.
    After attacking after using a BP the character will not receive one next turn.
    For the standard attack it lets you attack again, so 3 BP for a standard attack would make the character attack 3 times.

    I would like to have a way to increase attack power/add status effects in the skills note tag box for battle point usage.

    Characters have a way to change weapon during battle.

    If its possible, in the game an aura effect is shown around a character during using a BP point I would like to have the option to have a animation play when using BP.

    Enemy Shield Counter:

    Every enemy in the game has a weakness, when first encountering an enemy you will see a ? box under the enemy.
    When using the correct weapon the ? box turns into that weapon showing they're weak to it and reducing their shield counter down.

    Lets say, enemy A has 2 shield points, attacking him with the correct weapon twice would break the shield and stunning him so he can't attack next turn.

    After the next turn is over he would have a priority and would attack first and the shield counter would be back to normal.

    I would like a way to put in the enemy note tag box to put the number of shield points/weaknesses.

    A way to put in Icon weakness/shield Counter IMG

    Also the game has "BREAK" show up when reducing the enemy shield counter to 0, so a way to have a IMG fade in and out that would do that would be great!

    I would also like to have a skill to have the ability to show weaknesses.

    This might require the creation of a new Turn order display.

    I hope I have explained this enough, here is a video of the battle system in action.
  2. Just a heads up that this is a huge order and you might never have it completed, especially for free.

    Now for the interesting part, this could actually be mostly done using yanfly plugins (except GUI) and state counters (from buffs and states core)
    Use state counters as the shield, when enemy is hit by weakness remove one from the state counter, when state counter is 0, remove the state and apply break state, when break state is removed reapply state counter.
    Checking if the attack hits a weakness is probably gonna require some script calls and element core, but could be done (most probably by using the calcElementRate function on the current action and checking if its result is > 1, nothing that can't be done in an action sequence, then setting weakness just has to be done in editor via states).

    Displaying weaknesses is gonna be tricky, and will most likely require a plugin.

    Displaying a break image when shield reaches 0 could be done in the same way, as an effect of applying the break state.

    Priority attack for enemies out of break would be as simple as granting them a 1 turn speed boost via state when break expires.

    A boost like system with BPs could again be done with state counters and instant cast skills.
    Have a state counter for each actor increasing by 1 each turn through another state and an instant cast spell that will grant a buff to the actor that will act as your boost. If casting the instant cast spell, remove the state increasing the counter for the turn.
    Have casting the boost skill trigger an animation around the character and you have your aura.

    Ability to attack with multiple weapons types could be done using a skill menu replacing the attack command with each weapon adding its own attack skill to the menu when you equip it.

    Modifying skill effects is doable using action sequences and checking for the states you apply with your instant cast spell acting as boost.

    Turn order display and standard turn battle should be able to handle the rest, except making enemies disappear from the display when broken.

    All in all, with a bit of javascript and what is already available to you, you might be able to reproduce it quite faithfully.
    All the javascript that you would need you could find in the javascript equivalent of event commands thread and plugin documentation.

    If you think this is a lot of work, then you're absolutely right. Keep in mind that's exactly what you're asking someone to do for you for free.
  3. @Astfgl66
    You're right, it can be done using what is available.
    The sad thing is, this sounds extremely complicated even after explaining.
    I did understand a good bit but, the weakness check, and weapon skill change got me.

    You're also right this is alot to request for a free plugin! I'm actually willing to pay someone to create this, not sure where a good place to look for someone would be.
  4. Weapon skill change is like this:
    - Have each weapon type have its own attack skill
    - Weapons give the corresponding attack skill when equipped via traits
    - Replace the attack command with a skill menu containing all attacks skills know by the character

    Congratulations, your actor can now attack with different weapons types.
    Checking for the correct weapon to apply attack bonus and not all of them is simple javascript.

    Weakness check will require good js understanding.

    If I were you and I really wanted it to happen, I'd event what I can, and ask for help for parts that can't be evented.
    If you were to make a thread saying: "I've made the complete octopath traveler battle system except I don't know how to check for enemy weaknesses, and displaying them.", you can bet you'll have help coming (even, more if you say you'll share it to the public afterwards).

    Not trying to discourage you asking for a commission, you should know however that most complicated battle systems quotes can be in the thousand dollars range. If that's alright with you, check the classifieds boards (which you should have access to since you have more than 30 posts).
  5. The visual aspect aside, this actually sounds something like 3 or 4 separate systems in a single request.

    Weapon changing mid-battle is one system.
    The Break system is another system.
    The Boost system is another system.
    The CTB/individual actor turns is a whole system all on its own.

    None of them are actually dependent on each other. None of them individually are particularly new mechanics either. There's plenty of mid-battle weapon-swap scripts around (Yanfly definitely has one) as well as CTB battle scripts (Victor has one and, again, Yanfly has one). I don't know about MV, but there's at least one Break system script for VXAce that functions similarly, except it uses element ID instead of weapon type.

    The Boost system is the only thing you might have trouble finding a ready-made script for, but combined with something like Yanfly's instant cast as Astfgl66 suggested, you could actually just modify the default TP system to work with it. Gaining 1 BP per turn to a max of 5 BP is effectively the same as an actor (starting with 0 TP) regenerating 20% TP every turn up to 100% TP. Would need a moderate amount of tweaking, but I think it would be possible to shanghai the existing TP system into a BP system.

    The funny thing is, even the particular combination of CTB+Break+Boost isn't new either. Before Octopath Travelers used it, Xenosaga Episode 2 and 3 had a CTB battle system also using Break+Boost mechanics, although the Break and Boost mechanics functioned differently (Break was based on attack type, not weapon type and Boost was a global party-wide resource that literally boosted the user to the front of the CTB queue, plus enemies could Boost too).

    The visual stuff is a different matter though, that one you will probably need to pay somebody to make it look like Octopath Travelers, unless there happens to be somebody who is both a coder and really, really like how it looks so much they don't mind putting all the individual systems together and giving the whole package a facelift for free.
  6. Well, it's not really changing weapons mid fight: it's having multiple weapons equipped and then choosing which one you want to attack with.
    As far as I know there is no plugin that does that, hence my suggestion of having weapons provide specific skills as traits to emulate it.

    To generalize things, the break system should probably work by using an element for each weapon skill and elemental attack type. That way you wouldn't have to write two different checks, for element or weapon type.
    Break can be emulated fairly well using states once you find out how to check if an attack hits a weakness, and shouldn't need a plugin of its own really.

    That said I agree with the rest of your post.
  7. I admit, I have never played Octopath Travelers before, so when he said they change weapons during battle I assumed he meant actual changing equipment FFIV-style, not just choosing which of multiple ones to use. That itself might actually be two separate systems - not just letting the player select which weapon to use, but allowing the actor to equip more than 2 weapons to begin with since MV only supports maximum 2 weapons by default.
  8. I really like octopath traveler, and its battle system.
    I had a bit of time today and wrote the shield counter and break part of the system.
    Find it on pastebin here.

    Download, name it AstfglSCB, import it and you should be set.
    It was made to be used with Yanfly's battle engine core, element core and buffs and states core. I don't know if it'll function without.

    Instructions are in the help section, terms are in the plugin file, pasted here for convenience.
    Code:
    // Free to use non commercially, repost and
    // edit, as long as the final product is kept under the same terms of use.
    // Credits required, any of Astfgl, Astgfl (Pierre MATEO), Pierre MATEO

    Right now the display of shield amount is done in the battler name like this: [5]Bat A or [1]Harold.
  9. @Astfgl66
    This is awesome! Thank you for creating this!
    First glance I'm a little confused on how this works do you think you could have an example of this working on a project for download?
  10. It shouldn't be difficult to use.
    Just download it, set bat weakness to lightning to 110%, hit battle test on the bat group, cast spark with harold and you should see state number 4 be inflicted on those bats.

    How it works:
    Spoiler
    Enemies and actors will have a default shield value of 1 unless you set it otherwise in noteboxes.

    Use the following notetag in an actor class equipment state or enemy notebox:
    <mSh:>
    Ex: <mSh: num+=5> in bat notebox means bat A will have 5 shields by default.
    num is what will be used as the shield value and you can perform any operation you want.
    So if you want a weapon to modifiy an actor shield value you could do this:
    <mSh: num= num*2>

    So if harold had <mSh: num+=5> in his notebox and equipped that weapon his max shields would be 10 now.
    The order from which notetags are read is this actor > class > equipment > passive states > states.

    Once someone hits an elemental weakness that's at least what the cutoff in plugin parameters is set to, it will reduce shield value by 1 for each element of the attack the target is weak to.

    So if the cutoff is 1, any attack that hits a weakness of at least 101% will withdraw from shields.
    If the cutoff is 1.49 then an attack will at least need an element value of 150% to withdraw from shields.

    Once shields reach 0, the battler is hit with the state defined in plugin parameters (default poison, state 4).
    You can change that for any enemy by using the <DBS:> notetag, those enemies will be hit by that state instead of the default.

    And that's all this plugin does really.

    If you want it to act like OT break system, use a state that prevents action set it to expire in 2 turns and add the following in the notebox: (this is assuming you use yanfly's buffs and state core)
    <Custom Remove Effect>
    user._sh = user._mSh;
    </Custom Remove Effect>

    That will restore shields to max once the state is removed.

    What I've changed from octopath traveler is that actors can also be broken if you hit their weaknesses. Everything else behaves just like in OT.

    I'll probably update it in the future to allow users to change break state for actors too, and also to be able to choose if they want actors enemies or both to use shields.
  11. @Astfgl66
    It isn't working, I did what you said too, I'm sure I am making a silly mistake
  12. You didn't name it properly.
    The name should be "AstfglSCB" without the quotes, the casing is important. If you don't name it properly, the parameters won't work and thus the plugin won't work.
  13. @Astfgl66
    Changed the name, it still had no changes in the game test. Even tried redownloading then name
  14. You're not using battle engine core, you're using battle AI core.
    Furthermore your yanfly engine plugin order is all wrong. Put them in the proper order in the plugin list in their website.
    For now it should be:
    J8XHHc2.png
    Don't pay attention to the animated bust plugin I was testing other things too, and it's unrelated.
    Also your core engine and damage core plugins are outdated.

    I created a new project, downloaded all the plugins, imported them, and hit battle test without touching anything. It looks like this:
    Spoiler
    Yzrwn8L.png

    I then added thunder weakness to the bats, hit them with spark and it worked properly.
  15. @Astfgl66
    I know this is becoming annoying and difficult but it really isn't working on my side..
    I did exactly as you said, I updated the plugins, put them in order, made a new project...but no luck.
  16. What do you mean it's not working?
    Does it produce an error or do you really not notice anything different?
    Could you show me a screenshot of the console once you hit battletest ? press f8 to bring it up.
    Is your MV version 1.6.1?
  17. @Astfgl66
    Nothing is different when using the plugin, first glance yes I'm using a lower version of RPG maker
  18. That's it then.
    This plugin is using new functions who aren't available in older versions of nw.js, the 1.6.1 version of MV updated nw.js, so you're gonna have to update mv or sit out of using this plugin.

    Edit: removed 1.5.1 version
  19. @Astfgl66

    I'm trying to update the project but something strange is happening.
    When opening the rpg maker mv software on steam it shows its on 1.6.1, I then make a project and save it.
    This is what is weird, when the same project is opened from within the game folder its shows its on 1.5.1
    I tried redownloading rpg maker mv and it still didn't work..
    Even tried restarting the PC
    If I go to the main rpg maker mv files to the New data folder and open a game it shows 1.5.1

    So what I'm seeing is the software isn't really updated but steam is showing it is..
  20. No idea about that, you'll have to take it to the support boards. I don't know anything and can't do anything about updating MV issues.
    Post your issues in tech support all makers would be my guess.