Monoliths & module growth


The v0.5.3 version adds monoliths that hold secret texts, which can be deciphered one character at a time.

Monoliths can be deciphered by donating machine instructions to them. These instructions can be generated by compute modules, and can be used for general-purpose computation, or to be donated to other entities.

Because monoliths output their next deciphered character to the last donator, it only makes sense for a single machine to decipher a monolith. However, deciphering can be sped up by chaining multiple machines together, each donating instructions to the one in front of them.

HOST_WRITE_COM_POW : &entity $2 -> &monolith-deciphered $1 : &char $1

Donates remaining instructions to an entity that can use them. Ships can use received instructions for computation or they can pass them on. Monoliths use these instructions in their deciphering process.

The secrets themselves are intended to come from a server configuration file so that server implementors can choose to omit these secrets from the files they distribute to their clients, to avoid spoiling them.

The capabilities of ships can now be increased and decreased through the set of modules they hold. This set may be increased until a limit on the total number of modules, and decreased until a limit on the minimum set of modules.

HOST_WRITE_SYN_GRO : &module-type $1 ->

Grows an additional module, consuming the materials it requires in the process. Needs at least one free module space.

HOST_WRITE_SYN_ABS : &module-type $1 ->

Absorbs an existing module, regaining some portion of the materials it required in the process. Needs at least one more module of that type than is required by minimum.

Other notes:

  • instruction budgets for ships are now determined from compute modules
  • fixed progressive deserialization clashing with world saving/loading by zeroing out memory in newly added components
  • fixed entities disappearing after a world is loaded, which was caused by not adding them to the sweep-and-prune data structure
  • commands on the host device now deduct instructions upon being invoked, respective to their complexity
  • navigation now tries to take maximum acceleration and velocity into account to avoid overshoots

Files

doldrusidus-aarch64-linux-gnu-debug.zip 5 MB
Mar 31, 2023
doldrusidus-arm-linux-gnueabihf-debug.zip 5 MB
Mar 31, 2023
doldrusidus-i686-linux-gnu-debug.zip 5 MB
Mar 31, 2023
doldrusidus-x86_64-linux-gnu-debug.zip 5 MB
Mar 31, 2023

Get doldrusidus

Leave a comment

Log in with itch.io to leave a comment.