3
0
Fork 0
mirror of https://github.com/fsr/nopanic synced 2024-11-15 17:03:13 +01:00

add puzzles and dumb quote for spacing

This commit is contained in:
Peter Nerlich 2023-09-20 13:45:54 +02:00
parent 506ce83b0d
commit e34a45f599
7 changed files with 339 additions and 2 deletions

2
.gitignore vendored
View file

@ -2,6 +2,8 @@
Spieleabend.psd
manual.pdf
manual_compressed.pdf
raetsel/picross.pdf
raetsel/network.pdf
zeitplan.pdf
faltblatt.pdf
PoSo/

View file

@ -1,4 +1,9 @@
@default_files = ('timetable/zeitplan.tex', 'manual.tex');
@default_files = (
'raetsel/picross.tex',
'raetsel/network.tex',
'timetable/zeitplan.tex',
'manual.tex',
);
# descriptions stolen from https://collaborating.tuhh.de/alex/latex-git-cookbook/-/blob/4174942b6674588d016189c708327dccbaac5b8d/.latexmkrc

View file

@ -69,10 +69,11 @@
\include{texte/veranstaltungen}
\include{texte/studienalltag}
\include{texte/moduluebersicht}
\include{texte/scrumwitch}
\include{texte/raetsel}
\include{texte/werbung}
\include{texte/links}
% \addchap{Notizen}\mbox{}
\include{texte/raetsel}
\include{texte/campusplan}
\include{cover/back}

56
raetsel/network.tex Normal file
View file

@ -0,0 +1,56 @@
\documentclass[class=minimal,border=0pt]{standalone}
\usepackage{tikz}
\usepackage{fontspec}
\setmainfont[
Scale=0.90,
BoldFeatures={Scale=1.0}
]{Open Sans}
\begin{document}
\begin{tikzpicture}[
every node/.style={circle, fill=black, minimum size=3mm},
start/.style={draw=black, very thick, fill=none, minimum size=6mm, node font=\bfseries},
end/.style={draw=black, double, very thick, fill=none, minimum size=7mm, node font=\bfseries}
]
\node [start] (S) at (0,-2) {?};
\node [draw] (a) at (0,-1) {} edge [dashed] (S);
\node [draw] (b) at (0,-0) {} edge [-] (a);
\node [draw] (c) at (1,-1) {} edge [-] (a);
\node [draw] (d) at (2,0) {} edge [-] (b)
edge [-] (c);
\node [draw] (e) at (0,-3) {} edge [dashed] (S);
\node [draw] (f) at (0,-5.5) {} edge [-] (e);
\node [draw] (g) at (4.5,-5.5) {} edge [-] (f);
\node [draw] (h) at (4.5,-2) {} edge [-] (g);
\node [draw] (i) at (4.5,-1) {} edge [-] (h);
\node [draw] (j) at (1,-3) {} edge [dashed] (S)
edge [-] (e);
\node [draw] (k) at (1,-5) {} edge [-] (j);
\node [draw] (l) at (2,-4) {} edge [-] (k);
\node [draw] (m) at (3,-5) {} edge [-] (k);
\node [draw] (n) at (3,-4) {} edge [-] (l)
edge [-] (m);
\node [draw] (o) at (3,-3) {} edge [-] (n);
\node [draw] (p) at (4,-3) {} edge [-] (n);
\node [draw] (q) at (3,-2) {} edge [-] (o)
edge [-] (p);
\node [draw] (v) at (4,-5) {} edge [-] (p);
\node [draw] (r) at (1,-2) {} edge [-] (e)
edge [-] (n);
\node [draw] (t) at (2,-1) {} edge [-] (r);
\node [draw] (u) at (2,-2) {} edge [-] (t)
edge [-] (q);
\node [end] (end) at (3,-1) {} edge [-] (d)
edge [-] (i)
edge [-] (q);
\node [draw] (w) at (4,0) {} edge [-] (end);
\end{tikzpicture}
\end{document}

73
raetsel/picross.tex Normal file
View file

@ -0,0 +1,73 @@
\documentclass[class=minimal,border=0pt]{standalone}
\usepackage{tikz}
\usepackage{fontspec}
\setmainfont[
Scale=0.90,
BoldFeatures={Scale=1.0}
]{Open Sans}
\def\cols{
{},
{},
{},
{2},
{5},
{1,2,1},
{2,1,2},
{16},
{2,1,2},
{1,3,1},
{5},
{3},
{},
{},
{},
{}
}
% (sublists have to be REVERSED so the for loop makes sense!!!)
\def\rows{
{1},
{3},
{5},
{1},
{3,1},
{3,1,1},
{3,1,3},
{1,1,3},
{1,1,1},
{1,1,1},
{2,1},
{2},
{1},
{3},
{3},
{1}
}
\begin{document}
\begin{tikzpicture}[
every node/.style={rectangle, draw=black, semithick, minimum size=5mm, node font=\bfseries},
num/.style={draw=none, minimum size=4mm}
]
\node
foreach \list [count=\x] in \cols
foreach \val [count=\y] in \list
[num] at (\x/2, 0.35*\y+0.15) {\val};
\node
foreach \list [count=\y] in \rows
foreach \val [count=\x] in \list
[num] at (-0.3*\x-0.2, 0.5-\y/2) {\val};
% grid
\node
foreach \a [count=\y] in \rows
foreach \b [count=\x] in \cols
at (\x/2-0.5, 0.5-\y/2) {};
\end{tikzpicture}
\end{document}

View file

@ -0,0 +1,137 @@
%\cleardoubleevenemptypage
\ifcase\numexpr \modulo{\value{page}}{2} \relax
% don't add any extra pages
\or
\hbox{}
\vspace{5mm}
\begin{center}
\tiny
--- This page is unintentionally left blank ---
\vfill
:P
\end{center}
\newpage
\fi
\addchap{Rätsel}
Kennst du Picross oder Nonogramm (oder eine ganze Sammlung von weiteren Begriffen)?
In diesem Logikrätsel ist ein Pixelbild versteckt.
An jeder Zeile und Spalte steht nur, wie viele aufeinanderfolgende ausgefüllte Pixel es in der Reihe gibt.
Dazwischen können jeweils beliebig viele unausgefüllte liegen.
\vfill
% no centering, the image is already off center because the numbers are only on one side of the grid
\includegraphics[width=.95\textwidth]{raetsel/picross}
\vspace{3mm}
\pagebreak
Es sind die 1960er Jahre, du arbeitest mit einem Kommilitonen an einem ersten Prototypen für miteinander vernetzte Computer.
Der Algorithmus ist noch recht simpel.
Zu simpel: denn jeder Rechner schickt von einer Verbindung in der einen Sekunde empfangene Nachrichten in der nächsten Sekunde einfach blind an alle anderen Verbindungen weiter.
Wenn eine Nachricht aber gleichzeitig aus mehr als einer Verbindung eingeht,
crasht der Rechner und ist erst in der nächsten Sekunde wieder einsatzfähig --
ohne das soeben Empfangene weiterzusenden.
\\
Du versuchst natürlich, deinem Kommilitonen das als Nachricht auf den einzigen Rechner mit aktivierten Logs zu schicken.
Aber den zu erreichen gestaltet sich erstaunlich schwierig,
denn du hast nur ein Kabel, und es reicht nur zu drei anderen Rechnern...
Mit welcher Verbindung kommt die Nachricht sicher ans Ziel -- ohne dieses zu crashen?
\vfill%
\begin{minipage}{.2\textwidth}
\vfill
\[t\]
\begin{tikzpicture}[
every node/.style={circle, draw, fill=black, inner sep=1pt, minimum size=2.5mm},
]
\node [double] (a) at (0.5, 0.25) {} edge [<-] (0,0.25);
\node [] (b) at (1.25,0 ) {} edge [-] (a)
edge [-] (1.75,0);
\node [] (c) at (1.25,0.5 ) {} edge [-] (a)
edge [-] (1.75,0.5);
\end{tikzpicture}
\vspace{1mm}
\[t+1\]
\begin{tikzpicture}[
every node/.style={circle, draw, fill=black, inner sep=1pt, minimum size=2.5mm},
]
\node [] (a) at (0.5, 0.25) {} edge [-] (0,0.25);
\node [double] (b) at (1.25,0 ) {} edge [<-] (a)
edge [-] (1.75,0);
\node [double] (c) at (1.25,0.5 ) {} edge [<-] (a)
edge [-] (1.75,0.5);
\end{tikzpicture}
\vspace{6mm}
\[t\]
\begin{tikzpicture}[
every node/.style={circle, draw, fill=black, inner sep=1pt, minimum size=2.5mm},
]
\node [double] (b) at (0.5, 0 ) {} edge [<-] (0,0);
\node [double] (c) at (0.5, 0.5 ) {} edge [<-] (0,0.5);
\node [] (d) at (1.25,0.25) {} edge [-] (b)
edge [-] (c);
\node [] (e) at (1.75,0.25) {} edge [-] (d)
edge [-] (2.25,0.25);
\end{tikzpicture}
\vspace{1mm}
\[t+1\]
\begin{tikzpicture}[
every node/.style={circle, draw, fill=black, inner sep=1pt, minimum size=2.5mm},
cross/.style={path picture={
\draw[black]
(path picture bounding box.south east) -- (path picture bounding box.north west) (path picture bounding box.south west) -- (path picture bounding box.north east);
}},
crashed/.style={draw, cross, thick, fill=none},
]
\node [] (b) at (0.5, 0 ) {} edge [-] (0,0);
\node [] (c) at (0.5, 0.5 ) {} edge [-] (0,0.5);
\node [crashed] (d) at (1.25,0.25) {} edge [<-] (b)
edge [<-] (c);
\node [] (e) at (1.75,0.25) {} edge [-] (d)
edge [-] (2.25,0.25);
\end{tikzpicture}
\vspace{1mm}
\[t+2\]
\begin{tikzpicture}[
every node/.style={circle, draw, fill=black, inner sep=1pt, minimum size=2.5mm},
]
\node [] (b) at (0.5, 0 ) {} edge [-] (0,0);
\node [] (c) at (0.5, 0.5 ) {} edge [-] (0,0.5);
\node [] (d) at (1.25,0.25) {} edge [-] (b)
edge [-] (c);
\node [] (e) at (1.75,0.25) {} edge [-] (d)
edge [-] (2.25,0.25);
\end{tikzpicture}
\vfill
\end{minipage}%
%
\hfill%
\begin{minipage}{.75\textwidth}
\includegraphics[width=\textwidth]{raetsel/network}
\end{minipage}

63
texte/scrumwitch.tex Normal file
View file

@ -0,0 +1,63 @@
\newcommand\scrumwitch{
\thispagestyle{empty}
\hbox{}
\vfill
\begin{center}
\begin{minipage}{.7\textwidth}
\centering
In the beginning God created the heaven and the earth.
And the earth was without form, and void;
and it was a static void, and it was private.
And God said: \enquote{It is not good that the void should be private;
I will make it protected,
so it can be enjoyed by everyone, and no harm shall befall it.}
[...]
And God said: \enquote{Let the earth sprout a great many paradigms and programming patterns,
and binary trees bearing random number generators in which is their seed,
each according to its kind.}
And it was so.
And God saw that it was good.
And there was evening and there was morning; the third sprint.
\end{minipage}
\end{center}
\hfill\textit{--- the SCRUM--Witch, citing her scripture}
\vfill
}
\newcommand\unintentional{
\hbox{}
\vspace{5mm}
\begin{center}
\tiny
--- This page is unintentionally left blank ---
\vfill
:P
\end{center}
}
% Fill with empty pages here so we don't have empty pages immediately before the cover
% Assuming there are n*4 pages of content left before the back cover,
% our target is {page num mod 4 = 0} if it is anything else,
% fill the empty space with nonsense and a cheeky quote
\ifcase\numexpr \modulo{\value{page}}{4} \relax
% don't add any extra pages
\or
\unintentional
\newpage
\scrumwitch
\newpage
\thispagestyle{empty}
\unintentional
\or
\thispagestyle{empty}
\unintentional
\newpage
\scrumwitch
\or
\scrumwitch
\fi