Tasks, Workers and Machines
- 430 words
- 3 min
The most basic elements of gameplay in Botnet of Ares are Machines, Tasks & Workers - here's how they work.
Machines and Tasks can have one or more threads - for Tasks, these represent independent units of work that may be completed in parallel, while for Machines these represent distinct processing units that can complete different Tasks (or different threads of a Task) at the same time.
The difficulty of Tasks is described by its cost in instructions (shortened to 'i' throughout the game.) As this is a game about scaling, this cost naturally uses bigger and bigger SI prefixes as the game progresses.

When a Machine is assigned to a Task, a Worker is created to represent the work being done. The progress made by a Worker is not saved until it completes the Threads it was assigned to perform - something to keep in mind, as certain ICE can cancel in-progress workers.
The moment to moment gameplay loop is essentially an optimization puzzle: the player is tasked with assigning Machines to Workers, rewarded if this assignment efficiently uses the resources available, and sometimes even punished by less than optimal choices.
Optimization opportunities come from differences in parallelism between available tasks. Some tasks are inherently serial - they have only one Thread & do not benefit from parallelism. Others are embarassingly parallel - they are composed of many Threads, each with very low completion cost.

Machines and Tasks are balanced so that the fastest way to complete a task is by finding the right balance between the speed of a Machine's threads and how many threads it has available. Serial tasks tend to have fairly high costs, encouraging the player to use the fastest machine available. Parallel tasks have lower per-thread cost than equal tier serial tasks, but the total throughput required scales with the number of threads. Likewise, highly parallel machines have more throughput compared to equal tier serial machines, making the former much better at completing serial Tasks.

tagged Botnet of Ares