Posts by Haypro

BECOME PART OF THE COMMUNITY - Sign up here

    Hi guys,


    I have 2 seperate questions


    1: I used this previously in a plugin https://help2.malighting.com/Page/grandMA3/lua_GetPath/en/ with Enums.PathType.UserPresets and Enums.PathType.UserGroups , which I then got from examples online. I'm curious for this format: Enums.PathType.x which values are also possible to replace the "x" with. Can I find this in some way? I tried using Printf and other functions, but no results.


    2: in general, I've read about 2 types of "LUA functions", some are LUA's main language I guess, where as some are from a ma3 LUA library as how I understood this? I'm wondering which ma3 specific functions are currently possible to call/execute? For example, to navigate in ma3 folder structure, I mostly start using ShowData().DataPools. .. and so on. But I think some functions exist to directly get to the directory location of some objects, without starting from ShowData() ... I'm wondering where I can see all these specific functions

    just to clarify


    I selected group 1, clicked in the "pan" tab on "relative" to see the relative value, and typed attribute "pan" at relative decimal8 -90

    for some reason, the relative value is set to -89, and not -90 (bug or something normal?)


    next, I wanted to higher the relative value by typing attribute "pan" at relative decimal8 + 1

    suddenly the relative value is now -33, instead of the expected -88 (because -89 + 1 feels like -88)


    just trying to create some "size master" for movements, and other related things :)


    I'm wondering if this is some bug? do I mistype something? or is this normal according to some unseen parameters?

    the idea is good, but it does not work as expected


    readout is in Decimal8


    Group 1

    at preset 2."pan -"

    attribute "pan" at relative 30

    now I see the relative value of the pan attribute at 30

    attribute "pan" at relative + 1

    now, for some reason, the relative value is shown "13". I'm trying to find the logic behind this one


    if I set relative value to -151 using the encoder bar, and then:

    attribute pan at relative Decimal8 + 1

    now the relative value is -47

    I would expect the relative value will be -150 , not -47 , so I'm wondering which logic is applied.

    Hi guys,


    I was wondering if it's possible to readout the current relative value of a preset, once a group is selected.

    Where I want to go, is to lower or higher a relative value within a preset using a macro, after I selected the related group of fixtures.

    Hi guys,


    I have a question regarding a phaser, created by 2 presets.


    For example, to create it, after I selected the fixtures:

    Code
    Integrate Preset 2.1
    Next Step
    Integrate Preset 2.2
    Store Preset 2.10


    I'm now trying to find the command to select a different form, so to apply a sine form, or a circle form, can this be done using the command line? (having the eye on macros)

    The main problem I believe that you have in your plugin might be some global variables. Every variable that you use that is not specifically declared local with the local keyword in the first use, is declared global. Probably you use a variable called 'type' somewhere in the plugin that overwrites the lua keyword type. When this type variable is global, this will create a conflict when the console software uses the lua type keyword.

    well, this is a big breakthrough, I indeed used type as a variable.

    In fact, the error becomes more clear to me, just fixing this, thanks for this input !

    I will update my variables as you described

    Hi guys,


    I've created this plugin https://github.com/kevinhayen/grandma3_fixture_to_presets

    but have some questions regarding this installation.


    this plugin calls itself a few times using:

    Code
    local PluginName = select(1, ...)

    and

    Code
    Cmd("Call Plugin '" .. PluginName .. "'");

    for some reason, when opening a new showfile, editing a plugin, adding a ComponentLua, pasting the code, saving, rename plugin to "fixture_to_presets" , doing "reloadplugin", .. the plugin loads.


    But when doing an action where the plugin calls itselves, that "PluginName" variable is empty, and tells me:

    Code
    Illegal object: Call Plugin ""

    I get this working when I remove the ComponentLua and add it again, but it not always works from the first time. I'm curious what the reason can be for this?


    ----------------


    a second question is about this error:

    Code
    LUA Runtime Error[string "InsertFixtureswizard@insert_fixtures_wizard.lua"]:60: attempt to call a string value (global 'type')

    This error occurs when I try to open the patch screen where I need to select which fixture to patch, and I'm stuck in this screen:


    clicking "<select fixture type>" will give just this empty window:



    this error occurs when I first navigate within my plugin, mostly when moving from one attribute to another in my plugin, and when I then go to patch and press "insert new fixture".

    I tried to check the MA3 lua itself, I do know Printf() to print out a variable, but could not directly find what could go wrong.

    Also, in my LUA plugin, I never change any objects within grandma3, I only use info, so I'm confussed in why this error occurs.


    I'm curious if someone understands what can go wrong

    kind regards

    Hi guys,


    I've been searching some time for answers, regarding the ooo in sequences, it feels like a bug


    Currently, I've created 4 sequences having recipes in it

    fader 201: 2 recipes for group 1 and 2, both having color Red.

    fader 202: 1 recipe for group 1, having color Yellow

    fader 203: 2 recipes for group 1 and 2, both having color Red.

    fader 204: 1 recipe for group 1, having color Yellow



    the big difference between first 2 and last 2 faders is: Flash and Toggle

    All playbacks have "ooo" enabled


    at this point, I see what I expect:

    - Toggle 204 => this is on

    - Toggle 203 => 204 is off, 203 is on

    - Toggle 204 => 203 stays on, 204 goes on


    when I now press both Flash buttons from 201 or 202, I see the output as how I suppose it to be, and the "0%" of that fader shows "100%". When I leave the flash button, this "100%" becomes back "0%".. but on pressing both flash buttons, I expect at least playback 204 to be released, but both playbacks 203 and 204 keep active/on.


    When I move fader 202 up, then fader 204 will be released.. I expect this also to be released when I press the 202 flash button, because of the values used in the recipes.


    At this point, playback 202 and 203 are both active, while playback 201 and 204 are not,.. having fader 202 at 100%. If I now toggle playback 204, I indeed expect playback 202 to be released, which happens.


    At this point, all faders are at "0%", except for playback 202 at "100%", where playback 203 and 204 are active now. When pressing the flash button of playback 202, I expect playback 204 to be released, which indeed is not happening.


    In my experience, the ooo function on "Flash" buttons will only work when moving the fader, and not by pressing the flash button.

    Is this some bug? or is this normal behaviour?

    Those who are looking for this

    it's written now in the release notes of 1.8 on 2 places:



    ---------------------------------




    also described in this video

    External Content www.youtube.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    Hi guys,


    as the title says it, I'm wondering if manual actions in the phaser editor can be done using command line commands.

    most macro's and lua's I currently created, were done by checking the commandline window output when doing manual actions, but the phaser editor is a bit more mysterious :)


    For example, I was thinking to create a script that creates standard circle, pan and tilt movements.. it's done easy by hand in the phaser editor, but scripts can be more timesaving.

    In this case, regarding movements, I was searching if commands (or lua code lines) exists to:

    • set either 2 relative points (using for example one "size" value as input for that script), or set 2 absolute points based on 2 position presets
    • clicking the mirror button to make the left part move mirrored, comparing to the right part of all selected fixtures
    • be sure the circle movement is round by setting the correct "size" and "aspect" values by commands

    Hi Guys,


    This thread helped me a lot LUA: UI

    currently I'm created some screens using that code, but there is one thing I'm currently looking for.


    on creating custom buttons like this:

    Code
    tblOptions[x] = optionsGrid:Append("Button")
    tblOptions[x].Text = "Text displayed on the button"


    actions are linked to that button using:

    Code
    tblOptions[x].PluginComponent = myHandle
    tblOptions[x].Clicked = "SelectionAttributeClick";

    finally, I catch that click action using:

    Code
    signalTable.SelectionAttributeClick = function(caller)
        local button_text = caller.Text;
    end


    In this example, caller.Text will return the value of that button, which is "Text displayed on the button"


    mostly, it worked well for me, but I'm wondering if we can check which properties are also available to set for (in this example) a custom button? With properties, I mean like those in my example code: Text, PluginComponent, Clicked , ..


    The goal I want to reach is to check if I can store extra information within that button object, which can be collected when I press that button.. like for example some ID's, or other info.


    this code is not working, but I try to do something like:

    Code
    tblOptions[x].Metadata = 'Group1'

    so when I click that button, I can retreive that Metadata information like

    Code
    signalTable.SelectionAttributeClick = function(caller)
        local group_name = caller.Metadata;
    end

    Hi guys,


    when doing


    export preset 4.1 "exported_preset"


    a file will be created in


    MALightingTechnology/gma3_library/datapools/presets , called exported_preset.xml


    this is the folder on my macbook, but on the console, this path is different.


    for LUA programming, I want to read that exported file as an input file for my script, how can I be sure to have the correct path? Does gma3 have a path variable for this?

    Hi guys,


    I'm currently creating some plugins, who will be shared later.

    Just for maintenance and support, I'm wondering how lua can be encrypted, and still be executed when pasting that encrypted text in the plugins pool