Meine Suche nach dem Among us Code & Zeichen:

Beim Doomscrolling auf Instagram sah ich vor einiger Zeit einen seltsamen Programmier-Post, in dem behauptet wurde, dass man mit einem Python-Einzeiler den bekannten Umriss der Figur aus “Among us” anzeigen könne.

“Among us” erlangte während der Lockdowns der COVID-19-Pandemie breite Bekanntheit, wahrscheinlich aufgrund der relativ einfachen Mechanik und des Multiplayer-Modus, der in der sozialen Isolation eine willkommene Abwechslung bot.

So sieht der Among us Character aus (Danke an Yazza für die CC lizenzierte Illustation):

Der Code

Jedenfalls habe ich den Beitrag mit dem Python-Code nie wieder gefunden, und eine kurze Internetsuche hat auch nicht geholfen.

Das ist der Grund, warum ich es hier aufschreibe: Möge die nächste arme Seele, die auf der Suche nach dem Einzeiler ist, das Glück haben, über diesen Beitrag zu stolpern!

chr(sum(range(ord(min(str(not()))))))

Das war es. Mehr braucht es nicht, um dieses Zeichen zu erzeugen, das dem Among us Character verblüffend ähnlich sieht: ‘ඞ’

Über das Zeichen ‘ඞ’

‘ඞ’ scheint laut [Wiktionary] (https://en.wiktionary.org/wiki/%E0%B6%9E) aus der singhalesischen Schrift zu stammen.

Sinhala ist die Sprache, die von der ethnischen Mehrheitsgruppe auf Sri Lanka gesprochen wird.

Als Informatikstudent war ich auch an der Kodierung interessiert, die 0x0D9E ist. Das bringt mich zurück zum Python-Code: Was macht der eigentlich, um dieses Zeichen zu erzeugen?

What does the Python code do?

Wir beginnen mit der Analyse der innersten Funktion und gehen Schritt für Schritt nach außen:

  1. not() gibt den booleschen Wert True zurück
  2. str() wandelt den booleschen Wert True in eine Zeichenkette 'True' um
  3. min() ermittelt das kleinste Element der Zeichenkette, nämlich das 'T'.
  4. ord() wandelt das Zeichen in seine entsprechende Unicode-Zahl um: 84.
  5. range() liefert die Zahlenfolge von Null bis Vierundachtzig: ${0,1,2,…,83,84}$
  6. sum() addiert alle Zahlen der Folge: 3486 oder 0xD9E (hexadezimal), wie wir zuvor herausgefunden haben.
  7. chr() verwandelt die Zahl zurück in ein Unicode-Zeichen: 'ඞ'

Das ist also gar nicht so verrückt, wie es aussieht! Wahrscheinlich hat jemand das ‘ඞ’-Zeichen gefunden und einfach versucht, einen verrückten Weg zu finden, um es in Python zu erreichen…

Quellen