Introduction
This is a walkthrough to the "Lifter" ending of Dan Shiovitz's magnificent "Bad Machine".
There are other ways to reach this ending (this is possibly the most straightforward method), and certainly other ways to complete the game - this walkthrough is just intended as a useful alternative to the spoiler-filled rec.arts.int-fiction discussion of the game, which seems to be the nearest the Internet previously got to a full solution. (Even the game's hints.txt is a bit recalcitrant - missing the compass solution, or assuming that it gets solved later, can be sufficient to destroy the will of some adventurers.)
There are other endings which you can investigate after completing this one; there's also a lot of scope for experimentation and tinkering around the factory, once you begin to see how the robots react and interact. The sense of busy, rough-edged organisation, and its varying inability to adapt, is arguably worth more than the endings.
Reclamation Sector (2)
> w
Despite seeing an exit to the west, you smack into the south wall when you attempt to move in this direction. Something odd's happening with your navigational systems.
> system
Your compass setting is at value "2", which is probably wrong.
> system compass_disp 0
This will sort your internal gyros out and allow you to move normally.
> n
Reclamation Sector (1)
Ignore the carnage, move on.
> n
Area 17 (SE main)
> w
Area 17 (SW main)
> n
Area 17 (W main)
> w
You can't pass through the hole in the wall because it's too dark in there.
> (wait 25 times for an Energizer robot to arrive)
> transmit 011 to energizer
011 is the code for requesting energy - you'll have been getting warnings about running low.
> transmit 011 to energizer
> (repeat until the Energizer robot collapses)
Carelessly, this Energizer will feed you energy until it runs out of energy itself, and shuts down.
> x energizer
Despite having an inaccessible torso and fairly uninteresting limbs, its head might prove useful.
> index 704
According to the Index, Energizer heads support "lowlight_vision()". Let's detach it and replace our existing head with it.
> detach #0704
> get #0704
> detach head from self
> attach #0704 to self
Now we can enter the darkness...
> w
Area 31 (entrance)
This next bit feels like a terrible cop-out, but it's the only way I've been able to stop the Driller from minding that I've nicked one of its tools. (As it's the last job of the Driller's day, it doesn't pick them back up again.)
> (wait for a driller to arrive - about 200 turns)
> (wait for it to place its magnets on the floor)
> get magnet
But we can't go south yet because there's a Drone there. Let's see what the Index knows about Drones.
> index drone
Intriguingly, "Fixer064 has noted system_flaw in part #662 (standard drone|head)."
> index 662
This tells us that, in Drone heads, "motion_scan interface FAILS: low_values(object_temp = < 20). Resultsin: <time_unit> delay before motion detected. Security risk=VHIGH." - we need to change our temperature.
> system
Mover005's temperature is currently 60, so...
> system temperature 19
> s
Area 31 (E junction)
> s
Area 31 (construction 1)
We're getting warnings about not being able to maintain this low temperature, so let's raise it to a safe level.
> system temperature 40
> get bar
(If there aren't any bars around, wait for a Transporter to deliver some.)
It's too heavy for a mere Mover Robot to carry. However, the Transporter seems happy to carry the constructed wall panels. We can trick it into mistaking a bar for a wall panel.
> get sticker
(If there aren't any stickers around, wait for the Constructor to make a new wall panel and put a sticker on it.)
> put sticker on bar
> (wait for a transport to collect the bar)
> nw
Area 31 (construction 1)
> w
Area 31 (W junction)
> sw
Area 31 (construction 2)
> (wait for the Transporter to drop the bar off)
The Lifter will also mistake the bar for a wall panel, due to the sticker.
> (wait for the Lifter to pick the metal bar up)
> (wait for a buckle to appear in lifter's torso)
If left alone, the Lifter will smash the bar into the wall it's building, to no great effect. However...
> put magnet in slot
This will have a useful effect on the Lifter's sense of direction.
> z
> z
> z
> z
> z
> z
> s
> yes