Sanet.MekForge.Avalonia 0.31.4-alpha

Suggested Alternatives

Sanet.MakaMek.Avalonia

Additional Details

The package has been renamed

This is a prerelease version of Sanet.MekForge.Avalonia.
dotnet add package Sanet.MekForge.Avalonia --version 0.31.4-alpha
                    
NuGet\Install-Package Sanet.MekForge.Avalonia -Version 0.31.4-alpha
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sanet.MekForge.Avalonia" Version="0.31.4-alpha" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Sanet.MekForge.Avalonia" Version="0.31.4-alpha" />
                    
Directory.Packages.props
<PackageReference Include="Sanet.MekForge.Avalonia" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Sanet.MekForge.Avalonia --version 0.31.4-alpha
                    
#r "nuget: Sanet.MekForge.Avalonia, 0.31.4-alpha"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Sanet.MekForge.Avalonia@0.31.4-alpha
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Sanet.MekForge.Avalonia&version=0.31.4-alpha&prerelease
                    
Install as a Cake Addin
#tool nuget:?package=Sanet.MekForge.Avalonia&version=0.31.4-alpha&prerelease
                    
Install as a Cake Tool

MekForge

A cross-platform implementation of tactical turn-based mech combat game, inspired by MegaMek. Built with .NET 9 and AvaloniaUI.

Overview (Planned)

MekForge is an open-source tactical combat game featuring giant walking war machines. The game focuses on strategic combat, unit customization, and both single-player and multiplayer experiences.

MekForge

Features

Implemented

  • Hex map generator with the simplest terrain types (clear, light and heavy wood) (MegaMek assets)
  • Client-Server app architecture with RX communication for local play
  • Units deployment and movement, including path finding for all the basic movement types
  • Weapon attack declaration and resolution (no crits yet)
  • Cross-platform support (Windows, Linux, macOS, Web, Android, iOS)
  • Test UI built with AvaloniaUI
  • Importing mechs defined in MTF format

Planned

  • Single-player combat against AI opponents
  • Multiplayer support (LAN and Internet, WebSockets/SignalR)
  • Unit customization and management
  • Compatible with common community data formats
  • Monogame version with 3D graphics and possible VR/AR support

Technology Stack

  • .NET 9
  • AvaloniaUI for cross-platform UI
  • xUnit for testing

Project Structure

MekForge/
├── src/
│   ├── MekForge.Core/        # Core game engine and logic
│   └── MekForge.Avalonia/    # UI implementation
└── tests/                    # Unit tests

Project Status

codecov

  • MekForge.Core:

build NuGet Version

  • MekForge.Avalonia:

build NuGet Version

  • Web Version (WASM):

Deploy WASM to GitHub Pages Play in Browser

Development Setup

Prerequisites

  • .NET 9 SDK
  • Your favorite IDE (Visual Studio, Rider, or VS Code)

Building

  1. Clone the repository
  2. Open MekForge.sln in your IDE
  3. Build the solution

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

The Windsurf/Cascade AI workflow from Codeium is dramatically accelerating development of MekForge. Try it out for yourself using the link above!

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

Acknowledgments

  • Inspired by MegaMek (https://megamek.org/)
  • Thanks to the BattleTech community for their continued passion.

Disclaimer

This is a fan-made game and is not affiliated with or endorsed by any commercial mech combat game properties. All trademarks belong to their respective owners. This project is primarily a learning experience and a labor of love - developed for the enjoyment of the development process itself.

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.31.4-alpha 597 3/24/2025 0.31.4-alpha is deprecated because it is no longer maintained.
0.31.3-alpha 582 3/24/2025 0.31.3-alpha is deprecated because it is no longer maintained.
0.31.2-alpha 382 3/23/2025 0.31.2-alpha is deprecated because it is no longer maintained.
0.31.1-alpha 396 3/23/2025 0.31.1-alpha is deprecated because it is no longer maintained.
0.31.0-alpha 385 3/23/2025 0.31.0-alpha is deprecated because it is no longer maintained.
0.30.7-alpha 395 3/23/2025 0.30.7-alpha is deprecated because it is no longer maintained.
0.30.6-alpha 271 3/22/2025 0.30.6-alpha is deprecated because it is no longer maintained.
0.30.5-alpha 281 3/22/2025 0.30.5-alpha is deprecated because it is no longer maintained.
0.30.4-alpha 216 3/21/2025 0.30.4-alpha is deprecated because it is no longer maintained.
0.30.3-alpha 265 3/20/2025 0.30.3-alpha is deprecated because it is no longer maintained.
0.30.2-alpha 264 3/17/2025 0.30.2-alpha is deprecated because it is no longer maintained.
0.30.1-alpha 269 3/17/2025 0.30.1-alpha is deprecated because it is no longer maintained.
0.30.0-alpha 278 3/17/2025 0.30.0-alpha is deprecated because it is no longer maintained.
0.29.1-alpha 279 3/16/2025 0.29.1-alpha is deprecated because it is no longer maintained.
0.29.0-alpha 248 3/15/2025 0.29.0-alpha is deprecated because it is no longer maintained.
0.28.14-alpha 206 3/15/2025 0.28.14-alpha is deprecated because it is no longer maintained.
0.28.13-alpha 199 3/15/2025 0.28.13-alpha is deprecated because it is no longer maintained.
0.28.12-alpha 201 3/15/2025 0.28.12-alpha is deprecated because it is no longer maintained.
0.28.11-alpha 210 3/14/2025 0.28.11-alpha is deprecated because it is no longer maintained.
Loading failed