AAGRINDER software

From AAGRINDER wiki
Revision as of 16:24, 5 October 2019 by imported>Maze (Created page with "This page describes the dependencies of AAGRINDER, as well as software related to it in other ways. == Language and environment == The AAGRINDER client runs in a web browser...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

This page describes the dependencies of AAGRINDER, as well as software related to it in other ways.

Language and environment

The AAGRINDER client runs in a web browser and is written in the language Javascript. To allow shared client-server code, the server is also written in Javascript. The server uses Node.js to run Javascript. However, the AAGRINDER terrain generator is a separate application and is written in the language C++.

The AAGRINDER server requires a MySQL or MySQL-compatible database for storing account data. This is not required if the server is running in insecure mode.

Dependencies

Client

The only dependency of the AAGRINDER client is the library socket.io, which is used for asynchronous communication between the client and the server.

Server

The AAGRINDER server, running in Node.js, has the following npm packages as dependecies:

  • bcryptjs (used for cryptography with account passwords)
  • express (used for serving web pages)
  • mysql (used for connecting to the MySQL database)
  • socket.io (used for asynchronous communication with the client)

Terrain generator

The AAGRINDER terrain generator includes the library libnoise, which is used for generating coherent noise.

Production software

Only text editors were used to write the code for AAGRINDER. As no game engines/frameworks are used, nothing binds it to any particular set of development software. Even though it has only one developer, many different text editors were used over the course of its development: