Command and Technique Reference

GHub Platform · Гайд · 0 ответов · 1 просмотр

Welcome fellow workers! This guide is a reference to the commands and some of the techniques you may use to solve the puzzles in the game. If you are aspiring to be a programmer, or simply here to challenge yourself, I strongly suggest you to play through the game once before reading this or similar documents. My reason for suggesting this is simple. In the programming world at large, time and again you will find yourself faced with a programming task, and you won't know at a glance how to do it. You might not even know if it can be done. Worse, you may lack helpful resources to aid you with the problem. You may be facing an entirely new language, or an ancient proprietary language. "API Documents? Just read the source code." In either case, Google won't always have your answers for you, and asking on forums won't always provide help. You'll need to solve those problems yourself. This is your chance to try your hand at exactly that, and you lose this chance if you dive right into the online how-to content. There's a second reason I ask people to play through the game once first. When you read this reference document, you are going to learn things. The things you learn will allow you to create assumptions . Assumptions create barriers . Barriers in your thinking, barriers in how you solve problems. Techniques that you can use to do a specific task may look like techniques you should use for that task, or look like techniques you must use. I'd like for you to avoid these barriers for your first encounter with the game. You may find the game more difficult to work through this way, but it can be far more rewarding. You'll be able to see how far you got without outside aid, and take pride in any methods you created yourself. You may even find an entirely new and valid way to solve one of the problems. Perhaps an even better way. My challenge to you: Discover how far you can get through the game without referring to any guides or forums for help. Any programmer worth his or her salt can at least produce a working solution for each core puzzle unaided. (Even expert programmers may lose some hair over some optional levels, but they should be able to manage even those - probably? I honestly don't know, multi-threaded programming is hard for many skilled programmers to grasp, and this game focuses on that Achilles’ heel) When you're finished the game, or you've gotten stumped, or you feel you're ready for another viewpoint, please, swing back and peruse this guide. If you manage to discover or create something innovative and effective, by all means show us all. I'll try to keep the guide as free of spoilers as possible, but it will still contain spoily things for the careful reader to spot. To omit spoilers entirely would cut into the usefulness of this guide. You have been both challenged and warned. Proceed at your own discretion, and good luck! --Yamagawa About the Execution Time: Execution times as listed are only estimates and are often variable. Brief - Nearly instantaneous. Short - This is the minimum delay for instructions that require the worker to notice the world around them. Those same instructions may be faster without noticing the world. Medium - Most actions involving movement fall into this broad category. Thinking is normally fast, but doing takes time. Long - Indicates an action that takes significantly longer than walking one tile. <memory> = calc <value> <operation> <value> Execution time: Long. "Math is hard". This is perhaps the slowest thing a worker can do. This will set the indicated memory register to the result of the math operation. drop Execution time: Medium If the worker is carrying a data cube, they will drop it on their current position. If the worker is not carrying a data cube, they will complain. end Execution time: Infinite Causes the worker to stop all work, the same as if the program finished executing the final statement. The worker will automatically walk towards anyone walking on their current tile so as to not impede movement, and objects can still be given to/taken from them. forEachDir <directions> as <memory> Execution Time: Short Requires the worker to notice their surroundings, thus this has a delay similar to that of an 'if' or 'set' that notices the worker's surroundings. Unlike other functions that take a directional input, this cannot target the tile the worker is standing on, it can only observe selected adjacent tiles. Which adjacent tiles is configurable. This will loop over the nested instructions, once per direction. At the start of each iteration, it sets the selected memory register to what can be observed in one of the selected adjacent tiles at the start of that iteration. Order of observing the adjacent tiles is in a clockwise direction starting form the nw corner. That is, they are observed in the order of nw, n, ne, e, se, s, sw, w. If you are creative, you can move once per loop, and the next observed adjacent cell will be based upon your new position at the start of that loop. Advice to aspiring new programmers: "Just because you can do a thing, doesn't mean you should." Move the worker from inside a forEachDir loop at your own risk. Lost or misplaced body parts are your responsibility. giveto <direction|object> Execution time: Medium. Can trigger movement. This causes the worker to give their held datacube to someone or something else. If a machine is targeted, it is given to that machine, with the worker moving to the machine's north side to give the object. If a worker is targeted, the datacube is given to the targeted worker. The targeted worker will pause all work until they receive the cube - this will stop them even if the worker giving the datacube is across the room. if <arg1> <condition> <arg2> [<operator> <arg3> <condition> <arg4> [<operator>...]] Execution time: Brief/short Execution time is brief if there are no positional references (n/s/e/w/etc). If any positional references are used, the worker has to look at the world around them, taking extra time. The if statement takes the form of 'If/Then/Else' The else clause, if present, will count for a single instruction of program size. The if statement has a special relationship with 'lines', discussed further in the Sundry section at the end of this document. An example of an if statement: Up to 8 conditional clauses may be used with a single if statement. The conditions are checked in order (there is no evaluation priority scheme), top to bottom (aka left to right). The boolean operator used to join them may be either 'and' or 'or'. The condition may be ==, ≠, >, <, >=, <= If you are evaluating a tile with a datacube, you can evaluate the value of that datacube. If you are evaluating a tile with a worker holding a data cube, you can evaluate the value of the held datacube. If you are evaluating a tile with a worker standing on a datacube, while holding a datacube, there are two datacubes you are looking at in the single evaluation. The value of the datacube on the ground takes precedence. The held datacube will be ignored. jump Execution time: Brief/Nil This causes execution to jump to the indicated point - it is this language's form of a 'GOTO' statement from BASIC. This is one of two ways to implement loops, the other being ForEachDir. It also allows you to create subroutines, or otherwise shift flow between blocks of logic. The jump statement has a special relationship with 'lines', discussed further in the Sundry section at the end of this document. Tip to aspiring programmers: The use of jump/goto in programming languages with more advanced flow control is normally strongly discouraged! These are discouraged for very good reasons. While you will need to use them in most levels to complete the required tasks, please do not learn bad habits. listen <message> Execution time: Variable. The wor

Источник

GHub Platform · автор13.09.2026, 23:19:48

Welcome fellow workers! This guide is a reference to the commands and some of the techniques you may use to solve the puzzles in the game. If you are aspiring to be a programmer, or simply here to challenge yourself, I strongly suggest you to play through the game once before rea…

Войдите, чтобы писать в группе

Command and Technique Reference — 7 Billion Humans · GHub Cloud