Experimentieren mit und Verwerfen einer Terminal-UI-Bibliothek

2025-09-04
Experimentieren mit und Verwerfen einer Terminal-UI-Bibliothek

Während der Entwicklung des Spiels Kartoffels versuchte der Autor, eine hochperformante Terminal-UI-Bibliothek, Kruci, zu erstellen, um die bestehende Ratatui-Bibliothek zu ersetzen. Kruci verwendet ein deklaratives UI-Design und versucht, die Leistung zu verbessern, indem pixelweise Differenzberechnungen vermieden werden. Kruci stieß jedoch auf zahlreiche Herausforderungen bei der Ereignisbehandlung, der Zustandsverwaltung und dem Z-Stacking. Schließlich entschied sich der Autor, das Projekt aufzugeben, da die Optimierung von Ratatui oder die Konzentration auf die Spielentwicklung effizienter wäre.

Mehr lesen
(pwy.io)
Entwicklung

Zähmen von wiederkehrenden iCalendar-Ereignissen mit Distanzfunktionen

2025-04-17
Zähmen von wiederkehrenden iCalendar-Ereignissen mit Distanzfunktionen

Der Autor stieß bei der Implementierung einer Bibliothek zur Verarbeitung von iCalendar-Dateien auf die Herausforderung, wiederkehrende Ereignisse zu verarbeiten. iCalendar verwendet komplexe Regeln zur Definition wiederkehrender Ereignisse, und traditionelle Implementierungen erfordern in der Regel viel spezifische Logik für verschiedene Frequenzen und Parameter. Der Autor wählte einen anderen Ansatz, indem er Wiederholungsregeln als SQL-Abfragen betrachtete und Ideen von signierten Distanzfunktionen (SDF) in der Computergrafik übernahm, wobei er Ereignisvorkommen mit Distanzfunktionen repräsentierte. Diese Methode zerlegt komplexe Regeln in einfache Distanzfunktionen, berechnet iterativ die Auftretenzeiten von Ereignissen, um zahlreiche bedingte Urteile zu vermeiden, was zu saubererem und einfacher zu wartendem Code führt. Obwohl die anfängliche Implementierung nicht sehr effizient war, optimierte der Autor sie, um komplexe Wiederholungsregeln in Millisekunden zu verarbeiten.

Mehr lesen
(pwy.io)

Kartoffels v0.7 veröffentlicht: Überarbeitung der Höhlengenerierung und Umstellung auf RISC-V

2025-02-17
Kartoffels v0.7 veröffentlicht: Überarbeitung der Höhlengenerierung und Umstellung auf RISC-V

Kartoffels ist ein Spiel, bei dem man Firmware für eine virtuelle Kartoffel programmiert. Version 0.7, mit 122 Commits, bringt erhebliche Verbesserungen. Die Höhlengenerierung verwendet jetzt zellulare Automaten und weißes Rauschen für realistischere Ergebnisse und behebt frühere Probleme mit zu isolierten Höhlen. Die CPU-Architektur der Spiel-Engine wurde von 64-Bit RISC-V auf 32-Bit umgestellt, um die Speicherverwaltung zu verbessern. Ein neues Feature verfolgt den Verlauf jedes Bots und ebnet den Weg für Ranglisten. Auch UI-Verbesserungen und Anpassungen der Spielmechanik sind enthalten. Beachten Sie, dass dieses Update den Server zurückgesetzt und alle hochgeladenen Bot-Programme gelöscht hat.

Mehr lesen
(pwy.io)
Spiele