USA Games News
Mar. 29, 2012
Introduction
Hello, gamers. Welcome to another edition of the USA Games News. As it
has been quite a while since we've written one of these news letters and
there have been several questions as to the fate of Mysteries of the
Ancients over the last few months we only thought it was fair to bring
you up to speed as to what we are doing and what you can expect from us
in the future.
However, it must be said up front that Mysteries of the Ancients is only
one of several products currently in development. While we are
continuing work on Mysteries of the Ancients, which has recently been
renamed for reasons explained later in this news letter, we are also
moving forward with a few other projects we've wanted to develop for a
long time, but have been delayed time after time by Mysteries of the
Ancients. So without further introduction here is the news.
Ark of Hope
Over the last month we have been developing a new game called "Tomb
Hunter: The Ark of Hope." This game is very similar to Mysteries of the
Ancients, but has an all new storyline, new levels, and of course
several updates that did not make it into the final beta of Mysteries of
the Ancients.
In this revised version of the game world re noun archeologist, Dr.
Angela Carter, travels to Greece in search of Pandora's Box. Legend has
it that when Pandora opened the box she let out all the evil and
suffering in the world and closed the box trapping hope inside. Now, Dr
Angela Carter is in search of Pandora's Box and intends to open it.
However, her quest will not be an easy one.
She must explore 12 Erie underground tombs filled with deadly traps
including: fire pits, sharp metal spikes, falling rocks, deep chasms,
rolling boulders, pits filled with boiling lava, and more. She must
fight or flee several unworldly creatures such as: sword wielding
skeletons, undead zombie warriors, flying harpies, and mighty centaurs.
Along the way she will pick up and collect gold coins, ancient reed
torches, precious jewels, and pieces of a long lost scroll that will
lead her to Pandora's Box.
As I said earlier many of the game play elements will be similar to
Mysteries of the Ancients, but there will be differences as well. We've
been updating some sounds, music, as well as redesigning all 12 levels
from scratch. In addition to those changes we've been adding more traps,
expanding the levels, and have been adding some extra features as well.
So stay tuned for news as this project develops.
Open G3D
For the last couple of months we've been working on a project we feel
will greatly aid audio game developers called "Open G3D." We've actually
been working on the project for a couple of years, but were unable to
move forward with the project do to technical details. What we wanted
was a game engine that met a number of criteria that were difficult to
meet, and it took quite a lot of time and research to come up with a
workable solution.
In short, we wanted an engine that was easy to develop, an engine that
was easy to use, and would work on Mac, Linux, Windows, and perhaps
other platforms as well. Needless to say meeting this criteria was
difficult to do because there is a lot of technical considerations
involved in cross-platform game development in addition to the fact we
wanted to create a user friendly experience for everyone.
For example, the Genesis Engine that we use to develop Mysteries of the
Ancients, Raceway, etc is written in C++. While C++ is arguably one of
the best languages for professional game development, is considered to
be the industry standard, it was never intended to be a language for
beginners and therefore isn't very easy to work with. We wanted to
eliminate this issue by using an off the shelf language that has a
history of being simple and straight forward while not sacrificing the
power of a full blown programming language like C++.
At the same time we wanted to be able to design a build once run
anywhere type engine so we could produce games for non-Windows
platforms. As someone who does not regularly use Windows, preferring to
use Linux instead, we are well aware of the fact that the desire for
more games for Mac OS and Linux is growing. Unfortunately, since most of
the accessible games and game development tools are designed for Windows
those of us who choose to use Linux, Mac OS, or some other alternative
operating system often get ignored. By producing a cross-platform
solution we hope that we can make it both easier and less difficult for
developers to produce more cross-platform games.
In the end what we decided to do is adopt the Python programming
language and PyGame for our open source cross-platform engine. While it
is not completely a perfect solution we believe that it is a
satisfactory one considering the task before us. After careful
consideration many of the advantages often out weigh the disadvantages
of using Python and PyGame for the engine.
For instance, let's discuss joystick support. The API PyGame is based
on, SDL, does not support force feedback controllers, but it does offer
generic support for most gamepads, joysticks, and other game devices.
What this means for a developer is he or she won't be able to create a
game that uses force feedback technology but they can still have
joystick support without that specific feature. Plus keyboard input and
mouse input are more or less comparable to DirectX So using PyGame for
input is acceptable if not exceptional. Chances are most game developers
probably won't need force feedback support anyway.
Same could be said for the sound mixer. PyGame's sound mixer, SDL Mixer,
isn't as good as DirectSound, XAudio2, or something like FMOD Ex, but it
is functional. While it doesn't specifically have 5.1 surround sound
support it is possible to create a couple of functions that gets the
direction and distance between two sound objects and then pass the
values to the set_volume() control for the left and right speakers to
fake a 3d type effect. Its not perfect, but as most people don't have
the proper hardware for 5.1 surround sound anyway using simple 2d stereo
panning is probably suitable for most situations. If 5.1 surround sound
audio is necessary we could always add support for SFML later which uses
OpenAL for 5.1 surround sound.
In any case I am certain by now many of you are asking, "what's the big
deal?"
Well, in answer to that question Open G3D is being designed to resolve
three basic problems that something like the Blastbay Game Toolkit does
not. If you fall into any of these categories it might offer you an
advantage to use Open G3D instead.
First, is Open G3D is written in pure Python. Unlike BGT Python is a
full blown programming language used for anything from short simple
scripts to full blown applications like games, screen readers, etc. It
is very simple to learn, and there is lots of free and commercial
documentation for the language. The same language used for developing
the engine can be used to extend and script the engine as well.
The biggest advantage of using Python is that it does not use a lot of
program syntax and does not require a lot of brackets, braces,
semi-colons, which many new programmers often forget to use and run into
troubles with when using the C type languages. It also doesn't require
statements such as End Function, End While, End If, etc which actually
requires much less typing than say Visual Basic. Instead Python uses
proper formatting and spacing that is easier to learn and remember than
all the trappings of C, C++, Java, Visual Basic, and so on. As a result
Python is probably easier than Angelscript which is used by the Blastbay
Game Toolkit.
Second, Open G3D is open source. As someone who has been working with
open source software for a while now I can see two major advantages of
an open source model for this project.
Probably the most important aspect of being open source for a lot of
game developers is the cost. Open G3D is being designed to be free for
commercial and non-commercial use. While the Blastbay Game Toolkit is
reasonably priced at$29.95 for BGT Lite, $99.95 for Pro Single, or
$399.95 we can eliminate that cost in favor of sounds, music, or
whatever else a developer may decide to put that money towards instead.
However, that's by no means the only advantage of an open source game
engine.
Perhaps the most important aspect of being open source is the
availability of the source code itself. If a developer wants to extend
the functionality of a certain module, rewrite a certain module to
support a different API, or to fix bugs and issues in the engine and
donate those changes to the project he or she can do so. In this way
development of the engine isn't completely dependant on one or two
developers but the entire community of developers. All developers
cooperate to update and design the engine for everyone's mutual benefit.
For example, let's assume a developer would rather use PySFML instead of
PyGame. By using PySFML instead of PyGame a developer could have access
to OpenAL for 5.1 surround sound support, better keyboard handling, and
a few other advantages that SFML has over SDL. By updating the engine
and donating the SFML modules the next developer in line who wants to
use PySFML with his or her games can simply download that version of the
modules and use those instead of the PyGame modules. In this way it
encourages developers to share what they know and what they create with
the rest of the community rather than forcing everyone else to reinvent
the wheel so to speak.
Basically, in this way the engine has the poss ability of being upgraded
frequently, will quickly support many different APIs, and there will be
modules available to meet almost any developer's needs provided the
developers who regularly use the engine continue to contribute to the
project and help maintain it for the rest of the community. It has the
potential to become an all in one tool for everyone.
third, the final objective of the Open G3D engine is simply to aid
developers in the creation of non-Windows games as well as develop games
for Windows. At this point in time very few games are specifically being
designed for Mac or Linux users, and in order to play games on those
operating systems the gamer is often forced to play the games through a
virtual machine like VMware Player or attempt to play them in an
emulator like wine. To say neither option is exactly ideal is an
understatement. As someone who falls into that group something that
would enable developers to design games for more than one platform is
really a plus in today's audio gaming market. Especially, if a audio
game developer has an interest in opening up new markets.
One very common reason audio game developers don't develop games for Mac
and Linux is because they feel it is too expensive or its not worth it.
In a sense that is true if they have written the game in a proprietary
language like Visual Basic and used a platform specific API like
DirectX. In a case like that they would have to rewrite the game from
scratch in another language which really isn't worth it. However, Open
G3D resolves this because of the fact it is based on cross-platform
technologies to begin with.
For instance, let's say a developer has just created a new game called
UFO Invasion. Now, there are a couple of different ways he or she can
redistribute that product. One way is by bundling the product using
Pyinstaller, Py2exe, Freeze, etc which will create a platform specific
executable with all dependencies included. The other more cross-platform
solution is to compile the source into pyc files which are not tied to
any specific platform. Assuming a gamer has Python and Pygame installed
on his or her computer clicking on invasion.pyc should load and play
regardless if they are using Mac, Linux, or Windows. This makes it
possible for a developer to create games for operating systems other
than his or her own.
Another common reason audio game developers choose not to develop games
for other platforms has to do with complexity. It is a well known fact
that many game developers choose to use languages like Visual Basic
simply because it is easier to learn than C++, and are often unaware of
other alternatives just as easy to learn and use. Open G3D provides
them with another option that is just as easy to use, perhaps a bit
easier, and certainly not as proprietary or expensive to use as Visual
Basic. So once developed it will at least be one more option on the table.
In closing we've been working on Open G3D, and hope that once we have a
stable version both new and established game developers will be willing
to take a look at the project. We feel it has a lot to offer the
community, and we look forward to your feedback as this project nears
completion.
Final Conflict
From time to time we often get bug reports sent to us by new players of
the game, or get questions about when a new version will be released.
Well, we are working on a new version of the game, and not surprisingly
it will be one of the first games to use our new Open G3D engine.
Initially we had planned on developing the game using the C++ version of
the Genesis Engine, but decided against that for several reasons. One,
as it is a 2d turn based game it really doesn't need 3d audio, force
feedback joystick support, and plenty of other things we have been
adding to our commercial engine over the last two or three years.
Therefore something like PyGame would be perfectly fine for the game.
Second, as we are developing the Open G3D game engine it only makes
sense to use that instead as a basis for Final Conflict and any other
free or open source games we might develop in the future. Last, of
course, is the game will now be available for Mac and Linux as well as
Windows thanks to the cross-platform nature of the new engine.
Aside from the technical details Final Conflict 2.0 has much more to
provide than previous versions. One of the new changes being developed
is a mission or campaign mode where you are given a specific objective
and you must use your fleet to achieve that objective. Here is a case in
point.
In one such campaign the Romulan Empire sends a fleet of Romulan
Warbirds across the neutral zone and attempts to capture Vulcan. You are
given a small fleet of Starfleet ships to intercept and destroy all the
Romulan ships before they can land troops on the planet. One of the
major challenges of this particular campaign is that all of the enemy
ships are cloaked, are difficult to find, and there are no starbases
nearby to help restock, repair, and recharge your ships. The game can be
a bit more challenging at times, but is more evenly balanced between the
computer player and human player. Hopefully this will make the game more
fun and interesting.
As this game is still early in alpha development there really isn't much
more we can say at this point. Its not going to be released for a while,
but we did want to give our customers a heads up as to what is happening
with the game. We certainly have not abandoned Final Conflict in favor
of newer projects. However, development on Final Conflict is dependant
on how soon or how long it takes us to complete our commercial projects
like Ark of Hope as that still takes priority.
Sincerely,
Thomas Ward
USA Games Interactive
http://www.usagamesinteractive.com
---
Gamers mailing list __ [email protected]
If you want to leave the list, send E-mail to [email protected].
You can make changes or update your subscription via the web, at
http://mail.audyssey.org/mailman/listinfo/gamers_audyssey.org.
All messages are archived and can be searched and read at
http://www.mail-archive.com/[email protected].
If you have any questions or concerns regarding the management of the list,
please send E-mail to [email protected].