Compare commits

...

3 Commits

Author SHA1 Message Date
BodgeMaster bbb56fc4e5 'va' Alone: minor revision 2023-11-22 13:06:56 +01:00
BodgeMaster 196849620b 'ra' (Emily first contact): revision
Tore out the section about the phone call entirely, revised the rest
2023-11-22 08:15:36 +01:00
BodgeMaster b9d026ce0c misc: add text scrambler
A small program that randomly flips bits in a string,
limited to printable characters

This is intended for generating messed up text for corrupted communication
2023-11-21 18:37:14 +01:00
3 changed files with 107 additions and 81 deletions

78
misc/bit_scrambler.py Normal file
View File

@ -0,0 +1,78 @@
#!/usr/bin/env python3
import sys, random
def bitflip(byte, bit):
bits = [
0b00000001,
0b00000010,
0b00000100,
0b00001000,
0b00010000,
0b00100000,
0b01000000,
0b10000000
]
negbits = [
0b11111110,
0b11111101,
0b11111011,
0b11110111,
0b11101111,
0b11011111,
0b10111111,
0b01111111
]
if byte | bits[bit] == byte:
return byte & bits[bit]
return byte | bits[bit]
def n_bits_off(byte, n):
if n>8:
raise Error
bits = []
while len(bits) < n:
bit = random.randint(0,7)
if bit in bits:
continue
bits.append(bit)
for bit in bits:
byte = bitflip(byte, bit)
return byte
if __name__ == "__main__":
if not len(sys.argv) == 2:
print("This program takes exactly one argument: the string to scramble.")
output = []
for character in list(sys.argv[1]):
a = random.randint(0, 36)
if ord(character)<33 or ord(character) > 126:
output.append(character)
elif a%18==0:
byte = n_bits_off(ord(character), 3)
if byte > 32 and byte < 127:
output.append(chr(byte))
else:
output.append(character)
elif a%12==0:
byte = n_bits_off(ord(character), 2)
if byte > 32 and byte < 127:
output.append(chr(byte))
else:
output.append(character)
elif a%9==0:
byte = n_bits_off(ord(character), 1)
if byte > 32 and byte < 127:
output.append(chr(byte))
else:
output.append(character)
else:
output.append(character)
print("".join(output))

View File

@ -15,13 +15,12 @@
</ul>
</li>
<li class="comment">
Emily and Lena sit down at a desk with a view of the biotope and have
Emily and Lena sit down at a table with a view of the biotope and have
a meal
<ul>
<li class="comment">
the meal gets interrupted by the equipment in the control center
coming to life (fans coming on, some control panels lighting up,
boot-up/status/ready beeps)
coming to life
<ul>
<li class="comment">
a status light on the wall, that Emily had never seen on,
@ -74,9 +73,6 @@
</li>
</ul>
<p>
<span class="comment">note: need to check mice eating behavior when fed,
might want to add a section where she actually handles and feeds them
</span><br />
Emily closes the cage and puts the &lt;whatever they feed the mice&gt;
back into the cupboard. She <span class="comment">does something related
to taking care of the mice</span>, steps out into the hallway, and
@ -87,24 +83,23 @@
<p>
3 &ndash; 5 &ndash; 2 &ndash; 1 &ndash; Enter. The keypad beeps with
every button press. A computer voice announces
<span class="quote speech">Access authorized</span>. The door to the main
control center module slides up and she steps through. The module
contains one large room with rows of integrated computer equipment desks
arranged <span class="comment">need a fitting description of what a
mission control rom looks like</span>. The wall to the left that most of
the seats are facing is completely taken up by a panorama window into
the biosphere, an even larger module with a ceiling of glass and support
beams completely taken up by plant life, trees, small animals, and a big
pond. The wall to the right holds a large status panel with some
seven-segment displays for information and lots of big status indicator
symbols.
<span class="quote speech">Access authorized</span> and the door slides
up. She steps through into the main control center. The module contains
one large room with rows of integrated computer equipment desks arranged
<span class="comment">need a fitting description of what a mission
control rom looks like</span>. The wall to the left that most of the
seats are facing is completely taken up by a panorama window into the
biotope, an even larger module with a ceiling of glass and support beams,
completely filled with plant life, trees, small animals, and a big pond.
The wall to the right holds a large status panel with some seven-segment
displays for information and lots of big status indicator symbols.
</p>
<p>
Emily walks down the shallow stairs towards the panorama window. In
front of the window are tables and chairs that were moved there recently
as the room had become more of a general hangout spot for the remaining
people when they were still around. Lena sits at one of them,
<span class="comment">preparing something</span> while waiting for her.
people when there still more than just Lena and her. Lena sits at one of
them, cutting a bread into slices while waiting for her.
</p>
<p class="comment">
missing dialog about food and starting to eat
@ -115,64 +110,18 @@
turn on. Some of the status indicators on the back wall start blinking.
A large, green triangle with the letters LINK next to it flickers and
then lights up. Emily looks at it in confusion.<br />
<span class="quote speech">What does that light mean?</span> She gestures
towards it.<br />
<span class="quote speech">What&apos;s going on?</span><br />
<span class="quote speech">That&apos;s them.</span><br />
<span class="quote speech">Earth people?</span><br />
<span class="quote speech">Yes</span>, Lena replies while quickly
finishing her meal, <span class="quote speech">they said they&apos;d try
to get a phone connection going.</span><br />
As if on cue, the phone on the large center console begins to ring. Lena
gets up and walks over, Emily follows her. <span class="comment">note:
might need to imply that Lena is very sick</span> Lena sits down in
front of it, picks up the receiver, and presses a few buttons.
The speaker on the console starts crackling and hissing. Through the
noise, they hear a faint voice. Lena leans over to a microphone and
talks into it:<br />
<span class="quote speech">We can&apos;t hear you, one moment.</span>
<br />
She flips some switches on the console. The speaker cracles some more,
then a loud pop, then silence. The smell of magic smoke is in the air.
</p>
<p>
Lena turns to a terminal and starts typing.<br />
<span class="comment">note to self: missing establishing connection<br />
note to self: add some data corruption</span>
</p>
<pre class="terminal">
MOON-01 &gt; This hasn&apos;t been maintained in forever. I think the
phone just went.
EARTH-53&gt; You may wanna check the modules under P2 for burnt components.
MOON-01 &gt; I know.
MOON-01 &gt; We have another problem somewhere along the line. There&apos;s
apparently more noise than signal.
</pre>
<p>
Lena opens a cover with a small label &quot;P2&quot;, pulls two cards
out of their sockets, and inspects them. One has a big black burn mark
right in the center. She turns to Emily:<br />
<span class="quote speech">Can you fetch me this module from another
phone?</span>
</p>
<p>
<span class="quote speech">And?</span> Michelle asks Jack as he looks up
from the terminal.<br />
<span class="quote speech">Weak signal - and they need to fix their
phone.</span><br />
James asks <span class="quote speech">What about that plan B of
increasing the transmit power?</span><br />
<span class="quote speech">Meh.</span> Jack doesn&apos;t seem too
enthusiastic about it.<br />
<span class="comment">TODO: Dialog. They decide not to increase the
power before double-checking that everything is aligned properly. Sure
enough, they&apos;re off by a bit.<br />
Request for comment: Does this make the story more interesting or is it
confusing? I originally didn&apos;t want to do perspective changes
within chapters, and I still might not, but this was too good of an idea
not to write it down.</span>
finishing her meal, <span class="quote speech">They have some abilities
to remotely control things &ndash; including turning on the main radio
transmitter.</span><br />
She gets up and asks Emily to follow her to one of the consoles with a
terminal. She sits down in front of it, logs on and enters a few
commands.
</p>
<p class="comment">
note to self: After fixing the alignment, pick up on the moon and
continue.
corrupted chat, the connection has deteriorated in comparison to before
</p>
<p class="copyright">Copyright &#169; 2023 Jan Danielzick (aka. BodgeMaster) &ndash; All rights reserved.</p><script>let spans = ["<span class=\"paper green\">", "<span>"]; let pre_texts = document.getElementsByTagName("pre"); for (let i = 0; i < pre_texts.length; i++) {if (pre_texts[i].className != "paper") continue; let lines = pre_texts[i].innerHTML.split("\n"); let result = ""; for (let j = 0; j < lines.length; j++) {result = result + spans[j%2] + lines[j] + " ".repeat(80-lines[j].length) + "</span>\n";} pre_texts[i].innerHTML = result;}</script></body></html>

View File

@ -53,7 +53,7 @@
Lena dies
</li>
<li class="comment">
Emily returns inside and goes to the control center
Emily returns inside and goes to a room with a view of the sky
<ul>
<li class="comment">
following any procedures such as operating the air lock as
@ -84,7 +84,7 @@
Emily takes their helmets and brings them into the airlock. She returns
for a life support unit, pulls it out of the rack in the wall, and sets
it down on the floor. Following a mental checklist, she makes sure that
the air tank is connected properly and the status display reads what it
the air bottle is connected properly and the gauges read what they
should. Everything okay... or is it? She double-checks with the check
list on the wall. Yes, this unit is ready. She triple-checks everything
&ndash; first time it actually matters. Reasonably satisfied with her
@ -96,8 +96,8 @@
The pumps are getting quieter and quieter. Lena kneels on the floor
holding a bunch of flowers from the biotope module, her life support
unit next to her on a short tether. Emily puts it on her back and and
helps her up. The outer door of the airlock swings aside and they start
walking, Lena leaning on Emily.
helps her up. The outer door of the airlock silently swings aside and
they start walking, Lena leaning on Emily.
</p>
<p>
They reach the graveyard and walk over to the recent graves. The entire
@ -105,7 +105,7 @@
buried. Some have signs with names, some have painted pieces of regalith
as gravestones, some have <span class="comment">&lt;the crumpled remains
of&gt;? What happens to flowers when exposed to vacuum for a prolonged
amount of time?</span> flowers next to them, some are entirely
amount of time?</span> flowers next to them, a few are entirely
undecorated.
</p>
<p>
@ -140,14 +140,13 @@
Emily starting to reconsider her choice not to leave the moon
</lI>
<li class="comment">
brief mention that the conversation changes to a more pleasant topic
and continues for a while
The conversation topic changes to Earth in general
</li>
</ul>
<p>
The conversation is interrupted by the beeping of Lena&apos;s low oxygen
alarm going off. Emily gets up and walks back to the habitat. She enters
through the airlock and looks for a full oxygen bottle. She lifts one
through the airlock and looks for a full air bottle. She lifts one
out of its rack and carries it back to Lena. She opens the life support
unit and closes the valves on it and the empty bottle, then she replaces
it and opens the valves again. Just as she is done with that, her own