Mit der Version 10.8 von VPX ist erstmals der Nightslider verfügbar, eine Funktion, die es ermöglicht, die Helligkeit oder die Lichteffekte eines virtuellen Flipper-Tisches anzupassen. Dabei wird der VPX Tisch optisch an eine dunklere Umgebung angepasst, was bewirkt, dass der Tisch im Nachtspiel-Modus realistischer wirkt. Dieser Regler (Slider) ermöglicht es den Spielern, die Lichtintensität zu verändern, um beispielsweise die Umgebung oder die Atmosphäre eines Tisches an die eigenen Vorlieben anzupassen.

In einem Forenbeitrag im Flippermarkt, wurde die Frage gestellt, wie sich der Night Slider Value ändern lässt, ohne den Tisch mit F6 zu starten. Konkret wurde eine Lösung gesucht, die bei gestartetem Spiel den Wert erhöht und gegebenenfalls wieder zurück setzt. 

Ber Benutzer Moster hat sich dieser Frage angenommen und ChatGPT gefragt, ob es eine Möglichkeit gibt, in VPX 10.8 den Wert des Nightslider über eine Tastenkey zu ändern anstatt in der Konfiguration ?

Die Antwort von CahtGPT: 

Ja, in **Visual Pinball X (VPX) Version 10.8** gibt es eine Möglichkeit, den Wert des **NightSliders** über eine Tasteneingabe (Key) zu ändern, anstatt dies manuell in der Konfiguration vorzunehmen. Hierfür kannst du ein Skript in das Table-Script integrieren, das den Wert des NightSliders dynamisch verändert.

Hier ist ein Ansatz, wie du dies umsetzen kannst:

  1. **Table-Skript anpassen**: Öffne das Skript der jeweiligen Pinball-Tabelle in VPX. Du kannst dort angeben, dass der **NightSlider** über eine bestimmte Taste erhöht oder verringert wird.
  2. **Variable für den NightSlider**: Erstelle eine Variable, die den aktuellen Wert des NightSliders hält.
  3. **Tasten zuweisen**: Du kannst Tasten wie z.B. "L" und "K" verwenden, um den NightSlider zu erhöhen oder zu verringern.

Beispielcode:

Füge diesen Code in das Skript der Tabelle ein:

  1. ' NightSlider-Steuerung
  2. Dim NightSliderValue
  3. NightSliderValue = 0.5 ' Setzt den anfänglichen Wert auf 50%
  4. Sub Table1_KeyDown(ByVal keycode)
  5. Select Case keycode
  6. Case 76 ' Taste L, um den NightSlider zu erhöhen
  7. If NightSliderValue < 1 Then NightSliderValue = NightSliderValue + 0.05
  8. SetNightSlider NightSliderValue
  9. Case 75 ' Taste K, um den NightSlider zu verringern
  10. If NightSliderValue > 0 Then NightSliderValue = NightSliderValue - 0.05
  11. SetNightSlider NightSliderValue
  12. End Select
  13. End Sub
  14.  
  15. Sub SetNightSlider(ByVal value)
  16. NightSlider = value ' Ändert den Wert des NightSliders
  17. Debug.Print "NightSlider-Wert: " & CStr(NightSlider)
  18. End Sub

Erläuterung:

  • `NightSliderValue`**: Diese Variable speichert den aktuellen Wert des NightSliders.
  • `Table1_KeyDown`**: Diese Funktion erfasst Tasteneingaben. In diesem Beispiel werden die Tasten "L" (Keycode 76) zum Erhöhen und "K" (Keycode 75) zum Verringern des NightSliders verwendet.
  • `SetNightSlider`**: Diese Subroutine ändert den Wert des NightSliders basierend auf der aktuellen Einstellung von `NightSliderValue`.

Du kannst die Tasten und die Schritte zur Erhöhung oder Verringerung natürlich an deine Bedürfnisse anpassen. Wichtig ist, dass der NightSlider-Wert zwischen 0 und 1 bleibt, wobei 0 komplett dunkel und 1 maximal hell ist.

So kannst du den NightSlider-Wert direkt während des Spiels anpassen, ohne jedes Mal in die Konfiguration gehen zu müssen!

Der Nightmode-Taste muss dann noch ein freier Key zuweisen werden. Normalerweise spielt sich der Button für Nightmode ja nur im Controller ab, der Tisch bekommt das nicht mit. Daher die Lösung dem Button einen Tastenkey zusätzlich zuzuweisen.
 
Hinweis: Getestet ist diese Lösung nicht, sieht jedoch plausibel aus. 
 

Login Form