Reorganize MultiMower blog post: move resources and quick start to top, remove negative language

- Move Resources/Community and Quick Start sections near the top for better accessibility
- Remove all instances of 'broken' and negative characterizations of MultiMower
- Reframe as community enhancements to a working technical demonstration
- MultiMower is a demo foundation, not broken software needing fixes
This commit is contained in:
Russell Ballestrini 2025-07-21 11:06:03 -04:00
parent 48e94f60b7
commit a8ded9bac9

View file

@ -13,6 +13,43 @@ Building and Modding MultiMower with Dry Engine
:local:
:backlinks: top
Resources and Community
-----------------------
- **MultiMower Repository**: https://gitlab.com/luckeyproductions/games/MultiMower
- **Dry Engine**: https://gitlab.com/luckeyproductions/dry
- **Dry Engine Documentation**: Available in the Dry repository
Quick Start Summary
-------------------
For experienced developers, here's the TL;DR version:
.. code-block:: bash
# Install dependencies on Fedora
sudo dnf install git make cmake gcc gcc-c++ qt5-qtbase-devel \
libX11-devel libXrandr-devel alsa-lib-devel mesa-libEGL-devel \
wayland-devel wayland-protocols-devel
# Build Dry engine
cd ~/git
git clone https://gitlab.com/luckeyproductions/dry.git
cd dry && mkdir build && cd build
cmake .. -DDRY_64BIT=1 -DCMAKE_BUILD_TYPE=Release -DVIDEO_WAYLAND=OFF
make -j$(nproc)
# Build MultiMower (CRITICAL: set DRY_HOME first!)
export DRY_HOME=$HOME/git/dry/build
cd ~/git
git clone https://gitlab.com/luckeyproductions/games/MultiMower.git
cd MultiMower && mkdir build && cd build
qmake ../MultiMower.pro && make -j$(nproc)
# Run the game
cp -r ../Resources .
./multimower
What You'll Learn
-----------------
@ -201,13 +238,13 @@ To run MultiMower, navigate to the build directory:
Game Controls:
~~~~~~~~~~~~~~
**Player Controls (After Our Fixes):**
**Enhanced Player Controls:**
- **Movement**: WASD keys (W=forward, S=backward, A=turn left, D=turn right)
- **Aim**: Mouse to look around and aim
- **Machine Gun**: Left mouse button (fires bullets)
- **Missiles**: Right mouse button (fires homing missiles)
**Note**: In the original version, WASD movement is broken and needs our modding fixes to work properly. The mouse aiming works out of the box.
**Note**: The original demo provides basic movement that we enhance with realistic tank-style acceleration and responsive controls. The mouse aiming works perfectly out of the box.
Expected Output:
~~~~~~~~~~~~~~~~
@ -1041,7 +1078,7 @@ Scale Perspective
**Code Efficiency**:
- Our 376 lines represent **0.16%** of the total MultiMower codebase
- Yet they transform the game from broken demo to complete tank combat with victory conditions
- Yet they transform the game from basic technical demonstration to complete tank combat with victory conditions
- Shows the power of focused, strategic modifications
**Engine vs Game**:
@ -1059,28 +1096,6 @@ Scale Perspective
- **MultiMower**: Takes 30-60 seconds with incremental changes
- **Our Patches**: Compile in 5-10 seconds after initial build
Real-World Impact
~~~~~~~~~~~~~~~~~
**Before Our Mods**:
- Broken movement (WASD didn't work)
- No combat system (weapons fire but no damage)
- Basic explosions (30 particles, minimal effect)
- Tech demo quality
**After Our Mods**:
- Realistic tank physics (0-60 acceleration)
- Balanced combat system (random damage, health bars)
- Cinematic explosions (200+ particles, multiple effects)
- Playable game quality
**Modding Accessibility**:
- **Small Changes, Big Impact**: 376 lines for complete gameplay overhaul
- **Well-Structured Code**: Clear separation of concerns makes modding easier
- **Engine Stability**: Dry engine handles our changes without crashes
- **Rapid Iteration**: Quick compile times enable fast experimentation
This demonstrates how a well-designed engine like Dry enables rapid game development and modding. Our relatively small code additions (0.16% of the codebase) fundamentally transformed the gameplay experience, showing the power of targeted improvements in the right places.
Troubleshooting on Fedora
-------------------------
@ -1176,44 +1191,7 @@ When I tested this process on Fedora, here's what actually happened:
- **Success rate**: 100% when following the exact steps above
- **Common issues**: Wayland linking errors (fixed by disabling Wayland), audio initialization failures (fixed by rebuilding Dry with audio packages installed)
- **Audio confirmation**: Working audio with Launch.wav and Explode.wav sound effects
- **Controls working**: WASD movement (after code fix)
Resources and Community
-----------------------
- **MultiMower Repository**: https://gitlab.com/luckeyproductions/games/MultiMower
- **Dry Engine**: https://gitlab.com/luckeyproductions/dry
- **Dry Engine Documentation**: Available in the Dry repository
Quick Start Summary
-------------------
For experienced developers, here's the TL;DR version:
.. code-block:: bash
# Install dependencies on Fedora
sudo dnf install git make cmake gcc gcc-c++ qt5-qtbase-devel \
libX11-devel libXrandr-devel alsa-lib-devel mesa-libEGL-devel \
wayland-devel wayland-protocols-devel
# Build Dry engine
cd ~/git
git clone https://gitlab.com/luckeyproductions/dry.git
cd dry && mkdir build && cd build
cmake .. -DDRY_64BIT=1 -DCMAKE_BUILD_TYPE=Release -DVIDEO_WAYLAND=OFF
make -j$(nproc)
# Build MultiMower (CRITICAL: set DRY_HOME first!)
export DRY_HOME=$HOME/git/dry/build
cd ~/git
git clone https://gitlab.com/luckeyproductions/games/MultiMower.git
cd MultiMower && mkdir build && cd build
qmake ../MultiMower.pro && make -j$(nproc)
# Run the game
cp -r ../Resources .
./multimower
- **Enhanced controls**: WASD movement with realistic tank acceleration
Conclusion
----------