NohBoard

Free NohBoard v1.3.0

JLX

New Member
First of all, I'd like to say thanks for sharing such a useful, well designed and useful utility! I'm using v0.16b and have a suggestion that (if possible) would make this even more useful:

Would it be possible to select a *different* highlight colour depending on the source of the captured key?

That's a little vague. Let me explain my use case so you can see what I'm trying to do:

I would like to use NohBoard to demonstrate how to use an AutoHotKey (AHK) script and have found that if I restart NohBoard *after* I enable the AHK script, NohBoard will display BOTH the raw key press and ALSO the output from AHK. This behaviour could be extremely handy if you can differentiate between raw keys and AHK translations.

I've made a short (30s) video illustrating this using the following AHK test script which, when active, simply maps the ASDF keys to 1234:

Code:
a::1
s::2
d::3
f::4

In the video, I am only pressing the same (ASDF) key sequence over each time:
  1. Fist time: AHK suspended (normal keys = ASDF output)
  2. Second time: AHK active (translated keys = 1234 output)
  3. Third time: AHK active AFTER NohBoard restarted (Both ASDF & 1234 are shown *simultaneously*)
As you can see, NohBoard can display both raw key data and AHK output at the same time. But, with all the keys the same colour, it's not obvious which key was pressed and which key was sent from AHK.

Is there a way to differentiate where captured key presses originate from? If so, the keys captured from AHK could be coloured differently.

At the moment, I can either display both (which is confusing) or show the final output from AHK only (not the actual key they are required to press on the keyboard) which limits NohBoard's use with AHK.

Thanks again for a great utility and considering this suggestion.


P.S. As you can see on the video, the Shift and Enter symbols seems to be missing too. I've tried different fonts but that doesn't correct the problem.
 

ThoNohT

Developer
I'm not sure if I can distinguish between sources. The reason NohBoard does not register it the first time is because of the way these keyboard events work.

Now, your 3rd bullet is a bit confusing. You mean AHK active, and nohboard restarted afterwards? Because it now says you activate AHK after restarting NohBoard. I'm going to assume the first.

Every program that wishes to receive the events registers for notifications. AHK and NohBoard both register for low level keyboard events, they both get these events, but they get them in some order. You always subscribe at the start of the line, so the latest program to register gets them first and hands them on for the next program.
NohBoard just sends all those events on to whatever is next, unless you trap the mouse/keyboard. Your AHK script actualy catches the events and doesn't send them on for other programs to see. So if NohBoard registered for events before AHK, it will not see the original keypresses because AHK has caught them and that's where it ends.
If however you start NohBoard after AHK, those keys will first be seen by NohBoard, then by AHK, which catches them and sends new events, which then again get seen by NohBoard, resulting in situation 2.

What I could look at is to see if there is any information about this origin of such a keypress event, I don't know currently, but I can dive into the documentation to see if this information is available.

About the symbols, they are unicode characters, which are not displayed correctly. I am not really sure how to solve this. It works on some systems and it doesn't on others. There's probably some setting somewhere in windows that causes issues.
 

MCCrafterTV

New Member
I have made a layout for Minecraft. Please take a look.
2mLFY.jpg

Code:
KBVersion 3
width 275
height 267
nKeysDefined 13
category Games
key 9 9 53 67 43 Tab Tab 0 1
key 65 89 97 43 43 A A 1 0
key 68 177 97 43 43 D D 1 0
key 87 121 53 43 43 W W 1 0
key 83 133 97 43 43 S S 1 0
key 84 209 53 43 43 T T 1 0
key 81 77 53 43 43 Q Q 1 0
key 69 165 53 43 43 E E 1 0
key 32 110 141 150 43 Space Space 0 0
key 160 9 141 100 43 Shift Shift 0 0
key 162 9 185 65 43 Ctrl Ctrl 0 1
key 1026 110 185 43 43 LMB LMB 0 1
key 1027 154 185 43 43 RMB RMB 0 1
 
Last edited:

BaronBargy

New Member
Hey, new here, first of all great program, it's awesome.

I was wondering if you could help me figure out how to make this keyboard layout? I'd really appreciate it!

Code:
KBVersion 3
width 350
height 212
nKeysDefined 19
category Games
key 49 2 2 43 43 1 1 0 0
key 50 47 2 43 43 2 2 0 0
key 51 92 2 43 43 3 3 0 0
key 52 137 2 43 43 4 4 0 0
key 53 182 2 43 43 5 5 0 0
key 81 2 47 43 43 Q Q 0 0
key 87 47 47 43 43 W W 0 0
key 69 92 47 43 43 E E 0 0
key 82 137 47 43 43 R R 0 0
key 84 182 47 43 43 T T 0 0
key 65 2 92 43 43 A A 0 0
key 83 47 92 43 43 S S 0 0
key 68 92 92 43 43 D D 0 0
key 70 137 92 43 43 F F 0 0
key 16 2 137 88 43 SHIFT SHIFT 0 1
key 32 92 137 137 43 SPACE SPACE 0 1
key 1026 245 47 43 43 LMB LMB 0 1
key 1027 290 47 43 43 RMB RMB 0 1
key 1028 262 100 50 0 0 0 0 0

Sorry for the lack of a screenshot; I literally just coded this by copying the Dota preset, changing the name to Game_LoL, then doing some basic algebra and typing in the numbers; so, aside from adding and removing the necessary keys, and changing the positions and other values, I didn't do much.

(That means that the margins on the 1026, 1027 and 1028 keys are not the same as in your screenshot, but I have other stuff to do, so there's not much I can do about that at the moment, sorry.)
 

buffet_time

New Member
Hello I'm here to submit a custom layout i made which combines the Full Mouse with the us_intl keyboard layout.

Here's a pastebin with the code http://pastebin.com/KikGyLWP
Here's a gyazo(.)com of what it looks like (with my color options of course :P) http://i.gyazo.com/a9cae71d1ef9a04dc721511081f8232f.png

I didn't bother figuring out how to post it in the box like others, couldn't be bothered :P

I find it to be a nice combination of the two making it compact and pretty i personally use it for my own stream but i thought it may be nice to add with stock nohboard so people who want all in one i guess
 
Last edited:

Grenlink

New Member
Hi
I used this software on my old computer with windows 7 but after an upgrade to new computer with windows 8 I can't switch layouts at all as it changes to default when i exit the settings window. I tried running the software from the .zip without extracting it and it seems to work as it creates the config file correctly which might be the problem that windows 8 prohibits any changes to those files by the program. I copied the config file to the extracted program but it still could not be changed it just remained at the default layout in the config file.
Can anyone determine weather it is the windows 8 or something else ?

I solved the problem by running the software as an administrator it was windows denying access
 
Last edited:

ThoNohT

Developer
To all people who posted their layouts. I'll have a look at them and include them whenever I make another release.

Grenlink, I see you figured out the problem on your own. There's two solutions. Either run as administrator, which is actually advisable because this allows NohBoard to get an earlier keyboard/mouse hook, and not be interfered by other programs. The other is to place it somewhere where windows doesn't restrict access to a program's files.
 

ichigoyeh

New Member
Just out of curiosity, would it be possible for NohBoard to have pressed keys sent to a second computer with NohBoard?

As an example, key pressed on computer 1 is visualized on computer 2 (not simulated, merely visualized via NohBoard).

If possible, this would probably be best addressed over LAN.

I hope that describes what I want to do.

I'm wondering since I'm using a 2PC setup which pretty much restricts the customization and use of NohBoard (or at least the documentation featured on the front page mentions nothing about this).

And the question this truly asks is [is NohBoard meant for single PC streaming setups only?]

Thanks in advance for your attention (and your contribution)!
 

ThoNohT

Developer
Well, not directly. But the trap mouse feature can help you here. It's a suggestion someone came up with for exactly this situation.

The quote below is me explaining how to use it.

There's a feature for that. It's a bit of a hassle to use, but I built it like this due to a request from another user.

What you would be doing is sending the same input to both computers, NohBoard has the option to trap the keyboard and mouse output, so it doesn't go out to other programs. This way, the streaming computer would be receiving the same input as your gaming computer, but it would not be controlling anything. Once you need to take back control over the streaming computer you use the hotkey to disable the mouse/keyboard lock and you can go back to managing the stream. You do need to somehow get the input signal to both computers though, there are solutions for that, I don't remember which they are exactly.
 

Diaz

New Member
Does anyone know the keycodes for an xbox360 controller?

I play a browser MMO game called StarBreak and it initially only supported a keyboard, but I used joy2key to map keyboard keys on my PC arcade stick (which is also modded to act like an xbox360 controller) to play more comfortably. I made this:

Code:
KBVersion 3
width 680
height 250
nKeysDefined 10
category SB
key 37 421 107 43 43 %left% %left% 0 0
key 38 465 63 43 43 %up% %up% 0 0
key 39 509 107 43 43 %right% %right% 0 0
key 40 465 107 43 43 %down% %down% 0 0
key 65 99 53 43 43 A A 1 0
key 68 187 53 43 43 D D 1 0
key 83 143 53 43 43 S S 1 0
key 9 9 53 67 43 Tab Tab 0 0
key 160 9 110 100 43 %shift% %shift% 0 0
key 32 127 110 100 43 Space Space 0 0

Now they've integrated ps3/xbox360 controllers to work natively within the game so I ditched joy2key, but now I can't figure out the keycodes that my stick uses in the xbox360 mode. All I found was the Unity keycodes using a controller, but it didn't seem to work (0, 1, 2, 3 as the main A B X Y buttons).

I'm trying to make A binded to Space, B to keyboard key A, X to D, Y to S and then of course the joystick for example..

I'm doing this since most people seem to play on their keyboards and I don't want to show an xbox360 pad on screen since it would clutter it and people would be confused by my inputs anyway so I want to leave it as the default keyboard controls as show in the code above.

Thanks.
 

ThoNohT

Developer
Diaz, try to enable debug mode in NohBoard. If you go to NohBoard.config, and set debug to 1, it will show those keycodes in the title bar. I'm not sure at all if NohBoard can even recognize controller input, but this is your best way to find out.
 

Diaz

New Member
Diaz, try to enable debug mode in NohBoard. If you go to NohBoard.config, and set debug to 1, it will show those keycodes in the title bar. I'm not sure at all if NohBoard can even recognize controller input, but this is your best way to find out.

Yeah, I just tried it and it doesn't seem to recognize the inputs at all in the title ;[

Thanks though!
 

Schnitzelranch

New Member
Hey there, great free tool ! Love it but i also get some headache with it.

Im Using one Monitor only and tried to get it working so i did a window capture and its running. Sweet.
not really, as soon as you overlap the Keyboard window, minimize it or something like that, i dont wanna see it myself, just show it in the stream. If i didnt minimize it, it was shown but went static so it was quite useless, is there any (Easy) solution to have it floating on Top or Simulate that to have it working with one monitor ? Would be cool

Im also wondering if Nohboard can or will be able to capture Keyboard / Mouse Button Macros which are programmed. You Press a Button which isnt existing on the Keyboard itself but it maybe just writes a couple words "H E L L O" for example with Shift Captured in that Macro.

thx in advance.
 
Last edited:

seankda

New Member
Layout Request
Would you happen to have already made something similar to this? If not, could you please make this one for me? Thank you!
edf151bd5cc5addcaaa47aedc52c065c.jpg
 

Balrogos

New Member
Guys i have problem with coordinates i have no idea which coordinate i need to use to get full keyboard with full mouse and later i want delete unused buttons and make specific layout to the games but i have no idea with X Y cords

key 65 9 53 43 43 a A 1 0

1. key
2. Keycode
3. x - The horizontal location (from left) in pixels yeah how much pixels i need?
4. y - The vertical location (from the top) in pixels yeah how much pixels i need?

Below is easy becouse i dont modify it later i want just delete unused buttons so i will dont touch it
5. width - The width of the key in pixels
6. height - The height of the key in pixels
7. NormalText - The text that should be displayed when Shift or Caps Lock is not pressed
8. ShiftText - The text that should be displayed when Shift (or Caps Lock) is pressed (may be the same)
9. ChangeOnCaps - 1 if the ShiftText should be shown when Caps Lock is enabled, 0 otherwise (numbers have this disabled, letters have this enabled)
10. SmallFont - 1 if the text on the button should be drawn in a smaller font, 0 otherwise (generally, buttons with 1 character have this disabled, buttons with more characters have it enabled)
 

MtB1980

New Member
Okay, so I created a Keyboard Layout for the Game / MMO Rift (Planes of Telara), German Keyset; maybe this fits on more MMOs:

rift_de.jpg


Code:
KBVersion 3
width 380
height 160
nKeysDefined 29
category Games

key 27      1   1  50 30    Esc    Esc      0   1
key 9      60   1  50 30    Tab    Tab      0   1
key 112   119   1  50 30     F1     F1      0   1
key 160   178   1  35 30  Shift    Set      0   1
key 70    214   1  45 30      F  Focus      0   1
key 32    268   1 104 30  Jump    Jump      0   1

key 49      1  32  30 30      1      1      1   0
key 50     32  32  30 30      2      2      1   0
key 51     63  32  30 30      3      3      1   0
key 52     94  32  30 30      4      4      1   0
key 53    125  32  30 30      5      5      1   0
key 54    156  32  30 30      6      6      1   0
key 55    187  32  30 30      7      7      1   0
key 56    218  32  30 30      8      8      1   0
key 57    249  32  30 30      9      9      1   0
key 48    280  32  30 30      0      0      1   0
key 219   311  32  30 30   %ss%   %ss%      1   0
key 221   342  32  30 30   %''%   %''%      1   0

key 81      1  69  30 30      Q      Q      0   1
key 87     32  69  30 30      %up% %up%     0   1
key 69     63  69  30 30      E      E      0   1
key 65      1 100  30 30      %left% %left% 0   1
key 83     32 100  30 30      %down% %down% 0   1
key 68     63 100  30 30    %right% %right% 0   1

key 1028   246 69  61  0    Mouse  Mouse    1   1
key 1026   180 69  55 30    LMT    LMT      0   1
key 1027   317 69  55 30    RMT    RMT      0   1
key 1029   104 69 55 30 Zoom%up% Zoom%up%   0   1
key 1030   104 100 55 30 Zoom%down% Zoom%down% 0  1
 

MtB1980

New Member
Layout Request
Would you happen to have already made something similar to this? If not, could you please make this one for me? Thank you!
edf151bd5cc5addcaaa47aedc52c065c.jpg

Hey Seankda, take a look to this code:

seankda.jpg


Following Code will bring you this layout:

Code:
KBVersion 3
width 365
height 124
nKeysDefined 18
category Games

key 49      1   1   30  30      1      1      1   0
key 50     32   1   30  30      2      2      1   0
key 51     63   1   30  30      3      3      1   0
key 52     94   1   30  30      4      4      1   0
key 53    125   1   30  30      5      5      1   0
key 54    156   1   30  30      6      6      1   0

key 81     32  32   30  30      Q      Q      1   0
key 87     63  32   30  30      W      W      1   0
key 69     94  32   30  30      E      E      1   0
key 82    125  32   30  30      R      R      1   0

key 68    198  32   30  30      D      D      1   0
key 70    229  32   30  30      F      F      1   0

key 162     1  63   30  30      CTRL   CTRL   0   1
key 164    32  63   30  30      ALT    ALT    0   1
key 32     63  63  123  30      Space  Space  1   0


key 1028   283 30  61  0        Mouse  Mouse  1   1
key 1026   270  1  40 20        %0%    %0%    0   1
key 1027   317  1  40 20        %0%    %0%    0   1
 
Top