public class ExampleGame : Game, IGame | |
{ | |
public Game Game => this; | |
private readonly ISomeDependency _someDependency; | |
public ExampleGame(ISomeDependency someDependency) | |
{ | |
_someDependency = someDependency; | |
} |
So, with credit to the Factorio wiki and cbednarski's helpful gist, I managed to eventually setup a Factorio headless server. Although, I thought the process could be nailed down/simplified to be a bit more 'tutorialised' and also to document how I got it all working for my future records.
The specific distro/version I'm using for this guide being Ubuntu Server 16.04.1 LTS
. Although, that shouldn't matter, as long as your distro supports systemd
(just for this guide, not a Factorio headless requirement, although most distros use it as standard now).
The version of Factorio I shall be using is 0.14.20
, although should work for any version of Factorio 0.14.12
and higher.
Just a note to newcomers: If there are any issues with the installation steps, people in the comments are doing a good job
function toUTF8Array(str) { | |
var utf8 = []; | |
for (var i=0; i < str.length; i++) { | |
var charcode = str.charCodeAt(i); | |
if (charcode < 0x80) utf8.push(charcode); | |
else if (charcode < 0x800) { | |
utf8.push(0xc0 | (charcode >> 6), | |
0x80 | (charcode & 0x3f)); | |
} | |
else if (charcode < 0xd800 || charcode >= 0xe000) { |
# Enter this command to create a sudoers override/include file: | |
# sudo visudo -f /etc/sudoers.d/nginx.overrides | |
# (Make sure you actually have this in your /etc/sudoers - Run `sudo visudo` to check) | |
# #includedir /etc/sudoers.d | |
# This file assumes your deployment user is `deploy` | |
# Nginx Commands | |
Cmnd_Alias NGINX_RESTART = /usr/sbin/service nginx restart |
/* Solarized Dark | |
For use with Jekyll and Pygments | |
http://ethanschoonover.com/solarized | |
SOLARIZED HEX ROLE | |
--------- -------- ------------------------------------------ | |
base03 #002b36 background | |
base01 #586e75 comments / secondary content |
The last point of Semantic Versioning 2.0.0__ has caused much debate around what constitutes a breaking change__. There's no way to strictly define breaking without reducing it to uselessness. Instead, the following tests are applied to determining if a bug fix is backwards compatible. If either of the following holds, fixing the bug is backwards incompatible:
- A reasonable user would not notice the unintended behavior; even if it is not covered by, or is directly
# bloop 3.0.0 | |
import copy | |
from typing import Union | |
from bloop import BaseModel, Column | |
from bloop.models import subclassof, instanceof | |
from bloop.types import Type | |
__all__ = ["Mapper"] | |