BlueMonkMN's picture

Scrolling Game Development Kit 2.1

Screenshot of editing sprites in map editor.

Scrolling Game Development Kit 2 Homepage

The main upgrade in Scrolling Game Development Kit version 2.1 is a switch from using DirectX as the primary graphics/hardware access framework to using OpenTK. I released version 2.1 at the beginning of this week, along with some sample libraries, templates and projects that work with the new OpenTK-based version 2.1. There's also a Scrolling Game Development Kit 2 Projects site where users can submit their own projects and have them reviewed and rated by other users. Currently most of the projects listed there are designed for version 2.0, but they're all tagged with the version for which they were designed so you can tell the difference. (The site was just upgraded to Joomla 1.5.9 with the latest ReMository I could find at the beginning of the week, and there's still some bugs with the tagging system apparently. I'd appreciate any help I could get there if there's any hope of making ReMository work without waiting for a new release.)

When you compile a project in SGDK 2.1, it generates a Visual C# 2008 Express compatible project which can stand completely on its own (although it can't be re-imported into SGDK2 after editing). So this might be a handy way to churn out a bunch of OpenTK-based projects.

We have already done some experimentation on making these projects portable to Linux, with some success, now that it's all OpenGL based. We had a project running in Linux once, but it took some maneuvering. Even the SGDK2 IDE itself was running in Linux (on Mono) in a very limited fashion for a while. I think I will try this again and see how well it's working these days. I'd appreciate any outside interest/support on this. Last time we tried, Mono was having problems with the new dataset XML formats in .NET 2.0 I think.


Comments

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
objarni's picture


When you compile a project in SGDK 2.1, it generates a Visual C# 2008 Express compatible project which can stand completely on its own (although it can't be re-imported into SGDK2 after editing). So this might be a handy way to churn out a bunch of OpenTK-based projects.

That is a really novel approach to compilation!! Nerd point to you ..

BlueMonkMN's picture

It doesn't actually use Visual Studio to compile the projects (otherwise you wouldnt' be able to run SGDK 2.1 without having Visual Studio installed) -- it uses the .NET framework to compile them. But I figured it would be nice to be able to also load the project into a more comprehensive environment to do things like interactive debugging and such, so I went the little extra distance to generate project and solution files among the other files generated for the compile. But I'll proudly accept the nerd point :).

objarni's picture

OK.

But does mono support compilation as .NET platform does..? I thought that was one of the big differences between the two platforms..

the Fiddler's picture

Nice!

Mono provides xbuild, which is supposed to mimic msbuild - only it doesn't work. The alternative is to open the solution with MonoDevelop and build through that.

BlueMonkMN's picture

I guess Mono 2.2 isn't available for Ubuntu yet. So I'm still stuck at the same place I was before. When it tried to load the default project, it's using a dataset (all SGDK2 projects are detesets in XML form), and an error occurred while Mono was parsing the dataset:
The XPath specified attribute field, but mapping type is not attribute.

This, of course, works fine in .NET. I can see the line of Mono code that produced this error at http://lists.ximian.com/archives/public/mono-patches/2004-May/037677.htm..., but I don't know the best way to debug into this code, if that's possible. Do I understand correctly that Mono doesn't even have a debugger?

I see there's a "FIXME" comment that seems to relate to this error in the source code. Any idea if there's any way to work around this, or am I at the mercy of Mono developers working on the code to provide something that works?

the Fiddler's picture

You can try Mono 2.2 on Windows to see if the error is fixed. Unfortunately, Ubuntu does not update Mono in existing releases, so you'll have to wait for 9.04 (or build from scratch).

BlueMonkMN's picture

On the up-side, I am able to load the projects generated by SGDK2 into MonoDevelop, and compile and run them with a few modifications. I have to remove joystick support (is that built into OpenTK yet?) and link to the Linux version of FMOD (fmodex-4.22.so or somesuch) instead of fmodex.dll. But then it miraculously works! Just the right-hand control key doesn't work -- it thinks I'm pressing the left one. This is vaguely familiar -- I think I've been through this before. Next step I think is to work through these challenges and post a version of SGDK2 that can generate/export MonoDevelop projects that work with no modifications (even if you do have to run SGDK2 itself from within Windows on true .NET framework to do so... for now). Think that would be worthwhile?