<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Documentation on StompyMUX Documentation</title><link>http://stompymux.com/docs/</link><description>Recent content in Documentation on StompyMUX Documentation</description><generator>Hugo</generator><language>en</language><atom:link href="http://stompymux.com/docs/index.xml" rel="self" type="application/rss+xml"/><item><title>Introduction</title><link>http://stompymux.com/docs/introduction/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>http://stompymux.com/docs/introduction/</guid><description>&lt;p&gt;StompyMUX is a game server for creating and hosting text-based multiplayer games about Big Stompy Robots.
It comes with a real-time combat system with AI, a unit repair system, economic building blocks, and much more.&lt;/p&gt;
&lt;h2 id="status"&gt;Status&lt;/h2&gt;
&lt;p&gt;StompyMUX is an occasionally developed modernization fork of &lt;a href="https://sourceforge.net/projects/btonline-btech/"&gt;BattletechMUX&lt;/a&gt;.
Our foundations are built from more than &lt;a href="http://stompymux.com/docs/history/"&gt;three decades of contributions&lt;/a&gt;.
While the features in this codebase are very well fleshed out, we may occasionally break things, including backwards compatibility!&lt;/p&gt;</description></item><item><title>Installation</title><link>http://stompymux.com/docs/installation/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>http://stompymux.com/docs/installation/</guid><description>&lt;h2 id="clone-the-sources"&gt;Clone the sources&lt;/h2&gt;
&lt;p&gt;If you don&amp;rsquo;t already have a copy of the sources, clone the repo:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-shell" data-lang="shell"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git clone git@github.com:gtaylor/stompymux.git
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Make sure to &lt;code&gt;cd&lt;/code&gt; into the repo root and fetch the third party libraries that
we&amp;rsquo;ve vendored:&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;cd stompymux
git submodule update --init --recursive
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="install-dependencies"&gt;Install dependencies&lt;/h2&gt;
&lt;p&gt;Before compiling the sources and running your own game, you&amp;rsquo;ll need to ensure that the
following dependencies are present:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;SQLite development headers&lt;/li&gt;
&lt;li&gt;CMake 4.3 or higher&lt;/li&gt;
&lt;li&gt;Clang 22 or higher&lt;/li&gt;
&lt;li&gt;&lt;a href="https://github.com/casey/just"&gt;Just&lt;/a&gt; 1.56 or higher&lt;/li&gt;
&lt;li&gt;If you&amp;rsquo;d like to make documentation contributes, &lt;a href="https://gohugo.io/installation/"&gt;install Hugo&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="building-and-running"&gt;Building and running&lt;/h2&gt;
&lt;p&gt;Use the included &lt;code&gt;just&lt;/code&gt; task runner:&lt;/p&gt;</description></item><item><title>Development workflows</title><link>http://stompymux.com/docs/development/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>http://stompymux.com/docs/development/</guid><description>&lt;p&gt;The sources are split across two different domains:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The &lt;code&gt;src/&lt;/code&gt; directory contains the C sources for the game server.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;game/lua/&lt;/code&gt; directory contains the Lua sources for most of the in-game commands and logic. You should be able to focus most of your efforts here.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="cgame-server-development-workflow"&gt;C/Game server development workflow&lt;/h2&gt;
&lt;p&gt;To make changes to the game server sources, a typical development loop looks like this:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Make your changes&lt;/li&gt;
&lt;li&gt;Run &lt;code&gt;just fmt-c&lt;/code&gt; to format the sources&lt;/li&gt;
&lt;li&gt;Run &lt;code&gt;just check-and-run&lt;/code&gt; to run the full suite of checks and launch the server if successful&lt;/li&gt;
&lt;li&gt;To short-circuit the checks and just build and launch, run &lt;code&gt;just build-and-run&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;You&amp;rsquo;ll need to CTRL+C the server and start over on the first step to make additional game server changes. Hot reloading the game server is not supported&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="lua-development-workflow"&gt;Lua development workflow&lt;/h2&gt;
&lt;p&gt;The Lua sources in &lt;code&gt;game/lua&lt;/code&gt; are where most of the player-visible logic lives. These are typically developed like this:&lt;/p&gt;</description></item><item><title>Contributing</title><link>http://stompymux.com/docs/contributing/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>http://stompymux.com/docs/contributing/</guid><description>&lt;div class="td-alert td-alert--md alert alert-warning" role="alert"&gt;&lt;div class="td-alert-heading alert-heading" role="heading"&gt;Licensing notice&lt;/div&gt;
 &lt;div class="td-alert-body"&gt;
 &lt;p&gt;All contributions are governed by the &lt;a href="https://github.com/gtaylor/stompymux/blob/main/LICENSE.md"&gt;StompyMUX License&lt;/a&gt;.
Please make sure to read this before submitting changes.&lt;/p&gt;
 &lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;To contribute changes back to StompyMUX, file a pull request with a descriptive title and body.
Since StompyMUX is a hobby project, we are unable to make guarantees about timeliness and we may reject changes that don&amp;rsquo;t align with the project&amp;rsquo;s direction.
Feel free to discuss ideas in our &lt;a href="https://discord.gg/TJzQByY2nC"&gt;Discord server&lt;/a&gt; before starting implementation in order to reduce the likelihood of a contributing being rejected.&lt;/p&gt;</description></item><item><title>History</title><link>http://stompymux.com/docs/history/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>http://stompymux.com/docs/history/</guid><description>&lt;p&gt;This codebase is the result of over 30 years of development in one form or
another. It started hosted on a TinyMUSE server, around 1992 or 1993. Its primary
instance powered the most popular Battletech MU* to date, 3056 MUSE.&lt;/p&gt;
&lt;p&gt;There after, the code was ported to/reimplemented for TinyMUSH by the Animudiacs crew,
who ran, amongst other servers, 3034-II (which later evolved into 3035) and
Varxsis (a non-battletech universe with similar theme and technology). Somewhat
simultaneously, Markus Stenberg (aka Fingon) ported the original MUSE code
to TinyMUX, implementing a lot of ideas from the Animudiacs sites and
implementing a lot more from scratch, both official Battletech rules and
brand new ideas. The main MUX site has always been 3030 MUX.&lt;/p&gt;</description></item><item><title>Future</title><link>http://stompymux.com/docs/future/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>http://stompymux.com/docs/future/</guid><description>&lt;p&gt;With text-based gaming having entered niche status, the goal is to build on project&amp;rsquo;s rich &lt;a href="http://stompymux.com/docs/history/"&gt;history&lt;/a&gt; while adapting for the times.
Some things that we&amp;rsquo;ll need to keep in mind as we build:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;We must provide gameplay depth while looking for ways to make the experience more intuitive.&lt;/li&gt;
&lt;li&gt;Fun factor should be prioritized over strict adherence to rule sets and technical readouts.&lt;/li&gt;
&lt;li&gt;We should be open to re-thinking how things have worked for decades in service of the above points.&lt;/li&gt;
&lt;/ol&gt;</description></item></channel></rss>