Gamepad - Belegung

    Gamepad - Belegung

    Ich habe leider keine Ahnung, wo ich dies schreiben kann, daher hier:

    Wir haben vor ein paar Tagen versucht, einen Härtetest für Bombzone Refueled zu fahren (mit 10 Leuten knapp 3 Stunden spielen, haben wir schon häufig mit dem ersten Bombzone gemacht), sind dabei allerdings auf ein höheres Problem gestoßen:

    Da die Steuerung von 10 Spielern auf einer Tastatur sehr schwer ist (vom Layout möglich, aber erst ab mindestens 3 Tastaturen realisierbar), spielen wir sonst auf Gamepads. Leider kann man die Steuerung nicht auf ein Gamepad festlegen, da ein Signal des Analogsticks z.B. zu lang gesendet wird, und dann werden alle 6 benötigten Funktionen auf "Analogstick hoch" gelegt.

    Wäre es evtl. realisierbar einen Timer hier zu implementieren? Eine andere Variante wäre, dass erst bei Änderung des Signals die nächste Funktion dem neuen Signal zugeordnet wird.

    Wir freuen uns schon auf die endgültige Fassung, auch wenn das noch dauern mag.

    MfG LittleAcc
    Danke für eure Antworten.

    Mit dem Steuerkreuz bzw. den Tasten funktioniert es bei mir auch einwandfrei, bloß den Analogstick zum laufen zu verwenden, klappt nicht, der wird automatisch bei mir für 4 - 6 Tasten übernommen, wenn ich ihn in eine Richtung bewege.

    Ich spiele ebenfalls mit einem Xbox 360-Controller, ein Saitek P2600, und diversen No-Name-Produkten, die ich im Laufe der Zeit gesammelt habe; es kann also zumindest bei dem Xbox 360-Controller nicht an der Hardware liegen, denke ich.

    Von daher meine Frage: spielt ihr mit den Analogsticks oder dem Steuerkreuz?
    Habe exakt das gleiche Problem - und das mit der aktuellen Linux-64Bit-Alpha. Ein Klick und schwupps, ist alles mit der "runter"-Taste belegt (Digital-Steuerkreuz eines PS2-Controllers - also ganz so wie Marco :-)).


    Liesse sich zwar mittels eines Timers programmtechnisch umgehen: sicherer ist aber, einfach jede Taste bzw jeden Input nur einmalig im Spiel zuzulassen. Heisst, ist einmal "Joy(1).Key1" fuer irgendwas in Benutzung, kann er erst wieder zugewiesen werden, wenn er von der alten Stelle entfernt worden ist.


    Generell zeigt der Einstellungsdialog nicht an, welcher Joystick / Joypad gerade angesprochen worden ist ...
    Ebenfalls umgehbar ist es, wenn man jede Tastenbelegung "anklicken" koennte und explizit diese dann umstellt - also explizit "runter" anklicken und dann auf dem Eingabegeraet der Wahl die gewuenschte Taste/Button druecken.


    bye
    Ron
    (Edit da dieses Forum meine Zeilenumbrueche eiskalt ignoriert ... hat wohl Probleme mit Chrome und Linux)

    Post was edited 1 time, last by “GWRon” ().

    Es ist nicht Sinn und Zweck der Spieler Probleme zu umschiffen ... sondern die des Entwicklers, die Probleme gleich ganz aus der Welt zu schaffen :)

    "Schnippsen" funktioniert nur bei Analogsticks - ich wollte das digitale Steuerpad nehmen (das kennt ja nur 0 und 1).

    bye
    Ron
    Ich verstehe unter "analogen Steuergeraeten" etwas anderes. Ich benutze ja das digitale Pad der PS2-Controller (sind ja einzelne Buttons).
    Das Problem ist ja nicht die fehlerhafte Erkennung der Achsen, Buttons ... sondern einfach der, dass Bombzone nach Erkennen einer Eingabeaktion (Achse, Button, Tastendruck) sofort zur naechsten Aktionsmoeglichkeit springt ("links, runter... Bombe legen, ..."). An dieser Stelle muss dann immer ueberprueft werden: ist die gerade erfolgte Eingabeaktion schon von einer bestehenden Konfiguration (auch der gerade bearbeiteten) genutzt.
    Alternativ muss nach jedem "Eingabeaktion konfigurieren" die Inputqueue geleert und ein Zeitbereich wie "xxx Millisekunden" gewartet werden. Eine potentielle Wartezeit kann immer dann uebersprungen werden,wenn die Eingabeaktion von der letzten Eingabeaktion abweicht (damit kann man dann - wenn man sich auskennt - schnell durch den Konfigurationsbereich "durchklickern").
    Was ich mir bei Unity vorstellen kann ist, dass nicht konkret uebermittelt wird, welcher Joystick/Joypad da gerade die eine Achse gesetzt hat (nur ein generischer String oder so). Dies hat aber keinen wirklichen Einfluss auf die eigentliche Konfigurationslogik innerhalb von Bombzone (betrifft aber die "doppelt belegt"-Erkennung).

    byeRon
    Hallo zusammen,

    bin ganz neu hier und versuche gerade mit einem Problem der Gamepads umzugehen. Das Spiel finde ich toll, habe aber leider gleich zwei Probleme mit den Gamepads:

    1. Das oben beschriebene Problem mit dem Timing bei der Tastenbelegung habe ich leider auch (mit verschiedenen Controllern probiert, auch mit XBOX One Controllern), kann aber notfalls nach mehreren Versuchen damit leben.

    2. Ich schaffe es nicht, mehr als 4 Gamepads gleichzeitig zu betreiben. Sobald mehrere Gamepads (über verschiedene USB-Hubs oder -Anschlüsse) anschließe, kann ich bei einigen Controllern keine Zuweisungen der Bewegungsrichtungen über die Achsen machen. Sowohl Steuerkreuz als auch Analogstick werden nicht erkannt. Bei einigen Pads kann ich dann lediglich noch die Knöpfe (1,2,3,4,5 usw.) zuweisen, aber keine Achsen - was die Steuerung der Figuren sehr schwierig macht.

    Insbesondere Problem Nr. 2 ist für mich ganz blöd, weil dadurch die Spielerzahl stark eingeschränkt wird. :( Gibt es eine Lösung dafür?

    Würde mich sehr freuen!

    raul
    Hallo raule,

    Es ist super das du das Problem ansprichst.
    Das 2. Problem trat bei mir in der Form noch nicht auf, aber das lag wohl daran das ich nicht mit 4 Gamepads gleichzeitig gespielt habe.
    Das Probem liegt wohl, wie schon besagt, bei Unity selbst. Denn das Problem trat auch schon bei anderen "Unity-Spielen" auf, die ich mal gespielt habe. Ich denke Unity hat Schwierigkeiten damit, zu erkennen welches Gamepad eine Achse gesetzt hat, weshalb die Übermittlung scheitert.

    Aber wie Marco schon sagte, wollte er das Problem ja mal angehen, vielleicht ist es inzwischen auch schon behoben..mal schauen was Marco dazu sagt.


    Gruss,

    Mausat
    Ich bin mir nicht sicher, aber ich glaube wir hatten schon 7-8 Joypads im Einsatz.
    Kann mich aber auch irren und das war mit der "classic"-Version (da die Entwicklung scheinbar mehr als nur stagniert - oder nur hinter geschlossenen Tueren stattfindet - haben wir uns ansonsten auf "Atomic Bomberman" beschraenkt).
    Wenn wir Bomberman spielen, dann eigentlich so gut wie immer "mit vollem Haus". Wir hatten bei "Bombzone" allerdings immer die etwas schwammigere Steuerung ("um die Ecke flutschen") - das hat Marco aber auf dem Schirm gehabt und eine "Flutschzone" eingerichtet.
    Die Steuerung und Belegung selbst hat hingegen eigentlich immer funktioniert.

    byeRon
    Das Gamepadproblem ist in der aktuellen Testversion behoben (hoffe ich). Unity kann nur mit max 4 Gamepads umgehen auch hat die Unity Library mit XBOX- und Playstation Controllern so ihre Probleme :(
    In der aktuelle Testversion verwende ich diese Lib nicht mehr und es sollten nun bis zu 10 Spieler gleichzeitig möglich sein (4 x Tastatur und 6 x Gamepad)

    Gibt es einen Grund fuer diese Beschraenkung auf 6 Gamepads?

    Was ist mit "4 x Tastatur" gemeint? Werden mehrere Tastaturen getrennt behandelt, oder koennen die Spieler "cheaten", in dem sie die Tastencodes anderer Spieler druecken ("Cursor-Key-Spieler drueckt WASD")?


    bye
    Ron