Hello. I'm strongly intended to make action rpg game using your plugins.
I dissected the demo project and learned the basics.
Then I wanted to change a few things. But unfortunately there are tons of code and it's very hard to get into without some hints.
I want to add backwards movement, so the MC would be able to attack while retreating. And bind it to some button like we press SHIFT to sprint.
And I have an issue with the menus. The majority of players are used to calling the main menu by pressing Esc and then choosing skills, items and everything else... What's the point of having sub-menu by pressing Enter button (separately for combat skills) and going to full menu from there? How can I change it back to more classical system?
So, can you advise me o wise master?
[MZ] JABS - J's Action Battle System
● ARCHIVED · READ-ONLY
-
-
"wise master"?So, can you advise me o wise master?
More like a dev with too much time on his hands! ;)
Lemme address your points one at a time and we'll go from there...
JABS was designed with a controller in mind.I want to add backwards movement, so the MC would be able to attack while retreating. And bind it to some button like we press SHIFT to sprint.
Sure, the keyboard works, but trust me when i say it was an afterthought.
That being said, this functionality already exists- assuming you're talking about the general concept of "strafing" aka "locking direction while moving" (so you can face UP while walking DOWN).
Without looking at the code again, I don't recall the keyboard input for this, but the controller input is "L2" I believe?
Does that cover that functionality?
lmao yeah me too.And I have an issue with the menus.
The "submenu" aka what you get when you try to bring up the menu (like with ENTER) was one of the first things I created. But I created it with a very particular functionality in-mind: that time still passes while you're in it. While battlers and allies don't move, states will continue their countdown and natural regens will still occur.
This was an explicit design choice for me, not decided by the community.The majority of players are used to calling the main menu by pressing Esc
Ultimately, I intended to nix the main menu proper in favor of an on-the-map custom menu, but just never got around to fully completing it. Menus aren't really my favorite to code in the context of RMMZ.
You would need to re-implement the skill/item/AI management within the default main menu... which I'm sure is possible, but good luck with that. If you are serious about trying to code that, I wish you the best of luck. The logic primarily resides in two places: The Scene_Map and the trio of Window_Abs* files.How can I change it back to more classical system? -
Yes, I see, strafing is on Ctrl. I don't have a gamepad at all, lol.
Where are the key bindings? Maybe i'll try to make it more convenient on a keyboard.
Changing menus will be hard, i guess. I'll try and tell if there will be any progress... -
Sorry for the delay, its been a busy week!
JABS was designed controller-first, and so I'd recommend you pick one up if you can spare the funds! RMMZ has native gamepad implementations so many things work out-of-the-box. That being said, keyboard-ing was very much an afterthought for me, so while all buttons are indeed mapped, they are... probably not the world's most ergonomic?
To help people who want to be bold and build their own control interfaces (such as what you ask, altering the input mappings and such to different keys/buttons/etc), I abstracted most all of the input functionality into a separate extension. You can find that here. If you read the annotations of the J-ABS-Input plugin, you'll note it makes reference to "checking the J-ABS Input mapper to see what is already there", and that can be found over here.
I will say that what you seek to do is no small task, and wish you the best of luck. When I have time and am in the mood, I do still work on and push updates to my codebase (the rmmz-plugins code repository that I linked above). Let me know how your efforts go. :) -
Thanks. I'm currently working on the first combat level and will try to post here some gameplay video next month. Here is a sketch of battle sprite btw.
-
Is there a way to make a new dodge skill (one I created myself) play a sound? The default dodge skills are all silent, so...
Also: I haven't delved into the system thoroughly, but for some reason the enemies all drop NaN gold and give NaN experience. -
technically, the animation associated with the mobility skill doesn't actually execute- it is simply a skill in the database to house the skill-related data. This was an intentional decision (thus why none of the dodge skills actually have animations). Feel free to dig into the code and update it to execute the animation however you see fit though if you're inspired. It is open for that reason :)Is there a way to make a new dodge skill (one I created myself) play a sound? The default dodge skills are all silent, so...
-
I'll look into that, thanks.technically, the animation associated with the mobility skill doesn't actually execute- it is simply a skill in the database to house the skill-related data. This was an intentional decision (thus why none of the dodge skills actually have animations). Feel free to dig into the code and update it to execute the animation however you see fit though if you're inspired. It is open for that reason :)
But my second question though - why do enemies all drop NaN gold/experience? Should it be defined somewhere that I'm unaware of? -
I'll look into that, thanks.
But my second question though - why do enemies all drop NaN gold/experience? Should it be defined somewhere that I'm unaware of?
Off the cuff, if i had to guess, I'd assume there may be another plugin interacting with experience gained? Or perhaps misordered plugins? or perhaps simply missing plugins?
Its difficult to say without seeing the project in question (or any associated errors in the console) considering the base project (recommended to build off of) works as-expected. -
Oh! My bad. I ran Chef Adventure as is and the enemies are dropping stuff and experience correctly. Must be a problem on my end.Off the cuff, if i had to guess, I'd assume there may be another plugin interacting with experience gained? Or perhaps misordered plugins? or perhaps simply missing plugins?
Its difficult to say without seeing the project in question (or any associated errors in the console) considering the base project (recommended to build off of) works as-expected.
I was able to fix it by swapping the whole js folder with Chef Adventure and re-importing my other plugins. Many thanks! -
I also wanted to add a sound for dodge's skills.Is there a way to make a new dodge skill (one I created myself) play a sound? The default dodge skills are all silent, so...
Here's the part of the code to modify in the J-ABS.js plugin :
/**
* Executes the dodge action.
* The player will perform some sort of mobility action.
* @param {JABS_Battler} jabsBattler The battler performing the action.
*/
static performDodgeAction(jabsBattler)
{
// check if we can dodge.
if (!this.#canPerformDodge(jabsBattler)) {
// dodge skill unable.
AudioManager.playSe({ name: "Cancel1", volume: 90, pitch: 100, pan: 0 });
return;
}
// perform the dodge skill.
AudioManager.playSe({ name: "Evasion1", volume: 90, pitch: 100, pan: 0 });
jabsBattler.tryDodgeSkill();
}
To find the right line: CTRL + F => * Executes the dodge action
I also added a sound when the dodge skill is not available.
By the way, @Jragyn, you should add "cancel" sound for each unable actions, i added it for combat skills, tools and offhand. I think it really help the player. It's more instinctive than look at the skills cooldown. -
How to disable exclamation mark and that buzzing sound when the enemy sees you?
Also... I tested some combat and returned to strafing issue.
Its not working the most convenient way.
What I want is walking and watching in an opposite direction (when ctrl is pressed).
Not fixing one particular direction.
It will enable the character to retreat and attack simultaneously, without much effort from the player.
I see that strafing is performed by setDirectionFix command in .js files.
Is there a way to change it to work as described? -
Hi @Jragyn , just a quick question. I know you are not supporting your J-SDP plugin anymore, BUT, when I attempt to use it with J-Base, for some reason J-Base disappears enemies from the Battler screen. I am not using JABS but only the J-SDP and J-Base. Is there something in the J-Base code that would be making enemy battlers disappear from the battle scene? It happens even without J-SDP enabled, so I know it's the J-Base doing it. Any tips? Any line of code I should try and change?
-
Hi @Jragyn ,
I really like your plugin for gapClose skills, but I also wanted a skill that could draw enemies to you.
So I made a little add-on to your plugin that allows a skill with the <bringClose> tag to attract enemies hit.
I thought it might interest some people, so I'm sharing it here. -
Heya pal.Hi @Jragyn , just a quick question. I know you are not supporting your J-SDP plugin anymore, BUT, when I attempt to use it with J-Base, for some reason J-Base disappears enemies from the Battler screen. I am not using JABS but only the J-SDP and J-Base. Is there something in the J-Base code that would be making enemy battlers disappear from the battle scene? It happens even without J-SDP enabled, so I know it's the J-Base doing it. Any tips? Any line of code I should try and change?
Off the cuff I can’t say I know really why that might be. Needless to say, i built a lot of my plugins to work with JABS, where there simply isn’t a battle screen so much of that isn’t really tested.
I’ll have to look into that and see what could be the problem- I can’t think of anything i wrote that would cause that… but then that plugin is probably like 10k lines lol.
I had considered doing this, but honestly just didn’t take the effort lol. I’ll see if i can clean this up and format it to fit the rest of my plugin suite (and mention it was modeled after your efforts <3).Hi @Jragyn ,
I really like your plugin for gapClose skills, but I also wanted a skill that could draw enemies to you.
So I made a little add-on to your plugin that allows a skill with the <bringClose> tag to attract enemies hit.
I thought it might interest some people, so I'm sharing it here. -
Does this mean you'll work on this again?I’ll see if i can clean this up and format it to fit the rest of my plugin suite (and mention it was modeled after your efforts <3).
-
How to set an attack spawning place?
I wanna make an aoe skill that damages enemies around the MC, like on the 1 video.
It initially spawns over her head for some reason (2 video), and the only way I found is making the event invisible and jump a few tiles lower. But it didn't work well during combat testing.
-
I tried this ABS, it's amazing, congratulations to everyone involved.
The characteristic evolution system reminded me a lot of a tactical RPG, it was complex just as I like.
I had lags here on my PC in open fields with many 10-20 events, you must already know this and I understand that it happens, it's common in ABS and it's mostly the construction of RM.
A beautiful project, Moghunter would be happy to have invented this ABS, I believe. -
I never stopped working on this project.Does this mean you'll work on this again?
I'm just not actively engaged in replying to all posts and supporting for various requests.
I usually have an active code branch in the CA project (the sample project) at any given time as I slowly plug along on it (remember, the CA project is a test project for you guys, but its a real project for me- even if it isn't professional or amazing). You can always find whatever "the latest" of my plugins are in there, since all plugins i make are for use in that project.
How to set an attack spawning place?
I wanna make an aoe skill that damages enemies around the MC, like on the 1 video.
It initially spawns over her head for some reason (2 video), and the only way I found is making the event invisible and jump a few tiles lower. But it didn't work well during combat testing.
When it comes to "actions that spawn on the user", I largely used an invisible "actionId" event (see: the very first one in the upper left on the sample project- identical to omitting the tag entirely) and rely on theCode:tag instead, instead, while the "animation" you select for the skill represents what it looks like to be hit by said skill. You can find an example of this with the "Siesmic Stomp" (id:116) skill in the sample project's database.<castAnimation:SKILL_ID>
You can read more about the various tags and what they do in the plugin's help section under "SETTING UP YOUR SKILLS". (there are so many tags)
I am pleased to get this feedback. I am the sole author, and have spent years on it, at this point. Thank you. The SDP system I wrote has evolved a lot, heavily based on shining force neo/exa games. I'm glad you like it, too :)I tried this ABS, it's amazing, congratulations to everyone involved.
The characteristic evolution system reminded me a lot of a tactical RPG, it was complex just as I like.
I had lags here on my PC in open fields with many 10-20 events, you must already know this and I understand that it happens, it's common in ABS and it's mostly the construction of RM.
A beautiful project, Moghunter would be happy to have invented this ABS, I believe.
Regarding poor performance with lots of events, that is indeed a fact- RM has its limitations, as well as the nature of it being a reactive ABS. I have a friend who plays the test project I share as a sort of tester for it, and his computer is simply too low-spec to play some of the higher maps. Higher-powered CPUs definitely make a difference (which is what I build and test on myself). -
Here is an actual quote by a GGG dev on why RPG Maker wasn't enough to make an action game and they had to make Action Game Maker:RM has its limitations, as well as the nature of it being a reactive ABS.
"The processing requirements for RPGs and action games differ significantly. Action games, in particular, demand high-performance collision detection and fast response times, which made our RPG-specialized in-house engine insufficient for this genre."
I haven't tried your engine (I don't have MZ), but after trying another general game engine entirely (GDevelop) I found it just has a lot more natively built in, easier to use, and more performant for this type of gameplay.
While you can make simpler action games in RPG Maker (like older 2D Zeldas or Reccettear), I wouldn't use it for any kind of intense action gameplay that needs fluid movement, accurate collision detection, a lot of moving enemies on screen or high performance.