Jump to content
SW5084

Estimation on scripting a custom battle system?

Recommended Posts

Hi everyone,

 

I am thinking of scripting a custom battle system for my game as the default one really does not fix the theme. But before I start, I have a few questions for making the decision if I should actually start this project,  and give myself an estimate on how much work is needed if I do work on it.

 

First of all, can scripting change the UI interface of the database page? It would be awkward if I made all the change, but can not change anything on the UI side. (Though I guess even if this happens, I should be able to change them in scripts as well right?)

 

Another question is how complicated is scripting a battle system? I have experience with coding in java and python and etc but never done any Ruby before this.

 

And lastly, is there an RPG maker that uses tactic battle style as default? (For example fire emblem style battle or something like that?) I should probably ask this first, but I have already done some work on the current project and don't really want to start over, but if there is a program that does this, I would really like to know.

 

Thanks.

Edited by SW5084

Share this post


Link to post
Share on other sites

I'll be addressing your questions out of order.

Can you alter the engine?

No, you can only alter the in-game UI.

 

How complicated is scripting a battle system?

Very, you will hardly find a scripter to do this w/o a substantial payment. RPG Maker is renowned for its inflexibility. On the upside python and ruby are extremely similar, so much so that I commonly get syntax errors for mixing the 2. (If you know python you will pick up ruby fast.)

 

Time frame?

Anywhere from 100 to 1000h depending on the your experience & complexity of the system.  For a fire emblem system you can recycle quite a bit of the default functions, coupled with no experience I'd guess somewhere in the mid range (around 4-500h). On the other hand if you have a good grip on how the engine works you could probably get away with less than 200h of work.

Share this post


Link to post
Share on other sites
On 8/21/2018 at 1:05 PM, SW5084 said:

First of all, can scripting change the UI interface of the database page? It would be awkward if I made all the change, but can not change anything on the UI side. (Though I guess even if this happens, I should be able to change them in scripts as well right?)

 

Another question is how complicated is scripting a battle system? I have experience with coding in java and python and etc but never done any Ruby before this.

 

And lastly, is there an RPG maker that uses tactic battle style as default? (For example fire emblem style battle or something like that?) I should probably ask this first, but I have already done some work on the current project and don't really want to start over, but if there is a program that does this, I would really like to know.

 

As CookieNinja mentioned, the UI interface of RPGMaker can't be altered via script. You would need to hack the maker executable itself to change the UI, which is of course against the terms of service of it. But if you know how to script, you won't really need the database, you can hard-code any settings in the script itself or even make your script read external text files etc. to grab the settings.

 

Scripting a battle system depends on the system you want and how different from the built-in system it is. In the worst-case scenario (like, say, an action battle system that is completely different from the turn-based system in RPGMaker) it will all have to be coded completely from scratch. If you imagine how much time or effort it would take to code a battle system from scratch using Java, you better believe it will take about the same amount doing it in Ruby. Something like a Fire Emblem tactics-style system is almost completely different from the one RPGMaker ships with, it will probably need to be done from scratch (I think there might be existing scripts that have tried to make something similar, like GubiD's, but I have never used one before and can't advise you on how good/whether to use them).

 

As for a maker that does Fire Emblem-style gameplay, yes, there is at least one called SRPG Studio that just got released. It's not related to RPGMaker and again I have never used it so I cannot comment on whether or not it will do what you want it to. But I know a game called Vestaria Saga was made using it (which was recently translated into English) by the creator of Fire Emblem and the engine was basically built to let people clone Fire Emblem games.

Share this post


Link to post
Share on other sites
On 8/23/2018 at 5:16 AM, Cookie Ninja said:

I'll be addressing your questions out of order.

Can you alter the engine?

No, you can only alter the in-game UI.

 

How complicated is scripting a battle system?

Very, you will hardly find a scripter to do this w/o a substantial payment. RPG Maker is renowned for its inflexibility. On the upside python and ruby are extremely similar, so much so that I commonly get syntax errors for mixing the 2. (If you know python you will pick up ruby fast.)

 

Time frame?

Anywhere from 100 to 1000h depending on the your experience & complexity of the system.  For a fire emblem system you can recycle quite a bit of the default functions, coupled with no experience I'd guess somewhere in the mid range (around 4-500h). On the other hand if you have a good grip on how the engine works you could probably get away with less than 200h of work.

Thank you for all the advice! This helps a lot with my planning!

 

 

 

8 hours ago, Traverse said:

 

As CookieNinja mentioned, the UI interface of RPGMaker can't be altered via script. You would need to hack the maker executable itself to change the UI, which is of course against the terms of service of it. But if you know how to script, you won't really need the database, you can hard-code any settings in the script itself or even make your script read external text files etc. to grab the settings.

 

Scripting a battle system depends on the system you want and how different from the built-in system it is. In the worst-case scenario (like, say, an action battle system that is completely different from the turn-based system in RPGMaker) it will all have to be coded completely from scratch. If you imagine how much time or effort it would take to code a battle system from scratch using Java, you better believe it will take about the same amount doing it in Ruby. Something like a Fire Emblem tactics-style system is almost completely different from the one RPGMaker ships with, it will probably need to be done from scratch (I think there might be existing scripts that have tried to make something similar, like GubiD's, but I have never used one before and can't advise you on how good/whether to use them).

 

As for a maker that does Fire Emblem-style gameplay, yes, there is at least one called SRPG Studio that just got released. It's not related to RPGMaker and again I have never used it so I cannot comment on whether or not it will do what you want it to. But I know a game called Vestaria Saga was made using it (which was recently translated into English) by the creator of Fire Emblem and the engine was basically built to let people clone Fire Emblem games.

Thank you! I will look up SRPG studio, and maybe this will be better for my current project!

Share this post


Link to post
Share on other sites

Not quite the same as doing it in RPG Maker, but I'm currently working on a new project (coding it from scratch using C# and MonoGame), and I've probably spent upwards of 10 hours on the battle system already - and all it does so far is display party / enemies (including current HP / MP for the party), calculate and display the turn order (it's using a FFX-like CTB system), and let you select attacks (but the attacks don't actually do anything, aside from display their name, yet). EDIT: I've done a bit more since I posted this message (although not much), and currently, the source file for the battle scene alone stands at 1126 lines, 39KB. And I'd say it's at best maybe 25% complete now. (Yes, feature-wise it doesn't sound so close, but there's also a fair bit of behind-the-scenes stuff in place to support the rest of the front-end features it needs.)

 

Now, of course, that 10 hours includes things like "adding stuff to actors / enemies that the battle system needs" and in a couple of cases creating graphics (very basic MS-Paint style ones though) that I can use for testing, but still - that's a considerable amount of time already and I'm only just getting started.

 

True, Ruby is a little bit more flexible and easy-to-use than C#, and even more so if you already know Ruby (I literally didn't know a thing about C# when I started this project). But still - the point is, if you're doing it from scratch, a custom battle system will take a long time to create. Now if you can re-use parts of the default system or an existing script, that will definitely save you a lot of time - at the cost of that you're sacrificing some degree of control over how it works. This was something that greatly frustrated me with my RPG Maker game - as amazing as Yanfly's CTB script is, I never really properly figured out the internal workings and thus wouldn't be able to tell you how turn order is determined in my game beyond "certain moves mean your next turn comes sooner or later, and higher agility = you get more turns and get your first turn sooner".

Edited by Ninjamida

Share this post


Link to post
Share on other sites

Arn't there SRPG-stylebattle systems that other people have made for RPG Maker already though?Don't know how good they are though. Personally I would rather code my own battle system then buy something like SRPG Studio but that's mostly because I am so used to Ruby and RPG Maker by now, and I rather like programing. I don't know how flexible SRPG Studio is or if it can do what you want to do with it, so I can't say which would be more worthwhile for you.

 

I will say this though: Programming (or any game development) time is not linear. You spend an hour doing half of the code you need for a battle system and spend a year doing the other half. You can waste huge chunks of time doing one thing only to find out you can't make it work or you did it wrong and half to start again, or you can blaze through something tricky like it was nothing. Investing x amount of time in programing something can't always give a predictable y amount of work. Of course, that dosn't mean estimates are useless, but take um with a grain of salt don't you think? A nice rule of thumb is to always expect something to take at least twice as long as you think it might.

Edited by Kayzee

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

×
Top ArrowTop Arrow Highlighted