Skip to content

Releases: TheNathannator/PlasticBand-Unity

v0.3.2: Crash averted!

27 May 12:44
fed96ae
Compare
Choose a tag to compare

Finally nailed down why the crash was happening and found a workaround, now PS4 and Santroller layouts work again!

Changes

  • All HID device layouts are now matched against their proper usages in addition to their vendor/product IDs.
    • This avoids the crash that PS4 and Santroller layouts were causing on Windows.
  • PS4 and Santroller device layouts have been re-enabled now that they no longer crash Unity.
  • Reworked Santroller HID device layouts to no longer use a layout finder, instead they register multiple matchers for each variation.
    • This will allow the proper layout to persist across editor domain reloads, rather than reverting to the fallback that was previously used for the layout finder.

v0.3.1: Another crash bug...

23 May 06:53
3200384
Compare
Choose a tag to compare

HID Santroller support had to be temporarily axed since it was causing the same crash bug that PS4 instrument support did. Not very happy about that lol

Fixed

  • Some initialization issues when entering Play mode in the editor have been fixed.
  • Fixed XInput layout overrides not being evaluated correctly due to a small logic error.
  • Temporarily disabled Santroller HID device layouts to avoid the same crash bug as with the PS4 instrument layouts on Windows.

v0.3.0: Santroller and Stage Kit Support!

14 May 09:08
57a632d
Compare
Choose a tag to compare

Whew, this one took quite some effort! It's been very worthwhile.

Added

  • sanjay900's Santroller devices are now supported, including their various LED haptics. They can be controlled via the ISantrollerHaptics interface, along with several other device type-specific interfaces. (#3 & #4, plus a bunch of work done afterwards)
  • The Rock Band stage kit is now supported, and can be controlled using the IStageKitHaptics haptics interface.
  • A number of convenience APIs have been added to each of the base device classes, including being able to retrieve controls such as guitar frets or keyboard keys by index or enum, and to get a mask of the state for each of those controls.
  • The slider bars on World Tour guitars are now (hopefully) supported.
    • I'm currently unable to completely verify this works, needs more verification.

Changed

  • The XInput/PS3/Wii (and other non-abstract) device classes have been made internal, as they are effectively only implementation details. There's no benefit to using them over their corresponding base type, and hopefully there never will be.

v0.2.3: Hot-Hot-Hotfix

11 May 06:42
5cea9d1
Compare
Choose a tag to compare

Quick hotfix for some issues I missed.

Fixed

  • Fixed PS3 turntables still having the hardcoded report ID.
  • Fixed 4-lane drumkits and RB solo frets not working correctly by removing a hardcoded offset in their layouts.

Added

  • Re-added face button controls to FourLaneDrumkit since those are no longer guaranteed to be handled by the pads.

v0.2.2: Fixes for Days

04 May 02:22
53b54cd
Compare
Choose a tag to compare

Fun times. Quite a few bugs found, and a crash I can't properly fix (at least currently).

Fixed

  • Fixed a newly-discovered edge case with 4-lane drumkit handling that would cause erroneous pad inputs when hitting a cymbal on some kits.
  • Fixed some devices incorrectly using "Back" for their selectButton display name instead of "Select".
  • Temporarily disabled PS4 device layouts to avoid a crash bug in the native side of the Unity input system on Windows.
  • Fixed a layout issue with PS4 drumkits where the red pad was being triggered with the wrong face button, and yellow and green wouldn't be triggered at all through face buttons. (#5)
  • Fixed PS3 and Wii Rock Band keyboards not getting registered correctly.

Changed

  • Changed a bunch of device layout names for clarity. For example, instead of Harmonix Guitar for PlayStation(R)3, it's now labelled PlayStation 3 Rock Band Guitar.
  • Report IDs on HID device layouts are now detected automatically instead of being hardcoded into the layout.
    • This ensures everything works correctly on all platforms, and accounts for cases where a report ID may be present where one isn't expected. (Wish the native backend would account for this automatically, but this works too.)

v0.2.1: *heck*

14 Apr 13:38
4753c78
Compare
Choose a tag to compare

I forgot to initialize some things again lol, this is now fixed.

i should have been in bed hours ago and now i suffer the consequences

v0.2: The HID-ening

14 Apr 11:10
4753c78
Compare
Choose a tag to compare

late-night release titles go brr

This release adds support for just about every remaining GH/RB HID peripheral, and brings along some more bug fixes!

Additions

The following devices are now supported:

  • Wii Rock Band guitars and drumkits
  • PS3/Wii Rock Band Pro Guitars, Pro Keyboards, and MIDI Pro Adapters
  • PS4 Rock Band guitars and drumkits
    • Note that the PS4 PDP drumkit is not supported as part of this, I'm missing the hardware IDs needed to identify it.
  • World Tour PC guitar

To support the PS4 RB drumkit correctly, a new ButtonAxisPair control type has been added, which allows an axis and a button to function as a single axis/button.

Fixes

  • Fixed the layouts for PS3 drumkits and turntables not being initialized.
  • Fixed the layouts for Xbox 360 Pro Guitars having some incorrect offsets.
  • Fixed the layouts for Xbox 360 keytars potentially having incorrect offsets.
  • Fixed the solo fret controls on PS3/Wii Rock Band guitars having the wrong offset.
  • Rock Band keyboards now have (hopefully) the correct normalization applied to the analog pedal input.
  • Fixed some specific-platform device classes being incorrectly marked as internal instead of public.

v0.1.2: Additional v0.1 bugfixes

08 Apr 12:47
08b094f
Compare
Choose a tag to compare

Minor bugfix release for other issues present in v0.1.

Fixes

  • Fixed PS3/4 GHL guitar strumbar inputs being flipped.
  • Fixed PS4 GHL guitar face button mappings (Start, Hero Power, GHTV button, d-pad center).

v0.1.1: Hotfix for v0.1.0

19 Jan 10:52
243bf3f
Compare
Choose a tag to compare

It ain't a proper first release without following it up with a hotfix lol

This release fixes some moderate issues in v0.1.0.

Fixes

Various controls did not function correctly due to assumptions I made about how aliases and inheritance with controls work. To fix this, the following changes were made:

  • Replaced all instances of aliasing with dedicated controls.
    • On 5-fret guitars, strumUp and strumDown aliases on dpad/up and dpad/down have been removed, and new strumUp and strumDown controls that replicate dpad/up and dpad/down have been added in their place.
    • On DJ Hero turntables, the euphoria alias on buttonNorth has been replaced with a dedicated euphoria control that duplicates buttonNorth.
  • Guitar Hero guitars:
    • The slider control has been reworked so that instead of being one control with 5 child controls, it's simply one control used 5 times in the main layout. GuitarHeroSliderSegmentControl has been removed, GuitarHeroSliderControl now inherits from ButtonControl, and the SliderFret enum previously exposed by it is now private, as it no longer has any public use.
  • 4-lane drumkits:
    • FourLanePadsControl has also been reworked to remove its child controls. FourLanePadControl has been removed, FourLanePadsControl now inherits from ButtonControl, and the FourLanePad enum previously exposed by it is now private, as it no longer has any public use.

Additionally:

  • XInputProGuitar was incorrectly inheriting from RockBandGuitar instead of ProGuitar.
  • The PS3 drumkit used the wrong byte offset for its FourLanePadsControl.

v0.1.0: First Release!

15 Jan 15:12
297b2e0
Compare
Choose a tag to compare

🎉🎊 4 months and 133 commits after starting, it's time for the first release! Excited to get this out finally lol

This version supports the following devices:

  • Guitar Hero 5-fret guitars
    • Xbox 360 (Windows only)
    • PS3
  • Rock Band 5-fret guitars
    • Xbox 360 (Windows only)
    • PS3
  • 6-fret guitars
    • Xbox 360 (Windows only)
    • PS3/Wii U
    • PS4
  • Rock Band drumkits
    • Xbox 360 (Windows only)
    • PS2/PS3
  • Guitar Hero drumkits
    • Xbox 360 (Windows only)
    • PS2/PS3
  • DJ Hero turntables
    • Includes euphoria light toggling support!
    • Xbox 360 (Windows only)
    • PS3
  • Rock Band keyboards
    • Xbox 360 (Windows only)
  • Rock Band Pro Guitars
    • Xbox 360 (Windows only)

Some of these devices have missing features, but all of their core features are supported. More devices to be supported soon™!