Jump to content



2

vintage gaming API

api console text based graphics controllers engine sound arcade

12 replies to this topic

#1 proteanthread OFFLINE  

proteanthread

    Space Invader

  • 22 posts

Posted Thu Dec 1, 2011 8:47 PM

if one were to design an API to make it easier to allow game developers to "simulate" or "emulate" a classic game (say Pac Man, Super Mario Bros., Pitfall, or even Zork), what would that API have to include or be able to do?

i'm working on an game engine that i'm hoping will make it easier to develop vintage style games (coin-op, PC, or even console); with little effort so that they can easily be ported to other machines (MacOS, iOS, Windows, Linux, current consoles, etc.) and not just emulators.

what are your thoughts? what would it need? what would you want to be able to do with it?

#2 Mirage OFFLINE  

Mirage

    Quadrunner

  • 5,852 posts
  • Have a problem? Hire the Envious Snakes!
  • Location:Milwaukee, WI

Posted Thu Dec 1, 2011 9:30 PM

What development tools are you using to create this game engine?

#3 proteanthread OFFLINE  

proteanthread

    Space Invader

  • 22 posts

Posted Thu Dec 1, 2011 10:16 PM

C++ for 2 reasons:
1. Portability, plain and simple.
2. Keeping it pure C++ will allow developers to use the development tools they are most comfortable with.

#4 proteanthread OFFLINE  

proteanthread

    Space Invader

  • 22 posts

Posted Thu Dec 1, 2011 10:17 PM

In other words, a straight text editor is all that is required for those narcissistic enough. :-D

#5 rockfistus OFFLINE  

rockfistus

    Chopper Commander

  • 200 posts

Posted Fri Dec 2, 2011 12:21 AM

For one, include emulation of all the cool sound chips. SID, Pokey, TIA, ym2151, SPC. There's already source code library's for these out there. Also, presets for the correct resolutions/color palettes for different systems. Just a thought

Edited by rockfistus, Fri Dec 2, 2011 12:22 AM.


#6 proteanthread OFFLINE  

proteanthread

    Space Invader

  • 22 posts

Posted Fri Dec 2, 2011 12:40 AM

obviously sound will be much easier to simulate than color/graphics; may have to simulate in a window versus full screen to get the proper effect. controllers (either analog/digital) only slightly easier than sound (a simple software-based AD/DA convertor might do the trick).

#7 Rybags ONLINE  

Rybags

    Quadrunner

  • 10,314 posts
  • Location:Australia

Posted Fri Dec 2, 2011 1:10 AM

Adobe Flash already does this - to an extent.

It's available on Windows, Mac OS and various mobile platforms.

So, a game which works on one can in theory work on the rest. Of course stuff like resolution, use of 3D and advanced sound stuff might raise compatability issues.

Existing emulators like MAME and MESS have drivers for all manner of chipsets and CPUs, "Mess" is a good name really because both emulators can break when drivers and components are updated to support something new.

Realistically if you wanted to start afresh and create new "old looking" games on modern hardware, you wouldn't want to be restrictive in what you could do insofar as having constraints in the API or system you created, you'd just leave it up to the programmer e.g. use low resolution, less colour, less audio capabilty etc.

A modern day means of running some Infocomm stuff already exists - from the start they created their games to be modular such that each machine just needed it's own variant of the engine and the data relating to the gameplay was portable across systems.

For arcade types, there's various "construction sets" around. If you break 2D arcade type games down to the bare constituents, they're all fairly similar, ie - movement due to user input, interaction among objects, movement of enemy objects based on set patterns or position of other objects, objects appearing/disappearing/transitioning based upon other events.

#8 proteanthread OFFLINE  

proteanthread

    Space Invader

  • 22 posts

Posted Fri Dec 2, 2011 8:27 AM

problem is I don't like flash for game development and i doubt i'm the only one that feels that way. even java is not my cup-o-joe (no pun intended). i'm not looking at making another emulator outright but more an engine that'll make it easier to mimic the old games: gameplay, sound, graphics, etc. all these modern remakes of our favorite games use modern graphics and sound; but what I am trying to do is allow a programmer to recreate these games (2600 Outlaws or 2600 Donkey Kong for example) without the need of or use of an emulator.

#9 rockfistus OFFLINE  

rockfistus

    Chopper Commander

  • 200 posts

Posted Fri Dec 2, 2011 6:02 PM

And it's a great idea, never let anyone talk you out of it. It could be super awesome.. Matter of fact it sounds like a good Sourceforge project. You know others would get on board.

Edited by rockfistus, Fri Dec 2, 2011 6:02 PM.


#10 proteanthread OFFLINE  

proteanthread

    Space Invader

  • 22 posts

Posted Fri Dec 2, 2011 6:57 PM

i intend to take it to source forge once i get something going which, hopefully, will be real soon.

#11 rockfistus OFFLINE  

rockfistus

    Chopper Commander

  • 200 posts

Posted Fri Dec 2, 2011 7:36 PM

I'll help if I can. I'm mainly a sound, music n & gfx person, but a jerk of all trades. I've made a few games and remakes in the past :P

#12 sack-c0s OFFLINE  

sack-c0s

    Dragonstomper

  • 878 posts
  • Location:Kingston Upon Thames, UK

Posted Fri Dec 9, 2011 8:14 AM

Couldn't you code a tilemap handler (possibly with multiple overlaid maps to allow paralalx scrolling), a 2D sprite system and embed the python/lua interpreter, so graphics can be loaded from a .bmp/.tga/whatever graphics file and the game code is handled by the scripts. That way you wouldn't need anything that wasn't free to write a retro-inspiredgame and you could write your own helper functions as you see fit to handle common games functions, such as collision detection.

#13 theloon OFFLINE  

theloon

    Stargunner

  • 1,015 posts

Posted Thu Dec 15, 2011 9:10 AM

You'd hafta re-invent CHIP8 basically.
http://en.wikipedia.org/wiki/CHIP-8




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users