Sanet.MakaMek.Map 0.53.14

dotnet add package Sanet.MakaMek.Map --version 0.53.14
                    
NuGet\Install-Package Sanet.MakaMek.Map -Version 0.53.14
                    
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.MakaMek.Map" Version="0.53.14" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Sanet.MakaMek.Map" Version="0.53.14" />
                    
Directory.Packages.props
<PackageReference Include="Sanet.MakaMek.Map" />
                    
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.MakaMek.Map --version 0.53.14
                    
#r "nuget: Sanet.MakaMek.Map, 0.53.14"
                    
#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.MakaMek.Map@0.53.14
                    
#: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.MakaMek.Map&version=0.53.14
                    
Install as a Cake Addin
#tool nuget:?package=Sanet.MakaMek.Map&version=0.53.14
                    
Install as a Cake Tool

MakaMek

A cross-platform implementation of turn-based tabletop tactics BattleTech, built with .NET 10 and AvaloniaUI.

Overview

MakaMek is an open-source tactical combat game featuring giant walking war machines. The game is inspired by another computer implementation of BattleTech called MegaMek but focusing on simplicity and accessibility for all players. We aim to keep gameplay simple and prioritize a mobile-first and web-first user experience.

MakaMek

Implementation Phases

<details> <summary>Phase 0. Game foundation ✅</summary> Complete as of v0.46.5. Allows to complete games locally and over the LAN.

Implemented
  • Client-Server app architecture with RX communication for local play
  • LAN multiplayer with SignalR (only Desktop app can host the game, mobile clients could connect, WEB can neither host nor connect)
  • Single-player combat with up to 4 players on a single device
  • Complete Turn flow implementation with all major phases including initiative, movement, attack declaration and resolution, heat and end phase
  • Critical hits, aimed shots, destruction of units, locations and components
  • Optional rule where flamers apply both damage and heat to the targets
  • Basic pilots implementation, unconsciousness, piloting skill rolls and falling
  • Heat effects, shutdown, ammo explosion, restart, pilot damage and to hit modifiers
  • Hex map generator (and previewer) with the simplest terrain types (clear, light and heavy wood) (MegaMek's assets) without levels
  • Cross-platform support (Windows, Linux, macOS, Web, Android, iOS)
  • Prototype UI built with AvaloniaUI
  • Importing mechs defined in MegaMek's MTF format (Level 1 equipment only), 199 mech variants are supported at the moment </details>

<details> <summary>Phase 1. Bot framework ✅</summary> Complete as of v0.50.7. Combat against AI opponents

Implemented
  • Bot player framework with a decision engine for each game phase
  • Basic movement and weapon targeting decisions
  • Tactical evaluation of available positions, including torso turns, for movement and weapon decisions
  • Basic end phase decisions (shutdown/restart decisions, etc.)
  • Considering heat and ammo rounds for weapon selection
Experimental

An LLM-powered bot system, with dedicated decision engines, multiple agents and tools.

</details>

Phase 2. Support of map Levels and extended terrain types 🚧

Planned
  • Support of map Levels
  • Support of water and rough terrain types
  • Support of roads and paved areas
  • Map Editor (separate project)

Future Phases

  • Support of map Levels and extended terrain types
  • Support of advanced tech rules (Clan, LosTech equipment and more)
  • Support for vehicles, battle armor and infantry
  • Multiplayer over the Internet (WebSockets/SignalR)
  • Tools for creating and managing custom units and maps, compatible with common community data formats
  • Monogame version with 3D graphics and possible VR/AR support

Technology Stack

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

Project Structure

MakaMek/
├── src/
│   ├── MakaMek.Core/         # Core game engine and logic
│   ├── MakaMek.Map/          # Map generation and management
│   ├── MakaMek.Presentation/ # Presentation layer (ViewModels and UI states)
│   ├── MakaMek.Avalonia/     # UI implementation with AvaloniaUI
│   ├── MakaMek.Assets/       # 2D Assets management
│   ├── MakaMek.Bots/         # Bot framework 
│   └── MakaMek.Tools/        # Tools and utilities
├── tests/                    # Unit tests
├── data/                     # Data files (e.g., unit definitions)
└── docs/                     # Documentation (also synced to GitHub Wiki)

Project Status

Component Build Status Package/Download
Test Coverage (non-ui) codecov
MakaMek.Core build NuGet Version
MakaMek.Map build NuGet Version
MakaMek.Presentation build NuGet Version
MakaMek.Avalonia build NuGet Version
MakaMek.Bots build NuGet Version
Web Version (WASM) Deploy WASM to GitHub Pages Play in Browser
Android Version Build Android APK Download Android APK
macOS Version Build and Package MacOS App Download Mac Package
Windows Version Build Windows App Download Windows Installer
Linux Version Build Linux App Download Linux AppImage
BotAgent Docker BotAgent Docker Docker Image

Note: iOS build requires a complex distribution process (App Store is not possible because of the licensing). While the platform is supported by the codebase, ipa is not available (yet?). Users can build and deploy to iOS devices from the source code.

Development Setup

Prerequisites

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

Building

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

License

The source code for this project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.

Art and Assets

Some art and assets used in this project—specifically unit and terrain images—are taken from the (MegaMek Data Repository). These materials are used as-is without any modifications and are distributed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License (https://creativecommons.org/licenses/by-nc-sa/4.0/). The assets are located in the data folder and are supposed to be distributed separately as downloadable content.

If you have any concerns regarding the usage of these assets, please reach out to me at: anton.makarevich@gmail.com

Acknowledgments

  • Inspired by MegaMek
  • Thanks to the BattleTech community for their continued passion.

Name Origin

The name MakaMek contains references to MegaMek, but also to my surname and the very first 'Mech ever created—the Mackie.

Disclaimer

This is a fan-made project 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 net10.0 is compatible.  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 (5)

Showing the top 5 NuGet packages that depend on Sanet.MakaMek.Map:

Package Downloads
Sanet.MakaMek.Core

An Attempt of Classic BattleTech game implementation. Game Logic

Sanet.MakaMek.Services

Shared service abstractions for MakaMek

Sanet.MakaMek.MapEditor

Map editor for MakaMek

Sanet.MakaMek.Avalonia.Controls

Avalonia UI controls for MakaMek

Sanet.MakaMek.Assets

An Attempt of Classic BattleTech game implementation. Asset Management

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.53.14 32 3/21/2026
0.53.13 85 3/17/2026
0.53.12 154 3/16/2026
0.53.11 150 3/16/2026
0.53.10 174 3/11/2026
0.53.9 202 3/10/2026
0.53.5 103 3/5/2026
0.53.4 85 3/2/2026
0.53.3 105 3/2/2026
0.53.2 112 3/2/2026
0.53.1 87 3/2/2026
0.53.0 121 2/26/2026
0.52.15 149 2/25/2026
0.52.12 179 2/21/2026
0.52.9 160 2/17/2026
0.52.8 115 2/16/2026
0.52.5 231 2/16/2026
0.52.2 172 2/14/2026