Jump to content
  • Advertisement
Sign in to follow this  
SchweeMonster

Creating My First Large Scale RPG

This topic is 1886 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi everyone,

 

I am currently working my way into indie game design.  I've been programming on and off for the last 10 years in a variety of different languages. I am currently working on an RPG that I've been writing for a while now and I'm trying to decide what language the final product will be coded in.

 

I've had plenty of people recommend RPG Maker but this "engine" won't let me customize my game nearly enough.  I've currently been testing my pixel art animations and a few gameplay mechanics via GameMaker but I fear this also won't give me the customization I want

 

Another major concern of mine is when I ultimately release this product and where.  I'm aiming to release this game on a variety of platforms including the Xbox Live Marketplace and Playstation Store so I want this game to be coded using a language/engine that supports these markets.

 

I am considering coding a custom engine using C++ or Java.  I would definitely consider an engine if it fits the above criteria.  So what are your recommendations?

 

 

Edit:  I forgot to mention that the game is 2D which is probably important for choosing the right engine. :D

Edited by SchweeMonster

Share this post


Link to post
Share on other sites
Advertisement

As someone with a similar plan, I haven't really found an engine myself that suits my 2D needs, so I'm personally going to make it from scratch in Java. Besides, I imagine that this allows me a lot more control as well, freedom-wise as well as optmization-wise. Just something really crude to start with, then polish it later when I've found a good build to keep. So I guess that's my reply to you, unless someone could give us both some ideas on what engines to use.

 

All I know is that there's a lot of engines to choose between:

http://en.wikipedia.org/wiki/List_of_game_engines

Edited by Malabyte

Share this post


Link to post
Share on other sites

I've tried doing a bit of research on the subject and my thoughts are pretty similar.  Is there a reason you'll be going with Java over C++?  What software do you use for coding and compiling?

Share this post


Link to post
Share on other sites

I don't know a whole lot about RPG maker these days -- I meant to pick it up during the steam sale just to check out the tooling and whatnot, but missed the sale. But, there's a non-trivial number of actual, commercial games (if indie) written in RPG maker, so I'd really investigate whether it can be expanded to meet your needs through scripting or whatever interfaces it provides. That's probably the path of least resistance.

 

Unity is an ever-popular choice of engine these days, but I've heard mixed reviews as to whether its very suitable for 2D games out-of-the-box. Some say its just alright, others say its horrible. There's Unity2D, I think, that would presumably be a whole lot better suited, but it might not have as much tooling around it as Unity proper.

 

I'm really not aware of any other good engines for 2D work, though I'm sure some exist. Depending on how comfortable you are with programming, rolling your own might be reasonable. I'd recommend that you use a simplified graphics library to move fast -- something like SDL 2.0 or SFML -- rather than straight Direct3D or OpenGL. Those things are great to know, but if your ends are to create a game, learning them enough to be effective is a much longer route than something simpler. For scripting, I'd recommend Lua because its popular, well-understood, and Lua-Bind will help you tie it to your engine. Finally, if RPG maker outputs files in formats that are reasonably well-understood, or you can reverse-engineer them, consider leveraging as many of their tools as you can. It will be far quicker to leverage those than to write your own, even if you still have to write some simpler tools to close the gap between what you need and what they offer.

Edited by Ravyne

Share this post


Link to post
Share on other sites

http://stackoverflow.com/questions/17584717/2d-cross-platform-game-development-engines

 

Here's a long list of 2D engines I found. I'm currently using Moai for my 2D project. I am REALLY looking forward to Havok's 2D game dev support however. They released their Havok tool's under the name of Project Anarchy but only for Mobile development. Sometime this month they are supposed to be releasing more information on the Pro license which will allow you to build for consoles and desktop, pretty much everything. This is all 3D though, the GREAT news that I can't wait for is: http://forum.projectanarchy.com/showthread.php?278-2D-game-development-components , they are working on 2D components so you can make 2D games with it, all using Lua which is the easiest language in existence. You can also code the heavy parts of your code in C++, thus making it pretty much the ideal engine if they do the 2D components right, really looking forward to it. However I wouldn't expect it to be out for at least a few months =(

Share this post


Link to post
Share on other sites

@Ravyne Thanks for the info.  I have used Unity a bit but I don't think it's what I'm looking for.  Unity2D may be a different story.  As for RPG Maker, I'll have to see if theres any export features.

 

@fatzilla Sounds great but I'll most likely be coding already before its release.  However, I'll stay tuned.

 

@kburkhart84 I decided that RPGMaker wasn't going to suit my needs as soon as I found out that you must use a 32x32 tile size.  However, I will definitely be using it for a reference when I'm creating my own databases.

 

Like I said, I've been using Gamemaker so far and I really do enjoy it for the most part.  However, I'm having issues with it rendering the graphics when I use a custom view (primarily to zoom in) and I don't see any options so I'm not sure I could do to fix it.  Also, I'm not sure Gamemaker games would be eligable for submission for Xbox Live or other online stores.  Of course I could be completely wrong because I'm still learning and that's why I'm asking here. :D

Share this post


Link to post
Share on other sites

I've tried doing a bit of research on the subject and my thoughts are pretty similar.  Is there a reason you'll be going with Java over C++?  What software do you use for coding and compiling?

 

    Java seems easier to learn (e.g. due to automatic memory mgmt) and I got a better feel for understanding the syntax (which was important when choosing my first language). Additionally, with Java I can make programs that literally run on any machine (as long as Java is installed), instead of having to write for a specific platform. There's also some other good and bad language structure that Java has that you'll just have to read up on here.

 

    There's a big debate about the bytecode and Java Virtual Machine, and how this makes java programs run many times slower than C++. But this is often exaggerated, as Just-In-Time (JIT) compiling prepares the Java program in run-time to run in the machine code of that specific platform. People often don't seem to take JIT into consideration when judging Java's running speed. Someone even claimed Java to be 20-40 times slower, but it's actually just a little less than twice as slow as C++:

 

 "[...] As of December 2012, microbenchmarks show Java 7 is approximately 44% slower than C++"

- Wikipedia.org/wiki/Java_(programming_language)

 

    Besides, a much bigger factor for speed is in problemsolving and algorithmic methodology, and not the lingual one. But ultimately, I just went with Java and now I just need to stick with it until I know it fluidly enough to expand to more languages, perhaps C++ or maybe even something totally different, depending on what becomes more relevant for me at that time.

 

--------------------

 

    Coding Software:

   Eclipse IDE, I'm able to code on one screen and debug the program simultaneously in run-time on another. However, I've read that you can get a C++ plugin for Eclipse, so this might not be a valid argument.

 

    Compiling Softwares:

    Eclipse again (by exporting from .java to ".jar file" for web applets or "runnable .jar file" for ordinary Java files) after having the JDK installed (e.g. Java SE 7), or just the Javac function in the OS command prompt, perhaps combined with Launch4J executable wrapper if I wanna make an .exe file out of it. Haven't tried the latter two yet, though.

 

    Again, note that you don't have to compile your program the traditional way while writing in Eclipse.

Edited by Malabyte

Share this post


Link to post
Share on other sites

@Ravyne Thanks for the info.  I have used Unity a bit but I don't think it's what I'm looking for.  Unity2D may be a different story.  As for RPG Maker, I'll have to see if theres any export features.

 

@fatzilla Sounds great but I'll most likely be coding already before its release.  However, I'll stay tuned.

 

@kburkhart84 I decided that RPGMaker wasn't going to suit my needs as soon as I found out that you must use a 32x32 tile size.  However, I will definitely be using it for a reference when I'm creating my own databases.

 

Like I said, I've been using Gamemaker so far and I really do enjoy it for the most part.  However, I'm having issues with it rendering the graphics when I use a custom view (primarily to zoom in) and I don't see any options so I'm not sure I could do to fix it.  Also, I'm not sure Gamemaker games would be eligable for submission for Xbox Live or other online stores.  Of course I could be completely wrong because I'm still learning and that's why I'm asking here. biggrin.png

 

As far as I know RPGMaker only exports to windows.  And I agree about using Unity for 2d.  It is made for 3d, and it would be great for 2d gameplay in a 3d world, but for "real" 2d graphics I'd say GameMaker is much better.  Also, I understand about not using RPGMaker.  I'm not sure if the tile size is something you can change with Ruby scripts or not, and I'm sure that there are a couple things that you can't change.  GameMaker on the other hand doesn't have this problem, as you can use tiles of any size you choose, and sprites the same.  The only thing with GMStudio is that you can't do any single graphic bigger than the texture page setting, which for PC defaults to 2048x2048, and 1024x1024 for mobile platforms. If you have a graphic bigger than that, it gets scaled down to fit.  A workaround for that if you really need a massive graphic is to cut it up into separate pieces and draw them separately, though don't think you would run into this with an RPG in any case.

 

I'm not sure exactly what problem you are having zooming in the graphics, but if you be more specific maybe I could help, or if you post it on the GMC I'm sure we could help over there.  Also, GMStudio has many exports, but XNA and/or .NET is not one of them, so I don't think it could be sent to the XBOX store.  But any store that takes PC games would be able to accept GM made games, which includes steam as there are several GM made games already on Steam.

Share this post


Link to post
Share on other sites

@Malabyte Thanks.  I've done a bit of C++ and Java.  I'm more familiar with Java so I may look more into that.

 

@kburkhart84 That is good to know.  Where is this GMC you speak of?

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!