Jump to content
Double Fine Action Forums
Sign in to follow this  
DF Oliver

Programming Update #2

Recommended Posts

I understand that a possible "reinventing of the wheel" consumes a lot of time.

But I think that the player would feel (maybe through the controls etc.) somehow this handcrafted and tailored aspect of an own engine.

Of course they should not

duplicate
an oldschool adventure game, but using
the latest programming technology
is definitely not old-school for me!

And if you want to build on top of an existing engine, you always cary along a lot of stuff (libaries/helpers/etc.) which you simply do not need! For me, old-school means a (relativly) small file-size, too!

Share this post


Link to post
Share on other sites
I understand that a possible "reinventing of the wheel" consumes a lot of time.

But I think that the player would feel (maybe through the controls etc.) somehow this handcrafted and tailored aspect of an own engine.

Of course they should not

duplicate
an oldschool adventure game, but using
the latest programming technology
is definitely not old-school for me!

And if you want to build on top of an existing engine, you always cary along a lot of stuff (libaries/helpers/etc.) which you simply do not need! For me, old-school means a (relativly) small file-size, too!

Man, I wish they'd never used the phrase 'old school.' It means too many different things to too many people. Come on, this is just silly.

Share this post


Link to post
Share on other sites
I understand that a possible "reinventing of the wheel" consumes a lot of time.

But I think that the player would feel (maybe through the controls etc.) somehow this handcrafted and tailored aspect of an own engine.

Of course they should not

duplicate
an oldschool adventure game, but using
the latest programming technology
is definitely not old-school for me!

And if you want to build on top of an existing engine, you always cary along a lot of stuff (libaries/helpers/etc.) which you simply do not need! For me, old-school means a (relativly) small file-size, too!

The player would not feel anything because they are not actually using an entirely premade engine. They are using a platform (Edit: Platform is the wrong word. I meant framework. I leave my original mistake here for you to gawk at.) which only does low level things like drawing images to the screen and getting input from devices. Double Fine would be creating their own interface, art assets, controls, everything.

If file size is a concern for you I suppose that is a valid point, but I suspect any savings they would get from writing an engine from scratch would be negligible compared to the art and music assets. I have to admit that I lack certainty here. If you didn't realize that Moai does such low level stuff, perhaps you assumed that there would be a lot of libraries for things like an RPG battle system or something included and unused.

I don't see why you are concerned about file size though given the abundant storage these days even on portable devices like iPhones and considering the time which will be saved by the dev team in using Moai. That is time that they're going to spend instead on other aspects of the game like refining the actual controls which you do see and are concerned about, or the story, or the art assets.

Share this post


Link to post
Share on other sites
Man, I wish they'd never used the phrase 'old school.' It means too many different things to too many people. Come on, this is just silly.

Yeah, I thought the interpretation that that was going to mean "old school" in terms of gameplay style was pretty obvious :/

Share this post


Link to post
Share on other sites
I understand that a possible "reinventing of the wheel" consumes a lot of time.

But I think that the player would feel (maybe through the controls etc.) somehow this handcrafted and tailored aspect of an own engine.

Of course they should not

duplicate
an oldschool adventure game, but using
the latest programming technology
is definitely not old-school for me!

And if you want to build on top of an existing engine, you always cary along a lot of stuff (libaries/helpers/etc.) which you simply do not need! For me, old-school means a (relativly) small file-size, too!

The player would not feel anything because they are not actually using an entirely premade engine. They are using a platform which only does low level things like drawing images to the screen and getting input from devices. Double Fine would be creating their own interface, art assets, controls, everything.

If file size is a concern for you I suppose that is a valid point, but I suspect any savings they would get from writing an engine from scratch would be negligible compared to the art and music assets. I have to admit that I lack certainty here. If you didn't realize that Moai does such low level stuff, perhaps you assumed that there would be a lot of libraries for things like an RPG battle system or something included and unused.

I don't see why you are concerned about file size though given the abundant storage these days even on portable devices like iPhones and considering the time which will be saved by the dev team in using Moai. That is time that they're going to spend instead on other aspects of the game like refining the actual controls which you do see and are concerned about, or the story, or the art assets.

From what I've heard, this is an accurate assessment. Moai is a platform for creating games, but compared to similar things it is pretty lightweight. In fact, from their FAQ:

"As a minimalist game client framework, Moai SDK is not ideal for people just getting started in game development. If you are not already familiar with writing code in Xcode, Eclipse or Visual Studio, and don't have a tool chain in mind for production, then Moai is probably not for you at this point."

But even if it was big and bloated, I'd take an extra 100MB download in a year's time, no problem if it meant they were able to make a bigger, better game by using these tools.

Besides, if we're talking old school sizes, old school adventure games have ALWAYS been bloated. Monkey Island 2? 11 floppies on the Amiga, if I recall. Most games had 2, 3 or 4 was pretty unusual. Advent of talkie games meant that adventure games were among the first genre where you really needed the CD version to get the most out of it (see: DOTT) . Grim Fandango was on 2 CDs at a time when that was still pretty unusual outside of 'interactive movie' style games and huge RPGs, and Westwood's Blade Runner adventure game I think came on 4 discs not much later.

Old school adventure games were BIG.

Share this post


Link to post
Share on other sites

@ Surplus: This is not silly! This is what a forum is for, I guess. I don't want to goof on this project. I'm definitely curious to see how everything will turn out. The question "What does old-school game making mean?" is a very good one. You could open an entire new thread for that.

@ Ritchie: low level stuff?! how about SDL?

Share this post


Link to post
Share on other sites

@Hiver: Well, SDL would be lower level. I'm just trying to make it clear that Moai isn't really what one would call a game engine all on its own, so I don't think you need to have any concerns about it affecting the feel of the game. I think it would be the opposite, really. Not having to focus on the super low level stuff means that they can spend more time refining their own vision of the game, its interface, its control scheme. So not that low level, but at the same time it is lower level than something like Unreal Engine or Adventure Game Studio.

I hope that relieves you of your concerns that this won't be as old school as you had hoped.

Edit: Shoot. I think I wrote platform earlier which was not the right word at all. Moai is a framework. Completely different concepts. Fortunately, it sounds like you know what I meant.

Edit: I'm going to have to take my word back. I'm trying to diffuse misinformation here, and I can't risk accidentally spreading it myself. I don't know Moai well enough to say that it is higher level than SDL. I highly suspect that it is higher level / more abstracted than SDL, but I don't know that for a fact. I know that it's high level enough that it would be better than doing something from scratch and low level enough that they'll basically be creating their own interface, controls, gameplay, etc.

Share this post


Link to post
Share on other sites
Edit: Shoot. I think I wrote platform earlier which was not the right word at all. Moai is a framework. Completely different concepts. Fortunately, it sounds like you know what I meant.

Well, the Moai website calls it both a platform and a framework :)

Another thing to consider here, incidentally, is that Moai is geared for mobile development (it's very good for other platforms too, hence why they're using it for this game, but it was made with mobile development in mind). As such it would have to be lightweight as no developer is going to want to use a framework which adds huge amounts of bulk onto their mobile download sizes.

Share this post


Link to post
Share on other sites

I have to admit that the good thing about Moai is that you can use Lua. You can create stuff / build prototypes very fast using a scripting language.

Please don't take my following idea too serious:

It would be so hyper-old-school, if this new game could be run on (several) floppy(s)! [credits to Surplus]

Almost anybody could not say it is not old-school then. :D

Share this post


Link to post
Share on other sites
I have to admit that the good thing about Moai is that you can use Lua. You can create stuff / build prototypes very fast using a scripting language.

Please don't take my following idea too serious:

It would be so hyper-old-school, if this new game could be run on (several) floppy(s)! [credits to Surplus]

Almost anybody could not say it is not old-school then. :D

Indeed it would be pretty crazy to write one of these games without a scripting language nowadays. SCUMM had ScummC of course and then Grim Fandango's scripts were also in Lua (you can actually access debug mode and run Lua scripting commands inside Grim Fandango if you know how, it's fun to play with but sadly one of the necessary DLLs required to make some of the more fun stuff work is missing in the released version.) It seems a sensible choice to pick a framework which already uses a scripting language like Lua for this new game.

I would recommend reading programming update #3 because that shows you how they're actually extending Moai quite significantly with their own tools, just because while it's a great base, there is still a lot of groundwork they want to have in place to support their development process.

Share this post


Link to post
Share on other sites

Indeed it would be pretty crazy to write one of these games without a scripting language nowadays. SCUMM had ScummC of course and then Grim Fandango's scripts were also in Lua (you can actually access debug mode and run Lua scripting commands inside Grim Fandango if you know how, it's fun to play with but sadly one of the necessary DLLs required to make some of the more fun stuff work is missing in the released version.) It seems a sensible choice to pick a framework which already uses a scripting language like Lua for this new game.

Actually, I believe ScummC was a much later attempt at writing a new system targetting LucasArts's game engine, but that doesn't detract from your point of course.

Going back even further, Infocom also had their own adventure game progamming language and interpreter called ZIL and ZIP respecively. ("Zork Implementation Language" and "Zork Interpreter Program", I believe.) Having the games be platform independent data files meant that once the interpreter had been ported to a new platform, you had basically ported your entire library of games. I have an old catalog with mostly Infocom games from 1988, and many of the games were available for six or seven different platforms, and that was just the ones that were common at the time. Other versions existed before that.

Other companies probably did the same. Infocom is just one of the more well known, and may be pretty unique in that a manual - I don't know how complete it is - has survived to this day: http://www.xlisp.org/zil.pdf

Edit: I just realized that someone made a PDF of the newsletter that contained the product catalog I mentioned. Since one of the games in it is Maniac Mansion, I figured it might interest someone: http://infodoc.plover.net/nzt/NZT7.2.pdf

Share this post


Link to post
Share on other sites

For an example of anonymous data collected automatically (from a single player game) and used well, see Valve's publicly available stats for Half-life 2: Episode 2.

http://www.steampowered.com/status/ep2/ep2_stats.php

I had a question for the developers - how mature/existent is the testing framework around Lua? Are you planning to unit test much of the code?

I know those questions are probably more relevant to the underlying C++ of Maoi than the logic in Lua, but I'm curious if you have a strategy/policy for this.

I've only ever worked developing (Java-based) systems for business, where everything should be test-driven with near-total code coverage to avoid maintenance nightmares down the road. I'm curious to what extent this philosophy translates to game development.

Share this post


Link to post
Share on other sites

I would like to chip in with the information that there is an awesome 2d adventure engine called SLUDGE. I actually made a (short) game with it a few years back when it was still proprietary, but it has since been open sourced as OpenSLUDGE:

http://opensludge.sourceforge.net/

It seems to run on Mac OS as well as Linux, besides Windows. There is also support for OpenGL ES 2, so it could theoretically work on mobile devices. It certainly has everything you would expect from an adventure game engine, including parallax scrolling, load/save, and its own impressive scripting language. I guess Double Fine already made up their mind about MOAI, but maybe someone else might find this useful?

Share this post


Link to post
Share on other sites

Hey, it's great that we get this kind of information right up front. I also appreciate the fact that AGS was taken into consideration. Shame that you didn't choose to utilize it, but I trust that you'll do a great job with whatever engine you do choose.

Just some food for thought about AGS though:

- The engine and editor have both been open sourced for some time, under the Artistic License, and the native mixed-mode assembly (including the compiler among other things) is now open source as well.

- Due to being open source, AGS is now available on iOS and Android, beyond just the Windows, Mac, and Linux versions. It's even available on the PSP!

- AGS isn't just for the hobbyist, companies such as Size Five Games (formerly Zombie Cow Studios) and Wadjet Eye Games have had notable commercial success with AGS adventures.

I'm completely biased :P but for anyone who's looking for a good entry point into game development, it is a great piece of software.

Anyway, thanks for the insightful information about the decision-making process.

Share this post


Link to post
Share on other sites
Due to being open source, AGS is now available on iOS and Android, beyond just the Windows, Mac, and Linux versions. It's even available on the PSP!

The trouble is that that isn't advertised on the official site, and if you do manage to find the "other downloads" list, MacOS and Linux ports are both listed as being "discontinued" until somebody with the skills can step up to maintain them (from the perspective of somebody scouting for a possible engine, that's not very reassuring).

I couldn't find any mention whatsoever of iOS, Android or PSP versions :(

Share this post


Link to post
Share on other sites

You're right, the info on the main site doesn't fully reflect the current status. You'd have to go digging around the forums a bit to find it.

Initial Engine Source Code Release

Linux Port (Admittedly, this is a couple of revisions behind the current engine release, being 3.1.2 vs the current 3.2.1)

Mac Port (v3.2.1)

Android (v3.2.1)

iOS (v3.2.1)

PSP (v3.2.1)

The official website is undergoing some major revamping over the past several weeks, so it would be good to have this information updated on there as well. Anyway, this thread isn't about AGS, so I don't want to get too off-topic.

Share this post


Link to post
Share on other sites
Linux Port (Admittedly, this is a couple of revisions behind the current engine release, being 3.1.2 vs the current 3.2.1)

Also, all the links seem to be broken...

Share this post


Link to post
Share on other sites

Will you be handing the improvements and new features you make to the Moai SDK source code back to the community?

Edit: Just saw the vid :) Nathan answers my question at the end, saying that you will contibute bug fixes back to the engine \o/

You guys are awesome!!!

Share this post


Link to post
Share on other sites

Question. Not sure if it was asked before, I didn't have time to scout the whole internet, or just the whole DoubleFine forum for that matter.

Oliver said they will use the technology to track gamer behaviors and identify possible difficult puzzles. Does that mean I will have to take part in this? And more importantly, do I have to stay connected to play it?

Share this post


Link to post
Share on other sites
Question. Not sure if it was asked before, I didn't have time to scout the whole internet, or just the whole DoubleFine forum for that matter.

Oliver said they will use the technology to track gamer behaviors and identify possible difficult puzzles. Does that mean I will have to take part in this? And more importantly, do I have to stay connected to play it?

It has been discussed at greater length here, but the short answer is no and definitely no.

Share this post


Link to post
Share on other sites

How easy/difficult would it be to take a game developed with Moai and port it to consoles for distribution on XBLA, PSN, and Wii Shop Channel?

Share this post


Link to post
Share on other sites
How easy/difficult would it be to take a game developed with Moai and port it to consoles for distribution on XBLA, PSN, and Wii Shop Channel?

There are a couple of challenges.

First of all Moai would need to be ported to the target platforms. For example for an Xbox release the graphics code would need to be converted from OpenGL to DirectX. Also the data conversion pipelines need to be updated/extended to support native formats (e.g. textures).

Then the UI would need to be re-designed to work with a game controller (which is mostly a design challenge).

From a production standpoint we would need to raise money to go through the submission process for these platforms (since they have very specific QA requirements).

So it would definitely be possible, but there are some problems to solve.

Share this post


Link to post
Share on other sites

Thanks Oliver. I was especially curious about the technical aspects since I hadn't read about any Moai titles shipping on consoles.

Although I'm not particularly interested in getting the game on a console (looking forward to the OSX and iOS versions myself), I do think it'd be good to get the game out to as many people as possible. You know, letting my biz dev side run wild with the possibilities.

Share this post


Link to post
Share on other sites
Thanks Oliver. I was especially curious about the technical aspects since I hadn't read about any Moai titles shipping on consoles.

Although I'm not particularly interested in getting the game on a console (looking forward to the OSX and iOS versions myself), I do think it'd be good to get the game out to as many people as possible. You know, letting my biz dev side run wild with the possibilities.

As you said this is a business decision and I'm just doing what Greg tells me. :-)

Personally I think it would be great to get it on these platforms too, but the question is whether the revenue generated by these SKUs offsets all the additional costs like the amount of man-hours for the port, submission costs + other stuff.

Even if we port it to the consoles it'll probably happen after all the promised SKUs are done.

Share this post


Link to post
Share on other sites
Even if we port it to the consoles it'll probably happen after all the promised SKUs are done.

Makes sense. I mean, it's five platforms already. I'm sure that'll be a fun time.

Share this post


Link to post
Share on other sites

So, now that you've had some time around Moai, do you still like it for 2D games?

What do you think are pros and cons when using Moai SDK?

Share this post


Link to post
Share on other sites

Thanks for these great updates.

I have been playing with Moai for quite some time now and find it really good. I like the approach of keeping it low level enough that anyone can write a small framework to work the way you want.

One thing I find myself in trouble is that the provided hosts seems to not be really production ready. I know a professional will probably write a host in 2 hours but for someone interested more in making games and not programming a host is a bit of a wall.

Obviously you guys are going to have your own hosts for the various platforms of Broken Age and I was wondering if there's any plan to release them to the community

.Gian

Share this post


Link to post
Share on other sites
Sign in to follow this  

×
×
  • Create New...