Bondkommentar: A View to a Kill
Eine gefundene illegitime Kopie eines Chips führt Bond auf die Spur des pferdezüchtenden Zorin, der einen Anschlag plant.
Roger Moores letzter Bond schlägt sich gerade auch im Gegensatz zum starken Never say Never again überraschend gut. Moore mag nicht so cool sein wie Connery, der direkte Vergleich bestätigt es endgültig, aber sein Bond hat die Lizenz für das richtige Intro, die richtige Musik und benutzt sein Budget für ebenfalls tolle Stunts an besseren Drehorten, besonders dem Eiffelturm und der Golden-Gate-Brücke. Die Story ist verwirrend, blödsinnig und bemüht die üblichen Klischees des irrational bösen Bösewichts, außerdem kommt der von Christopher Walken gespielte Zorin in seiner Eindimensionalität nicht an Brandauers Largo heran. Aber der Einsatz ist hoch und die Spannung da, Moore ja doch sympathisch charmant und die Nebendarsteller ansprechend, der Mix funktioniert hier einfach wieder. Und das ist, was beim Film besonders auffällt: Kein einzelner Aspekt, sondern die Gesamtwirkung als Beispiel dafür, wie gut die Bondformel trotz Anpassungen auch bei einer unsinnigen Handlung und ohne komplett überzeugenden Antagonisten funktionieren kann.
Vielleicht also trotz aller Schwächen der beste Bond mit Roger Moore, wenn auch nicht viel besser als der eleganter konstruierte Man with the Golden Gun und der weniger mit Schwächen behaftete For your eyes only. Hat aber im Vergleich zum letzteren den Vorteil, kein halbes Remake eines früheren Bonds zu sein und wirkt daher frischer. Außerdem mochte ich sowohl Grace Jones monströse May Day als auch auch Tanya Roberts Bondgirl Stacey Sutton, jeweils mit Einschränkungen – May Days Endszene ist unnötig und bedient einen traurigen Hollywoodmechanismus zum Umgang mit schwarzen Figuren in Actionfilmen, Stacey wird vom Skript etwas zu oft hilflos kreischend neben die Handlung gesetzt. Und doch verbessern beide den insgesamt guten Film.
Favicon als SVG, und wieviel Code man wirklich braucht
Man kann mittlerweile Vektorgrafiken für das Favicon einer Webseite benutzen. Dabei lässt sich direkt das Bild für den Dunkelmodus umfärben. Das ist eine gute Gelegenheit um die Anzahl der Favicons und der Zusatzanweisungen zu reduzieren – brauchte man vor einer Weile für verschiedene Betriebssysteme und Browser nämlich noch einiges an Code, reicht mittlerweile weniger.
Hier im Blog ist das jetzt umgesetzt. Ich bin dabei in etwa diesem Artikel von evilmartians gefolgt. Anlassgeber war übrigens Benedikts Antwort auf meinen Kommentar zu seinem neuen Favicon.
Update 30.10.2024: Das SVG wird gerade doch nicht hier im Blog gesetzt. Ich empfand es als unpraktisch. Das alte Icon sah etwas besser aus, wenn nicht der Browser das SVG herunterskalierte, sondern das vorbereitete .ico dafür gewählt wird. Und ein neues Icon wurde als kleines 16x16-Icon arg unscharf, egal ob als SVG oder als vorbereitete Grafik. Sah aber als großes Icon für mich klar besser aus. Ich wollte also beide einsetzen, das alte Motiv für 32x32-Icons und kleiner (also das, was im Tab als Icon landet) und das neue Motiv als Icon für Firefox' Browserstartseite etc (also als Apple-Touch-Icon). Wenn diese Unterscheidung aber sowieso gemacht wird, dann bringt ein vermeintlich universelles SVG derzeit wenig Mehrwert. Also läuft das Favicon hier erstmal doch via PNGs und einem .ico. Die folgende Erklärung für die SVG-Verwendung ist aber technisch weiterhin korrekt.
Die Ausgangssituation
Hier im Blog war der Code für die Favicons relativ minimal. Es gab nur diese zwei Anweisungen:
<link rel="apple-touch-icon" href="/apple-touch-icon.png"> <link rel="shortcut icon" type="image/x-icon" href="/favicon.png" />
Zusätzlich lag unter favicon.ico das favicon.png nochmal. Das vermeidete 404-Fehler in Browsern, die (damals?) das .ico immer auch abriefen. Dass es eine PNG-Grafik war, war trotz der Dateiendung irrelevant.
Dabei war das apple-touch-icon.png 192x192 px groß und vll etwas unscharf, das favicon.png 16x16. Beide sind hier zu sehen:
Warum unscharf, und wo kommt das Icon überhaupt her?
Ich habe es vor vielen Jahren Pixel für Pixel selbst gebaut, aber als 16x16-Icon, um in meinem IceWM-Desktop ein hübscheres Icon für Thunderbird zu haben. Als ich dann für diesen Blog ein Icon brauchte nutzte ich es einfach wieder. Immerhin war die Ähnlichkeit zum Thunderbirdlogo klein genug. Klar, eigentlich wäre ein Icon besser das irgendwie einen Bezug zum Blognamen oder Inhalt hat, aber ich wollte nach einer Weile den Wiedererkennungswert nicht verlieren und hatte für eine Kombination nie eine Idee.
Die größere Variante könnte leicht unscharf sein, weil ich später mit einem fantastischen Skalierer für Pixelgrafiken aus der kleinen Vorlage ein größeres Icon gemacht habe. Das sollte ein Blogartikel werden, den schrieb ich aber scheinbar nie. Das Icon war meiner Erinnerung nach aber 256x256. Für das Apple-Touch-Icon habe ich das dann wieder etwas herunterskaliert. 192x192 war damals wohl eine akzeptabel erscheinende Zwischenlösung, die gerade auch für Android passte. Im evilmartians-Artikel wird jetzt 180x180 für dieses Icon empfohlen.
Das neue SVG
Um diese Icons zu optimieren musste aber erstmal ein SVG des Favicons her. Erst versuchte ich mit Inkscapes "Trace Bitmap"-Funktion, aus meinem größeren alten Favicon ein SVG zu bauen. Das Ergebnis sah trotz mehreren Versuchen so aus:
Hat was, aber war nicht das gesuchte Ergebnis. Diese leeren Flächen müsste ich dafür manuell reparieren, was mir zu aufwändig war. Also recherchierte ich nochmal und fand eine Empfehlung für https://png-to-svg.com/. Tatsächlich war dessen Ergebnis deutlich besser. Die einzelnen Flächen mussten immer noch übereinandergeschoben werden, weil zumindest in Inkscape weiße Linien zu sehen waren, aber es war viel weniger Leerraum zu füllen. Und ein paar Ecken bearbeitete ich dann noch manuell, wie den Schnabelübergang.
Ich folgte noch der Empfehlung, das SVG mit SVGO zu optimieren:
npx svgo --multipass favicon.svg
Dann hatte ich dieses Ergebnis:
SVG mit Darkmode
Von einem Umschalten im Dunkelmodus ist da aber noch nichts implementiert. Aber SVGs sind Textdateien, mit einem Editor lässt sich das einbauen. Erstmal nahm ich wieder Inkscape zur Hand und versuchte mich an einem Entwurf:
Da werden also fast alle Farben auf eine gesetzt. Das lässt sich dann ins originale favicon.svg einbauen. Es bekommt ein neues Mediaquery für die Füllfarbe einer Klasse:
<style>@media (prefers-color-scheme:dark){.a{fill:#9da0ae !important}}</style>
Und alle SVG-Elemente, die umgefärbt werden sollen, bekommen diese Klasse, z.B.:
<path id="path1" d="… class="a" style="…" />
Das resultierte in diesem finalen SVG:
Erstellen von .png und .ico
Ob mit oder ohne Darkmodeumschalter, das SVG alleine reicht nicht. Erstmal sollen alte Browser eine Ausweichlösung bekommen. Für sie erstellte ich ein .ico:
inkscape ./favicon.svg --export-width=32 --export-filename="./tmp.png" convert ./tmp.png ./favicon.ico
Die Anleitung empfiehlt an der Stelle zu prüfen, ob das Icon herunterskaliert auf 16x16 auch noch gut aussieht, ansonsten sollte ein passgenaues erstellt und dem .ico (als Layer) hinzugefügt werden. Ich fand das bei meinem Icon nicht nötig.
Außerdem braucht es ein größeres PNG, das z.B. im Appleuniversum benutzt wird. Dafür nutzte ich Gimp, und zwar so: Zuerst das SVG öffnen und als 140x140px große Grafik importieren. Dann unter Image -> Canvas Size das Canvas auf 180x180 vergrößern, dabei über den Button rechts den Inhalt zentrieren:
Das Ergebnis lässt sich dann als apple-touch-icon.png exportieren. Beide neuen Dateien so aus:
Zum Vergleich, hier nochmal die entsprechenden Dateien von vorher:
Der finale Code
Damit sind alle Dateien zusammen. favicon.svg, favicon.ico und apple-touch-icon.png lud ich dann auf den Server und passte den Code im head der Seite an:
<link rel="icon" href="/favicon.ico?v=1" sizes="32x32"> <link rel="icon" href="/favicon.svg?v=1" type="image/svg+xml"> <link rel="apple-touch-icon" href="/apple-touch-icon.png?v=1">
Ich benutzte dafür bereits ein HTML-Nugget-Plugin von Serendipity, so brauchen die Templatedateien keine Anpassung. Das ?v=1
bei den Links zu den Dateien hilft Browsern dabei, nicht die im Cache liegenden alten Dateien zu verwenden.
Und das sollte es tatsächlich gewesen sein. Bei mir in Chrome und Firefox wird laut Netzwerkinspektor wirklich das favicon.svg geladen. Das sollte dann auch an verschiedenen Orten benutzt werden, die gerne größere Icons anzeigen, beispielsweise die Startseite von Firefox. Die fiel vorher auf das Apple-Touch-Icon zurück. Das zudem sollte nun etwas schärfer sein, aber das ist speziell für diesen Blog und hat mit dem SVG-Ansatz erstmal nichts zu tun. Wobei ich da auf Applenutzer angewiesen wäre: Taugt das Icon so wie es ist, oder braucht es beispielsweise noch einen farbigen Hintergrund?
Warum habe ich anders als in der Vorlage beschrieben keine Manifestdatei erstellt? Weil diese Seite keine PWA ist, offline nicht funktioniert. Die Datei würde ich nachreichen, wenn in Android-Browsern oder -Launchern die Manifestdatei trotzdem nützlich wäre, um bessere Icons anzuzeigen. Das fand ich aber nirgends sauber beschrieben. Müsste ich also erstmal selbst testen.
Auf den ersten Blick also eine gelungene Operation. Denn das neue Favicon wird angezeigt und müsste nun in mehr Situationen unabhängig der Größe scharf bleiben.
Allerdings: Zwar war es interessant zu sehen, dass SVG-Favicons mittlerweile tatsächlich funktionieren. Aber mir fiel zumindest in meinen Browsern kein relevanter Qualitätsgewinn auf. Die vorherige Kombination aus großem Apple-Touch-Icon und kleinem regulären Favicon in Pixelgrafik war – so mein Stand jetzt – bereits keine schlechte Lösung. Vor allem, wenn das Icon so gestaltet wird, dass es sowohl auf hellem als auch auf dunklem Hintergrund funktioniert. Immerhin, das deckt sich mit der Vorlage, dernach man auf das Windows Tile Icon, das Safari Pinned Icon und die Einbindung des Favicons via rel="shortcut"
verzichten kann. Egal, ob das eigene Favicon nun ein SVG ist oder nicht.
Abseits der Technik werde ich nun aber nochmal über das Iconmotiv nachdenken.
Linksammlung 43/2024
Diese Woche fand ich besonders erwähnenswert:
Linux entfernt russische Entwickler ist ein trauriger, aber bestimmt notwendiger Schritt und die Entfernung selbst kein bisschen kritikwürdig. Passende Untermalung dafür liefert der russische Troll in den Kommentaren bei LinuxNews, aber auch bei anderen Kommentatoren lässt sich teils die russische Propaganda herauslesen. Russischer Einfluss ist einfach gefährlich, mehr noch beim Kernel, und wenn die Entwickler bei russischen Firmen angestellt waren müssen sie sowieso sanktioniert werden. Wobei ich Ferdinand zustimme, gegenüber den Entwicklern hätte das menschlicher ablaufen können.
Noch eine unangenehme Nachricht aus der FOSS-Welt, Bitwardens Desktop version 2024.10.0 is no longer free software. Dabei hatte Bitwarden extrem damit geworben, freie Software zu sein, was durch das damalige Umfeld der oft proprietären Passwortmanager viel Zuspruch fand. Jetzt folgte der Verrat.
Discontinuing syncthing-android ist auch keine gute Nachricht. Hier steht allerdings ein Fork bereit, der per F-Droid ausgeliefert wird.
Um eine erste positive Meldung zu haben, Herzlichen Glückwunsch: KUnifiedPush ist erwachsen geworden. Tatsächlich ist die Pushinfrastruktur ein großer Treiber für Googleabhängigkeiten bei Androidanwendungen, wirklich toll wenn die Alternativen nutzbar werden.
Auch schön, es reicht sogar zur Vorfreude! Diese Regeln werden Handys schon bald grüner machen. Allerdings kristalliert sich ausgerechnet bei den so wichtigen Akkus ein Schlupfloch heraus, sodass Telefone weiter Wegwerfmüll bleiben würden. Und von einem Recht auf Auswechseln des Betriebssystems, also einem offenen Bootloader, steht da auch nichts.
Für Blogbetreiber wichtig zu wissen, Using Cloudflare on your website could be blocking RSS users. Der Schutz gegen Bots muss deaktiviert werden.
Secret 3D Scans in the French Supreme Court beschreibt ausufernd einen Rechtsstreit gegen Pariser Museumsbetreiber, die scheinbar rechtswidrig ihre 3D-Scans der Öffentlichkeit vorenthalten. Wer sich mit Frankreich auskennt wird davon nicht überrascht sein, die Pariser Elite fühlt sich grundsätzlich nicht an Gesetze gebunden. Hier ist der Rechtsbruch aber wohl so massiv, dass der Kampf dagegen zu gelingen scheint.
Making Castro’s Feeds Update Faster the Lazy Way ist ein interessanter Zusammenschrieb einer Optimierung von Feedinfrastruktur, einer Rubyanwendung.
Bondkommentar: Never say Never again
Durch einen feindlichen Agenten werden zwei Atombomben gestohlen, Bond sucht in den Bahamas. Der Film basiert auf Thunderball, ist ein Remake mit Originalbesetzung Sean Connery und wurde durch einen Rechtsstreit ermöglicht.
Nach Verfehlungen wie Octopussy und Moonraker ist Never say Never again mit solider Story und Machart sehr angenehm. Es ist keine direkte Kopie von Thunderball, der mir ja nicht besonders gefiel, sondern macht viele Sachen besser. Vermieden werden Klischeeszenen wie das Töten eines Abweichlers in der Schurkenorganisation, entfällt der magische Doppelgänger zugunsten einer glaubwürdigeren Augen-OP, Bondgirl Domino ist als Freundin des Schurken für die Story viel besser platziert als zuvor als vereinnahmtes Mündel, die langatmigen Unterwasserkampfszenen entfallen.
Die Änderungen helfen dem Film zwar, aber die Besetzung der Hauptrollen und ihre Leistung begeisterten mich mehr noch: Sean Connery, Kim Basinger, Klaus Maria Brandauer, Barbara Carrera. Connery, weil der gealterte Schauspieler seltsamerweise einen lässigeren und anziehenderen Bond abgibt als in seinen jüngeren Jahren, selbst mit jetzt noch auffälligeren schottischem Akzent. Basinger spielt mit Domino das perfekte Bondgirl, umwerfend schön, hilfebedürftig, aber auch fähig und aktiv handelnd. Brandauer porträtiert einen fließend vom charmanten ins verrückte übergehenden Bondbösewicht und damit das erste mal einen wirklich interessanten Gegner, nach den Ansätzen davon bei Blofeld in On Her Majesty's Secret Service. Und schließlich führt Carrera die später kopierte Bondgegenspielerin ein, femme fatale auf Anschlag; nicht die erste Frau die sich gegen Bond stellt, aber die erste, die ihren Kampf mit diesem wahnsinnigen Einsatz betreibt und entsprechend fantastisch fanatisch gespielt werden musste.
Eine späte Szene mit einem dem Original entlehnten Raketen-Jetpacks zeigte, wie schnell auch dieser Film hätte kippen können. Aber da die Szene ein kurzer Ausrutscher bleibt ist der Film trotz ihr insgesamt nur eines Bonds angemessen übertrieben, aber anders als einige Bonds der vorherigen Jahre nicht albern. Wohl weil es kein von Eon produzierter Bond ist gibt es kein richtiges Intro und bei der Musik kein Bondmotiv. Völlig egal, die leider nicht fortgesetzte Rückkehr von Sean Connery ist auch ohne diese Elemente zumindest bei Erscheinen 1983 meiner Meinung nach der gelungenste Bondfilme bis dahin, er ist genau wie ein klassischer Bond sein soll: Spannend, leicht witzig, immer unterhaltsam und regelmäßig visuell ansprechend.
Deathloop verbessert Konzepte von Dishonored und ist richtig toll
Deathloop ist ein Shooter von den Arkane Studios, die auch Dishonored gemacht haben, was ich sehr mochte. Aber Deathloop macht nochmal ein paar Sachen besser und hat eine ganz andere, aber auch nette Rahmenhandlung.
And again, and again, and again…
Denn es geht um eine Zeitschleife. Man spielt Colt Vahn, der morgens am Strand aufwacht und sich an nichts erinnert. Doch erscheinende Nachrichten und Besuche von anderen Varianten seiner selbst erklären dann schnell, dass es eine Gruppe gibt, die sich Visionäre nennen und die diese Zeitschleifen beherrschen. Um sie zu brechen und sich so zu befreien müsse er die übrigens mit magischen Kräften bewehrten Visionäre alle töten. Was nicht so einfach ist, sind sie am nächsten Morgen doch wieder lebendig.
So oder so muss er zu vier Tageszeiten jeweils einen der vier Schauplätze besuchen, beim Verlassen schreitet die Zeit voran. Doch reicht die Zeit anfangs keinesfalls zur Erledigung der Aufgabe, bzw schließen sich die Missionen gegenseitig aus, und ist auch die Ausrüstung ziemlich schwach. Zum Glück bleiben Beobachtungen als Erinnerungen im Spielmenü und – nach einer kurzen Weile – auch (gegen eine Gebühr einer sammelbaren Ressource) Ausrüstungsgegenstände erhalten; darunter Waffen, magische Fähigkeiten und passive Upgrades. Diese Erinnerungen taugen dann dazu, langsam die Geschehnisse in der Zeitschleife zu manipulieren und die Visionäre irgendwann vielleicht doch alle erwischen zu können. Was auch die Wiederholungen minimiert, wozu auch das Kürzen von den wenigen immergleichen Sequenzen (wie der Aufwachsszene) beiträgt.
Es ähnelt Dishonored, ist aber nicht das gleiche
Das hat Ähnlichkeiten mit Dishonored, wo ja auch immer wieder Zielpersonen ausgeschaltet werden mussten und die eigene Figur übernatürliche Kräfte hatte. Und in beiden Spielen besteht die Möglichkeit des Schleichens, ist es meist sogar sinnvoll nicht zuviel Lärm zu verursachen.
Aber da ist auch ein großer Unterschied, wichtiger noch als die nur in Deathloop vorhandenen modernen Waffen: Dishonored hat über ein Karmasystem den Spieler für das Töten von Gegnern bestraft. Das machte einen großen Teil der Fähigkeiten und Waffen des Spiels nutzlos, konnte man sie doch praktisch nie einsetzen. Deathloop kennt keine solchen Einschränkungen. Töten ist okay, und auch lautes Vorgehen ist kein Problem, es führt nur zum Herbeirennen (und Teleportieren) von mehr Gegnern, was bei entsprechender Übermacht des Spielers (mit guter Ausrüstung und Ortskenntnis) die Missionen nicht blockiert.
Und so ein ausgelöster Alarm beeinflusst auch nicht die ganze Karte, sondern nur die nähere Umgebung.
Das entschärft ein weiteres Problem von Dishonored und Schleichspielen allgemein: Scheitert das lautlose Vorgehen einmal, ist der Übergang zum Schießen nun kein Scheitern mehr. In vielen anderen Spielen würde ich dann neu laden. Nicht so hier, wobei Deathloop auch gar kein freies Speichern unterstützt, sondern nur zwischen den Tagesabschnitten (und damit den Kartenwechseln) automatisch speichert. Das sorgt für einen gute Spielfluss, der beide Spielarten kombiniert, das leise und das laute Vorgehen.
Missionen in der Zeitschleife
Nun ist es so, dass anfangs sehr unklar bleibt wie Colts Zeitschleife und damit das Spiel gelöst werden kann. Doch gibt es von Anfang an im Menü auswählbare Missionen, die dann markieren an welchem der vier Orte zum jeweiligen Tagesabschnitt etwas erreicht werden kann. Diese Missionen setzen auch Markierungen in die Spielwelt, wodurch Zielorte schneller gefunden werden können. So kommt dann doch schnell etwas Fortschritt zustande, wobei die Missionen nicht immer alles kleinteilig führen – sondern manchmal auch nur das Zielhaus, nicht aber den dort liegenden Zielgegenstand markieren, was ich aber gut fand. Auch im großen gilt das, wenn am Ende eben nicht Zielmarker eine perfekte Tageskombination vorgeben, sondern das Spiel zumindest teilweise auf das Erinnerungsvermögen des Spielers vertraut.
Mir gefiel auch, dass es keine Minimap gibt. Die einzelnen Orte der Insel Blackreef, auf der die Handlung spielt, sind gar nicht groß. Aber anfangs wirken sie groß, denn sie sind wunderbar verwinkelt und ausgebaut, mit Höhenunterschieden und Außen- sowie Innenarealen. So braucht es immer etwas, bis man sich dort zurechtfindet. Und dann sind die Orte auch noch manchmal sehr anders, wenn man sie zu unterschiedlichen Tageszeiten besucht. Manchmal durch vorgegebenes, wie Schneefall. Anderes ist interaktiver, dazu ein Beispiel: In dem Stadtgebiet Udaam gibt es einen Laden mit einem Generator, der morgens mit vielen Stromleitungen das naheliegende Büchereigebäude versorgt. Mittags ist der Laden dann abgebrannt, der Generator wurde überlastet, wie man Gesprächen der herumlaufenden Gegner entnehmen kann. Aber das lässt sich verhindern: Zerstört Colt morgens die Stromkästen, mit denen der Generator verbunden ist, kann da nichts überlasten und der Laden brennt eben nicht ab, was bei einer Mission hilfreich ist.
Auf jeden Fall ist es angenehm, diese Orte und Handlungsmöglichkeiten zu entdecken. Und es ist genau richtig, nicht von einer Minimap da durchgeführt zu werden, denn sie würde das Kennenlernen der Orte verhindern, weil man als Spieler zu oft nur auf sie achtet. Übrigens etwas, was bei Cyberpunk 2077 in der Standardeinstellung schlechter gelöst wird; die dort vorhandene Minimap blendete ich aus genau der beobachteten fehlenden eigenen Orientierungsfähigkeit später aus.
Manchmal aber geht diese Freiheit schief. So gibt es auf allen Karten Händlerautomaten, mit denen Gegenstände transportiert werden können, sagt ihre Werbung. Nur wie man das machen kann erklärt das Spiel nicht, und habe ich tatsächlich nicht herausbekommen. Ich hätte es im Internet suchen können, klar, aber ich hatte mich bewusst gegen eine solche Beeinflussung entschieden. Das war am Ende nicht spielentscheidend, aber überraschend unzugänglich.
Von Waffen und Upgrades
Zu dem Entdecken passt, wie die Ausrüstung funktioniert. Denn sie lässt sich durch sammelbares stark an die eigenen Bedürfnisse anpassen.
Da gibt es zuerst einmal eine ganze Reihe von Waffen. Das meiste davon ist klassisch, Pistolen, Maschinengewehr, Schrotflinte usw, eine Laserkanone kommt dazu. Aber die unterscheiden sich untereinander dann doch angenehm, haben ihre Vor- und Nachteile und passen zu unterschiedlichen Spielstilen. Verstärkt wird das durch Bonuseffekte, die manche der farbig markierten besseren Varianten haben. Wobei die nicht perfekt ausbalanciert sind, so ist eine früh findbare lautlose Maschinenpistole meiner Meinung nach die praktischste Waffe im Spiel, obwohl sie keine der komplizierter zu findenden goldenen Arsenalwaffen ist (getoppt wird sie im offenen Kampf nur von späteren Varianten eines Jagdgewehrs mit explodierenden Kugeln, auch keine der goldenen Spezialwaffen). Zusätzlich können die Waffen jeweils drei Verbesserungen bekommen, von denen sehr viele im Spielverlauf gefunden werden, sodass sie dann beispielsweise sehr viel schneller nachladen oder mehr Munition im Magazin fassen. Sehr wirkungsvoll.
Dazu kommen die praktisch magischen Fähigkeiten, die Colt von den anderen Visionären erbeuten kann. Darunter der für Dishonored typische Teleport, aber auch Unsichtbarkeit oder ein Machtstoß. Nur zwei davon können ausgewählt werden, das ist nochmal eine Anpassung an den eigenen Spielstil. Und es sind diese Fähigkeiten, die Deathloop einen sehr eigenen Charakter geben, im Vergleich zu regulären Shootern.
Die passiven Upgrades machen das ganze dann noch individualisierbarer. Vier davon können ausgerüstet werden. So können dann beispielsweise die automatischen Geschütztürme schneller gehackt werden, oder heilen eigene Nahkamfpangriffe plötzlich Colt, oder hält er einfach mehr Schaden aus. Die Suche nach den besseren Upgrades ist auch nochmal wirklich motivierend.
Die Invasionen als Mehrspielermodus
Es gibt für das spätere Spielen noch einen Mehrspielermodus, der das mit der Motivation auch nicht schlecht löst. Die Orte im Spiel werden im regulären Spiel manchmal von Colts Gegenspielerin besucht, mit der er sonst nur unterhaltsame Funksprüche austauscht, woraufhin er sie ausschalten muss. Im deaktivierbaren Multiplayermodus kann diese Julianna dann auch von einem Spieler gesteuert werde, was sonst eine KI übernimmt. Colt hat gegen Julianna allerdings den Vorteil, dass er drei Leben hat, sie nur eines. Dafür ist sie mit den regulären Gegnern verbündet, was den Vorteil etwas entschärft.
Es gibt abseits des Kampfes keine direkten Interaktionen mit dem Gegenspieler und mir gefällt diese Einbindung ins Spiel, die von Dark Souls vorgemacht wurde.
In meinem ersten Entwurf für diesen Abschnitt hatte ich den Mehrspielermodus nun heftigst kritisiert – meine ersten Spiele waren wenig spaßig, Colt zu überlegen, kamen Spiele nicht zustande oder laggte es ziemlich. Doch auch Niederlagen geben Belohnungen und ich spielte noch ein paar Spiele mehr. Mit der besseren Ausrüstung und wohl etwas mehr Würfelglück (oder auch besserem Matchmaking?) waren diese Folgespiele viel besser. Einerseits, weil ich nach der Erfahrung im Hauptspiel doch durchaus gewinnen konnte. Und andererseits, weil selbst Niederlagen verkraftbar waren, weil sie meist durch geschicktes Spiel der Colts zustandekamen. Zwischendurch hatte ich richtig Freude an dem Kräftemessen.
Ich wunderte mich allerdings darüber, dass Julianna keine Möglichkeit mitbringt Colts vage Position zu sehen, außer der macht Lärm. Die KI-Variante wusste nämlich auch so ziemlich genau, wo ich als Colt war. Spielt man sie selbst gibt es keine solche Ortung. Das macht die Invasionen gegen gut schleichende Gegner manchmal zäh. Aber gut, der Fokus liegt eben auf der Spielerfahrung der Colt-Spieler und belohnt ihr gutes Vorgehen, was okay ist. Aber richtig schlecht ist, dass offensichtlich keine wirksame Kontrolle der Verbindung durchgeführt wird. Dadurch werden manche Matches wegen der schlechten Verbindung mancher Colt-Spieler furchtbar von Lag geplagt.
Schlimmer noch, aber passend zu den Lags der wohl eingesetzten P2P-Architektur, es gibt auch Cheater – für mich tauchten sie an einem Tag gleich reihenweise auf. Vielleicht wurde da ein neues Cheattool veröffentlicht? Die Missgeburten machen sich komplett unverwundbar und haben unendlich Munition. Leider hat das Spiel nicht die nötigen Mechanismen, Cheater im Spiel zu melden oder auch nur für zukünftige Matches zu blocken. Und die Spielerzahl ist mittlerweile so niedrig, dass man jedem einzelnen Cheater mehrfach begegnet. Damit wird der Multiplayer während sie aktiv sind unspielbar.
Technik und Bugs
Grafisch sieht das alles toll aus. Und nicht nur wegen einer guten Technik, sondern weil der Grafikstil gelungen ist. Mit gelegentlich viel Farbe, erinnert das in Teilen an Designsprache der 60er oder 70er. Dieser Designfokus geht sogar über die Grafik hinaus, so sind die Visionäre entsprechend ausgestaltete Charaktere, mit jeweils klaren Eigenheiten. Das gilt auch für Colt, der ein überraschend schlichtes Gemüt präsentiert und am liebsten alles mit roher Waffengewalt lösen würde (ich fühlte mich glatt an den Duke erinnert).
Trotzdem ist es technisch nicht perfekt. Denn zumindest unter Proton dauert es erstaunlich lange, bis das Spiel wirklich startet. Und sind auch die Ladezeiten ziemlich lang. Einmal, gegen Ende der Kampagne, wollte das Spiel meinen Spielstand auch mal gar nicht laden – das behob aber ein Neustart des PCs. Zum Glück, denn da es nur einen Spielstand gibt wäre sein Kaputtgehen katastrophal gewesen.
Es gab gelegentliche andere Bugs, wie gegen Mauern laufende Gegner. Und manchmal flogen die Gegner von Kugeln getroffen sehr seltsam weg, als ob sie ein LKW umgehauen hätte. Aber nichts schlimmeres.
Deathloop hat mir sehr gefallen. Es ist einfach toll zu sehen, wie hier konsequent Macken im Spieldesign von Dishonored ausgebügelt wurden, um ein auf dieser Ebene klar besseres Spiel zu machen – selbst wenn zusätzlich das Genre in Richtung Shooter verschoben wurde, was nicht jedem gefallen muss. Doch trotzdem bleibt dieser Reiz erhalten, dass man das Gefühl hat, in der Spielwelt mit der eigenen Intelligenz Taktiken wählen zu können und die Fähigkeiten – die eigenen wie der Spielfigur – geschickt einsetzen zu können. Nichtmal meine sonst gesetzte Abneigung von Zeitreisegeschichten kam hier zum Tragen, zu gut und ohne störende Logiklücken war der Handlungsrahmen eingesetzt.
Deathloops Multiplayer aber ist auf der einen Seite gut ins Spiel eingebunden und motiviert durch die selbst beim Scheitern vergebenen Belohnungen (darunter Skins für Colt und Julianna, also auch für den Einzelspielermodus). Andererseits gelingen zu viele Matches nicht, hat vor allem die technische Umsetzung Probleme. Initial schien es mir eine nette Dreingabe, die ich noch einige male gespielt habe, was die Spielzeit nach dem Ende der Kampagne deutlich erhöht hat. Aber teils durch die Lagprobleme, vor allem aber durch die Cheaterproblematik, kann ich den Modus trotz seiner Spaßigkeit nicht wirklich empfehlen.
Meine Kritikpunkte am wichtigeren Einzelspielermodus beschränken sich auf diese zwei: Zum einen sind manche Aspekte des Spiels etwas arg versteckt, wird manchmal zu viel Entdeckungswillen vorausgesetzt, wie bei den oben erwähnten Transportautomaten. Zum anderen hätte ich mir mehr Abwechslung bei den vier Orten gewünscht. Zwei sich sehr ähnelnde Stadtorte, zwei offenere Landschaften mit Bunkern; da wäre mehr gegangen – auch wenn die Ausgestaltung im Detail auch jetzt schon unterschiedlich genug ist. Und, wenn man unbedingt will: Die Waffen hätten etwas mehr Abwechslung vom Genrestandard vertragen können (und etwas mehr Wumms).
Trotzdem insgesamt ein wirklich tolles Spiel. Flott, hübsch, spaßig, intelligent.
Linksammlung 42/2024
Diese Woche fand ich besonders erwähnenswert:
WordPress retaliation impacts community, um im Blick zu haben wie sich die Geschichte weiterentwickelt und gewertet wird.
Perforce (Owner of Puppet since April 2022) has taken over the greatest Puppet community on Slack. Passt zu Wordpress – freie Lizenz, aber unfreies Gebaren darum herum.
Es geht noch disqualifizierender: Winamp deletes entire GitHub source code repo after a rocky few weeks. Schon ein bisschen unfassbar, dass eine Software herstellende 100-Mann-Firma so wenig internes Wissen besitzt, dass ein Release als freie Software ihnen unmöglich war. Die bräuchten nur einen einzigen Entwickler mit FOSS-Erfahrung und müssten auf ihn hören – wahrscheinlich scheitert es an beidem. Nachtrag: Laut diesem Kommentar war die Einschätzung ein Volltreffer, dort arbeiten statt 100 Leuten nur noch 30, insbesondere die Entwickler wurden entlassen. Passt.
Es scheint einen beachtenswerten Ansatz für ein benutzbares Linuxtelefon zu geben, das FLX1 - FuriPhone FLX1 Linux Phone. Dazu gibt es sogar ein erstes Review.
The Retreat To Muskworld ordnet die absurde Teslavorführung ihrer Robotertaxis ein, bei der wohl wirklich alles Fake war, von der Kulisse bis zu den tanzenden Robotern.
Keine Fälschung ist dieses Corsi–Rosenthal Box review. HouseFresh war eine der Beispielseiten für die Verdrängungswirkung von gefälschten SEO-Reviews, gegen die diese sauber arbeitende Seite aufgrund von Googles Fehlleistung viele Probleme hatte. Auf jeden Fall sind diese Luftfilterboxen wohl eine gute Idee.
Bondkommentar: Octopussy
009 bringt tödlich verletzt ein Fabergé-Ei in die britische Botschaft in Berlin. Bond soll herausfinden wieso.
Schauplätze sind Indien und Deutschland. Der Film scheint ein Versuch gewesen zu sein, wieder einen Bond mit einem glaubwürdigen Szenario zu machen. Aber diesmal lustiger und mit mehr absurden Zusatzelementen. Das geht schief, die Witze wirken dümmlich, die wunderlichen Elemente wie der Titel, der Tarzanschrei oder der Orden schöner Frauen zerstören die initial vermutbare Bodenhaftung der Handlung.
Ansonsten nichts besonders erwähnenswertes, auch wenn wieder ein paar Stunts toll sind. Trotz denen ist Octopussy als Film langweilig und ignorierbar. Gerade angesichts der Verortung in Deutschland ist das durchaus schade.
Ist WezTerm der perfekte Terminalemulator?
Perfektion mag unerreichbar sein, aber der Terminalemulator WezTerm hakt viele Anforderungen ab:
- Ein eingebautes Tabinterface, um parallele Terminalsessions im gleichen Fenster zu haben.
- Ein Scrollbalken, ein absolutes Ausnahmefeature…
- …der sich dann auch noch mit der Maus bedienen lässt, inklusive dem Mausrad.
- Gute Konfigurierbarkeit, um beispielsweise die Steuerung der Tabs an die eigenen Vorlieben anzupassen.
- Eine große Auswahl an Farbschemas.
- Das Anzeigen von Bildern im Terminal, z.B. mittels
lsix
.
Nachdem ich WezTerm nun schon eine ganze Weile benutze sind mir auch keine Nachteile aufgefallen.
Konfiguration
Für ein modernes Programm überraschend, wird WezTerm statt über ein Einstellungsmenü über eine Konfigurationsdatei konfiguriert. Diese ~/.wezterm.lua sieht bei mir so aus:
-- Pull in the wezterm API local wezterm = require 'wezterm' local act = wezterm.action -- This will hold the configuration. local config = wezterm.config_builder() -- This is where you actually apply your config choices -- For example, changing the color scheme: config.color_scheme = 'Solarized (dark) (terminal.sexy)' config.scrollback_lines = 20000 config.enable_scroll_bar = true -- The scrollbar is too hard to see in the Solarized theme, so change it: config.colors = { scrollbar_thumb = '#93a1a1', } config.audible_bell = 'Disabled' config.keys = { { key = 'LeftArrow', mods = 'SHIFT|CTRL', action = act.MoveTabRelative(-1) }, { key = 'RightArrow', mods = 'SHIFT|CTRL', action = act.MoveTabRelative(1) }, { key = 'LeftArrow', mods = 'SHIFT', action = act.ActivateTabRelative(-1) }, { key = 'RightArrow', mods = 'SHIFT', action = act.ActivateTabRelative(1) }, { key = 'DownArrow', mods = 'SHIFT', action = act.SpawnTab 'CurrentPaneDomain',}, } -- and finally, return the configuration to wezterm return config
Wichtig ist dabei das Farbschema, das ich auf Solarized (dark) (terminal.sexy)
gesetzt habe. Den Scrollbalken zu aktivieren und per Farbänderung sichtbarer zu machen macht das Terminal nutzerfreundlicher (da es die Selbstbeschreibungsfähigkeit erhöht), den Piepser bei Fehleingaben deaktiviere ich wegen seine Nervfaktors wann immer möglich, und schließlich sind da die Tastenbelegungen für die Tabverwaltung.
Statt der dunklen Variante von Solarized hätte es viele Alternativen gegeben. Die Dokumentation listet 1001 Varianten, wobei davon einige nur kleine Spezialvarianten des jeweiligen Grunddesigns sind. Trotzdem, die Auswahl ist beeindruckend.
Ich bin an sich kein Fan von mittels Programmiersprachen umgesetzten Konfigurationsdateien, aber für mich überwiegt hier, dass alles so einstellbar war wie ich es wollte. Zudem sind die Voreinstellungen bereits ziemlich gut.
Ich würde bei regulären Programmen jetzt noch ihre Funktionsweise vorstellen, aber bei einem Terminalemulator ist da wenig zu sagen. Zumindest bei meiner Nutzung. Tatsächlich hat WezTerm ein paar von mir bisher ignorierte Spezialfunktionen, wie einen eingebauten Multiplexer. Und die Tabs, aber die sind oben auf dem Screenshot ja sichtbar.
Macken gibt es wohl auch, gesammelt vom Projekt selbst auf Github. So sei die Performance nicht so gut wie die von xterm oder kitty (was ich im Alltag nicht bemerkte) und der Text werde beim Anpassen der Fenstergröße seltsam platziert (das zumindest kann ich bestätigen, auch wenn es mir vorab nicht auffiel). Von meiner Seite aus ist die Schriftdarstellung etwas, was nicht jedem gefallen könnte, wobei ich sie auf meinem System hübsch genug und soweit passend finde. Generell könnte man auch am Konzept eines GPU-beschleunigten Terminals zweifeln, zeigt xterm doch, dass dieser Ansatz für Performance und Latenz nicht notwendig ist.
Aber das sind keine gravierenden Macken. Letzten Endes ist WezTerm stabil, umfassend konfigurierbar und hat mit der Kombination von guter Performance, sichtbarem Scrollbalken und eingebauten Tabs meines Wissens ein Alleinstellungsmerkmal. Für mich war es damit bisher tatsächlich die perfekte Wahl.
Linksammlung 41/2024
Diese Woche fand ich besonders erwähnenswert:
Den Kommentar zum VMware-Debakel: Hoch gepokert, leider verloren. Vor allem wegen dieser zitierenswerten Aussage:
Man möchte vor Wut schreien, wenn Institutionen wie die Bundesagentur für Arbeit stolz verkünden, sie hätten den Umstieg auf Microsoft Teams erfolgreich geschafft. Oder wenn Bundeskanzler Olaf Scholz persönlich zugunsten der Delos-Cloud interveniert, deren Backend Microsofts Azure ist. Dass der Regierungschef der drittgrößten Volkswirtschaft der Welt nachgerade darum bettelt, über Umwege noch mehr Geld gen Redmond überweisen zu dürfen, ist eine ungeheuerliche Farce.
Spüre da auch ich Wut, provoziert der nächste Link eher Erschrecken, oder vll mehr noch Resignation, denn dass solche IoT-Systeme unsicher sind predigen Informatiker seit Jahren: We hacked a robot vacuum — and could watch live through its camera.
The Static Site Paradox hat einen wahren Kern, dass nämlich aus Gründen des Endnutzerkomforts oft eigentlich unnötig komplizierte Webseiten genutzt werden. Viel kann auch über statische Seiten abgedeckt werden – ich würde behaupten, sustaphones ist da ein Beispiel. Das hätte auch eine Webanwendung mit dynamischen Server dahinter werden können.
Ich bin gespannt, was das bewegen wird: Google must crack open Android for third-party stores, rules Epic judge. Alternative Appstores sollen vollen Zugriff auf alle Anwendungen im Play Store kriegen. Grundsätzlich eine Riesensache.
Zeldman kommentiert den Wordpress-Ausraster: I stayed.
Ob er da die nächste Eskalationsstufe schon gesehen hatte? WordPress.org Login Gets Mandatory Affiliation Checkbox Following WP Engine Dispute. Endgültig daneben.
Mozilla will ein Werbeanbieter werden, ist die Essenz ihres Improving online advertising through product and infrastructure. Bedenklich, da dabei immer noch das Tracken von Nutzern im Internet als Ansatz verfolgt wird, auch wenn es durch Mozilla datenschutzfreundlicher umgesetzt werden soll. Ein Riesenkonfliktpotential, einmal mit Überzeugungen von Firefox-Nutzern bezüglich Werbung, aber auch durch Interessenkonflikte bei der Weiterentwicklung des Browsers.
Bondkommentar: For Your Eyes Only
Ein britisches Spionageboot wird versenkt. Bond soll ein gesunkenes Atomuboot-Kommunikationsgerät finden, bevor es die Sowjets tun. Dafür muss er mit der Tochter eines getöteten Wissenschaftlers zusammenarbeiten.
Nach dem maßlosen Moonraker ein grundsolider Bond. Viele sehr ordentliche Actionszenen, durch die Story kompetent zusammengehalten. Nur die Schlockelemente des Intro muss man für diese Wertung einfach ignorieren, sie sind wohl ein Statement dafür, was der Film eben nicht mehr sein will. Und die Musik ist überraschend schwach, erst das spät auftauchende Bondmotiv rettet sie etwas.
Auffällig sind die Parallelen zu On Her Majesty's Secret Service: Die Wintersportstunts, wobei sie hier übertrieben sind, die Figur des ehrbaren kriminellen Verbündeten und schließlich Bonds Verhalten. Moore lässt endlich seinen Charme spielen, die Frauenfeindlichkeit seiner vorherigen Bonds ist verschwunden – was besonders bei einer Autojagd mit einer Frau am Steuer auffällt, wo er zwar nach einer Weile das Steuer des gelben Citroens übernimmt, aber an einer geeigneten Stelle und ohne blöde aggressive Kommentare. Es ist wohl kein Zufall, dass der Film mit dem Grab von Bonds Frau und damit einem klaren Verweis auf Lazenbys Bond beginnt.
Designänderungen im Blog: Artikelüberschriften, Hintergrund, Textumbrechung
Für die spätere Erinnerung, diese Designdetails haben sich in letzter Zeit hier im Blog geändert:
Vorher:
Nachher:
Die Überschriften von Einzelartikeln sind in den Blogheader gewandert. Vorher waren sie gedoppelt, sie standen einmal dort, einmal direkt über dem Artikeltext, wie auf den Artikelübersichtsseiten. Verwirrend war besonders, dass der Titel im Header zwar ein Link war, der aber auf die Bloghauptseite zeigte. Von der Positionierung her war ein Link zur Bloghauptseite an der Stelle angemessen, aber zum Artikeltext passte es nicht. Das ist nun aufgelöst: Der Titel des Artikels führt nun auch im Header zum Artikel, der Untertitel mit dem Blognamen führt zur Bloghauptseite. Entsprechend wanderte die Datumsanzeige in die Infozeile unter dem Artikel – das finde ich nicht ideal, im Design aber ansonsten schwierig.
Beim Blick auf den Titel könnte auch auffallen, dass der lange Titel im Beispielbild anders umgebrochen wird. Das ist der Effekt von text-wrap: balance
. Diese Anweisung soll zu einer gleichmäßigeren Länge der einzelnen Zeile führen. Funktioniert nur bei nicht zu langem Text, daher im Grunde nur für solche Titelblöcke geeignet. Da aber empfinde ich es als netten Effekt.
Ähnlicher Gedanke war das Setzen von text-wrap: pretty
für Artikeltexte. Das sei ein langsamerer Algorithmus, der aber Texte etwas hübscher unterteilen könne. In Firefox wird das noch nicht unterstützt, in Chromium aber schon, und es sorgte da tatsächlich für kleinere Unterschiede. Da hier im Blog jetzt schon seit einer Weile Wörter automatisch umgebrochen werden und der Text an die Breite des Containers angepasst wird (text-align: justify
mit hyphens: auto
) sah ich die Wahl als angemessen.
Dass der Codeblock kein Syntaxhighlighting mehr zeigt hatte ich vor kurzem beschrieben, das war weniger eine bewusste Designentscheidung als meine Unzufriedenheit mit der Qualität der Highlighter.
Gewollt war der andere Bloghintergrund. Der war vorher einfarbig, ein hellgraues Blau, . Jetzt ist da eine gepunktete Struktur, umgesetzt mit einem SVG als background-image
, . Das erforderte relativ viel Ausprobieren bis ich eine Variante fand, die da zwar ein Muster einsetzt, aber ohne völlig die Farbe zu ändern oder zu sehr aufzufallen. Wenn meine Erinnerung stimmt habe ich dabei zwischendurch Hero Patterns benutzt.
Ansonsten sollten sich nur Kleinigkeiten geändert haben, wie z.B. die Zeilenhöhe von Überschriften.
Linksammlung 40/2024
Diese Woche fand ich besonders die Situation um Wordpress erwähnenswert:
WP Engine hat eine Klage eingereicht, die Klageschrift ist lesbar unter WP Engine Inc. v Automattic Inc. and Matthew Charles Mullenweg. Klar, das ist nur ihre Darstellung der Situation.
Im zugehörigen HN-Thread hat Matt Mullenweg aber reichlich kommentiert. Er bekommt dafür teils Anerkennung für seine Offenheit, aber mehr noch viel Gegenwind – seine Aussagen könnten ihm schaden, betreffen beispielsweise den Charakter der vll nicht so gemeinnützigen Wordpress-Foundation.
Ähnlich offen und riskant wirkte ein Interview, das er unter On with Theo / T3.gg im eigenen Blog verlinkte. Es zeichnet in meinen Augen ein recht klares Bild davon, wie Mullenweg Wordpress Markenrechte auch jetzt schon einsetzt. Alles freundschaftlich unter Kollegen, mit einem Anruf würden normalerweise Forderungen problemlos durchgesetzt. Wenn das stimmt erklärt das einiges – denn wo WP Engine in ihrer Klage wohl Recht hat, ist dass auf Seiten Wordpress eine Fehleinschätzung zur Macht und Reichweite von geschützten Markenzeichen vorliegt. Aber damit kamen sie bis jetzt durch?
Das geforderte Trademark License Agreement ist kurz und lesbar. Sind das Forderungen, die eine Firma annehmen kann? 8% vom Umsatz oder äquivalente Entwicklerarbeit, volle Auditrechte, 7-jährige Laufzeit, ein Verbot GPL-Software zu forken? Ich bezweifel es.
Dazu kommen weitere negative Signale. “Nice Guy” Matt Mullenweg, CEO of WordPress.com Cries Foul and Threatens Me With Legal Action beispielsweise ist schwierig zu seinem Gunsten zu interpretieren.
Losgelöst von der Person, wie machen das andere Projekte? Solving the Maker-Taker problem beschreibt Drupals Ansatz eines formalisierten Karmasystem, sie nennen es Contribution Credits. Das ist weit weg von Wordpress' rasch wirkender Forderung.
Mein Fazit: Die Grundidee, dass eine große Firma auch zur genutzten FOSS-Software beitragen soll, ist völlig verständlich. Aber es ist rechtlich nicht einforderbar, der Umweg über Markenrechte – die dann auch noch viel wirkmächtiger interpretiert werden, als sie sind – wirkt unweigerlich missbräuchlich. Da ist es dann fast egal, wie viel oder wie wenig WP Engine wirklich beigetragen hat oder wie geplant oder überstürzt andere Maßnahmen gegen WP Engine waren. Der Kern der Forderung ist daneben.
Doch damit genug zu Wordpress.
Auch unangenehm war Smart TVs take snapshots of what you watch multiple times per second. Das war eigentlich bekannt, ist aber trotzdem eine Frechheit.
Intel findet die Grundursache für defekte Core i-13000 und Core i-14000. Man könnte meinen "mal wieder", sie hatten Probleme ja vorher schon per Salamitaktik zugegeben, das wirkte ähnlich. Aber dieses Zusammenspiel mehrerer kleiner Komponenten klingt glaubwürdig und umfassend. Kaputte Prozessoren bleiben kaputt, aber die Updates könnten noch nicht zu instabilen Modellen helfen.
How to upscale images by hand (in Linux) fand ich hilfreich, gerade die Abgrenzung zu was upscayl leisten kann, was ich ja auch schon mal angeschaut hatte.
The Arch Linux team is now working directly with Valve — SteamOS and Arch should both benefit greatly. Bisher hat Valve nur Gründe gegeben, eine Zusammenarbeit mit ihnen positiv zu finden.
Deutschland betreibt mal wieder Zensur, diesmal bei Steam: Warum einige der besten Indie-Spiele bald ausgeblendet werden. Eine deutsche Sonderwurst beim Jugendschutz, der eine eigene Kennzeichnung einfordert und Spiele ansonsten zensiert – auch für Erwachsene.
Das unterschreibe ich: On the importance of F-Droid. F-Droid ist ein großer positiver Einfluss auf Android, und toll für Nutzer.
Denn der Play Store kommt wirklich mit vielen Restriktionen, und das hat Konsequenzen, wie Why my apps will soon be gone from the Google Play Store.
Das schadet letztendlich auch der Firma, und nicht nur Google ist davon betroffen, was Mozilla's massive lapse in judgement causes clash with uBlock Origin developer gerade erst wieder zeigte. Auf der einen Seite ist gorhills Reaktion ziemlich harsch. Auf der anderen Seite dürfen solche Fehler im Umgang mit wichtigen Entwicklern Mozilla wirklich nicht passieren.
Bondkommentar: Moonraker
Bond sucht ein gekapertes Space Shuttle, was ihn bis in den Weltraum bringen wird.
Absurder wird es nicht mehr werden. Moonraker ist in der Hinsicht ein Höhepunkt: Roger Moore spielt Bond bis auf ein paar Kommentare völlig ernst, aber alles darum herum ist es kein bisschen. Die Handlung wirkt in ihrer Albernheit nur noch wie ein Vorwand, um Actionszenen und schöne Frauen zu präsentieren. Entsprechend wird im diesmal sehr speziellen Weltraumszenario dann die Bondformel starr abgespult: M und Miss Moneypenny teleportieren sich nahe Bond in der Welt umher, Q bringt Gadgets, erstes Bondgirl stirbt, Bösewicht steckt Bond in leicht entkommbare Todesfallen, am Ende schläft Bond nochmal mit Bondgirl 2.
Dabei schwankt die Qualität der Stunts und Actionszenen im Film arg: Manche sind toll, wie der falschirmlose Sprung aus dem Flugzeug im Intro. Andere werden durch die wahrnehmbare künstliche Beschleunigung der Szenen zerstört, wie bei der Zentrifuge. Mehr noch aber stört, dass die Kämpfe oft kaum motiviert sind, die Bösen immer wieder anlasslos aus dem Nichts auftauchen.
Immerhin, Moonraker fand ich als Kind toll, eine Science-Fiction-Story mit Weltraumstation und Laserwaffen sprach mich schon damals an und die genutzten Modelle sind sehr gelungen. Das mit Bond zu gemischt zu sehen ist einzigartig. Aber heute überwiegen leider die negativen Seiten: Die dumme Story, die schlecht verbundenen Szenen, Jaws Unverwundbarkeit, dass das Szenario zu absurd ist um ein Bondfilm zu sein. Und zum ersten Mal wird Produktplacement ein relevantes Problem, Moonraker präsentiert seine Sponsoren zu aufdringlich.
Koss KSC75, Kopfhörer zwischen perfektem Komfort, guter Klangqualität und wortwörtlichem Schrott
Die Form ist die erste Besonderheit des Koss KSC75. Das sind keine regulären Kopfhörer mit einem Bügel, sondern sie werden hinter die Ohren geheftet (Koss nennt die Form "Ear Clip"). Das ist nicht einzigartig, aber selten und in Zeiten von in den Gehörgang gepressten Ohrhörern noch seltener geworden. Von Audio-Technica gibt es da noch die ATH-EQ300M (oder gab, sie sind nicht auf der Webseite zu finden), aber sie werden in Deutschland nur von einem einzelnen Amazonhändler verkauft (Restbestände?) und seien deutlich schlechter.
Denn das ist die zweite Besonderheit: Die Klangqualität des KSC75 wird in Reviews hochgelobt. Sogar der Bass sei gar nicht so schlecht, was bei solchen offenen Kopfhörern überraschend ist, die auch noch sehr locker anliegen. Klar gäbe es besseres, aber nicht in der Preisklasse.
Genau, das ist das nächste: Die KSC75 sind billig. In Deutschland mit ~30€ weniger als in den USA, wo sie nochmal 10 USD günstiger sind. Aber trotzdem, der für den Preis gebotene Klang mache sie alternativlos (vll stimmt das mittlerweile nicht mehr, die chinesischen IEMs sind sehr gut geworden und teils durchaus auch so günstig, aber das ist eben die falsche Form).
Mein Eindruck
Für mich waren die KSC75, die ich mir angesichts der guten Reviews als Verlegenheitswahl gekauft hatte, schlicht superkomfortabel. Die kleinen Haken hinter den Ohren sitzen bei mir trotz Brille problemlos. Kein Bügel der oben auf dem Kopf wiegt, kein Anpressdruck, der die Polster gegen die Ohren reibt, das ist für mich eine perfekte Lösung. Im Ergebnis hatte ich noch nie Kopfhörer, die sich so lange angenehm tragen lassen – bisher schien mir, unendlich lang.
Auch den Ton mag ich. Ja, im direkten Vergleich kann ich den geringeren Bass bemerken, aber auch für mich klingen die Teile gut, ob das nun für Musik, Videos oder Spiele ist. Und sie scheinen gut zu dem billigen Sharkoon-DAC zu passen, wahrscheinlich durch den relativ hohen elektrischen Widerstand (60 Ohm), auf jeden Fall ist da für mich auch bei Stille kein Rauschen zu hören.
Ein Nachteil der Bauweise ist die fehlende Abschirmung von Außengeräuschen. Wäre jetzt noch Covidzeit mit einem geteilten Büro daheim, oder wäre der PC noch so laut wie damals, wäre das ein Problem. Aber Covid löste die Zeit und den PC-Lärm löste fan2go, so ist die Durchlässigkeit daheim ein Vorteil geworden.
Der verbliebene und leider massive Nachteil ist die schlechte Haltbarkeit. Das Kabel ist furchtbar dünn und auch noch fest verbaut. Mir ist jetzt nach nur sieben Monaten Nutzung, ausschließlich daheim, entsprechend eine Seite weggefallen, sie gibt einfach keine Ton mehr aus. Den direkten Schaden davon wird diesmal die Gewährleistung abfangen, aber diese Unzuverlässigkeit macht den KSC75 trotz der Akkufreiheit zu einem Wegwerfprodukt. Und das geht mir enorm gegen den Strich.
Man kann das Kabel auswechselbar machen, mit einem MMCX-Mod, aber das sieht mir nicht gerade einfach aus. Und Koss verspricht eine "Limited Lifetime Warranty", aber ob solche Kontaktprobleme darunter fallen ist mir unklar, auch, ob die in Deutschland überhaupt einlösbar ist.
Es gibt derzeit wieder mehr in die Richtung gehendes, ich stolperte gerade über ein Review zu den Nothing Ear (open), was einfach nicht in den Gehörgang gepresste Ohrhörer zu sein scheinen, die ebenfalls mit einem Bügel hinter den Ohren befestigt werden. So wie auch Knochenschallkopfhörer einen Moment hatten, weil sie das Ohr freilassen. Vielleicht kommt über die Schiene dann auch was mit Kabel und bietet eine haltbarere Alternative zum KSC75. Hoffentlich, denn derzeit weiß ich nicht wie ich das lösen soll, bleibt wohl keine Lösung als die Garantie abzuklopfen oder den MMCX-Mod durchzuprügeln – denn auf den Komfort des KSC75 wollte ich nur sehr ungern verzichten.
Linksammlung 39/2024
Diese Woche fand ich besonders erwähnenswert:
Bitclock ist ein Luftqualitätssensor mit CO2-Messung als offene Hardware. Ähnlich zum Hama Safe, würde das E-Ink-Display die zu hohe Helligkeit vermeiden. Aber es wäre ein Selbstbauprojekt, mit einem zu bestellenden PCB und laut der Webseite nicht konfigurierbar unter Linux, also nicht gerade praxistauglich.
Mit Use frog-fifo-v1 protocol for FIFO versuchte Valve Wayland auf die Sprünge zu helfen, aber Wayland will bisher lieber weiter unbrauchbar sein.
Anschaulich und verstörend war Exposing The Flaw In Our Phone System (Video), eine Demonstration wie das SS7-Protokoll zum Abfangen von Nachrichten und sogar zum Lokalisieren jedes Telefons auf der Welt genutzt werden kann. Und das sind keine theoretischen Attacken, das wird aktiv genutzt.
Google Cloud files complaint with European Commission regarding Microsoft’s anti-competitive licensing practices. Sinnvoll von Google, nicht nur von EU-Regulierungen getroffen zu werden, sondern sie selbst versuchen zu lenken. Mit Microsoft triffts da nicht nicht den falschen, die kritisierte Preiskopplung (Zusatzkosten für Windows Server, wenn nicht Azure genutzt wird) ist bei entsprechender Marktmacht offensichtlich daneben.
Es folgen ein paar Artikel zu Blogs. Den Anfang macht Holy Hell, The Social Web Did Not Begin In 2008, eine Kritik an den Fediverseleuten, die mit ihrer "Social Web Foundation" mindestens ungeschickt Blogs und alle anderen vorherigen sozialen Internetkomponenten unterschlagen.
Da passt ein verlinkter älterer Artikel des gleichen Autors zu, ActivityPub Is To The IndieWeb As A.I. Is To Silicon Valley?
Dabei geht es gerade hoch her im Blogland, denn WordPress.org bans WP Engine, blocks it from accessing its resources. Es geht um viel Geld, so viel ist klar, aber ob WP Engine wirklich einfach keinen Beitrag leistet und ob das Automattics Vorgehen rechtfertigt, das ist strittig.
Aber Blogs sind ja nicht nur Wordpress. So wie hier Serendipity genutzt wird, bauen andere ihre Blogs mit modernsten Techniken, wie in How I Built My Blog. Die 100.000 Zeilen Code, die der Autor laut dem Artikel für seine Seite produzierte, zeigen aber, dass diese Ansätze ineffizienter sein können als ältere. Selbst wenn die Seite mehr als ein einfacher Blog sein sollte.
Doch solange es Spaß macht, warum nicht. Why I still blog after 15 years nennt noch ein paar weitere Gründe für den Blogbetrieb. Auch wenn da wieder eigene Blogsoftware genutzt wird, ist die Motivation nicht darauf beschränkt und erinnert ansonsten sehr an das, was bei den anderen Bloggeburtstagen in den vorherigen Linksammlungen genannt wurde. Spaß am Schreiben, am besser werden, und der fühlbare Nutzen des Festhaltens eigener Gedanken schimmert immer wieder durch.