Giter Site home page Giter Site logo

kriegspiel's Introduction

Le Jeu de la Guerre

Try it on the GitHub page for local mode. Play online multiplayer mode on FreeBoardGames

A WEB implementation of Guy Debord's A Game of War (Le Jeu de la Guerre). Powered by boardgame.io. The graphic is based on svg+emoji, with Pico8's Palette.

About the Game

Here are some materials about the game and its history.

Pieces and Strongholds

Why emoji? there is nothing more appropriate than emoji to illustrate the Spectacle: we are habiting from symbols to symbols that are produced by L'Autre. The big tech companies decide the meanings and the representations of those symbols, whether 🔫 is a handgun or a harmless toy.

  • Units
    • 💂 Infantry
    • 🏇 Cavalry
    • 🎉 Artillery
    • 🚀 Swift Artillery
    • 🚩 Relay
    • 🚚 Swift Relay
  • Strongholds
    • 🎪 Arsenal
    • 🏰 Fortress
    • 🛣️ Mountain Pass
    • ⛰️ Mountain
  • Battle related symbols
    • ⚔️ Attack
    • 🛡️ Defense
    • 🎯 Combat Range
    • 🐴 Move Speed
    • ⚡ Cavalry Charge
    • 🏃‍♂️ Retreat
    • 💀 Captured
    • 😅 Out of Supply
    • 💥 Battle

Rules

You can also refer to the more detailed rules here.

Overall

screenshot

This game is a simulation of the battle in the Napoleonic Wars. Two armies with a limited amount of units fight on a 25⨉20 board. The game ends by occupying(thus destroying) the enemy's all 🎪Arsenals.

Each player can move up to 5 units and attack 1 enemy per turn. The 🐴speed affects the unit's movement range in one turn.

move

The two main features are combat and supply settings

Notice "adjacent" in this game means all 8 direction

Combat

There is no randomness in combat, and combat does not depend on single units. The game stress arranging and cooperating units to achieve high combat factors(i.e. ⚔️Attack and 🛡️Defense), which decide the combat.

Every unit radiates its factor in 米 shape within its 🎯combat range. You can see the units that provide ⚔️Atk and 🛡️Def. The total values are the combat factor at that point. Some strongholds 🏰Fortress and 🛣️Mountain Pass can provide extra defense if they are occupied by 💂Infantry or 🎉🚀Artillery.

To attack an enemy you need to have a higher ⚔️Atk than its 🛡️Def at that point, and if just higher than 1, the enemy has to 🏃‍♂️retreat this unit; otherwise, it will be 💀captured.

combat

⚡Cavalry Charge

Units usually provide higher 🛡️Def than ⚔️Atk, so to break through the enemy's defense, you can use ⚡cavalry charge.

Just let 🏇cavalry be adjacent to the enemy's unit to toggle ⚡charge, and other 🏇cavalries in the direction line also count. When 🏇cavalry is in ⚡charge, its ⚔️Atk becomes 7, so totally you can get up to 28 ⚔️Atk through ⚡charge.

There are also some restrictions about the ⚡charge, such as one can not charge towards the unit in 🏰Fortress or 🛣️Mountain Pass.

charge

Supply

Units highly rely on supply, the unit 😅out of supply can not move nor provide combat factors. Notice that supply could be cut by the enemy.

screenshot

The supply originally emitted by 🎪Arsenal, also in 米 shape with unlimited range, except be blocked by enemy's units or ⛰️Mountain. The 🚩🚚relay units can redirect supply lines, and they even can move when they are 😅out of supply.

To be in supply, units must be on supply lines or adjacent to units that are in supply.

Edit Mode

Currently, the game provides a default opening. But you can customize your own with the editor mode.

editor

You can Save and Load your game with the FEN-like notation. Merge game can add units to the board, which is useful for players to apply their deploy plans.

The Other Implementation

There is another digital implementation: Kriegspiel, made by Alex Galloway. There are an interview and a playthrough by Fred Serval. Unfortunately, it's only available on Mac and IOS, which inspires me to make a WEB version.

Route map

Current developing screenshot:

play

  • update function
  • supply lines
  • moves records
  • attack mechanics
  • move anim
  • Editor?

The Ambiguities of Rules (my setting)

  • Will enemy units block fire lines? i.e. can I attack back-line units? (no, yes)
  • Will offline enemy units block communication lines? will the retreating unit do? (no, yes)
  • Is failed retreat count as a move? (no)
  • Can offline units retreat? (no)

kriegspiel's People

Contributors

iamcxds avatar

Stargazers

grokmann avatar molloy avatar Hash avatar  avatar Hecate2 avatar  avatar michyeora avatar

Watchers

 avatar

Forkers

king-mob mollose

kriegspiel's Issues

Thank you for the code!

@iamcxds I've been using this codebase for the past 5 months to run an adapted form of the game of war with 8 players. You can see the current board here.

I just wanted to say, thanks so much for doing this, we're having a great deal of fun and it wouldn't have been possible without the work you put in writing the web version of this game.

You've made me and my friends very happy, and if you ever want to share a virtual beer over zoom or discord or something, I'd definitely be up for that.

Cheers!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.