Howdy sports fans,
It's getting to be crunch time at Tipping Goat, and some big outstanding TODOs are getting checked off. There won't be a new build until I get the new features in, but here's what you have to look forward to with the next few builds:
Updated UI
The current UI is a cheap and dirty menu system I wrote at the start of the project. Since then, Unity has come out with a new UI system (one that you've seen on the team selection screen) and I've been working to change over most of the old menus to the new UI. Here's the new UI feature list, and most of this is complete:
- Menus are mouse, keyboard, touch or joystick driven
- Mouse cursor for UI added
- Better Options menu with plus/minus buttons and checkboxes
- Overhauled controller configuration menus
Controller Config Overhaul
Speaking of, this screen needs its own feature list! I have completed all the joystick controller config changes, and am starting on custom keyboard controls. Here's what to expect:
- Independently set the primary and secondary buttons
- Added an independent Back button for menu navigation (pass will still work in this regard)
- New default controls for many types of sticks, following the controller's own definition of Shoot/Pass = Accept/Cancel (generally A, B or X, O in the case of playstation). Turbo has been moved to "R1" or the upper-right shoulder button in most cases. Swap remains Y (or Triangle).
- New Deadzone setting for each stick.
- Customizable keyboard controls, finally! This took a while because A) I needed a new UI and B) playing with the keyboard is a bad experience. B may finally be addressed as I have added a new way to play with the keyboard...
- Mouse customization! Keyboard controls will have the option of aiming and shooting with the mouse.
And speaking of mouse control...
The keyboard + mouse control works how you might expect:
- The keyboard moves
- Hold down the mouse button to aim. Then, drag the mouse in the direction you want to shoot and let go when ready.
- When the mouse is not in use, the keyboard controls behave in the default manner.
Needless to say all this is quite a bit of work, but it is coming along nicely.
What about the Steam controller?
Well I have some more information about what the problem with the controller is, and it's really a Steam issue. When the Steam controller is connected to Steam, Steam takes over the interpretation of all joysticks, breaking Direct Input in the process (the lovely legacy controller system that allows 6 players at once in SSDT). Steam probably does this to hide all the real sticks from games so that when streaming a game from another device, Steam can send those joystick inputs through to the host computer and hide all the host computer's controllers. But it only works with Microsoft's newer (and 4-player limited) input system, Xinput.
In order for SSDT to function when a Steam Controller is connected and Steam is running, it must be put into Xinput mode from the options menu. This will limit the number of players to 4 and only allow Xinput controllers (such as the Steam Controller, Xbox 360 or Xbox One controllers). This is an option for this reason; if you want 6 players you would turn Xinput off, and if you want to use the Steam Controller you would have to turn Xinput on.
I am considering a popup if no controllers are detected to help with this.
Bummer
I know! Tell me all about it -- it's been frustrating me since I got the controller. But here's some slightly more fun facts:
- After the new build is ready, I plan on working on improving the AI
- I am still targeting end-of-year for release
- New box art is being worked on this very moment
- SSDT seems to work with Steamlink (when in Xinput mode). More testing is needed.
That's a long update, so I'll get back to work!