Mini Padder

Free Mini Padder 5.4.3

Do a Fuzzy Parry

There was a bug in 8-way dpad/stick skins where quickly moving from right/down to left/up will overwrite the new direction being active with the previous one being inactive.

It becomes noticeable when you try to do "fuzzy parry" in Tekken 7, where you mix down-forward with back or a back dash (d/f~b).
Low Parry and Back Dash.gif

It turned out each of the 4-directions in an 8-way stick are processed individually, and a change in the same axis processed later will effectively overwrite that in the opposite direction in the same frame. So if you move fast enough that the stick reaches the opposite direction in the duration of a single frame, the overlay stops at the neutral position.

This bug remained hidden the whole time, because gamepad skins, with a 4-way dpad, can't have the problem. It's okay for them to handle the 4-directions individually, as the rendering for them is also separated. And while joystick skins could have it, you can't move the stick fast enough to reach the opposite direction in a single frame.

So it was a job for players using a gamepad, who play games which don't intuitively show diagonal movements on the screen, to discover the bug. And I was practising Tekken 7 with a DualShock 4.

Joystick Skin Variations

joystick_labelled.png

Replacing the face buttons with their corresponding colours seem like common customization for a joystick, so I added variations going with it. Since these are not monochromatic, I also changed their stick colour to red.
Hide Unwanted Gamepads

troubleshooting-hidegamepads-screenshots.png

There are cases where you want to not show some of the gamepads recognized, namely one of the two pairs coming when you're using a program like DS4Windows. One of them will show nothing, or show macro inputs instead of actual input you make.

Using the custom CSS option of the browser source, you can make a rule to hide gamepads associated with a specific gamepad VID/HID. Add this line as custom CSS, and replace 00000000 with an actual gamepad ID you want to hide.
CSS:
#canvas-container > div[data-id="00000000"] { display: none; }
You can wrap the line with /* and */ to disable it while preserving it for future use. Just don't forget to turn it on when you need to show it again.
CSS:
/* #canvas-container > div[data-id="00000000"] { display: none; } */

This info is available in this wiki page, along with other info that may help you if you experience a problem.


Hide Disconnected Gamepads

Also now a disconnected gamepad won't freeze with the last input it received, and instead will be disappeared. This was a behaviour I kept at first, being worried that having to prepare and discard drawing tools for a gamepad on each connection changes, especially when it's rapidly connecting and disconnecting due to a bad contact, would hurt the performance or needlessly drain resources.

But the last frame of a gamepad remaining after the disconnection would lead to a misreading, and I decided that's a more important concern to consider.



Changelog:
  • change placeholder texts for fade-out inputs
    When you empty the inputs, it won't put any other numbers. Now the placeholder texts when they're empty won't confuse users.
  • adjust triangle button label to fit with its active part
  • add data attribute of gamepadId to each gamepad canvas
    The hiding using a CSS rule is possible with this change.
  • remove gamepad slot on disconnection
discsuper-adjustment.png

I made some adjustments on the button space, because SFC gamepad face buttons are not laid on a 1:1 ratio diamond. I believe this change is pretty subtle beside on the face buttons.

I am being active on making small changes these days. Maybe I should set a weekday for making a release if I get to keep this level of activity.
disc-better-labels.png
  • fixed the button labels on disc skins looking sorta off on idle state
    Mainly I made the label border circular, and adjusted how the triangle button looks.
  • replaced dinput skin in open graph image with disc d button one
decreasing-the-area.png

After making the disc dpad skin, the stick area of the joystick skins started looking too big. The size was decided to minimize overlapping areas between adjacent positions of the stick, in hope to make the moves clear in a tough encoding situation. But I was wondering if it's actually hurting the readability. I tried to decrease the stick area size to that of the disc dpad skin and made a gif from both versions to see the difference.
different-stick-area-size-comparison.gif

I felt like the smaller size is making it easier to read, but I can't really provide logical reasons. So I tried to stick to things I can measure:
  • While I can try to distance active positions from the neutral position, I can't change angles between them. This ended up the original size having a bigger overlapping between active positions than that between any active position and the neutral position.
  • With overall size decrease, the eyes now have a smaller area to track.
  • The smaller size has generally larger overlapping between positions, but the overlapping is more even.
Based on these matters, I decided to update the skins with the change.

  • change display names of disc dpad skins to keep the naming consistency between default skins
  • decrease stick area size of joystick skins
moredisc-betterlist.png

There were some problems with the skin list dropdown menu, that I could find my time to try fix. Custom skin names will be now properly updated. Also it turns out some of the default skin names were not updated because I forgot to change them in their skin files. They're also updated, so the whole list should have some consistency on name of the default skins.

I also made some variations on the disc dpad skin. Now it has basic XInput and DInput labelled variations, and an SFC variation.

  • The default joystick and disc dpad skin now have coloured buttons in their spritesheet for easier recolouring if you want.
  • Published archives of the default skins are updated to match with the current version.
  • Added a link to 'How to Use' on the control panel.
  • Title tag content change - will this help Mini Padder getting more exposure on Google?
  • List of the default skins now lies in the index html.
  • New disc dpad skin variations.
  • Fixed the wrong error message on the directory name check for skins.
  • Added fallback default skin lists separated from the expandable default skin list currently in use. When unknown gamepads are found, Mini Padder will always try to map them with one of these skins: gamepad-xinput, gamepad-dinput, joystick-v.
  • Display names of some of the default skins are properly updated.
I noticed the disc skin being not recognizable on bright backgrounds, so I increased the background opaqueness of dpad area and face buttons from 127 to 191. I designed the skin to prioritize these buttons over analog sticks, so tradeoff on the visibility of the sticks should be preferable.
Guilty Gear Xrd -SIGN-: Ramlethal Challenge No.29 [New]

Recoloured Gamepad Skins

With the visibility being the priority when making default skins for Mini Padder, I boldly assumed that bright gray as a default colour would cover the demand of the users.

It does its job very well, but there were requests for recoloured default skins, and I finally decided I should make some after I saw the first review (thanks a lot for the review) that pointed this out.

The default gamepad skins now come in 12 colour variations.

Disc D-pad Gamepad Skin

Also I am recently interested in fighting games, and while the default gamepad skins represents their dpad well, it was bothering me that there’s no visual difference for the neutral position on the skins.

Can you tell the Z move (6532) from the quarter-circle (632) on the gamepad skins with a 4-way dpad? Was that move a continuous mash of orthogonal directions or a diagonal?

There is this Xbox One Pro gamepad, and I thought it would be helpful to put its disc dpad and give the neutral position its own highlighted area, like how the joystick skins always have its stick sprite at the position. This would make it easier to spot moments where the player makes a no move.

Now there is a xinput based gamepad skin with the disc dpad. This skin also features buttons without labels, so you can customize it to have button symbols of your fighting game.

While making this skin, I modified a line in the code so it’s now possible to make a skin where 8-way dpad movements and left analog stick moves can exist at the same time.



Here’s the changelog:
  • 12 recoloured version of xinput skin
  • 12 recoloured version of dinput skin
  • new gamepad skin with a disc-style dpad
  • improved button inactive state check
I am thinking about making a gallery page where you can browse custom skins. Having a dynamic website is expensive, so I might do the manual work and put a static page with the list, updating occasionally to list skins I can find. Or maybe I can turn the Issue board in GitHub for that purpose, on which GitHub users can upload.
propercolour.png


Triangle button in gamepad and megapad skin is changed.

The colour was not green.
This update is made 25 June, and is posted here now as I see my page is approved.

  • fix the renderer not being able to find a default skin for new gamepads
  • add empty author property to default skins
  • cleanup on control panel style on toggle state and element positioning
Top