GithubHelp home page GithubHelp logo

marvin-wtt / buzzmaster Goto Github PK

View Code? Open in Web Editor NEW
2.0 1.0 0.0 4.62 MB

A buzzer application for quiz shows with buzzer devices

License: MIT License

JavaScript 1.80% HTML 0.51% Vue 43.77% TypeScript 53.58% SCSS 0.34%
buzz-controller buzz-ps2 buzzer playstation quiz-app quiz-game buzz-ps3

buzzmaster's Issues

Feat: Secondary window

To communicate with a second window, the communication must happen via the main process. Because the main process is stateless, it needs to forward the main window state to the cast window.

Events

  • Locale change
  • Scoreboard
  • Quiz
    • Countdown
    • Correct answer + score
  • Buzzer
    • Ready to press buzzer
    • On buzzer: Countdown + buzzer name
    • Correct answer + score
  • Stopwatch
    • Pressed controllers + time
    • Scores

Fix empty settings inputs

Empty inputs of settings dialogs should not be allowed.

It's probably best to modify a copy first and apply all settings only when the settings are valid.

Already done for:

add a stop run button to stopwatch

add a stop run button to stopwatch, that stops the timer and locks the current order of controllers. all controllers that were not finished/pressed to that point, get set to infinity.

SuddenDeath

Die Möglichkeit zwei Fragen hintereinander zu stellen. Möglichkeit, dass nur "Gewinner" der erste Frage auf die zweite Antworten können.

add notification for update

add a notification when a update is available - perhaps with the option to restart the program immediately

Add sections for scoreboard

Additionally to the game scoreboard, add another scoreboard that keeps track of the score for a section of the game.
The game scoreboard skill keeps track of the total points. Once a new section is created, all points for the new section are zero.

Maybe additionally keep track of the section history for representation.

Buzzern Namen zuweisen

Sehr geehrter Herr BuzzMeister,
bitte ermöglichen Sie uns, dass wir entweder Controllern zugewiesene Namen persistieren können oder dass einfach Eine Liste aus NamenStrings eingelesen werden kann, die dann automatisch Controllern zugeordnet werden.

Hinzufügen eines neuen Fensters zur Anzeige des Scoreboards oder Spielmodus in BuzzMaster


Beschreibung:

Um die Benutzererfahrung in BuzzMaster weiter zu verbessern und den Spielern eine zusätzliche Informationsquelle zur Verfügung zu stellen, schlagen wir vor, ein neues Fenster hinzuzufügen, das ausschließlich zur Anzeige des Scoreboards oder des aktuellen Spielmodus dient. Dieses Fenster soll keine Benutzeroberfläche (UI) enthalten, sondern nur die relevanten Informationen in einem übersichtlichen Format anzeigen.

Funktionalität des neuen Fensters:

Das neue Fenster soll folgende Funktionen unterstützen:

  1. Anzeige des Scoreboards: Das Fenster soll in Echtzeit das aktuelle Scoreboard anzeigen, einschließlich der Punktzahlen der einzelnen Spieler und Teams.

  2. Anzeige des Spielmodus: Falls gewünscht, kann das Fenster auch den aktuellen Spielmodus anzeigen, um den Spielern eine klare Übersicht über die Spielregeln und Ziele zu bieten.

Implementierungsdetails:

Das neue Fenster soll ohne Benutzeroberfläche auskommen und stattdessen die Scoreboard- oder Spielmodusinformationen direkt anzeigen. Dies kann beispielsweise durch die Verwendung von Textausgaben oder einfachen Grafiken erfolgen, um eine klare und leicht verständliche Darstellung zu gewährleisten.

Vorteile des neuen Fensters:

  • Verbesserte Übersichtlichkeit: Spieler können jederzeit auf die relevanten Spielinformationen zugreifen, ohne die Hauptbenutzeroberfläche zu verlassen.
  • Effiziente Nutzung des Bildschirmplatzes: Durch die Integration eines dedizierten Fensters für das Scoreboard oder den Spielmodus kann der verfügbare Bildschirmplatz optimal genutzt werden.
  • Flexibilität und Erweiterbarkeit: Die Implementierung eines separaten Fensters ermöglicht es uns, zukünftige Erweiterungen und Verbesserungen leichter zu integrieren.

Umsetzungsplan:

  1. Anforderungsanalyse: Bestimmung der genauen Anforderungen an das neue Fenster sowie Festlegung der gewünschten Funktionalitäten.

  2. Implementierung: Entwicklung des neuen Fensters gemäß den definierten Anforderungen, unter Berücksichtigung der bestehenden Architektur und Codebasis von BuzzMaster.

  3. Test und Validierung: Umfassende Tests, um die korrekte Funktionalität und Zuverlässigkeit des neuen Fensters sicherzustellen, einschließlich Integrationstests mit anderen Komponenten von BuzzMaster.

  4. Deployment: Bereitstellung des neuen Fensters in einer kontrollierten Umgebung, gefolgt von einer Überwachung und Fehlerbehebung während des Rollouts.

Zusammenfassung:

Die Implementierung eines neuen Fensters zur Anzeige des Scoreboards oder Spielmodus wird die Benutzererfahrung in BuzzMaster verbessern und den Spielern eine zusätzliche Informationsquelle bieten. Wir bitten daher um Unterstützung bei der Umsetzung dieses Features, um die Attraktivität und Funktionalität unserer Plattform weiter zu steigern.


Hinweis: Bei Fragen oder Anregungen stehe ich gerne zur Verfügung. Vielen Dank für Ihre Mitarbeit!

lock controller on start of question

when a question is started (Buzzer, Quiz, Stopwatch) lock the current number of dongels/controller, so that new connected dongles cant play in a currently running question. Reset the list for the next Question.

Can new Buzzers play a Re-Open in Buzzer question?
How should disconnected dongles be treated?

Titel: Implementierung einer Client-Server Architektur für verbesserte Systemfunktionalität


Beschreibung:

In Anbetracht unserer stetig wachsenden Anforderungen und dem Bedürfnis nach einer effizienten Datenverarbeitung und -verteilung innerhalb unserer Plattform, möchten wir höflich die Implementierung einer Client-Server Architektur vorschlagen. Diese Architektur wird dazu beitragen, die Performance, Skalierbarkeit und Sicherheit unseres Systems zu verbessern, indem sie eine klare Trennung von Client- und Serververantwortlichkeiten ermöglicht.

Problembeschreibung:

Momentan stoßen wir auf Herausforderungen bei der Bewältigung des steigenden Datenverkehrs und der zunehmenden Anzahl von Nutzern, was zu Engpässen und einer eingeschränkten Reaktionsfähigkeit führt. Unser derzeitiges System, das auf einer monolithischen Architektur basiert, zeigt Schwierigkeiten bei der Skalierung und der effizienten Ressourcennutzung. Dies führt zu längeren Ladezeiten, intermittierenden Ausfällen und einer insgesamt suboptimalen Benutzererfahrung.

Lösungsvorschlag:

Die Einführung einer Client-Server Architektur bietet eine elegante Lösung für unsere aktuellen Probleme. Durch die klare Trennung von Client- und Serverkomponenten können wir die Datenverarbeitung und -verteilung optimieren. Indem wir spezialisierte Servereinheiten einführen, können wir die Last gleichmäßiger verteilen und Engpässe reduzieren. Gleichzeitig ermöglicht die Client-Server Architektur eine verbesserte Skalierbarkeit, da wir einzelne Serverressourcen bedarfsgerecht anpassen können, um mit dem wachsenden Datenverkehr umzugehen.

Vorteile der vorgeschlagenen Architektur:

  1. Verbesserte Performance: Durch die Entlastung der Clientanwendungen von komplexen Verarbeitungsaufgaben können wir eine schnellere Reaktionszeit und eine verbesserte Benutzererfahrung bieten.

  2. Erhöhte Skalierbarkeit: Die Möglichkeit, Serverressourcen dynamisch anzupassen, ermöglicht es uns, mit wachsenden Anforderungen Schritt zu halten und eine kontinuierliche Verfügbarkeit sicherzustellen.

  3. Bessere Sicherheit: Die klare Trennung von Client- und Serverkomponenten erleichtert die Implementierung von Sicherheitsmaßnahmen wie Zugriffskontrollen und Verschlüsselungstechniken, um die Integrität und Vertraulichkeit unserer Daten zu gewährleisten.

  4. Einfachere Wartung und Skalierung: Durch die Modularisierung unserer Architektur können wir einzelne Komponenten unabhängig voneinander aktualisieren und skalieren, was die Wartung und Weiterentwicklung unseres Systems vereinfacht.

Umsetzungsplan:

  1. Anforderungsanalyse: Eine detaillierte Analyse der Systemanforderungen, um die optimale Aufteilung von Client- und Serverkomponenten zu bestimmen.

  2. Design und Architektur: Entwicklung eines klaren Designs für die Client-Server Architektur, einschließlich der Definition von Schnittstellen und Kommunikationsprotokollen.

  3. Implementierung: Schrittweise Implementierung der Client- und Serverkomponenten gemäß dem festgelegten Design und unter Berücksichtigung der Anforderungen an Skalierbarkeit, Leistung und Sicherheit.

  4. Test und Validierung: Umfassende Tests, um die Funktionalität, Performance und Sicherheit der neuen Architektur zu validieren, einschließlich Lasttests und Sicherheitsüberprüfungen.

  5. Deployment: Schrittweise Bereitstellung der neuen Architektur in einer kontrollierten Umgebung, gefolgt von einer umfassenden Überwachung und Fehlerbehebung während des Rollouts.

Zusammenfassung:

Die Einführung einer Client-Server Architektur bietet eine vielversprechende Lösung für unsere aktuellen Herausforderungen im Zusammenhang mit der Datenverarbeitung und -verteilung. Durch die klare Trennung von Client- und Serverkomponenten können wir die Leistung, Skalierbarkeit und Sicherheit unseres Systems verbessern, was letztendlich zu einer optimierten Benutzererfahrung führt. Wir bitten daher um Unterstützung bei der Umsetzung dieses wichtigen Projekts, um die Zukunftsfähigkeit unserer Plattform sicherzustellen.


Hinweis: Bitte zögern Sie nicht, bei Fragen oder Anregungen Kontakt aufzunehmen. Wir schätzen Ihr Feedback und Ihre Mitarbeit.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.