• Stars
    star
    924
  • Rank 49,203 (Top 1.0 %)
  • Language
    Java
  • License
    GNU General Publi...
  • Created almost 7 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Assembly programming game

Official website

CodeFactor Build Status

Much Assembly Required allows you to program the 8086-like microprocessor of a robot in a grid-based multiplayer world. The game is web based so no installation is required. In its current state, players can walk around the game universe and collect Biomass blobs and Iron/copper ore using the online code editor.

screenshot from 2017-11-12 13-01-43

Wiki: GitHub Chat: Slack

Deploying the server

Linux

Installing tools

On Ubuntu 16.04:

sudo apt install git maven openjdk-8-jdk mongodb

On Arch:

sudo pacman -S git maven jdk8-opendjk
yay -S mongodb-bin

# Don't forget to start mongodb
sudo systemctl start mongodb.service

If needed, visit yay installation and troubleshooting mongodb.

Deploying server

# Obtain source files
git clone https://github.com/simon987/Much-Assembly-Required.git

# Build
cd Much-Assembly-Required
mvn package

# Run
cd target
java -jar server-1.4a.jar

Windows (tested on Windows 10)

Installation instructions:

  1. Download the JDK from here. Install the JDK and update your PATH and JAVA_HOME environment variables.
  2. Download Maven from here. Install Maven (following the README) and update your PATH environment variable.
  3. Download Mongo DB Community from here. Install Mongo DB following the instructions here. Update your PATH environment variable.

Building instructions:

:: Builds the server
cd Much-Assembly-Required
mvn package

Running instructions:

  1. In one Command Prompt window, run Mongo DB:
:: Runs Mongo DB
mongod
  1. In a second Command Prompt window, run the MAR server:
:: Runs the MAR server
cd Much-Assembly-Required\target
java -jar server-1.4a.jar

macOS (tested on Sierra 10.12.6)

Installation

  1. Install Maven3 -Add Maven bin to your path
    export PATH=/path/to/maven/bin.:$PATH
  2. Install MongoDB. -Via Brew:
    #Update brew
    brew update
    
    #Install mongodb
    brew install mongodb
    
    #Install latest development release
    brew install mongodb --devel
    -Via .tar.gz
    #Extract files:
    tar -zxvf mongodb-osx-ssl-x86_64-4.0.3.tgz
    
    #Ensure binaries are in your path
    export PATH=<mongodb-install-directory>/bin:$PATH

If you do not wish to use the default data directory (/data/db), follow the steps for running MongoDB in the install doc.

Deploying Server

  1. Begin MongoDB service

    #If brew:
    #Launch on login
    brew services start mongodb
    #Or, if you don't want/need a background service you can just run:
    mongod --config /usr/local/etc/mongod.conf
    
    #If binary:
    mongod
    #Optional, set data directory path:
    mongod --dbpath <path to data directory>
  2. Deploy server:

    # Obtain source files
    git clone https://github.com/simon987/Much-Assembly-Required.git
    
    # Build
    cd Much-Assembly-Required
    mvn package
    
    # Run
    cd target
    java -jar server-1.4a.jar

Docker

Requirements

  1. Docker Compose (and dependencies)

Installation

Once Docker and Docker Compose are installed, you can build and start this application by running the following command inside this application's directory:

docker-compose up

Make sure to change mongo_address in config.properties to mongodb.

Vagrant

Requirements

  1. Vagrant
  2. VirtualBox

Installation

When vagrant is installed, you can build and start this application by running the following command inside this application's directory:

vagrant up

Running

Once the server is running, you should be able to connect to http://localhost:4567 with your browser

VS Code Extensions

More Repositories

1

awesome-datahoarding

List of data-hoarding related tools
1,044
star
2

sist2

Lightning-fast file system indexer and search tool
C
812
star
3

od-database

Distributed crawler, database and web frontend for public directories indexing
Python
138
star
4

ngx_http_js_challenge_module

Simple javascript proof-of-work based access for Nginx with virtually no overhead. (Similar to Cloudflare's anti-DDoS feature)
C
59
star
5

Architeuthis

MITM HTTP(S) proxy with integrated load-balancing, rate-limiting and error handling. Built for automated web scraping.
Go
41
star
6

opendirectories-bot

Python
33
star
7

Misc-Download-Scripts

Python
28
star
8

Simple-Incremental-Search-Tool

Simple web frontend to an elasticsearch database made for local files indexing
Python
18
star
9

fastimagehash

C/C++ replacement for the 'imagehash' python package
C++
18
star
10

yt-metadata

Script to import youtube-dl metadata to PostgreSQL
Python
13
star
11

Much-Assembly-Required-Frontend

Files for https://muchassemblyrequired.com/ frontend.
JavaScript
10
star
12

beemer

beemer executes a custom command on files written in the watched directory and deletes it.
Go
8
star
13

task_tracker

Fast task tracker (job queue) with authentication, statistics and web frontend
Go
5
star
14

imagehash-web

Javascript replacement for the ImageHash python package
JavaScript
4
star
15

reddit_feed

Fault-tolerant daemon that fetches comments & submissions from reddit
Python
4
star
16

dataarchivist.net

wip
HTML
3
star
17

vanwanet_scrape

Python requests wrapper with VanwaNet DDoS mitigation bypass (similar to cloudflare-scrape)
Python
3
star
18

chan_feed

Daemon that fetches posts from compatible *chan image boards
Python
3
star
19

sist2-script-clip

sist2 user script to generate CLIP embeddings
Python
3
star
20

bingo

wip toy project, please ignore
Python
3
star
21

status

Minimalist status page
Scala
2
star
22

castget-scripts

castget scripts to automate podcast download & transcoding
Python
2
star
23

opendirectories-bot-2

Reddit bot that interfaces with od-database
Python
2
star
24

sist2-python

Set of python tools to interface with sist2 index files. Used in user scripts
Python
1
star
25

sist2-demo

Scripts for sist2 demo website
Shell
1
star
26

sist2-models

Official sist2 machine learning models
Python
1
star
27

scripts

Shell
1
star
28

cbr2cbz

Yet another cbr to cbz converter
C
1
star
29

ws_feed_adapter

Go
1
star
30

manga-dl

Python
1
star
31

hexlib

Misc utility methods in Python
Python
1
star
32

the-rom.eu

don't ask
HTML
1
star
33

nvidia-tf-lab-docker

Jupyterlab image with nvidia/tensorflow + some other packages
Dockerfile
1
star
34

simon987.net

Personal website
JavaScript
1
star
35

sist2-build

Docker image to build sist2
Dockerfile
1
star
36

task_tracker_drone

General purpose 'set and forget' task runner for task_tracker
Python
1
star
37

ffmpeg-thumbnail-size-viz

Python
1
star
38

feed_viz

JavaScript
1
star
39

sist2-scripts

Python
1
star
40

sist2-build-arm64

Docker image to build sist2 (arm64, tested with raspi 4B)
Dockerfile
1
star
41

music-graph-scripts

Utility scripts for music-graph
Python
1
star
42

pg_asciifold

asciifold C-Language function based on Lucene's ASCIIFoldingFilter
C
1
star
43

sist2-script-whisper

Python
1
star
44

sist2-ner-models

NER models for sist2
Python
1
star
45

wacom-config

Config for wacom tablet mapping on linux
Shell
1
star
46

fastimagehash-go

go bindings for libfastimagehash
Go
1
star