OutfitRandomMinTime & OutfitRandomMaxTime is new data structure entry to vs4.0 onwards, it wasn't available in 3.7.1.
Ok I'll give you another example of the same thing you mentioned above...
Let's say I have a character called "Tom"...
getObject("Characters[Tom].CharacterCurrentOutfit")
same as...
getObject("Characters[Tom]"):getLink(VCharacterCurrentOutfit)
alternatively...
getObject("Characters[Tom].CharacterOutfits[outfit_name]") -- replace outfit name with name of an outfit (case sensitive)
Now here's 2 more examples...
1. get currently active character & characters currently active outfit with getObject method...
getObject("Game.GameCurrentCharacter.CharacterCurrentOutfit")
2. Same as above but with getLink method...
game:getLink(VGameCurrentCharacter):getLink(VCharacterCurrentOutfit)
... it's kind of hard to explain as you might need to use different methods depending on what you are trying to do. But long story short is that you should use the vs
data structure tables to see what is scriptable & what is read only & the type of get function it needs to return or change the data tables.
here's another couple of quick examples...
1. get the number of a value...
local val = getObject("Values[value_name]") -- replace value_name with name of a value
print( "the value of " .. val:getName() .. " is " .. val:getInt(VValueInt) ) -- prints "the value of value_name is x"
2. get string of a value...
local val = getObject("Values[value_name]") -- replace value_name with name of a value
print( "the string value of " .. val:getName() .. " is: " .. val:getStr(VValueString) ) -- prints "the string value of value_name is: x"
3. see if a condition is true or false...
local cond = getObject("Conditions[condition_name]")
if cond:getBool(VConditionValue) or cond:getBool(VConditionValue) == true then -- both the same thing
print(cond:getName() .. " is true")
else
print(cond:getName() .. " is false")
end
I can't really explain everything in a few words that will suddenly make you jump up in the air shouting "EUREKA! I've got it!", as it's just not that simple. Go through some of those links I provided yesterday. The
scripting page is a good place to start for some examples & explanations of some of the general vs lua functions.
P.S: I'm considering setting up an official Visionaire Studio youtube account at some point in the near future - if I find the time - as I figure I could probably create some tutorials on lua script & using/writing various functions for Visionaire Studio. Maybe some general Visionaire tutorials as well. I prefer the lua stuff though.