MV - SRPG Engine MV - Plugins for creating Tactical Battle System

● ARCHIVED · READ-ONLY
Started by RyanBram 3313 posts Page 110 of 166 View original ↗
  1. DunkyClassic said:
    It looks like you nailed it!

    I did find one weird little new issue that cropped up post-bugfix, but it doesn't effect my project, and presumably won't effect yours either?
    For some reason the new patch you implemented now stops the entirety of the NRP line of Dynamic action plugins from working xD
    Results in a crash with this in the console: Imgur

    Personally I've never found the dynamic action plugins super necessary, as you can usually hard-code around the scenarios they're meant to solve, but I wanted to give a heads up just in case this effects anybody else.
    No not yet,..
    i just found another bug about gain rewards(thats related to enemy EXP ect), which triggers only if an enemy unit uses certain skills that target themself..
    i know why that bugs, now, but i didnt fixed it yet..

    If that bug i mentioned,as soon its fixed, doesnt solve the dynamic action Bug which you showed
    ..
    Than i got no idea at the moment, why that dynamic action bug happens,,
    - i allready looked into the code but i got no idea why it should bug at "waiting for skill"
    screenhot from the dynamic action plugin
    Spoiler
    Screenshot_1.png
    => so i probably need to fix these 2 bugs minimum before the plugin is bugfree,
    .. its just a bit hard, because my test project doesnt use the dynamic action plugin at the moment
    ==> i need more infos, about when that bug triggers,..
    (the changes i made recently on bugfixes should not affect the function from the screenshot, are you sure that you didnt changed anything in your project that could trigger that issue since the last update?)


    Also i might add some more note tags to change the steal/break chances by notetags
    ( the scriptcalls for that are the better way for making individual conditions, but its not very userfriendly if the user has no JSscript knowlegde )

    I am sorry that my new plugins often need so much bugfixes before they are finaly done :/
  2. dopan said:
    No not yet,..


    I am sorry that my new plugins often need so much bugfixes before they are finaly done :/
    You're totally fine! You've done so much for this community, it's insane. Not to mention code is finicky and difficult even at the best of times.

    I'll collect some more info on that bug for you. All I know as of rn is that it triggers on any kind of interaction with enemy events, whether its doing battle with them or looking at their stats in game.

    EDIT: The uh.... plot thickens. I couldn't get the crash to replicate. Tested about 5 or 6 different variations of plugins that I was using at the time, and Dynamic Ani never acted up at all.

    Like I said before I don't typically use Dynamic Ani, so it could be that it was simply a compatability issue with my game specifically? If that's the case, it's nothing for you guys to worry about xP
  3. thank you @Shoukang so i checked the setsrpgenemys function here.. and changed the number to eval.. and it worked.. but i have to use <id:$gameVariables.value(15)> .. i was hoping a shorter method like \v[15]

    JavaScript:
    // イベントのメモからエネミーを読み込み、対応するイベントIDに紐づけする
        Game_System.prototype.setSrpgEnemys = function() {
            $gameVariables.setValue(_existEnemyVarID, 0);
            var i = 0;
            $gameMap.events().forEach(function(event) {
                if (event.isType() === 'enemy' && !event.isErased()) {
                    var enemyId = event.event().meta.id ? eval(event.event().meta.id) : 1;  // eval variable
                    var enemy_unit = new Game_Enemy(enemyId, 0, 0);
                    if (enemy_unit) {
                        if (event.event().meta.mode) {
                            enemy_unit.setBattleMode(event.event().meta.mode);
                            if (event.event().meta.targetId) {
                                enemy_unit.setTargetId(Number(event.event().meta.targetId));
                            }
                        }
                        enemy_unit.initTp(); //TPを初期化
                        var faceName = enemy_unit.enemy().meta.faceName; //顔グラフィックをプリロードする
                        if (faceName) {
                            var bitmap = ImageManager.loadFace(faceName);
                        } else {
                            if ($gameSystem.isSideView()) {
                                var bitmap = ImageManager.loadSvEnemy(enemy_unit.battlerName(), enemy_unit.battlerHue());
                            } else {
                                var bitmap = ImageManager.loadEnemy(enemy_unit.battlerName(), enemy_unit.battlerHue());
                            }
                        }
                        var oldValue = $gameVariables.value(_existEnemyVarID);
                        $gameVariables.setValue(_existEnemyVarID, oldValue + 1);
                        $gameSystem.setEventToUnit(event.eventId(), 'enemy', enemy_unit);
                    }
                }
            });
        };
  4. xabileug said:
    thank you @Shoukang so i checked the setsrpgenemys function here.. and changed the number to eval.. and it worked.. but i have to use <id:$gameVariables.value(15)> .. i was hoping a shorter method like \v[15]

    JavaScript:
    // イベントのメモからエネミーを読み込み、対応するイベントIDに紐づけする
        Game_System.prototype.setSrpgEnemys = function() {
            $gameVariables.setValue(_existEnemyVarID, 0);
            var i = 0;
            $gameMap.events().forEach(function(event) {
                if (event.isType() === 'enemy' && !event.isErased()) {
                    var enemyId = event.event().meta.id ? [COLOR=rgb(85, 57, 130)][B]eval[/B][/COLOR](event.event().meta.id) : 1;  // eval variable
                    var enemy_unit = new Game_Enemy(enemyId, 0, 0);
                    if (enemy_unit) {
                        if (event.event().meta.mode) {
                            enemy_unit.setBattleMode(event.event().meta.mode);
                            if (event.event().meta.targetId) {
                                enemy_unit.setTargetId(Number(event.event().meta.targetId));
                            }
                        }
                        enemy_unit.initTp(); //TPを初期化
                        var faceName = enemy_unit.enemy().meta.faceName; //顔グラフィックをプリロードする
                        if (faceName) {
                            var bitmap = ImageManager.loadFace(faceName);
                        } else {
                            if ($gameSystem.isSideView()) {
                                var bitmap = ImageManager.loadSvEnemy(enemy_unit.battlerName(), enemy_unit.battlerHue());
                            } else {
                                var bitmap = ImageManager.loadEnemy(enemy_unit.battlerName(), enemy_unit.battlerHue());
                            }
                        }
                        var oldValue = $gameVariables.value(_existEnemyVarID);
                        $gameVariables.setValue(_existEnemyVarID, oldValue + 1);
                        $gameSystem.setEventToUnit(event.eventId(), 'enemy', enemy_unit);
                    }
                }
            });
        };
    Add var v = $gameVariables._data before the eval code.
  5. @ ALL
    ok i fixed the bug about "gain rewards" (updated SRPG_UnitCore)

    ..
    i didnt add more notetags yet..(for changing break/steal Chances)
    My Github is Updated again (newest update was at "08.57" german Time)


    -----------
    -----------
    @ DunkyClassic
    However about the dynamic actions issue:
    -> the thing is, the error img didnt show any connection to the "UnitCore" ,.. Most people would say, that in such case it cant be related to a plugin that is not listed in the errorINFO.
    But there are situations where that is not true, for example incase anything breaks an update chain.
    And rpg code is full of update chains^^..
    -> However aslong you cant replicate the bug, and i cant see any connections with my plugin, lets just call it a day^^
    -----------
    -----------
    @xabileug
    Spoiler
    just a little hint, for forum usage:
    dont use "colors" or other text changing stuff in the JavaScript, if showing some script with the "Code"-function of the forum..
    It will add weird stuff to the code, like you can see in your post, and people who might try copy pasting that code, will run into errors..
    (i did such mistakes myself so nevermind)
  6. @Shoukang i dont know where to place var v = $gameVariables._data
    1640361476323.png
    i get this error instead: this is the notetag i use <type:enemy><id:\v[15]><mode:stand>
    1640361523832.png
  7. @ All

    ok i made another update on "SRPG_UnitCore" (github updated)

    PLS Note
    ,i recognized several mistakes on the new StateNotes..ect -> so i had make more updates^^
    I didnt tested the StateNotes yet, but i think they should work now.
    last Plugin update was at the 27.12.2021 at "21.25" (german time)
    -> fixed little bugs and added script for "enemy-changeClass" (SRPG_UnitCore)

    And I fixed little bugs on the Plugin "SRPG_UnitMapInfo" at the 27.12.2021 at "21.25" (german time)

    ChangeLog:

    Spoiler
    - added StateNoteTags that can change Chances
    priority that decides which ChanceChange applys:
    Chance_ScriptCalls > "target"-StateNote > "user"-StateNote > pluginParam
    => after action the chances will be resetted to "pluginParam"

    - added GameAction Var => "this._breakChance" & "this._stealChance"
    these can be used to show the Chances in the BattlePredition Window

    - improved the EXP Distribution
    the srpgCore Param will now apply to both "actors&enemys" the same way
    Screenshot_1.png
    only the explanation in the srpgCore param can be confusing, because ,that was made for actors only
    (i edited this InfoText in my Edited Cores to avoid confusion)

    about "_srpgBattleExpRate"
    when actors&enemys fight each other, the exp distribution will also be affected from the Level
    -> fighting an opponent with higher level gives more exp

    Also Enemys will be affected from their own "dropExp data", which is added in the enemy Setup
    (where DropGold and DropItems is also handled)
    -> this means:
    enemys with low dropExp, will get less EXP ,enemys with high dropExp will get more EXP


    about "_srpgBattleExpRateForActors" (should be called "ForFriends")
    On "friend"- actions, more detailled actions from enemys on enemys,OR from actors on actors..
    ..the level makes no difference,.. and the dropExp doesnt have any effect

    On EXP distribution, team usage is not used, because its more importent, if an Unit is an Actor or Enemy.
    No matter which team, because only enemys have "dropExp"..
    --------------------------------------------------------------------------------------------------------------
    -> i might rework the help Info text,which is a bit messy..
    any other Extensions are planed to be made in other optional extension Plugins
    (at the moment i am working on "wieldAttack" & "upgrade the battlePredictionWindow",..
    ..and i planed to make a mini plugin that allows more options to manipulate the exp distribution)

    preview
    prediction Window Upgrade
    displaying: counter,crit,steal,break Screenshot_2.png
    ------------------------------------------------------------------------------------------------------------

    merry christmas everybody!
    FineForkedAmericanrobin-max-1mb.gif
  8. Merry Christmas All!

    Edit: So... This is by far the least important thing I've boosted this thread for yet, but it's got me completely stumped, so I figured I should say something. This could be a bug, or an unintended interaction with another plugin, or it's completely possible that I'm just dumb. It's a toss-up.

    Imgur

    Basically, I haven't been able to figure out how to get item unequipped text to show up in the menus at all. For enemies it's handled natively through SRPG_StatusWindow, but actor equips are handled through UnitCore... Except I have no idea why UnitCore is failing to render the unequipped text I entered through the console.

    Its like 2 AM here and this was my last code dive of the night, so I figured I should let y'all know before I go to bed in case it actually is a bug and I'm not just sleepcrazy xP
  9. DunkyClassic said:
    Imgur

    Basically, I haven't been able to figure out how to get item unequipped text to show up in the menus at all.
    sry i didnt recognized your edit ealier, and there might be a missunderstanding in what , the SRPG_UnitCore & SRPG_StatusWindow do.
    longer text
    None of both should have any effect on the stuff in your menu windows!
    -> for menu-window stuff of Equipment, you need to use the YEP equipcore for example..
    example img menu stuff with YEP equipcore usage
    Screenshot_2.png

    What these 2 plugins do is adding text into your "battleStatusWindow", where the Equip is displayed, incase the equip is "stolen" or "not equiped".Thats a window that happens on Map.scene if srpgBattle is on. Not on Menu.scene.
    I plan to edit the SRPG_StatusWindow in order to add Plugin param that let you change this text without editing the plugin code,similar how you can do it in the "UnitCore"- pluginParam
    Its hard to see but the Cursor is on the slime, thats an example for when this window shows up.. and yes this slime uses 3 weapons^^ and one of them is stolen
    Screenshot_3.png
    by default such window is also used on actors, that have turn ended, and have the cursor on the actor..
    (or in default "battle prediction windows".. where you can choose "fight" or "cancel" by default)

    I am also not sure what you tried to enter in the console..

    edit

    For enemies it's handled natively through SRPG_StatusWindow, but actor equips are handled through UnitCore... Except I have no idea why UnitCore is failing to render the unequipped text I entered through the console.

    thats wrong,.. it depends on the resolution which you use, and which plugin version of SRPG_StatusWindow you use.
    The UnitCore is made for a resolution of 1110x768
    ,
    because thats what i use.So with that resolution the UnitCore will handle,
    the text ,related to its Plugin param, for Actors&Enemys .

    And i made different Versions of the SRPG_StatusWindow, so depending on your resolution you have to choose which plugin you use,..

    -------------- about 816x624
    For people who use the rpg maker default resolution 816x624, the plugin "SRPG_StatusWindow(816x624).js",can be used.

    Then it will overwrite the UnitCore "battleStatusWindow".. which wasnt made for 816x624,..
    (i named this" (816x624).js" to show, for which resolution this is made)

    By default the SRPG_StatusWindow plugin, was made to add more window pages,, i just used it aswell as compatiblety patch for the people who use the default resolution..

    -------------- about 1110x768
    if you use the resolution of 1110x768, you can use the
    "SRPG_StatusWindow(patch).js",which was made for the UnitCore by default , for my own usage.
    (i named this "(patch).js", because its an edited Version of shoukangs plugin.. and its patched for the usage with my UnitCore)
  10. @boomy

    I'm back on my project after a hiatus, I wa switching back between your's and Shoukang's aoe animation plugins, I came back to yours due to greater control of where the characters actually placed, however, I've run into an issue with the surround placement, for some reason they all are put behind the character, have you run into this issue before?
    wot.png
  11. Reanimunculus said:
    @boomy

    I'm back on my project after a hiatus, I wa switching back between your's and Shoukang's aoe animation plugins, I came back to yours due to greater control of where the characters actually placed, however, I've run into an issue with the surround placement, for some reason they all are put behind the character, have you run into this issue before?
    View attachment 211209
    Can you highlight which sprite is the "actor" and which are the targets? I presume the bats and the slime are the enemies that are surrounding Harold? And what notetag are you using? You shouldn't use the aoeDistantFormation notetag as that will shift everything by X pixels

    I've personally moved to using shoukangs aoe animations script.
  12. boomy said:
    Can you highlight which sprite is the "actor" and which are the targets? I presume the bats and the slime are the enemies that are surrounding Harold? And what notetag are you using? You shouldn't use the aoeDistantFormation notetag as that will shift everything by X pixels

    I've personally moved to using shoukangs aoe animations script.
    You are correct, the harold is the test PC, while the others are the test enemies, I used <AoESurroundFormation:X>idr what radius i used for that screenshot, as I used many others to experiment. Of note is that aoedistantformation is also a little bugged for me, it moves the PC off screen. I did find Shoukangs interesting, however it rendered many of the different aoe patterns useless as it would move the enemies all around my character even if they were targeted in a basic cross pattern. If you've been using Shoukangs, do you know of a way to get the enemies to spawn only on the other side closer together?wot.pngwotjpg.jpg
  13. i recognized a bug on the "SRPG_UnitCore" => in mapBattleActions Exp were not added correctly,..
    - Fixed the Bug and updated my Github
  14. Reanimunculus said:
    You are correct, the harold is the test PC, while the others are the test enemies, I used <AoESurroundFormation:X>idr what radius i used for that screenshot, as I used many others to experiment. Of note is that aoedistantformation is also a little bugged for me, it moves the PC off screen. I did find Shoukangs interesting, however it rendered many of the different aoe patterns useless as it would move the enemies all around my character even if they were targeted in a basic cross pattern. If you've been using Shoukangs, do you know of a way to get the enemies to spawn only on the other side closer together?View attachment 211296View attachment 211297
    It seems like you are using an old version of my AoE animation. You can try my latest version
  15. Shoukang said:
    It seems like you are using an old version of my AoE animation. You can try my latest version
    Thanks for the reply, I double checked, and I am using the updated version, it seems the issue comes depending on where my character stands, which I was aware that character placement mattered for this plugin, however, it still seems to not play nice with a few of the aoe shapes.

    using the cross aoe shape while facing the cross results in an enemy being placed on the character. stepping one square back seems to fix this, This is something that could be solved by just limiting the player a little, making the skill have a min range of 2 or something, however, it still feels like it should maybe limit all the enemies to being on the left side as long as the player is atleast a square away from them.

    1640982707927.png1640982668853.png
    1640982607769.png
    1640982588648.png
  16. @Reanimunculus
    could this be related to , the usage of the "endless map" from the demo?
    -did you double check it while using another default "normal" map?
    -------------------

    @ all (github is updated)

    i just finished my edit of my old plugin "mapforceAction",..
    Which i call "SRPG_ForceAction" now,because its not only for mapbattleUsage anymore^^

    This Plugin enables "MultiWield" for SRPG depending on the equiped weapons &
    it can add Actions to other Actions, in such case the main trigger is still the default Action with its SkillNoteTag,
    or with its SkillCommonEvent.
    (depending if you use Script in Common event Or SkillNote)


    This plugin will recognize if the action should be mapAction or svAction ^^,if using skillNoteTag as trigger..

    -> "SRPG_ForceAction" Infos:
    Spoiler
    - adds "multiWield" to SRPG that means every Equiped Weapon will be used
    (can be controlled Global with Plugin param, or individually with ClassNotetag)
    - adds the SkillNoteTag "forceAction"
    (this allows you to force actions after skill usage)
    this noteTag allows you to decide the "user" the "target" and the "skill" of an ForcedAction
    .. That way a skill can even trigger other Units to make actions!
    this can be used for combo Skills or even more Complex SkillActionChains!
    - adds a few Scriptcalls for Eventing more Complex ActionChains in Skill_CommonEvent for Example

    However building longer SkillActionChains ,can be a bit tricky,because of the required timing,
    thats why i plan to add a few examples in my next planed showcase demo.
    So for now i recommend to mostly use the SkillNoteTag^^

    also this plugin is not fully bugTested yet,but the Things i tested did work correctly..
    and the plugin help info is a bit small at the moment
    -> for example i forgot to mention, that Forced Actions with the SkillNote wont consume mp/tp, and if the user is another user (example combo) the TurnEnd of the second user will not be added.
    (thats no bug, i builded it that way on purpose)

    -> i am not sure but the Scriptcalls probably wont work that way by default ,
    thats why the SkillNote is Recommend!
    (i mean not consuming mt/tp or adding turnEnd)
    The "plugin_Scriptcalls" are only there to have an alternatives for whatever usage it might be needed..
    ....
    This plugin has no effect on the battlePredictionWindow
    (for that i am building another plugin)


    EDIT_2
    updated my Github again!

    - SRPG core

    i had to edit all mapbattleparts of the edited Cores, for better forceAction compatiblety.

    - SRPG_ForceAction
    added a "battleStart" trigger scriptcall for custom complex forceAction Setups..
    added stuff to help info and cleaned up a bit code

    and fixed an issue that mapbattleduoActions where not triggered correctly, with both of these edits

    for those who dont use my edited srpg core, you need to edit this part in your mapbattle setup,
    for the forceAction compatiblety on mapbattleActions that trigger other users


    sidenote:
    i am not sure if SRPG_ForceAction is compatible with "agiatt+" ,and the counter attack is not effected from "MultiWield" ..
    (counter atts are diefferent depending if you use drQs "counterStat" plugin, or not and depending on "map" and "sv" battle other code is used.. this would need edits directly in the srpg core,.. and with drQs plugin which i use myself, i am not even sure how to change the counter amount)

    for default counter usage and counterskill change:
    - i figured out that to change the counterskill on default counters, we would need 2 edits:

    -> 1 edit for SV=> in the battlemanger function "BattleManager.invokeCounterAttack"

    -> 1 edit for map => in the SRPG core in the function "scene.map.prototype.battleStart" where the counter for map skills is added
    (this function exists 2 times in the core, one time for default sv and one time to handle map battle stuff)

    => building a plugin for such default counterskill change would also require another edit in the srpg core like explained above, and i kind of dislike editing in the "battleStart" function in the srpg core,..
    thats also the reason why i didnt try to add "wield" to counter attacks,..perhaps i might do that in the future ,..

    --------------------------------------
    And I wish you all a happy new Year!
    happy-new-year-unq-8.gif
  17. I'm happy with this engine. the original author has also been posting upgrades and optimization in twitter. cant wait for the updated SRPG_Core. i saw two extensions - sprg_gearMV and srpg_UnitMenu in one of the tweets. looking forward to more improvements!

    i hope someone makes a better UI for all the other scenes - menu, item, skill, equip, etc.. it feels clunky for the srpg battle.
  18. I don't know if it was aked already, but is there a way to make the window when you get an item from an enemy last longer? All of my players always overlook that you get a new weapon from an enemy, and I can't blame them because the window only stays for 2 seconds. Ideally you would have to accept the textbox to make it dissappear if you get a new item.
  19. Mr. Beknacktoman said:
    I don't know if it was aked already, but is there a way to make the window when you get an item from an enemy last longer? All of my players always overlook that you get a new weapon from an enemy, and I can't blame them because the window only stays for 2 seconds. Ideally you would have to accept the textbox to make it dissappear if you get a new item.
    I assume you dont mean stealing and its message window.
    ->"Stealing info windows" are in the UnitCore and can be edited in the GameAction functions that handles these text's.. These are very small and only handle the text stuff..
    I used a lot of small functions to handle these textMessages to make such edits easier

    So If you mean "dropItems" after an enemy died ,what you are looking for is the battleresultwindow,..
    more detailed the scene that controlls it..

    it depends if you use the UnitCore or not.. it is to find in the srpg core by default.
    But the UnitCore has it aswell and overwrites the srpg core..
    You always need to edit the function that is finaly used.In my case thats in the UnitCore and here is a screenshot:
    you gotta look for "Scene_Map.prototype.processSrpgVictory"
    Spoiler
    i didnt test it but i am pretty sure you need to edit this number,.. i guess this is about "frame amount"..
    Screenshot_1.png
    -----------------------------------------------------------------------------------------------------------------------
    @ xabileug
    can you post a link to the twitter acc or better to the post that shows these plugins?
    - the lemon slice website is down..

    also i guess that "sprg_gearMV" does something similar that my "UnitCore" does.. probably only the equipslots with less functions..no stealing, no enemycClasses/EXP/Levels, no itemslots, ect.
    (i fear that wont be compatible)
    -> but i am still curius about the other plugin srpg_UnitMenu.

    However it may depend on the next core update, but its possible that i wont support that update or other future updates.. simply because i dont like to rework my edited cores each time, when none of the implemtations from my edited core versions are supported.
    Also i am trying to get to a point where i can focus on my project instead of working on plugins,..