Jump to content

Introducing CorrinoEngine: An Open-Source Engine Recreation for Emperor: Battle for Dune


Recommended Posts

Posted

Hello community!

I am DoDoCat (cookgreen on GitHub), and I’m very excited to introduce a passion project I’ve been working on: CorrinoEngine.

CorrinoEngine is an open-source, custom game engine written from scratch in C#. Its primary goal and ultimate milestone is to completely recreate and run the classic 2001 Westwood Studios RTS, Emperor: Battle for Dune.

The project is named "Corrino"—derived from the Emperor Corrino character in *Emperor: Battle for Dune*—and is thus called "CorrinoEngine." This naming choice was made to avoid the common "Open+XXX" convention, as a project named "OpenDune" already exists.

The project is built using pure C# and OpenTK; C# handles the logic layer, while OpenTK manages 3D rendering. It also includes logic for parsing Xbf and RFH/RFD file formats.

Why CorrinoEngine? As many of you know, playing Emperor: Battle for Dune on modern operating systems (Windows 10/11) has become incredibly difficult due to outdated DirectX dependencies, deprecated DRM systems, and overall compatibility issues. CorrinoEngine aims to solve this by providing a native, cross-platform capable, modern foundation to play the original game natively—much like what OpenRA has done for the 2D C&C games.

Technical Overview

  • Language & Framework: Built entirely in C# running on .NET 6.0.
  • Rendering: Powered by OpenTK for modern 3D graphics, stepping away from the original legacy rendering pipelines.
  • UI & Tooling: Integrated with ImGui to build robust debugging tools and model viewers.
  • Credit: A huge shoutout to IceReaper and the ebfd-re project. Their previous reverse-engineering efforts on the game's original file formats laid the crucial groundwork for this project.
  • Current Status & What's Next Currently, the project is in its heavy development phase.

2026-07-23_153548.png

We can successfully parse and render many of the original game assets. The focus right now is on building out the core engine systems and refining the asset pipeline. It is a long-term journey, but every parsed model and rendered frame is a step closer to Arrakis.

Get Involved! Since this is an open-source project (GNU GPLv3), I am warmly welcoming anyone interested in C# game development, reverse engineering, or RTS game logic to check out the repository. Whether it's contributing code, testing, or just dropping a star and some feedback, your support means a lot.

The Spice must flow, and so must the code! Thanks for reading.

Youtube: 

 

  • Upvote 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.