Resource icon
Implemented a stack system, this system allows you to make list, such as user list, or video list. you can either reference from them or pull from them. Very usefull to create random effect. I'll let you guys experience with it.

release 1.35 - 5/26/2020
-Added a stack system to commands(list struture or array if you prefer) with a few new commands
-Stack: Add Add a value to the a stack, create it if does not exists
-Stack: Replace Change a value in a stack to a new one
-Stack: Pull Pull a value from the stack, deleting it from the stack
-Stack: Peek read a value from the stack, without deleting it
-Stack: Find find the first instance of a value in a stack
-Stack: Get Size Get the size of a given stack
-Stack: Random Get a random value from the stack
-Stack: Shuffle randomize a stack
-Stack: Clear delete an entire stack
-Stack: Stringify return a string of the entire stack
-Stack: Parse turn the stringified stack into a stack
-To go with the stack system, a few extension javascript commands have been added, look inside the extension/readme.txt to find out more.
-Fixed a bug if you have some " in description or other places inside your bio on twitch that prevented you from linking your twitch account correctly
-You no longer need to hold tab to see the value window, its now a on and off feature.
-You can also now search value in the value window by typing, typing the exact name of a stack will show you its content
-Twitch trigger icon in the edit window will now show a Q when Add to Queue is enable
-Creating a new button will now ask for the name right away.
-Clicking the button ID in the select menu in edit mode will now copy the id to clipboard
-Fixed a bug that crashed lioranboard, if connected to OBS and you deleted a source that was inside a group
-Math: Pull source value for volume will no longer return a float. just 0-100
-When a change is being made to the way files are being writen, lioranboard will now notify you.
-Added a Case sensitive option to twitch chat message trigger
-Fixed a bug where empty squares and button resized region would get their own button ID,
this might have caused problem by changing button ids for other buttons randomly when moving decks or resizing decks
Lots of small changes, nothing to big. Greatly improved the connection between LioranBoard and OBSwebsocket. Some people were stuck in an infinite "Fetching obs data" screen. that should now be resolved for everyone. You can now search in any selection menu by just pressing letters.

For some reason people have been struggling to connect to OBSwebsocket, it will connect sometimes and sometimes won't, I don't know what this is related to. Lioranboard is connecting to other services fine. Not sure if it's a windows problem,OBSwebsocket type of connection problem, or a lioranboard problem. I've tried multiple things to try to fix it and I can't find anything. When you're not getting a network reply there isn't much I can test. If you are struggling with this come check the discord out

release 1.34c - 5/19/2020
-fixed wild card with just * that didn't work
-Greatly cleaned the whole project, let me know if it runs smoother. or if i deleted script that were still used by accident

release 1.34b - 5/19/2020
-Subs were crashing lioranboard, should be fixed now, you will need to update your transmitter if you want to use test sub button inside the transmitter.

release 1.34 - 5/18/2020
-Some people have been struggling to connect to obswebsocket, I made a few changes,
first I added longer timeout,(You can open connect.ini and add timeout="2000" under [connection] default is 2000, it was 1000 before)
second added a nonblocking option, this will make it so when you connect to obswebsocket
it won't freeze, but I've had bad luck with this it fails to connect most of the time for me when this is on.
It works better when my timeout is set to 100ms for me for some reason.
-Russian and japanese characters weren't being sent to obswebsocket properly, they should now.
please note that lioranboard doesn't support typing certain characters, you will have to copy-paste those
-the processing speed of JSON data has been greatly increased, fetching obs will be a lot smoother
-got rid of the "fetching obs data" screen(replace with a small red square at the bottom right)
-fixed the issue when a source had a weird symbol like TM in it.
-can now toggle a source without specifying a scene, the scene will be regarded as the current scene if so.
-The receiver will clearly notify you when a second transmitter is attempting to connect now instead of saying stream deck connected.
-SetValue for extensions no longer needs to specify a string or real
-made a small change to the transmitter, the test button won't work unless you update to the newer version.
-Can now do quick search in select menus just by typing letters, try it.
-Fixed a bug if you had a source with # in the name that would break the select menu
-Special sources such as Desktop audio and microphone/auxiliary now show up as source in lioranboard
-increased overall stability of the receiver.
-Stream deck 1.34, optimized the rendering on-screen so it's wasting less power and is less laggy.(no need to update it if you don't mind the previous version)
-Stream deck can now be reconnected if it is disconnected by pressing anywhere on the screen.
-Modify button has been optimized to no longer send the modification if doing the same exact
-custom packet, if you make the message-id 666, you will see a small alert about the status code return
-Fetch obs data is now more precise, allows for more object level, and allows for array use.
-Added more on connect triggers
!transmitterconnected when the transmitter first connected
!obsalways these are the same as the other one but they happen every time
You can now create javascript extension for lioranboard, basically openning pandora's box.
Look at the extension folder if you wish to make an extension.
Also your settings might have to be redone(does not affect decks). So you might have to relink your twitch.
Settings used to be saved in options.ini but now are saved in connect.ini

release 1.33 - 5/13/2020
-Changed the way option settings are saved., you might have to relink your twitch account and set thinks like auto reconnect back on
-Ability to build JavaScript Extention.
You can send a few commands to LioranBoard through the transmitter. New text file include "extension/readme.txt"
This can allow you to connect basically Anything through Lioranboard. Youtube, Streamlabs, Streamelements, Philips Hue
But you need to program or find Extension other people made.
comes with a few built in extension, The extension file are included but already installed in the transmitter.
To install a new extension just click Install Extension on the main window and select the LBE file then the transmitter
-Comes with 3 different Already installed extension
Follower alert,Bits top 3 and Stream change title/game
Just use Send to Extension to use them.
-Send to Extension New Command, allows to send lioranboard data to the extension script inside the transmitter, should be clear when you use the command
-Twitch Trigger window now has the option for "Extension Trigger", these triggers are user driven, what it does is based on what extensions you have
For exemple if you have the Follower Alert on, Set Extension to "Follower Alert" for the trigger to work when you get a new followers.
Hopefully the extension you find comes with some documentation
-Math: trigger pull now includes a section about Extension trigger, works the same as chat message trigger, it can have wild cards

-Init button trigger for LioranBoard start up more
This allows you to set a init script to a button.
How to do this. Add the new "Extension Trigger" to a button and set it to the following.
!initlioranboard for when lioranboard starts up.
!obsconnected for when lioranboard is connected to obs, please keep in mind that this will wait for all the data to have been fetched before triggering
!twitchconnected for when twitch chat is connected
!resetlioranboard for when you click the reset button

-Fetch OBS data New Command, allows to fetch data through obswebsocket. a bit complex, read the commands.html about it
-Math: Value Transition now sets the value to start value instantly rather than waiting for the next frame
-Fixed # causing some visual glitch when used in a text box
-holding left and right now move normally inside a textbox
-password box now has a button to make it visible
-password box is now more accurate when selecting
-Added Russian character support
-Added Katakana and hiragana support
-channel_id and oauth_token are now value you can pull from at all time, for security reason they do not show up in the value window.
-added more rights to the token link so you can use chat command like emotesonly/commercial/ban and more,
-Added "= String" and "!= String" to compare commands
You can now get various data from sources, such as their current position or size, volume and others.
Can be very usefull if you want something like Motion: Position to move a source from is current position to its new location.Or save the current volume of a source so you can go back to that same volume later.
Also some more changes aswell

release 1.32 - 5/8/2020
-Math: Pull Source Value New command, Allows you to get the value from a source such as position/scale/rotation/volume/Muted/Visible
-Math: Pull Filter Visibility New command, Allows you to get the visibility of a filter
-Open URL New Command, Allows you to open a url of your choice
-String: Position New command, allows you to get the position of a string within a string
-Set Clipboard New Command, allows you to set the clipboard to the desired string.
-Load Clipboard New Command, allows you to load a string from the clipboard into a value.
-Point Redeem Message new twitch trigger, same has Point redeem but require a chat message, leave it to * if it can be anything or better use the non-message one.
-Fixed Motion: Volume Slide was not sliding the volume properly as a % instead was applying as a db. It should feel smoother now, final and starting volume might not be the same as before.
-Math: Random now has an extra box, "Float" true=will return a float, false can not return a float.
-"current_scene" new permanent value added, returns the current scene in obs, the value is visible in value window, return an empty string if never connected to obs
-File: Save/Load commands now accept both file name with or without extension, "name_list" and "name_list.ini" are basically the same. "name_list.txt" will result in "name_list.txt.ini"
-Sub trigger for Subgift and anonsubgift were inverted, fixed that.
Nothing to special here, if you dont need these changes you don't need to update

release 1.31 - 5/30/2020
-Motion: Position Smooth and Scale Smooth have been removed (Don't worry if you used them they will still work but you should move to the new way of doing it)
-Motion: Position/Scale/Rotation now have a new "Smooth" Parametter, Can select 4 options, None / Out(like old smooth option) / In / In&Out
-Made a change to Modify Button command, instead of using # for new line please use \n from now on. If you want to add # sign to the text, Add \# as usual (This change does not affect the normal button text)
-Fixed VIP Chat triggers, they weren't working, now they should.
-There is no typo in chat message trigger. You are boardcasting because you are using lioranboard

release 1.31b - 5/30/2020
-old Motion: Position/Scale Smooth were causing a crash, its fixed now.
Added a few things, Included a repeat statement of sort, only reason i added that was to create good randomization of source selection, ill probably make a tutorial about that later.
Also, button appearance change command, help make the buttons look like you want them to look whenever you need them to do so. Will require you to update the Stream Deck client to use this.

Release 1.30 - 4/25/2020
-Modify Button New Command, Change the appearance of a button temporarily, Requires update 1.30 of the Stream Deck Client. if you dont care about this, you dont need 1.30
-Source Change Settings New command, set the settings of a source, Very useful.
-Overtime New command, An official way to Articially increase the duration of a button.
-Repeat Previous New Command, instantly repeats the previous commands.
-Math: Clear Value New Command, Delete a value from the list of value, in case you don't like your value window being clutered
-Cooldown timer on buttons should now be more accurate if it has commands that add duration such has all the Motion: stuff, keep in mind you can still artificially modify those on the spot making it unpredictable by the timer
-Added a button in the Android client that allows you to prevent sleep mode.
-Added a Help button in the command list at the top, it will open the command help file
Heard many people asking if they can run other programs from a button, well now you can so enjoy that.
Also made it so command parameters now have specific color depending on their function and can also right-click scene/source/filter boxes to manually type stuff in them in case you want to use /$ $/ wild cards in them.

Release 1.29 - 4/21/2020
-Execute Program New command added, Allows you to run a program, can also run some files but is limited.(If you use this it might trigger your anti virus so make sure you whitelist the app before using)
-Motion: Position Curve New command added, transition with a circle curve to it
-Math: Value Transition New command added, Transition a value from A to B
-Added some colors to the commands text boxes, Light blue=scene light green=source light orange=filter, gray any other selectable box
-Can now type in the Scene/Source/Filter box by RIGHT CLICKING it, So you can use the /$valuename$/ wild cards
-Fixed a visual glitch when selecting some text box that would change the color of the surrounding text.
-Fixed a bug in the text box that would delete an extra character when deleting a selected text

Release 1.29b
-Execute Program would not work if the file path had space in it, should work fine now, should work on any file

Release 1.29c
-Command Line New command, to go along with Execute Program, added command line
Sorry to anyone that experienced the "Fetching Scenes, Source, and Filter info" screen lock.
This was due to a mistake in the JSON fetching if some source or filter had comma in the name.
Should now work fine, let me know if you guys experience that screen still.

Release 1.28 - 4/16/2020
-Fixed a bug with pulling from the json that caused a screen lock up where you'd see the text "Fetching Scenes, Source, and Filter info. May take a few seconds." forever, sorry to anyone that had this problem and couldn't use the app
-Made it possible to use tab to now switch to the text or previous text box.
-Edit window is now a lot larger
Nothing too critical but I can't accept to leave stuff in a state where crashes can happen that are my fault, some people probably already experienced crashes when dealing with Twitch Triggers, if so this patch will fix that. I fixed it as soon as I learned about it so here is 1.27.

Also check out my new Discord Channel for LioranBoard, if you need help

Release 1.27 - 4/13/2020
-Fixed a bug that crashed the app when a few button were triggered through Twitch Triggers.
-Fixed a bug that made it so Trigger: Button commands would no longer queue up properly when set to true.
Release 1.26 - 4/6/2020
-There is now a built in value call elapsed_time, always available to use in Math and Compare commands, return time elapsed since the app has started, can be usefull to have an always ongoing variable. Is visible in the Tab value viewer
-Math: Value to Value new command added, The same as Math: Change Value but unlike that one, Takes 2 Values instead of 1 value and a real or string
-Math: String to Real new command added, turn a string into a real number, must be only digits related characters
-Math: Sound Name Pull has been renamed to String: Sound Name Pull, nothing change on how it works
-Compare Values: Skip/End/Redo if new commands added, Same as the other Compare: commands but take 2 values rather then 1 value and a real or string
-Added tons of commands to deal with strings
-String: Length New command, return the length of a string
-String: Digits New command, remove all unrelated charactes from a string to turn it into a digits strings, should do this before using Math: String to Real
-String: Replace New command, Replace a string within the string to a new string.
-String: Lower Case New command, return lower case version of the string
-String: Upper Case New command, return upper case version of the string
-String: Clamp New command, clamp a string
-String: Real to String New command, turn a real value to a string version
-Fixed a bug when mass deleting commands that would crash the app if scrolled down.