summaryrefslogtreecommitdiff
path: root/state_of_starshatter_open_january_2022.html
diff options
context:
space:
mode:
Diffstat (limited to 'state_of_starshatter_open_january_2022.html')
-rw-r--r--state_of_starshatter_open_january_2022.html53
1 files changed, 53 insertions, 0 deletions
diff --git a/state_of_starshatter_open_january_2022.html b/state_of_starshatter_open_january_2022.html
new file mode 100644
index 0000000..999b24e
--- /dev/null
+++ b/state_of_starshatter_open_january_2022.html
@@ -0,0 +1,53 @@
+<!doctype html>
+<html lang="en">
+<meta charset="utf-8">
+<meta name="viewport" content="width=device-width, initial-scale=1">
+<meta name="author" content="aki">
+<meta name="tags" content="starshatter, starshatter open, update, news">
+<link rel="icon" type="image/png" href="cylo.png">
+<link rel="stylesheet" href="style.css">
+
+<title>State of Starshatter Open - January 2022</title>
+
+<nav><p><a href="https://ignore.pl">ignore.pl</a></p></nav>
+
+<article>
+<h1>State of Starshatter Open - January 2022</h1>
+<p class="subtitle">Published on 2022-01-30 20:00:00+01:00
+<p>Few months ago I created a fork of Starshatter Open, and because it appears to be the only (semi-) active one, and
+also because I already have a platform on which I share my pointless thoughts; I thought that I'll do exactly that.
+<p>Starshatter never was a popular game and these days the community is rather dead. That's mostly because there's only
+few of us and as far as I know I'm the only active developer that gives it some time once a few months.
+<h2>State of My Fork</h2>
+<p>The main goal of my fork is to port Starshatter to Linux and have some programming fun using an existing project.
+First sub-goal was to clean up the building system and port it to CMake. I accomplished both of these. <b>Magic2</b> was
+left behind because it's based on MFC and doing anything with it will be annoying at least. Nonetheless, it's on my
+to-do list. During the build system change I cleaned up duplicates and, let's call them "wild", parts of the solutions.
+For <b>Stars45</b> it meant that I merged <b>nGenEx</b> and <b>Parser</b> sub-projects into it. They were strongly
+related and they were included via direct path anyway.
+<p>All third-party code has been properly checked out from their repositories and integrated into main CMake tree. In
+the long run, I'd like to separate them into repositories and install into a common root for building, but for now this
+will work. <b>Opcode</b> has also been updated but I did it all manually. First off I had to find the correct version of
+it. Then I created CMakeLists for it myself. Oh, I mean both <b>Opcodes</b>, because apparently the source was doubled
+for some reason. One was used as headers for <b>Stars45</b> the other one was built. Both were incredibly broken.
+<p>After I was able to build the project consistently with MSVC and MSYS2/MinGW I took a break. Recently, I fixed some
+paths, formatting and other minor things and figured out that I probably should try to build it on Linux with MinGW.
+Turns out that after all path updates it worked out just fine and it runs under Wine just right.
+<p>The next goal is the biggest one and it's hard to divide it into smaller ones. Of course, I mean port out of DirectX.
+Starshatter is decently structured and most of graphics code is isolated in its own part, but there are some exceptions.
+And while DirectX is quite OK, the windows headers are used all over the place. This might be a better target for now.
+<p>We'll see. If you want to contribute and you don't know where, hit me up.
+<h2>Useful Links</h2>
+<ul>
+<li><a href="https://www.hard-light.net/forums/index.php?board=234.0">Starshatter Open Source Project at HLP Forums</a>
+<li><a href="https://negative-10.com/starshatter/">Starshatter Index at Negative-10</a>
+<li><a href="https://git.ignore.pl/starshatter/">Starshatter Open Repository</a> (my fork)
+</ul>
+<p>In case this is all new to you I suggest to see the Negative-10's site.
+<h2>Screenshots</h2>
+<p>Here are two screenshots of Starshatter running in windowed mode with Wine on my Linux machine. In the first one I
+forgot to copy the language pack into the directory, so the text is all messed up.</p>
+<img src="state_of_starshatter_open_january_2022-1.png" alt="forgot about language pack">
+<img src="state_of_starshatter_open_january_2022-2.png" alt="this time I didn't">
+</article>
+<script src="https://stats.ignore.pl/track.js"></script>