Creating My First Large Scale RPG

Started by
23 comments, last by SeraphLance 10 years, 8 months ago

Especially when the article you linked clearly states that C++ does not have a garbage collector, as opposed to Java which does.

Yep, which I agree with. C++ does automatic memory management without requiring a garbage collector.

Memory management in C++ may be much improved now, but RAII and C++11's smart pointers are not really automatic. At the very least you have to opt-in, and choosing the wrong smart pointer or creating cyclical references inadvertently can still bite you.

I like the design and flexibility inherent in this approach, but its quite different from GC, et all, and I'd not classify it as automatic. Its still easy to screw up, and you're on your own when you do. At least with GC and friends, there's usually some hope of it discovering your mistake and cleaning up after you -- now that's automatic.

throw table_exception("(? ???)? ? ???");

Advertisement

If you are really looking to plublish on Xbox Live and Playstation Store, you should really look into Monogame in C#. C# is a lot like java, but with some C-like stuff, so kind of a mix of c++ and Java (the two which you seem to be having trouble choosing between). Monogame is an open source variant of the XNA platform which gives you A LOT of customizability, but it further extends it to be supported on pretty much any platform. You can actually code in XNA, and 100% of the code will be transferable to a Monogame project.

With the XNA project you can target Xbox/Windows, and then use Monogame to port it over to Linux/Android/IOS/PlaystationStore/Ouya and ore.

This sounds like a great option. I'm going to look into this, probably today. Thanks!

It only takes one video game to change the world.

Java means no Xbox Live, no Playstation Store, and IIRC, no iOS either. Porting from PC/Linux/OSX Java VM to Dalvik (Android) is not trivial either.

In any case, I wouldn't try to support that many platforms myself. I'd rather choose a tool I like (I do like Java for example) and try to reap the benefits that go along it (hopefully Linux and Mac support), accepting its shortcomings like the ones I mentioned, and make the most out of it.

i usually keep my distance from people/sites that claim that XYZ tool makes multi platform applications "just like that", because multi platform development rarely goes as smooth as you might think.

"I AM ZE EMPRAH OPENGL 3.3 THE CORE, I DEMAND FROM THEE ZE SHADERZ AND MATRIXEZ"

My journals: dustArtemis ECS framework and Making a Terrain Generator

You don't need an engine. Just code your game already.

Cheers :)!

I'm a game programmer and computer science ninja !

Here's my 2D RPG-Ish Platformer Programmed in Python + Pygame, with a Custom Level Editor and Rendering System!

Here's my Custom IDE / Debugger Programmed in Pure Python and Designed from the Ground Up for Programming Education!

Want to ask about Python, Flask, wxPython, Pygame, C++, HTML5, CSS3, Javascript, jQuery, C++, Vimscript, SFML 1.6 / 2.0, or anything else? Recruiting for a game development team and need a passionate programmer? Just want to talk about programming? Email me here:

hobohm.business@gmail.com

or Personal-Message me on here !

Especially when the article you linked clearly states that C++ does not have a garbage collector, as opposed to Java which does.

Yep, which I agree with. C++ does automatic memory management without requiring a garbage collector.

Memory management in C++ may be much improved now, but RAII and C++11's smart pointers are not really automatic. At the very least you have to opt-in, and choosing the wrong smart pointer or creating cyclical references inadvertently can still bite you.

I like the design and flexibility inherent in this approach, but its quite different from GC, et all, and I'd not classify it as automatic. Its still easy to screw up, and you're on your own when you do. At least with GC and friends, there's usually some hope of it discovering your mistake and cleaning up after you -- now that's automatic.

"Automatic memory management" is one of those things that relies on a very specific definition, and Karsten is technically right. It's sort of like debating whether Java is pass-by-reference or pass-by-value. It's one of those arguments where you just roll your eyes and say "whatever", because all parties involved already know the semantics.

Anyway, OP:

RPG Maker has a ludicrous amount of customization potential -- more than you might think. The real problem is that you lose most of the benefit in the tool to begin with (like the map editor). There are also serious performance implications with heavy scripting, or at least there were with earlier versions of RGSS. I'm going to parrot Ravyne and suggest something like SFML/SDL. Most heavyweight engines are 3D engines largely because 3D is so much more complicated. You may have to develop some of your own tooling for 2D stuff (like a map editor), but it's not so bad.

This topic is closed to new replies.

Advertisement