Background image Background image
©2024 Erich Erstu

About

This website serves as a formal publication of both the professional and social information about the living soul known as Erich Erstu.

Contact Info
E-Mail:mail@ErichErstu.net
Online:LinkedIn, Facebook, GitHub

Biography

Photo of Erich Erstu
Photo of Erich Erstu, September 2022
Date·of·Live·Birth:15th of February, 1989 Anno Domini
Ethnicity:Estonian

In his professional life Erich Erstu is a software engineer and a computer game developer who often challenges the mundane world of dogmas with his novel approaches and unconventional thinking. Although he has spent a fair share of his working hours devising BitCoin and online gambling related projects, his favourite software engineering challenge is the creation of a horizontally scalable game server for a massively multiplayer online role playing game.

He wrote his first computer program at the age of five in QBasic. At the age of 12 he developed his first video game using the GameMaker software. He learned the C programming language on his own while modding a multi user dungeon (MUD) server. At the age of 16 he started learning C++ which also became his favourite programming language. Although he used the Windows operating system up until the year 2012, he switched to Linux due to security concerns when buying his first BitCoin.

Over the course of his life Erich has created dozens of video games and a multitude of software projects, albeit none of these endeavours has brought him any long-lasting fame or fortune. His ability to see the future and to make good speculative investments on the other hand has abundantly compensated him the time he has spent on developing software. That said, he does not necessarily see any of his discontinued projects as a failure.

In his private life Erich enjoys lifting weights in the gym as a hobbyist bodybuilder and often times innovation strikes him exactly there when he is taking a resting break between sets. When at home he spends much of his computer time on research of various (mostly controversial) topics. He is convinced that in order to gain a competitive advantage in front of his fellow man he must discard the mainstream beliefs and hold a mindset that the majority of "well educated" people are wrong about virtually everything.

Being experienced in so many different arts and sciences Erich considers himself more of a multidisciplinary problem solver than a mere software engineer. While programming has indeed been his primary task he has also been in the role of a game designer, software architect, software tester, computer hacker, conscript, truck driver, warehouse manager, investor, day trader, BitCoin miner, artist, creative director, composer, lyricist, drummer, shaman, nutritional advisor, fitness coach, holistic doctor, parasitologist, alchemist, evangelist, exorcist, carpenter and a plaintiff, to name a few.

Curriculum Vitae

Image of CV
Click here to open the CV in PDF.

Academic Degrees

Image of DiplomaImage of Diploma
M.Sc in EngineeringB.Sc in Engineering
University of Tartu, 2014University of Tartu, 2012
THESISTHESIS

Professional Certifications

Image of Certificate

Portfolio

As this website concentrates on the software engineering aspect of Erich Erstu's doings, in the following sections some of his video games and other software projects are listed and briefly described.

Games

Over the course of his life Erich Erstu has authored many computer games. While the full list is not fit for public scrutiny some of the more notable titles are listed below.

Slice&Dice Dungeon

Slice&Dice Dungeon (SnDD) is a multi user slot machine, backwards compatible to Telnet. It is inspired by MUDs and it incorporates aspects from typical role-playing games. In addition to the Text User Interface, S&DD comes with a browser based client written in HTML5 and Javascript. The latter is responsible for making this game much more convenient for the vast majority of the target audience as the client aims to resemble a slot machine.

Screenshot
Title:Slice&Dice Dungeon
Time·of·Focus:2017 — 2022
Target·Platform:Web browser
Tech·Stack:C++, JavaScript, PixiJS
Status:Discontinued

Sohni

Sohni: Second Visit to the Underworld, based on a chapter of the Estonian national epic "Kalevipoeg", uses traditional adventure gaming elements to offer a simplified yet still engaging artistic experience. The player guides the protagonist Sohni through gloomy forests, murky bogs and eerie caves, where every obstacle and decision might sway his will to push onward.

Screenshot
Title:Sohni — Second Visit to the Underworld
Time·of·Focus:2012
Target·Platform:Windows XP
Tech·Stack:C++, Lua, Allegro5
Status:Completed
DOWNLOAD

CatFight

CatFight is a brutal cat fighting game. The basics are similar to Mortal Kombat except that there are street cats fighting instead of ninjas. Single player consists of 10 levels. Two player mode is available.

Screenshot
Title:CatFight
Time·of·Focus:2007
Target·Platform:Windows XP
Tech·Stack:C++, Allegro4
Status:Completed
DOWNLOAD

Baltic Sea

Baltic Sea is a single player real time strategy game where the player has to keep order on the Baltic Sea. The game was created with Gamemaker 5.3a in the year 2007. This game was mainly developed by Erich Erstu, graphics were drawn by Ivo Visak and background research was conducted by Allan Trukits.

Screenshot
Title:Baltic Sea
Time·of·Focus:2007
Target·Platform:Windows XP
Tech·Stack:GameMaker 5.3a
Status:Completed
DOWNLOAD

Arion MUD

Arion is a text-based role-playing game and a multi user dungeon (MUD) based on the Rivers of MUD engine. Erich modded and maintained it for fun and to teach himself the C programming language.

Screenshot
Title:Arion MUD
Time·of·Focus:2005 — 2015
Target·Platform:Telnet
Tech·Stack:C
Status:Discontinued

RedEgg Adventures

This game is an arbitrary side-scrolling role-playing game where the player takes the role of an abstract character named RedEgg who looks like he came out of Pac-Man. Killing everyone who comes at him he slices and dices his way through a fictional world that seems to be progressively turning into excrement.

Screenshot
Title:RedEgg Adventures
Time·of·Focus:2001 — 2005
Target·Platform:Windows XP
Tech·Stack:GameMaker 5
Status:Discontinued

Troll

Troll is a platform adventure game developed in the spirit of Prehistorik 2. In this game the player is a troll named Thog who embarks on a quest to warn the king about the sudden madness that has occurred in the animal kingdom.

Screenshot
Title:Troll
Time·of·Focus:2004
Target·Platform:Windows XP
Tech·Stack:GameMaker 5
Status:Completed
DOWNLOAD

Marko

Marko is a simple adventure game named after its protagonist Marko who has to raise money for a cool motorbike. The events of this game take place in the parish of Kambja, Estonia. It was made in 2003 with Gamemaker 5.0. The game is in Estonian.

Screenshot
Title:Marko
Time·of·Focus:2003
Target·Platform:Windows XP
Tech·Stack:GameMaker 4.3
Status:Completed
DOWNLOAD

Software

While a more extensive list of software authored by Erich is available under his GitHub account, some of the more noteworthy titles are also listed in the following sections.

Markdown Assembler

MarkDown Monolith Assembler is a command line tool designed for building elegant browser-based books using the Markdown markup language. When given a markdown document as an input, this program produces a monolithic JavaScript-free HTML5 application as an output. For example, this very website has been generated with MarkDown Monolith Assembler.

Title:MarkDown Monolith Assembler
Time·of·Focus:2023
Tech·Stack:C++, HTML, CSS
Status:Completed
SOURCE CODE

Sockets

Sockets is a single-threaded and signal-compatible header-only C++ library for the creation and acceptance of TCP connections. The library makes use of the epoll Linux kernel system call to implement a scalable I/O event notification mechanism.

This library started out from the Arion MUD server in 2012 and has been revised and rewritten several times ever since. It was intended to be used as a networking module for a MUD but is also used by other software such as TCP Coupler and TCP Nipple.

Title:Sockets
Time·of·Focus:2012 — 2023
Tech·Stack:C++
Status:Completed
SOURCE CODE

TCP Nipple

This Linux program is a network client that joins together pairs of outgoing TCP connections. It connects simultaneously to two hosts (supply and demand) and exchanges data between them.

With this tool it is trivial to host any TCP server locally rather than on a cloud or on a third party commercial server. This may turn useful if a hosting provider charges based on CPU usage because then the computation heavy part of the service could be executed on concealed and privately owned hardware. Please refer to TCP Coupler to get an idea of how to set up such a server.

Title:TCP Nipple
Time·of·Focus:2021 — 2023
Tech·Stack:C++
Status:Completed
SOURCE CODE

TCP Coupler

This Linux program is a network server that joins together pairs of incoming TCP connections. It listens simultaneously on two ports (supply and demand) and connects any new client on the demand port with a client waiting on the supply port.

An example use case would be running this program as a public server in order to provide access to a private server which cannot accept new connections by itself but can connect to the public server when needed. See TCP Nipple for a good example of such a private server.

Title:TCP Coupler
Time·of·Focus:2021 — 2023
Tech·Stack:C++
Status:Completed
SOURCE CODE

CryptoGraffiti

Bitcoin's block chain is a decentralized database which main purpose is to secure and hold all Bitcoin transactions. It can be used to store other data too. For example, lovers might want to "scratch" their name letters into the block chain where they will remain forever. CryptoGraffiti allows people to read and write such block chain messages.

Unfortunately, the project had to be discontinued because its continuation would have required renting a datacenter. The potential revenue that such a peculiar service would have generated simply did not balance out the costs associated with a datacenter.

Screenshot
Title:CryptoGraffiti
Time·of·Focus:2014 — 2021
Tech·Stack:JavaScript, HTML, CSS, PHP, MySQL, Bash, C++, BitCoin
Status:Discontinued
SOURCE CODE

Research

From time to time Erich has ran into non-trivial problems that he needed to have a solution for. In these circumstances the process of working out a solution has required enough effort to be qualified as research. In this section some of the more noteworthy research results are presented.

Wave Function Collapse

Wave Function Collapse is a method devised for procedural generation of images based on a sample image. The produced images are locally similar to the input image which makes this method highly convenient for pattern generation.

Unlike the original method, Erich Erstu's method operates on an unbounded area. Also, his method tolerates contradictions. This variant of the Wave Function Collapse method was initially implemented to generate random dungeon maps for an online role-playing game.

Screenshot
Title:Random Dungeons with the Wave Function Collapse Method
Time·of·Focus:2021
Tech·Stack:C++
Status:Completed

Fluid Morphing for 2D Animations

This study investigated the possibilities for image morphing that could be applied to animations used in computer games. The motivation was to take advantage of fluid dynamics in hope of achieving more natural looking interpolations.

As a result of this research, a C++ library named AtoMorph was implemented. The library is accompanied by an explanatory thesis and it also earned Erich a Master's Degree in Software Engineering.

Screenshot
Title:Fluid Morphing for 2D Animations
Time·of·Focus:2013 — 2014
Tech·Stack:C++
Status:Completed
SOURCE CODE

Random World Generator

The aim of this work was to find an easy to use solution to a common problem — generating random world maps that could be used in computer games. As a constraint the desirable maps were meant to be of an Earth type planet including its heightmap, bodies of water and biomes.

Using Perlin noise, water droplet simulation and Whittaker’s biome diagram a C++ library named RWG was implemented. The library is accompanied by a humble thesis written in Estonian as it also earned Erich a Bachelor's Degree in Informatics.

Screenshot
Title:Random World Generator
Time·of·Focus:2012
Tech·Stack:C++
Status:Completed
SOURCE CODE

Links

As in the good old times when people first started making personal websites for themselves, the tail of this site is composed of a list of domains that we wish to share with the world wide web.

People

Software

News

Community

  • MetaNet.icu — exclusive membership club focused on Bitcoin