Jump to content
IGNORED

What system do you think is the easiest to create a game for?


AtariJack

Recommended Posts

Hi, I'm new to this whole thing and could use some help.

 

I've always wanted to make my own game but I'm not sure where I should focus my efforts or where to start.

 

Is it easier to program a game for the the 2600 or the NES?

Would I be better off trying to make something for the 7800?

 

I'd like to make like a physical cartridge for my game when it's all done. How difficult is that?

 

Which console is just a nightmare that I should stay away from?

 

I could really use some advice.

  • Like 1
Link to comment
Share on other sites

Whats "easy" depends on your technical background. Not all programmers are created equal, so what is "hard" for one is "easy" to another. First, a couple of questions. What computer languages can you program in? Do you have a computer science background? If the answer to those questions is "none" and "no" then you might have a steep learning curve ahead of you. This is a topic that crops up quite frequently on AA so a quick search will get you tons of good advice.

  • Like 1
Link to comment
Share on other sites

Strictly consoles, eh? If you consider classic home computers, something like the C64 despite its lack of BASIC commands to handle the graphics, sound and input might be a candidate. There may be other 8-bit home computers too, perhaps Atari's own 400/800/XL/XE line. The majority of computers took cartridges as well as other, cheaper storage media.

  • Like 2
Link to comment
Share on other sites

I think what this guy did is great...

http://www.ebay.com/itm/Desert-Bus-2600-Atari-2600-Homebrew-by-CMS-/141349045403?pt=Video_Games_Games&hash=item20e90f449b

 

That's my dream.

He's got the game, the box, the manual. It's all put together so well.

 

Of course it doesn't HAVE to be the 2600.

If I could do the same thing with the 7800 or the NES then I'd seriously consider that.

Link to comment
Share on other sites

If you just want your game in a neat box - make a PC game and do this:

yWMf6Eh.jpg

 

The floppies are mini-CD sleeves: )

 

8-bit computers are definitely easier to do games for, as you can just straight-up do stuff in basic.

For example - in addition to super versatile, albeit pretty slow basic, ZX Spectrum has some very good game dev packages like Jonathan Cauldwell's Arcade Game Designer (free), Shooter Designer, and Platformer Designer.

 

I think at some point in the near future I'll have to seek out a programmer to do a Sega Master System game with me. That console just isn't getting any love from homebrew devs: )

Edited by darkfalzx
  • Like 3
Link to comment
Share on other sites

  • 2 weeks later...

Atari 2600 and bAtari BASIC :)

 

Alternatively you could try Intellivision and IntyBASIC :)

 

Besides there are emulators for both.

I hadn't heard of IntyBasic. Now I'll have to check that out!

 

If you're just starting, I'd recommend 7800basic before batariBasic, though. batariBasic (for the 2600) comes with so many limitations, it's more about trying to get a decent game to work out rather than making your dreams come true. 7800basic gives you the power of something close to the NES, but with very easy-to-learn BASIC.

 

I think at some point in the near future I'll have to seek out a programmer to do a Sega Master System game with me. That console just isn't getting any love from homebrew devs: )

Probably because it doesn't have a 6502, so it doesn't have the familiar 6502 Assembly, and I haven't heard of any good C alternatives for it (though if you have, let me know!).

  • Like 2
Link to comment
Share on other sites

I for one used WLA DX and ConTEXT when working with the SMS.

One thing to keep in mind about that system though is that it's EXTREMELY touchy about transfering new data to VRAM.

If it's not given enough time to process it before the next write, it will simply overwrite the current byte and every write after will be out of synch.

This issue isn't handled by most emulators though, so it's preferable to have a way to make sure that your stuff runs on the real deal (flashcart).

 

I for one find the GB (DMG-01, GBP, GBL and by extention GBC) to be a very neat system to work with.

It has some really great features such as:

A alternate tilemap that you can partially overlap the screen with.

A sweep generator for the primary waveform generator which makes it really easy to get simpler sound effects going.

A full OAM DMA which allows you to copy a attribute table for all the sprites directly from VRAM, etc.

 

If you're used to z80 ASM it's not that different. the GB CPU takes a bit from both z80 and 8080.

  • Like 1
Link to comment
Share on other sites

IMO you're approaching this backwards. regardless of which system you choose to dev for, you have a lot of hours of learning and work ahead of you. Picking the "easiest" system just means X/2 hours instead of X hours. But that's irrelevant if it's not a project you're going to enjoy putting potentially hundreds of hours into.

 

As an example, I personally love the Virtual Boy, however, a lot of people hatehatehate it. Suppose you're one of those people. So what if everyone in this thread came to the agreement that Virtual Boy is the easiest to program for. What would you do?

 

Instead of "what's easiest" I suggest you ask yourself:

 

What is your favorite system or system(s)?

What project specifically do you want to develop? (ie; a clone or an original concept?)

Which of your favorite system(s) lends itself best to this project? (ie; if a clone, does one already exists on some systems? if an original concept what are the technical requirements?)

What are the production issues related to your prospective systems? Some systems are a lot easier to produce physical cartridges, or have them manufactured entirely for you. Or so you want to design your own PCBs, possibly with custom features? Don't overlook production, unless you're going downloadable ROM only these have the potential to put your project on the shelf until resolved.

 

The hobby is littered with dozens of unfinished projects. Unless you absolutely love what you are working on, it's highly likely you will be another one of these. While the learning curve on most systems is considerable that's going to be the case regardless and it's just a matter of degrees. So IMO it's much better to take on a slightly more ambitious project that you're enthusiastic about than an "easy" project that you're going to loose interest in half way through. If you're going to compromise in order to ensure an attainable project, compromise on game details (ie; don't try to push the envelope technically, don't design 75 fully animated sprites to populate 50 highly detailed levels) rather than the core.

Edited by Christopher Tumber
  • Like 3
Link to comment
Share on other sites

The OP wrote he knows BASIC and Javascript. If the intention is to test out a game concept, you might actually start out in Javascript! A friend of mine in recent years has begun to develop his games as HTML5 canvases with Javascript using macros and limitations that will make it easy for him to port it over to Z80 assembly code once he got the logic, steering and graphics working. I would think it is a bit backwards, but he knows what he is doing and praises it speeds up development. As long as he sticks within his own ruleset what to do and not to do in Javascript, the game will be doable on a vintage system too.

 

But anyhow, as the 7800 was listed as a possible target system and it was mentioned that 7800basic is useful to get you started, it pretty much should be settled to start off with 7800 homebrew? Later on he can investigate other systems.

  • Like 1
Link to comment
Share on other sites

  • 4 weeks later...

Starting with how it should look when its boxed sounds like "jumping the gun" a bit. I'd say you first need to figure out what kind of game you want to do or start experimenting with some challenge. 8bit systems have some very nice challenges due to the limitation of the hardware, which also means one might even get away with sub-par graphics skills too if the game is good. The more advanced the display hardware is, the harder it is to make it look decent. A system like the Atari 2600 is extremely challenging though compared to most other later 8 bit systems. Memory constraints add to this challenge, and there are systems in the middle like an 8kb Commodore PET or a 3.5 kb Vic20 that can be good platforms too.

 

Personally I am a Commodore 64 guy and can relate to the post by Christopher above, its littered with unfinished projects. Most of them end when the coders challenge is met in e.g. some cool display technique. To finish a whole project takes perseverance and motivation of a different kind as there surely is no money to be made on this either. So far I have only completed one C64 project, a Jetpac clone called Rocket Smash where I did a 16kb cartridge version with Saul Cross (who did graphics and music) for the last RGCD cartridge compo (we got 5th place). A fuller 64kb version with a story and digitized samples is practically finished (just need to fix some text in it now) but it took ages for me to motivate myself to really finish this in spite of a deal with RGCD to publish this on cartridge too.

 

I have another project with Saul Cross as well that is about half finished, but again its a lot of work now left and not many big challenges left so it takes some special motivation and indeed time to commit to the last half bit of hard work. Although I know the game will probably be well liked by the community when its eventually finished - I still have a few other secret pet projects that have potential but are also daunting amount of work to get to any finished state, haha.

 

So do not think too hard on the finished project - but enjoy the way there. :)

Edited by johncl
  • Like 2
Link to comment
Share on other sites

There's a whole list of BASIC compilers for various consoles here:

http://atariage.com/forums/topic/221761-basic-compilers-compiled/

 

"Easy" is also a matter of your expectations. For instance, BasiEgaXorz can make Sega Genesis games but that doesn't mean creating a 4 way scrolling RPG engine is any easier.

 

UPDATE: Another critical issue for easy development is if the compiler developer is active. Using BasiEgaXorz as an example again, there has been no bug fixes and no interaction with the developer in years. This is why IntyBASIC and 7800bas are a great place to start.

  • Like 1
Link to comment
Share on other sites

  • 8 years later...

The Uzebox is one of the easiest consoles to write games for. There are over 100 open source games already written for it, you can use regular C to use the easy to learn Uzebox API to write games and develop them under your OS/IDE of choice, testing your builds with the cuzebox emulator. I was able to build cuzebox under Haiku without changing a single line of code and everything worked which proves how portable it is.

 

The most fun part is that you can build your own Uzebox console from components for not much (less than $50, if you already have the few required tools) so its one of the few platforms that you can literally know everything about, unlike most modern systems. Not even Linus Torvalds knows everything about the Linux kernel, and thats just Linux. Uzebox is the antidote to all that bulk and bloat. The Uzebox's video and audio are implemented in software so that experienced devs can write new video modes for it.

 

uzebox.org

Edited by danm
  • Like 1
Link to comment
Share on other sites

Well, if you are an absolute noob, but also don't want to learn the syntax of a programming language, there are a few no-code/low-code tools that allow you to make games for classic consoles (there are even more for classic computers, but I will omit those):

Edited by haroldoop
  • Like 1
Link to comment
Share on other sites

Also, you may want to consider looking into Fantasy Consoles; you get that retro look and a few retro limitations, while still having a full IDE with integrated map/graphics/music editors.

 

The most well know example would be pico-8: https://www.lexaloffle.com/pico-8.php

But there are a lot to of Fantasy Consoles to choose from: https://itch.io/tools/tag-fantasy-console

 

There are also plenty of retro-ish consoles that feel retro while also being made from modern hardware; I will only cite a few:

- Arduboy: https://felipemanga.github.io/ProjectABE/

- ESPboy: https://www.espboy.com/

  • Like 2
Link to comment
Share on other sites

To answer the original questions:

 

 

Is it easier to program a game for the the 2600 or the NES?

Even with batari BASIC or NES Maker you need to use assembly.  But, the NES hardware does a lot more for you.

 

Would I be better off trying to make something for the 7800?

7800bas and AtariDevStudio are a great combo.  But, you have to have love for the 7800 and how it works.

 

I'd like to make like a physical cartridge for my game when it's all done. How difficult is that?

Depends on the system.  Single game flashable boards are readily available for the Genesis from multiple vendors.  

 

Which console is just a nightmare that I should stay away from?

Probably any that are assembly only and have a beginner unfriendly community.  Pick a system, lurk in the dev forums and see how newbie posts go.

 

  • Like 1
Link to comment
Share on other sites

  • 3 weeks later...

I learned assembly this year for atari and sms and a bit for nes

 

I would personally just start of with assembly and skip those basic languages, there are a bunch of books to teach 6502 and even some for atari 2600.

I think the 2600 is easier to make simple patterns while with newer systems you have to learn a lot about the graphics chip to be able to draw anything on screen. Learning the 2600 definately made it easier for me to understand making stuff for nes and sms but I think if you started with nes it would be hard to get used to 2600. To make a nice picture on the 2600 you really only need to know a small number of instructions.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...