[3DS][Release] "kit-kat-touch" - Stream n3DS Screens to PC & Control Touchscreen + Controls With XInput Gamepads - a fork of "kit-kat" by Pragma

Today I released a program over on github called "kit-kat-touch" - Download Here

Website & Written Tutorial: https://gameincanada.github.io/kit-kat-touch/

kit-kat-touch is simply a fork of a popular Video Streaming companion for NTRViewer.exe called
"kit-kat" but with a few differences;
  • Less Overall features
  • Slimmer & more Compact UI
  • Focused more on using the Wireless Touchscreen Controls of InputRedirectonClient 

Comparison of Logos

[kit-kat-touch.exe] User Interface Screenshot:

Compact UI compared to kit-kat.exe

Pragmas [kit-kat.exe] UI Screenshot:

Kit-kat was created by InitPRAGMA to be a "MEGA toolkit chain for Nintendo 3DS"
Make sure to go Follow Pragma on Twitter and say Thank you for kit-kat.

kit-kat already boasts many impressive features, such as;
  • Streaming
  • Pushing files to the 3DS wirelessly,
  • Input Redirection Support Built In
  • Hosted Network Automation, And many many more.

This gave me an insane program already to start with - So I didn't have to do much to make my fork - I won't lie though it was, a whole week of trial and error for hours a day and it's still far out of my reach to make it exactly what I want it to be.

How I started kit-kat-touch

I already use kit-kat religiously as seen here when I - Turn a n3DS into a Nintendo Switch:

And I've already utilized it to Control my Touchscreen on the PC with a Wiimote & gave myself Wiimote Controls in Majoras Mask 3D:

So when Nanquitas forked Pragmas kit-kat repository and enabled 11.4 Memory Patching for streaming games like "Pokemon ORAS", which happens to kick the Wifi off when loading a Save,

- I noticed a button slightly out of place on the User Interface

Nanquitas informed me on GBAtemp I could move it back into place on "Visual Basic":

- So I downloaded Visual Studio 2017
- Moved the button
- Rebuilt kit-kat.exe

This led me on yet another journey with coding - which I still know nothing about.

 I started thinking about how I could:

  1. Remove the top of kit-kats Window (since it overlaped with NTRViewer's Top Screen)
  2. Remove the Clickable Links on Left and the Right of Input Redirection (in case of accidental clicks outside of the touchscreen area, disrupting the Gameplay)

Example of Links and Overlapping:

With InputRedirection Support built in & already working as a Touchscreen replacement;

I saw an opportunity to remove the Extra Features, and leave me with a sleek Program that would be able to;

  •  Wirelessly Capture/Stream 3DS Screens to a PC 
  •  Use XInput Gamepad's to Emulate 3DS Controls
  • Control the 3DS Touchscreen Wirelessly - w/ a Mouse or Gamepad Control Stick

All I had to do was change a bit of a Code + Add a few things to the User Interface to give me the slimmed down version of kit-kat I needed.

I then used a program by Ryan Vanmiddlesworth called "Vitrite" to render kit-kat near invisible.
vanmiddlesworth.org/vitrite/ (available as a download link inside kit-kat-touch)

I wanted this because the 'black box' which is "InputRedirectionClient" can register Mouse Clicks as Physical Taps on the 3DS Touchscreen.

- Therefore all we need to do is Hover InputRedirection over NTRViewer's Touchscreen Display
& Render it Transparent
- This gives us Full Touchscreen Control with the mouse on the PC Screen (like a Nintendo DS Emulator) without the possibility of accidental clicks

- After Loading Vitrite.exe - we can easily press: Cntrl+Shift+1 to change the Opacity of kit-kat-touch.exe to 1% 

- at 1% Opacity kit-kat's built in InputRedirection Client will still Register Mouse Events - but will allow us to see what we are clicking on underneath - on the touchscreen

60 Second Demo GIF here: