I’m about to start working on programming a custom battle system for a project I’m working on with a partner, and I have to admit, from everything I’ve seen and researched so far, the prospect seems fairly daunting. It’ll be staying within the turn based framework provided, though stuff that’s planned are things like QTEs/minigames for certain moves (think the Super Mario RPGs), and extra turns that can be gained by doing well in battle.
I have experience with programming and (VERY LIMITED, I’m talking simple programs a few years ago) experience with Java, but I still don’t really know where I’d start. Any pointers?
I’d say a good place to start would be figuring out how the default battle system works. There’s a lot of asynchronous stuff that may take some time to wrap your head around. In particular, look at BattleManager in rmmz_managers.js, Scene_Battle in rmmz_scenes.js,Spriteset_Battle in rmmz_sprites.js, Window_BattleLog in rmmz_windows.js, and Game_Troop in rmmz_objects.js. That doesn’t cover 100% of the battle system, but most of the stuff is in there. There’s also some stuff in Game_Actor and Game_Battler, and probably a few other places as well.
It could be helpful to run a test battle and open the debugger to step through things. Press F8 and switch to the source tab. You can navigate through the files and set breakpoints at points of interest, then play the battle and observe how and when the breakpoints are hit.
Thank you for the advice! I’ll definitely get right on inspecting those.