[MZ] JABS - J's Action Battle System

● ARCHIVED · READ-ONLY
Started by Jragyn 521 posts Page 14 of 27 View original ↗
  1. plumbbobparadise said:
    How do you accomplish this? Where do you put the Html code? In the message box or in events?
    Sorry for lack of clarity.
    This tag would go in with the rest of the tags that you use to define battler events on the map.

    In short, it goes:
    in the event
    as a comment type event command
    on its own line.

    Similarly to how you would define other JABS-related battler characteristics, such as sight or movespeed.

    CaraPrincess said:
    How to use plugin commands / script calls for executing attacks for this plugin (either the standard attacks or the projectile attacks)?
    You can refer to the code in the engine for the inner workings, but the gist of it is:
    JavaScript:
    $jabsEngine.forceMapAction(JABS_BATTLER, SKILL_ID);
    // where JABS_BATTLER is the reference to the battler you want to execute the skill.
    // where SKILL_ID is the skill id of the skill to be executed.
    
    // example:
    const player = $jabsEngine.getPlayer1();
    $jabsEngine.forceMapAction(player, 25);
    // will force the player to execute the skill with the id of 25.

    Just keep in mind that in contrast to what galv's map projectiles does where it just arbitrarily fires off some projectile in a 360 degree direction, this .forceMapAction() command will simply force the battler to execute the skill wherever they are standing. Extending the example, if you ran that snippet in a script command (not plugin command!), and skill 25 was just a fireball that went straight, it would cause the player to shoot a fireball straight ahead of wherever they are standing.

    Additionally, if you want an event to fire off projectiles, it MUST have a battler associated with it since all skills have formulas that potentially work off the battler's stats, it is required.
  2. Jragyn said:
    Sorry for lack of clarity.
    This tag would go in with the rest of the tags that you use to define battler events on the map.

    In short, it goes:
    in the event
    as a comment type event command
    on its own line.

    Similarly to how you would define other JABS-related battler characteristics, such as sight or movespeed.


    You can refer to the code in the engine for the inner workings, but the gist of it is:
    JavaScript:
    $jabsEngine.forceMapAction(JABS_BATTLER, SKILL_ID);
    // where JABS_BATTLER is the reference to the battler you want to execute the skill.
    // where SKILL_ID is the skill id of the skill to be executed.
    
    // example:
    const player = $jabsEngine.getPlayer1();
    $jabsEngine.forceMapAction(player, 25);
    // will force the player to execute the skill with the id of 25.

    Just keep in mind that in contrast to what galv's map projectiles does where it just arbitrarily fires off some projectile in a 360 degree direction, this .forceMapAction() command will simply force the battler to execute the skill wherever they are standing. Extending the example, if you ran that snippet in a script command (not plugin command!), and skill 25 was just a fireball that went straight, it would cause the player to shoot a fireball straight ahead of wherever they are standing.

    Additionally, if you want an event to fire off projectiles, it MUST have a battler associated with it since all skills have formulas that potentially work off the battler's stats, it is required.
    OK then…

    How can projectiles work in JABS and is there a list on how it can differs from the system used by Galv?

    And if possible, can you give me some base code snippets / tutorials on how to set up a projectile attack?
  3. CaraPrincess said:
    How can projectiles work in JABS and is there a list on how it can differs from the system used by Galv?
    JABS projectiles are just events (defined on the action map) that obey their move route (defined by you).
    I have not looked at the underlying code for Galv's map projectiles plugin, but I'm assuming they are also events, but instead have a hard-coded 360 degree direction they follow rather than obeying the event's move route.

    CaraPrincess said:
    And if possible, can you give me some base code snippets / tutorials on how to set up a projectile attack?
    While it can be used in the way you're describing, it was not designed to be used like this, so I have no handy scripts beyond the generic explanation I provided above on how to script a forced skill execution. You can review the various events on the action map in the demo I've provided to see how they are configured. Skills are associated with these events by their "action id", as you'll also see on just about every skill in the demo's database.
  4. Hello, this is a great series of plugins! However, there don't seem to be any Terms of Use/Licence anywhere?

    The closest thing to it I found was this post:

    Jragyn said:
    It can be used in commerical games at no monetary cost!
    (I'll add this blurb to the main post of the thread)

    ...but there are additional changes I have coming down the pipeline to this plugin (that you may want), soon™.

    One major change I have implemented in my local environment is shifting the identifying tags from living in the notes box of an event down to the comments of a page (which in turn allows enemies to change conditionally at the whim of the RM dev)... which I'd consider a breaking change, but necessary. This will be paired with other features I've mentioned in the second post of this thread.

    My only ask is that if you use JABS (or any of the J-* plugins), do let me know so we can talk about the details of what that will entail! (since I wrote it, and thus support it and indirectly support it's consumers)

    Could you please add some Terms of Use to the help file of the plugin, regarding what we are allowed/not allowed to do with the plugin, so that it's all in one place and concise?

    Thanks!
  5. JABS projectiles are just events that obey their move route
    Hmmm, Move Route events? So far I have barely touch that event command aside from when scripting puzzle events...

    From what I know is that some pixel-movement plugins allow pixel-perfect move routes (iirc such as Galv's Pseudo-Pixel Movement).

    Is that what you mean with "Move Routes", or are the move routes for the projectile events are defined using script calls / plugin commands?

    And if I create and store projectiles in a separate map (let's say it would be a HUGE map due to how big my game is (but 'prolly RM wouldn't allow a super-giant map (let's say I want a map that is 1000 x 1000 tiles in size) even for the sake of storing individual bullets with unique move routes (for bullet-hell extravaganza's sake) and spawnable entities haha; if so I might try to find methods to integrate Galv's Projectile plugin stuff into JABS (hope it works seamlessly)), then will JABS support spawning from separate maps ('prolly with integrations for event spawner plugins)?
  6. Hi
    I've just started receiving the following error. Let me know what information you need, and where I should look to get it resolved.

    TypeError
    Cannot read property 'Helpers' of undefined

    Here is my setup:
    1. Project is a mod of Chef's Adventure 3.0
    2. I have not added or deleted any plugins
    3. Occurs when j/jabs/J-ABS is turned on
    4. Does not occur when plugins from other developers are turned on
    5. Just started happening yesterday

    More info:

    The errors generally surrounded confirming that the version was sufficiently recent:
    J-ABS.js:531 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-ABS.js:531
    at J-ABS.js:536
    _jabsManagers.js:45 Uncaught TypeError: Cannot read property 'Aliased' of undefined
    at _jabsManagers.js:45
    _jabsObjects.js:23 Uncaught TypeError: Cannot read property 'Aliased' of undefined
    at _jabsObjects.js:23
    _jabsScenes.js:22 Uncaught TypeError: Cannot read property 'Aliased' of undefined
    at _jabsScenes.js:22
    _jabsSprites.js:21 Uncaught TypeError: Cannot read property 'Aliased' of undefined
    at _jabsSprites.js:21
    J-ABS-AllyAI.js:202 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-ABS-AllyAI.js:202
    at J-ABS-AllyAI.js:215
    J-ABS-Diagonals.js:70 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-ABS-Diagonals.js:70
    at J-ABS-Diagonals.js:83
    J-ABS-InputManager.js:43 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-ABS-InputManager.js:43
    at J-ABS-InputManager.js:48
    J-ABS-STAR.js:95 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at versionCheck (J-ABS-STAR.js:95)
    at J-ABS-STAR.js:109
    at J-ABS-STAR.js:743
    J-HUD.js:35 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-HUD.js:35
    at J-HUD.js:40
    J-HUD-PartyFrame.js:63 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-HUD-PartyFrame.js:63
    at J-HUD-PartyFrame.js:68
    J-HUD-TargetFrame.js:399 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-HUD-TargetFrame.js:399
    at J-HUD-TargetFrame.js:412
    J-HUD-InputFrame.js:35 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-HUD-InputFrame.js:35
    at J-HUD-InputFrame.js:40
    J-CMS-Equip.js:29 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-CMS-Equip.js:29
    at J-CMS-Equip.js:34
    J-CMS-Status.js:30 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-CMS-Status.js:30
    at J-CMS-Status.js:35
    J-CMS-Skill.js:29 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-CMS-Skill.js:29
    at J-CMS-Skill.js:34
    J-LevelScaling.js:259 Uncaught TypeError: Cannot read property 'Helpers' of undefined
    at J-LevelScaling.js:259
    at J-LevelScaling.js:264

    I was able to solve the problem once I realized the original JABS Chef's Adventure demo was still working. What fixed it was copying plugins.js from the JABS Chef's Adventure demo into my js folder.
  7. Beregon said:
    Hello, this is a great series of plugins! However, there don't seem to be any Terms of Use/Licence anywhere?

    The closest thing to it I found was this post:



    Could you please add some Terms of Use to the help file of the plugin, regarding what we are allowed/not allowed to do with the plugin, so that it's all in one place and concise?

    Thanks!
    I'll see if I can whip one up.
    I've deliberately left it loose, with the only things I care about are: not claiming it as your own; let me know if you want to take it commercial.

    CaraPrincess said:
    Hmmm, Move Route events? So far I have barely touch that event command aside from when scripting puzzle events...
    Yes, the projectiles that JABS produces are actually just Game_Event, similar to the ones that you manually create when putting people in your towns and whatnot. Every event has a "move route", which is effectively a hard-coded "move route" event command for that particular event. The major difference between JABS projectiles and regular events, is that the projectiles are clones of the events from the action map, so a projectile's movement is always whatever you define it to be on that map.

    CaraPrincess said:
    From what I know is that some pixel-movement plugins allow pixel-perfect move routes (iirc such as Galv's Pseudo-Pixel Movement).
    This is also my loose understanding of how his plugin works, yes.

    CaraPrincess said:
    Is that what you mean with "Move Routes", or are the move routes for the projectile events are defined using script calls / plugin commands?
    I mean that "move routes" are the JABS projectile's event move route, defined on the action map (see the demo for other examples, I believe there are like 40 different various projectiles or something in my demo right now).

    CaraPrincess said:
    And if I create and store projectiles in a separate map...
    The "action map" I've referred to a number of times above is actually a physically separate map. Similar to how you describe, it contains a single copy of all projectiles which are cloned for use when executing your various combat skills and stuff throughout the game. If you wanted to load this with tons of different bullets, you'd be welcome to. Maps can get pretty big, and with events only taking up 1x1 squares on that map, you'd be hard-pressed to fill up even a 200x200 map I wager.

    Perhaps I'll take a closer look at Galv's projectile's plugin and see what I can glean from that when it comes to projectile functionality.

    Lord_Bluffkin said:
    TypeError
    Cannot read property 'Helpers' of undefined
    I think the first thing to see would probably be the dev console with the stacktrace of the error to narrow down where the actual problem occurred.
  8. Hello, this is a really silly issue, I apologize, but while I am aware that there isn't currently a way to remap the key bindings for keyboard within the plugin, I'm wondering what the keyboard keys to use combat skills and dodge skills are?
  9. Jragyn said:
    I think the first thing to see would probably be the dev console with the stacktrace of the error to narrow down where the actual problem occurred.
    I've posted an update on the error and how I resolved it in the original ticket post. I don't have any familiarity with javascript but I was able to solve it empirically.

    Thanks for a wonderful ABS.
  10. Hello, This plugin can use firearm weapon ? I mean a gun with reload and stack bullet support.
  11. Hi, I have a question about your textpop plugin. Is it possible to add a custom motion? I wanted to make a custom pop message where it goes up and fades but not sure how to that.
  12. beet said:
    Hello, this is a really silly issue, I apologize, but while I am aware that there isn't currently a way to remap the key bindings for keyboard within the plugin, I'm wondering what the keyboard keys to use combat skills and dodge skills are?
    This is not silly at all, because it isn't really described anywhere and also isn't fully implemented as of the latest publicly available release.

    When I properly release the next actual versioned update, I'll try to make sure that documentation for keyboard mapping vs gamepad mapping is provided... somewhere. And the keyboard is indeed fully implemented.

    keizz said:
    Hello, This plugin can use firearm weapon ? I mean a gun with reload and stack bullet support.
    This plugin does not provide any concept of "ammo" or gun-specific "reload" functionality. However, I probably should make an extension that does since that seems nifty.

    Lord_Bluffkin said:
    I was able to solve it empirically.
    I am glad. Hopefully the coming update will also alleviate your woes with all the extra plugins and stuff JABS requires. I'm working on a fix that will minimize these types of issues. Stay tuned for the Summer Release™!


    Vizuna said:
    Is it possible to add a custom motion? I wanted to make a custom pop message where it goes up and fades but not sure how to that.
    My text pop plugin isn't the most customizable, and wasn't intended to be as I just made it for myself. I do not have plans to rework it at this time to add more features/customization to that plugin. I am sure other capable devs may be more willing/inspired to deliver this if you asked.
  13. I see…
    Jragyn said:
    I'll see if I can whip one up.
    I've deliberately left it loose, with the only things I care about are: not claiming it as your own; let me know if you want to take it commercial.


    Yes, the projectiles that JABS produces are actually just Game_Event, similar to the ones that you manually create when putting people in your towns and whatnot. Every event has a "move route", which is effectively a hard-coded "move route" event command for that particular event. The major difference between JABS projectiles and regular events, is that the projectiles are clones of the events from the action map, so a projectile's movement is always whatever you define it to be on that map.


    This is also my loose understanding of how his plugin works, yes.


    I mean that "move routes" are the JABS projectile's event move route, defined on the action map (see the demo for other examples, I believe there are like 40 different various projectiles or something in my demo right now).


    The "action map" I've referred to a number of times above is actually a physically separate map. Similar to how you describe, it contains a single copy of all projectiles which are cloned for use when executing your various combat skills and stuff throughout the game. If you wanted to load this with tons of different bullets, you'd be welcome to. Maps can get pretty big, and with events only taking up 1x1 squares on that map, you'd be hard-pressed to fill up even a 200x200 map I wager.

    Perhaps I'll take a closer look at Galv's projectile's plugin and see what I can glean from that when it comes to projectile functionality.


    I think the first thing to see would probably be the dev console with the stacktrace of the error to narrow down where the actual problem occurred.

    Maybe instead of making individual bullet events with unique movement, I might only make individual events that spawn bullets (using Galv’s plugins of course…) and once an attack is executed, the event would be spawned to the position of the caster of the attack…

    AFAIK, one of my friends said that “For” loops can be used in creating bullet hell… Maybe I could integrate that in the above workaround too…
  14. CaraPrincess said:
    AFAIK, one of my friends said that “For” loops can be used in creating bullet hell… Maybe I could integrate that in the above workaround too…
    I feel like its an overly broad statement to say "for loops can be used in creating bullet hell" considering I use for loops all over the place for non-bullet-hell things throughout every plugin I've written. "for loops" are just a means of iterating through collections of... something. That something can be anything. In any case, good luck in your endeavors!
  15. Anyway, can I set multiple hitboxes for players using vanilla JABS...

    Or should I hook up Hudell's plugins for that, @Jragyn?
  16. TenraiEmiko said:
    Anyway, can I set multiple hitboxes for players using vanilla JABS...

    Or should I hook up Hudell's plugins for that, @Jragyn?

    JABS does not currently support more than the single-tile-based collision.

    EDIT:
    It would also be worth mentioning that I am skeptical that Hudell's "hitbox" plugin would work without modifications considering JABS handles its own collision tracking for actions.

    Also note that I have not yet tested JABS with the latest 1.5.0 update as of this writing, so I also don't know how well this engine plays with the updated tileset/tiling adjustments they recently released.
  17. Oh...

    Jragyn said:
    JABS does not currently support more than the single-tile-based collision.

    EDIT:
    It would also be worth mentioning that I am skeptical that Hudell's "hitbox" plugin would work without modifications considering JABS handles its own collision tracking for actions.

    Also note that I have not yet tested JABS with the latest 1.5.0 update as of this writing, so I also don't know how well this engine plays with the updated tileset/tiling adjustments they recently released.
    Have you tested the sample project on mobile devices yet? (Since my project using your system might have a mobile port)...
    P.S. I have tried a pixel perfect collision plugins by @Raizen and Altimit movement by @xilefian inside your project, and it works kinda good...

    (Not sure about its output and playability when testing the project on mobile though...)
  18. TenraiEmiko said:
    Have you tested the sample project on mobile devices yet?
    The deployment method for mobile devices is same as web deployments, and in my minimal experience with trying it (once or twice sometime last year), it actually did not have great performance for reasons I never investigated. To boot, the engine was designed for controllers and not touch screens, so I wager it would just be clumsy at best.

    TenraiEmiko said:
    P.S. I have tried a pixel perfect collision plugins by @Raizen and Altimit movement by @xilefian inside your project, and it works kinda good...
    I am unfamiliar with them or their plugins.
    Oh, you mean this "pixel movement" plugin? I did actually consider that at one point due to its conciseness, but scrapped that idea when I found it had some serious flaws, and only worked with the analog stick and not the D-Pad. The Altimit movement one I've seen, but I have not tried it.

    However, if it works for you, then please have at it.
    I will have to defer any troubleshooting to the authors of the other respective movement plugins.
  19. Anyway, there are some events on switching party members, @Jragyn.

    However, they have yet to be bound to hotkeys ("shortcuts") for easy party member switching (like in Genshin)...

    Are there any ways to bind party member switching to certain keys within JABS?
  20. I see your Chef's Adventure has shadows disabled, and as recommended I used it as my base project when starting a new project.

    Can you tell me how to re-enable automatic shadows?