Multi-platform graphics for writing a retro-style game / game engine?
-
Can you recommend a multi-platform development tool / environment / API / SDK that I could use to write a video game? The game would be "retro" in sophistication - I specifically want to use NES or SNES-style graphics and sound. Would also accept existing game engines with those parameters, I suppose. Please don't say Flash. For a while I've been kicking around an idea for a rudimentary adventure / RPG-type video game - think along the lines of the older Zeldas or Final Fantasies - and I thought I might take a crack at writing it, using the experience as an excuse to get familiar with cross platform development. I don't code professionally, but I used to; as a result I have a pretty deep familiarity with a wide array of C-based languages. So, what are my options? The need for cross-platform-ness stems from the fact that I'll be developing and testing on Linux, but basically anyone I would want to share the game with would be on Mac or Windows. The sound and graphics support could be pretty basic; as I said above the fold, I'm thinking NES or SNES level so I don't need intense 3D support. I haven't really played many video games since Wii went out of fashion, and mainly console games at that - I've never even installed Steam, much less have any idea of how to program for it, but anyway I get the impression it's more about distribution than development...? I'd be open to using an existing game engine if there is an accessible one in the Zelda-to-FF range of styles. I'm not adverse to paying for software, but this is going to be a hobby so if the price tag is more than 3 figures it's probably not going to happen. Oh! Of course I am familiar with, and have used, Java, but it doesn't seem to be super widely accepted anymore (outside of, you know, Android). I don't think it's even installed on any of the windows machines I've used lately. Let me know if my impression is wrong and Java is indeed the way to go. Please also let me know if this question is hopelessly naive and/or incomplete in any other ways - thanks!
-
Answer:
A friend who is thinking of participating in a Ludum Dare has been playing with http://createjs.com. It is designed to interface with (and migrate from) Flash in some aspects, but is otherwise javascript/HTML5 based. Also, Atari has created some https://www.atari.com/arcade/developers/building-atari-createjs.
Joey Buttafoucault at Ask.Metafilter.Com Visit the source
Other answers
It may be (quite a bit) lower-level than what you're looking for, but https://www.allegro.cc/ is free, multi-platform and C-based.
A Thousand Baited Hooks
Java is certainly a way to go; the http://slick.ninjacave.com/ library is a little obnoxious to set up at first but works pretty nicely once it's going. The other main option I've looked at when similar desires struck me is http://www.pygame.org; feature-wise it's on par with Slick. Both are free downloads, and most Linux distros have Pygame in their package manager already. One caveat about the above - I don't know how easy distributing the games you write will be with either. I've used both to write little game-engine-like-things on Linux and they worked all right for myself, but letting anyone else play is something I haven't explored. With Pygame, at least, you should be able to distribute the .py files.
wanderingmind
http://phaser.io/ might be more action orientated than you'd want, but is very powerful
scruss
How much of the details do you want to do? That is, do you want to write a game engine sort of from scratch? Then look into something like OpenGL. Or do you want to focus more on gameplay/art/etc? Then probably look at existing engines and/or libraries. pygame is actually not a bad place to start if you know python. I've never used Slick so I dunno. I do have to warn you that OpenGL is kind of a rabbit hole and getting started is a real pain. Once you're up and running it's not too bad though. The New Hotness is OpenGL is version 4 which has lots of amazing features. However, for a lot of stuff that is not real resource intensive, OpenGL 1.x works OK and is, let's say, way easier to get started in.
RustyBrooks
Thanks for the suggestions so far! How much of the details do you want to do? That is, do you want to write a game engine sort of from scratch? Then look into something like OpenGL. Or do you want to focus more on gameplay/art/etc? That is a good question. I honestly would prefer to focus more on gameplay and art than, for instance, animating sprites. I was just afraid that nothing would be developed to a point where I could focus on those aspects. On a quick review, pygame seems to be potentially in the right zone - I see that someone has mocked up their own FF clone with it, which I suppose is a good sign. Also the tile scrolling aspects of Phaser do look promising.
Joey Buttafoucault
http://www.yoyogames.com/studio - fairly easy to use; drag & drop interface may be irritating for an experienced programmer http://unity3d.com/ - supports 2D and 3D, but pretty high bar to entry http://www.rpgmakerweb.com/ - easiest to use, but focuses on tile-based maps (and obviously, RPG-style games) I am not an artist, so my knowledge of these is from the teaching & programming side. Apologies if they aren't what you're looking for.
SuperSquirrel
If you're going for RPG, RPG maker is designed for this, and since you're going 8-bit style, tile-based map is not a problem. There are three versions RPG maker, but you can start with the "demo / free" version of RPG Maker Ace VX http://store.steampowered.com/app/224280/ The catch is it's not very multi-platform. It is distributable though. If you really need multiplatform, you'll need one of the more advanced engines.
kschang
One more option: Construct 2. Lite edition is free. Personal edition 129, multiplatform. Business version 400+ http://store.steampowered.com/app/227240/?snr=1_5_9__300
kschang
https://love2d.org is similar to pygame but uses the Lua scripting language instead of Python.
perihare
Related Q & A:
- Can you give some tips on writing a good cover letter for a job?Best solution by Yahoo! Answers
- How do you put a video on a computer from a MiniDV style camcorder?Best solution by Yahoo! Answers
- Are there any retro video game stores in Slidell, Louisiana?Best solution by Yahoo! Answers
- Best Graphics Card For A Dell XPS 410?Best solution by Yahoo! Answers
- What is a game engine?Best solution by ChaCha
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.