Menu

Modules

Today's topic is about modules. Modules are the main enhancement of the upcoming version 0.5.1. With modules everyone can extend the engine without having the alter the original sources of the engine. This means that people can add other physics- or sound engines, but also complete packages like an RPG pack that adds common RPG features (e.g. inventory, quest system, etc.) to the games using it. As you can see, modules open up a whole new world for third party developers, while at the same time keeping the engine as lean as possible.

Content

The reason I implemented the new module system is for the content of the games you are creating. Loading content should become easier and more platform independent. To achieve this, a new content manager has been implemented. It uses content modules to load in content from file. These content modules inform the manager what content it can load and then allows us to easily load any type of content with almost the same expression:

Entity* pentity = contentmanager.load<Entity>("objects/mainchar");

This code makes use of templates and a common file format for all content. Each type of content writes a header containing information what module wrote it and the content data itself. I nearly finished the module for the effect files and working hard on an entity module. After I have finished the major content modules, a new version 0.5.1 might be released.

Windows Phone

During an attempt to port the code to the Windows Phone 8 platform, I still faced some incompatibility problems. In the previous version I managed to reduce the number of external libraries making it easier for me port the code. Among the remaining problems is the socket layer. On Windows desktop systems I use the WinSock2 library. Alas, this library is not supported on Windows Runtime (RT) based systems, including tablets and phones. So, one thing to refactor is the network layer. But with the new modules system, discussed earlier, an WP8 and RT release is again getting closer!

Posted by Jeroen Broekhuizen 2013-11-07 Labels: Modules WP8 WinRT Content

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.