Ok im already think about it today.
I have some questions, i can make random number from 0 to 360 but can i make it like 0-360 without 91-269 ? Like i need only 0-90 or 270-359
Otherwise I'm not sure of one that goes to the same lengths as this mod (without going to Forge mod offerings) or checking over the Rift modlist again to be sure if it's for 1.13 instead of 1.13.2.
Is there a way to make a script that uses the functionality of InvTweaks?
I'm trying to move items from a double chest, to my inventory, then onto a PlayerVault (which is basically a double chest on command)
With InvTweaks, Space+Click is by far the fastest method of moving the items. However, opening both chest and playervault twice is tedious.
I tried making a script that loops through the entire inventory slot with success, but looping through every slot is slow, compared to the InvTweaks method.
Trying both, I made a simple script that holds down the Space button, while using the SLOTCLICK function but with zero success. I modified the shortcut of InvTweaks to use SHIFT+CLICK as SLOTCLICK does have that optional function of holding Shift. Again, that did not work.
Using AutoHotKeys however, did have success (Getting coordinates of the slot, hold space+left click). Unfortunately, it's far too unreliable despite adding delays.
Is there a way to get this to work with InvTweaks?
it's a standard coding convention. we use a single equal = to tell the computer that we're setting a variable, we use double equals == to ask if something is equivalent.
let's say we want to create a variable called "x" and we want it to have an integer value of 3, typically we would do something like:
x = 3;
although in the scripting language for macro mod this is not how we create and set a variable, to do that you use the SET(variable_name, value) function, so:
SET(x, 3);
if instead, we wanted to ask about our variable x we could do something like the following, expecting it to return either TRUE or FALSE:
x == 3;
the macro mod scripting language actually tries to be user-friendly and will tell you the equivalency of two expressions if you use either one or two equal signs, they work interchangeably. so both of the following will give you the same result, both returning TRUE:
x = 3; x == 3;
as for "or", again standard coding convention comes into play. in most coding languages two pipes || (that's the character you get when you hit shift + \ on a standard american qwerty keyboard) ask the computer if either the expression on the left is TRUE or if the expression on the right is TRUE or if they're both TRUE.
in all three of these examples we would get a return value of TRUE:
TRUE || FALSE; FALSE || TRUE; TRUE || TRUE;
the only case where the or operator returns FALSE is when both expressions are FALSE:
FALSE || FALSE;
if you want to ask if either the left is TRUE and the right is FALSE or if the left is FALSE and the right is TRUE but NOT if both are TRUE, this is referred to as an "exclusive or" and an easy way to do that is just to ask if they're not equal to each other, which we do with an exclamation point (conventionally meaning NOT in programming languages) followed by an equal sign !=. To see why this works we can again turn to a truth table.
TRUE is equal to TRUE so this expression returns FALSE:
TRUE != TRUE;
it doesn't matter which side you put them on, TRUE does not equal FALSE, so both of these expressions return TRUE:
TRUE != FALSE; FALSE != TRUE;
and lastly, FALSE is equal to FALSE so the expression again returns FALSE
FALSE != FALSE;
if you're curious, "and" is written with two ampersands &&, and is kind of the opposite of the or operator in that it only returns TRUE when the expressions on both sides are true, in all other cases && returns FALSE.
this time, in all three examples, we would get a return value of FALSE:{/p]
TRUE && FALSE; FALSE && TRUE; FALSE && FALSE;
only when both are TRUE will it return TRUE:
TRUE && TRUE
some of this kind of information can be hard to find nowadays, but a copy of the readme can be found on mumphry's website. it's a little outdated but it's still a helpful resource.
A lot can also be learned by just having a mess around with the code! I would encourage you at this point to try and have a go at some other boolean logic operators and see what kind of results you get. try and come up with truth tables for less than <, greater than >, greater than or equal to >=, and less than or equal to <=. how do these operators interact with boolean TRUE/FALSE values? how do they interact with numbers? or strings? we've already reviewed how a couple operators behave with boolean values, but how do they interact with numbers and strings? try and make a guess before you test them, see if you were right! if you weren't, why were you wrong? most of all just have fun with it and don't be afraid to ask questions when you don't understand something!
here are all of the examples we went over as one script that you can try out ingame:
${
LOG("let's set a variable called 'x' to a value of 3");
SET(#x, 3);
WAIT(333ms);
LOG("does x EQUAL 3? let's ask =");
WAIT(333ms);
LOG("x = 3");
IF(#x = 3);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG("but what does == think?");
WAIT(333ms);
LOG("x == 3");
IF(#x == 3);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG("now let's have a closer look at OR (||)");
WAIT(333ms);
LOG(TRUE || FALSE);
IF(TRUE || FALSE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG(FALSE || TRUE);
IF(FALSE || TRUE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG(TRUE || TRUE);
IF(TRUE || TRUE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG(FALSE || FALSE);
IF(FALSE || FALSE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG("but what if we don't want it to return TRUE when both expressions are TRUE? let's see how NOT EQUAL (!=) can help");
WAIT(333ms);
LOG(TRUE != FALSE);
IF(TRUE != FALSE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG(FALSE != TRUE);
IF(FALSE != TRUE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG(TRUE != TRUE);
IF(TRUE != TRUE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG(FALSE != FALSE);
IF(FALSE != FALSE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG("and lastly let's quickly have a look at AND (&&) and see how that's different");
WAIT(333ms);
LOG(TRUE && FALSE);
IF(TRUE && FALSE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG(FALSE && TRUE);
IF(FALSE && TRUE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG(TRUE && TRUE);
IF(TRUE && TRUE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
WAIT(500ms);
LOG(FALSE && FALSE);
IF(FALSE && FALSE);
LOG(TRUE);
ELSE;
LOG(FALSE);
ENDIF;
}$
Lots of good information here - i've only got two little things to add
Firstly, If you're unfamiliar with boolean operations (&&, ||, !=), you can test them right in your browser by opening the dev console (F12 on chrome, probably other browsers as well)
Note, however, that in the browser you MUST use lowercase 'true' and 'false'
Secondly - you mentioned variable assignment with a single equals sign.
This was actually included in the mod at one point, so now you can indeed write 'x = true' or '#foo = 12' - most commands also have a 'return value'
for example '#len = ARRAYSIZE(&names[])'
This is usable strictly only as the right hand side of a variable assignment, you still can't nest commands.
@Dekarde It's not a bug, the problem is, that look uses 0-360deg angle while %YAW% goes from -180 to 180
To circumvent that just use #actualyaw = YAW+180;look(%YAW%,%PITCH%)
This is because look accepts relative coordinates (-50 will turn you by 50deg not to -50 and +50 will turn you 50deg in the other direction)
Ok im already think about it today.
I have some questions, i can make random number from 0 to 360 but can i make it like 0-360 without 91-269 ? Like i need only 0-90 or 270-359
Thx for you answer
@Dekarde sure
random(#random,0,180)
if(#random > 90)
inc(#random,180)
endif
Is there a successor to this mod for 1.13.2 rift?
@EchoJX
If I had to say a Keybind mod for Rift 1.13.2 it would be Controlling
https://minecraft.curseforge.com/projects/controlling/files
Otherwise I'm not sure of one that goes to the same lengths as this mod (without going to Forge mod offerings) or checking over the Rift modlist again to be sure if it's for 1.13 instead of 1.13.2.
Niche Community Content Finder, Youtuber, Modpack/Map Maker, "Duck" "Fabric/Old Modloaders Enthusiast"
Thread Maintainer of APortingCore, Liteloader Download HUB, Asphodel Meadows, Fabric Project, "Legacy/Cursed Fabric/Ornithe", "Power API/Tesla", Rift/Fabric/Forge 1.13 to 1.17. "" = active support projects
"Wikis" Maintain: https://modwiki.miraheze.org/wiki/User:SuntannedDuck2, "https://ftb.fandom.com/wiki/Quilt", https://ftb.fandom.com/wiki/UserProfile:SuntannedDuck2, "https://gran-turismo.fandom.com/wiki/Gran_Turismo_4_Toyota_Prius_Edition"
Is there a way to make a script that uses the functionality of InvTweaks?
I'm trying to move items from a double chest, to my inventory, then onto a PlayerVault (which is basically a double chest on command)
With InvTweaks, Space+Click is by far the fastest method of moving the items. However, opening both chest and playervault twice is tedious.
I tried making a script that loops through the entire inventory slot with success, but looping through every slot is slow, compared to the InvTweaks method.
Trying both, I made a simple script that holds down the Space button, while using the SLOTCLICK function but with zero success. I modified the shortcut of InvTweaks to use SHIFT+CLICK as SLOTCLICK does have that optional function of holding Shift. Again, that did not work.
Using AutoHotKeys however, did have success (Getting coordinates of the slot, hold space+left click). Unfortunately, it's far too unreliable despite adding delays.
Is there a way to get this to work with InvTweaks?
the discord link is down again.. tried joining it and didnt work
The OP (page 1 post 1 of this thread) is active and functioning.
There is nothing beyond 1.12.1 (it works with 1.12.2).
HTH
Lou
Links to pdf format, downloadable, command lists for (these often clarify/expand descriptions, and where possible link to the author's posting):
MoreCommands: http://www.mediafire.com/view/qjc9c6klcnp660e/CmdLstMoreCommands.pdf
WorldEdit: http://www.mediafire.com/view/bi7r00xd9rgxrrt/WE_Commands.pdf
@shad now with a standart discord link, discord.me is cool but not reliable enough ^^'
Sorry for the inconvenience
Hello. I only use this mod for keybinding simple commands and chat messages. Is there anything else I can use for this in 1.13.2? thanks in advance.
Check few posts above @Bis_Auf
Hello. Could you explain to me how to open a GUI screen by pressing a key, the GUI command does not work, maybe I'm stupid, explain to me its work.
@Forrle this should help you
https://beta.mkb.gorlem.ml/docs/actions/gui
https://beta.mkb.gorlem.ml/docs/actions/showgui
Just checking if this is still work in progress or dead.
Last update regarding lightloader was 8 months ago, last post by Mumfrey in this thread was a year ago... any news?
I really depend on the Macros mod. Can't live without it anymore.
I feel the same way that's why I haven't moved beyond 1.12.2.
Your question violates a forum rule!
From the "Mapping and Modding" (where this post resides) rules;
Edit added.
Lou
Links to pdf format, downloadable, command lists for (these often clarify/expand descriptions, and where possible link to the author's posting):
MoreCommands: http://www.mediafire.com/view/qjc9c6klcnp660e/CmdLstMoreCommands.pdf
WorldEdit: http://www.mediafire.com/view/bi7r00xd9rgxrrt/WE_Commands.pdf
I'm trying to figure out how to do an OR inside a Until. any ideas?
like this only correctly.... lol
I know the "OR" is incorrect but for thie life of me i cant figure out what to use here.
You're expression would look like this
note that the % are redundantGot it, it works now, but why the double == ?
it's a standard coding convention. we use a single equal = to tell the computer that we're setting a variable, we use double equals == to ask if something is equivalent.
let's say we want to create a variable called "x" and we want it to have an integer value of 3, typically we would do something like:
although in the scripting language for macro mod this is not how we create and set a variable, to do that you use the SET(variable_name, value) function, so:
if instead, we wanted to ask about our variable x we could do something like the following, expecting it to return either TRUE or FALSE:
the macro mod scripting language actually tries to be user-friendly and will tell you the equivalency of two expressions if you use either one or two equal signs, they work interchangeably. so both of the following will give you the same result, both returning TRUE:
as for "or", again standard coding convention comes into play. in most coding languages two pipes || (that's the character you get when you hit shift + \ on a standard american qwerty keyboard) ask the computer if either the expression on the left is TRUE or if the expression on the right is TRUE or if they're both TRUE.
in all three of these examples we would get a return value of TRUE:
the only case where the or operator returns FALSE is when both expressions are FALSE:
if you want to ask if either the left is TRUE and the right is FALSE or if the left is FALSE and the right is TRUE but NOT if both are TRUE, this is referred to as an "exclusive or" and an easy way to do that is just to ask if they're not equal to each other, which we do with an exclamation point (conventionally meaning NOT in programming languages) followed by an equal sign !=. To see why this works we can again turn to a truth table.
TRUE is equal to TRUE so this expression returns FALSE:
it doesn't matter which side you put them on, TRUE does not equal FALSE, so both of these expressions return TRUE:
and lastly, FALSE is equal to FALSE so the expression again returns FALSE
if you're curious, "and" is written with two ampersands &&, and is kind of the opposite of the or operator in that it only returns TRUE when the expressions on both sides are true, in all other cases && returns FALSE.
this time, in all three examples, we would get a return value of FALSE:{/p]
only when both are TRUE will it return TRUE:
some of this kind of information can be hard to find nowadays, but a copy of the readme can be found on mumphry's website. it's a little outdated but it's still a helpful resource.
A lot can also be learned by just having a mess around with the code! I would encourage you at this point to try and have a go at some other boolean logic operators and see what kind of results you get. try and come up with truth tables for less than <, greater than >, greater than or equal to >=, and less than or equal to <=. how do these operators interact with boolean TRUE/FALSE values? how do they interact with numbers? or strings? we've already reviewed how a couple operators behave with boolean values, but how do they interact with numbers and strings? try and make a guess before you test them, see if you were right! if you weren't, why were you wrong? most of all just have fun with it and don't be afraid to ask questions when you don't understand something!
here are all of the examples we went over as one script that you can try out ingame:
Lots of good information here - i've only got two little things to add
Firstly, If you're unfamiliar with boolean operations (&&, ||, !=), you can test them right in your browser by opening the dev console (F12 on chrome, probably other browsers as well)
Note, however, that in the browser you MUST use lowercase 'true' and 'false'
Secondly - you mentioned variable assignment with a single equals sign.
This was actually included in the mod at one point, so now you can indeed write 'x = true' or '#foo = 12' - most commands also have a 'return value'
for example '#len = ARRAYSIZE(&names[])'
This is usable strictly only as the right hand side of a variable assignment, you still can't nest commands.
'Cause tomorrow spring is here