This video is actually great. Using tier-lists to teach the mechanics of commands is something that i never would've thought of, but it really works!
@Cl0udWolf3 жыл бұрын
ya the tier list is more of an excuse to discuss the interesting quirks of commands u dont realize
@wyvernity86983 жыл бұрын
I luckily know all of this. Especially predicates are very useful and efficient. You can combine many conditions and use only 1 command to test for it. There are "if" and "unless" in execute but there isn't "or". That's one of the main reasons why I prefer predicates because instead of checking if something is true, I can check from a list if any of them true with "minecraft:alternative" condition
@tropicaldragicorn94872 жыл бұрын
As far as i’m aware there isn’t an AND condition though is there?
@nuklearboysymbiote2 жыл бұрын
@@tropicaldragicorn9487 but And is just a chain of execute ifs
@kido_3 жыл бұрын
GG on the sponser!
@Goobermanguy3 жыл бұрын
Amazing, I've been looking for a complete general guideline like this for years! Cool tip about clear for detecting items. Also I guess modify storage isn't as bad as I thought, I never used it b/c I assumed it would be just as bad as modify entity. I always knew nbt= was bad, but now I can can replace a couple of my uses of it. nice!
@Cl0udWolf3 жыл бұрын
ya i played around with a virtual chess algorithm and ran up to 10,000 data storage operation in a tick and didnt notice any serious lag spikes
@nuklearboysymbiote2 жыл бұрын
@@Cl0udWolf what if i call a single @e telling every entity to run a function which writes some of their data into a storage location, then take that data and test and modify each entity's data as i wish using recursion on a list, then run commands according to the results of the nbt tests? Would it be better or same or even worse than using @e[nbt=…] for each test?
@nuklearboysymbiote2 жыл бұрын
@@Cl0udWolf concrete example: say i want to copy a mob's UUID to multiple storage locations. Would it be better to target the mob once and then run a function with the copy commands in it, using data modify storage … set from entity @s UUID? Or should I copy it to a storage location once, then copy to the other storage locations using that storage copy? So it would instead become data modify storage … set from storage [specific id] CopiedUUID
@misode3 жыл бұрын
In general this was pretty accurate! Although a few notes to make: - clear is actually super laggy, except for your mentioned use of replacing NBT, you should avoid running it every tick. - tellraw is not as efficient as you mentioned, although you're right it's useful and can replace worse alternatives. - sort= is quite inefficient especially if you're using it on @e - The difference between tag= and scores= is negligible
@Cl0udWolf3 жыл бұрын
ya clear isnt great unless its replacing nbt
@petersmythe6462 Жыл бұрын
I would say nbt should be gated as thoroughly as possible. Right, if you want a function to trigger when a mob is hurt, don't do this: execute as @e[nbt={HurtTime:1s}] run function mobs:mob_hurt Instead you should do something like this: execute as @s[tag=reactsToPain, nbt={HurtTime:1s}] run function mobs:mob_hurt And have a separate calling function to filter out entities that aren't mobs using @e and such, using it to do everything related to updating mobs. Try to use @e at the highest possible level, as close to tick.json as you can, branching off into @s from there, and nbt only on entities that absolutely need it and there's no other way.
@TheAnnyParker2 жыл бұрын
Coming back to this to say: this video led me down a rabbit hole of cleaning up my data packs and making as many things run as effeciently as I could. It's at a point where I only have 2 looping functions (other than the main gameloop which triggers them), and literally everything else is triggered by advancements or another function that's triggered by an advancement.
@Cl0udWolf2 жыл бұрын
Advancements in general are not that much better than a ticking command it depends on the scenario
@Cl0udWolf3 жыл бұрын
imagine commenting first on the prev vid of this
@kido_3 жыл бұрын
i could never
@dirtbagpoteddirt82023 жыл бұрын
I thought about it but I was watching something at the moment
@Darkarius773 жыл бұрын
I did it
@Magnogen3 жыл бұрын
:'(
@dirtbagpoteddirt82023 жыл бұрын
This sponsor is bananas 🍌
@dabdotnet3 жыл бұрын
Got a sponsor, that's sick!
@wienerschnitzel17393 жыл бұрын
Without @s, I don’t know what I’d do with my life
@zungrysoft3 жыл бұрын
Where would you put "execute if block" and "execute if blocks"?
@Cl0udWolf3 жыл бұрын
oh totally forgot about those, they're like B tier, predicates to check blocks r better
@rx97_mc3 жыл бұрын
Note, clear can be laggier than `nbt=` from some testing I've done. Mostly this occurs when you are clearing items with specific nbt! There are instances of storage being faster than scoreboards, but mostly it's slightly slower since usually you are doing large copies.
@Cl0udWolf3 жыл бұрын
im more referring to clearing 0 of something as opposed to doing nbt= check, however yes it can be worse in certain situations like with item tags
@rx97_mc3 жыл бұрын
@@Cl0udWolf Yea makes sense, i ran into this with a gui system so i wanted to point that out
@TheAnnyParker3 жыл бұрын
The most efficient way to run a command is obviously to do /execute as @e[type=player, sort=nearest, limit=1, nbt={}] at @s as @s run execute run say hi
@tylermartin79833 жыл бұрын
Extremely grateful for this video especially after my help chat in the discord earlier!
@slava61053 жыл бұрын
summon: find entity by id call constructor (or other function / lambda / method, idk) set nbt (and position) kill: find entity(-ies) call magic-kill-function-which-i-dont-searched-for on its, remove it from entity map and light the callback on entities which often contain loot summoning
@gingerdude3666 Жыл бұрын
I am required to use NBT to detect an item in a player's hand for a game I'm working on, but there are only two potential commands per item-check. Would it be more efficient to just use two NBT checks for the item, or only use one NBT check to add a tag, then run the rest of the commands with the tag? It's two additional commands for adding and subsequently removing a tag, but it seems like it would still be more efficient. If you could confirm I'd really appreciate it, since I need to reuse this mechanism a lot, so the differences will add up.
@FunkyToc3 жыл бұрын
Super interesting :) I'm using rank S/A/B without any hesitation. The rest of them, it depends of the context!
@petersmythe6462 Жыл бұрын
As @s isn't bad. Sure, if you just do execute as @s run stuff it just does nothing, but if you do execute as @s[some specifier here] that is a lot better. And keep in mind not every command gives you a specifier to play with on its own. For example, function does not let you specify the caller(s). The current executor is the caller and the only parameter that function gives you is what function to execute.
@dirtbagpoteddirt82023 жыл бұрын
Good vid
@Cl0udWolf3 жыл бұрын
but u have not watched it yet
@joseantoniorodrigueslopes69793 жыл бұрын
@@Cl0udWolf I'm not 2, but I think is actually a good video.
@dirtbagpoteddirt82023 жыл бұрын
Well my KZbin is kinda broken it just duznt say it yet
@dirtbagpoteddirt82023 жыл бұрын
Try watching the vid with 2x the speed skip the first half and the last quarter
@kekman21153 жыл бұрын
quite efficient
@jdawgtor3 жыл бұрын
This is really helpful. I've been transitioning from using command blocks for years and just using what ever existed. But now that I am using datapacks, it's good to know what to optimize for performance. Thanks for this :D
@SilicatYT3 жыл бұрын
I hope this video will explain whether *say hi* is more efficient than *execute as @e if entity @s run say hi* It's a mystery...
@Cl0udWolf3 жыл бұрын
i dont do direct comparisons for everything, some things r hard to compare their efficiency when you factor in what they accomplish.
@petersmythe6462 Жыл бұрын
From what I've seen in testing, tags are better than scores and the method of comparison is MUCH more efficient than "string comparison to everything on a list." My guess would be that there is a tag table and a boolean list but I'm not sure. They used to be part of the scoreboards so it would make sense tags would be ultra-efficient.
@youknowwhen113 жыл бұрын
I asked this recently in the command discord channel: What is more efficient (for the computer): a. Area effect clouds with custom Duration b. Marker with a countdown scoreboard For example, a spell that summons a buff area for a certain amount of time. And if instead you also have to trigger things after a certain amount of time: - a and check for Age - b and check for scoreboard For example, a spell that summons a charged for a certain amount of time. This ball summons a lightning every second (check age 0,20,40,.. or scoreboard). What would you say the best implementations are?
@Cl0udWolf3 жыл бұрын
Scoreboard and markers. With the aec u would still need some trigger command which involves nbt and markers is a trigger command involving scoreboards. Markers r more efficient and scoreboard is more efficient
@TheDigiDestined3 жыл бұрын
Awesome video! I'm always looking to improve my datapacking skills, and this will be a huge help in keeping everything running smoothy!
@Syukoyon23 жыл бұрын
Nice video, nice questions in comments and very helpful answers
@TheMoneyRaider3 жыл бұрын
Thank you!
@slava61053 жыл бұрын
function need to: find code block from map (as far as i know, datapack loads all the stuff but otherwise it will be searching through the file system which is more expensive) set various things like self selector (@s), position, maybe rotation, dimension and other stuff
@Cl0udWolf3 жыл бұрын
Since functions r pre loaded it shouldn’t be as poor performance as it currently is but it is
@valt24693 жыл бұрын
Is it better to use an area effect cloud and check his age with nbt=, or use a marker with a scoreboard to have a timer. The advantage of AEC is that i can summon them with a certain duration so i don’t need to kill them
@Cl0udWolf3 жыл бұрын
I think I already answered this question in the discord which is markers
@Sibogy3 жыл бұрын
Instant like on this video. This is fresh content that I've never seen anyone else do before.
@Laban61123 жыл бұрын
Would've been interesting to see what you have to say about /spreadplayers. I've noticed that it actually can be very laggy if it can't find a viable space for teleportation.
@Cl0udWolf3 жыл бұрын
Ya I believe that spreadplayers does something where it randomizes where u can spawn, check the location, if it’s false re randomize. So if spreadplayers can’t find a valid spot it must go to all spots and check if they r valid which is a time consuming thing
@Laban61123 жыл бұрын
I noticed that while doing my custom structures, underground structures would just freeze the game for a second or so if there're no caves in that chunk.
@HarryHelsing3 жыл бұрын
Yaaaaaay! Thanks for making this!
@Universal_Anomalies3 жыл бұрын
I've always wondered is if there was a difference in performance between the commands /execute if entity @s[] run and /execute as @s[] run . I would always go for "as @s" because its shorter and does the same thing as "if entity @s". Is there a difference in there performance or are they just about the same?
@Cl0udWolf3 жыл бұрын
they r probably similar but if entity @s is probably more efficient giving as is meant to change the executor of the command and if entity just returns true or false
@Aeldrion3 жыл бұрын
“predicates require commands to run” pain also: `tellraw` being A tear doesn't seem right, surprisingly it actually has a big overhead if you spam it a little too much, and `teleport` is also quite bad
@Cl0udWolf3 жыл бұрын
:( big sadge, although a lot of predicate things exist in advancements if not all except u need a trigger
@Aeldrion3 жыл бұрын
@@Cl0udWolf I mean, while people see predicates as that command only thing it's just a very broad syntax that's being used in loot tables and in advancements
@Cl0udWolf3 жыл бұрын
@@Aeldrion yes as long as those trigger events r what u want and not to run a check at a specific point in ur command logic
@upgradr3 жыл бұрын
How efficient is the /kill command for players? Just curious since it doesn't have to delete all data, but with different conditions like Keepinventory it would probably vary.
@connerduncan35743 жыл бұрын
Where would you rank execute if block
@msk_proman3 жыл бұрын
Then which is better: if score or as @s[scores={}]
@GeradesoLukas3 жыл бұрын
From my experience, I'd say "if score".
@Cl0udWolf3 жыл бұрын
if score has more flexibility sinceu can do > < >=
@casjuice_ Жыл бұрын
Is there any difference in efficiency with "execute if score @s namespace matches #" vs "execute if entity @s[scores={namespace=#}]"? is one better than the other or does it depend on the context
@Cl0udWolf Жыл бұрын
one is slightly better but its so slight there is no point
@NeunEinser3 жыл бұрын
Oh, I thought I saw on MinecraftCommands at some point limit= will make it break out of the loop and not do any more checks once it found enough. Will a selector check all it's conditions all the time? As in is execute as @e[type=marker, scores={...}, nbt={...}] worse than execute as @e[type=marker, scores={...}] if entity @e[nbt={...}]? #1 would be worse if it checks nbt for literally every entity, but if it filters for type and score first anyways and skips the nbt check for entities not matching the first 2 conditions, I assume they'd be quite similar
@Cl0udWolf3 жыл бұрын
depending on what order u put the limit=1. so if u put type=marker,limit=1, it needs to g oto all of them and find the markers, then it will break out of the latter checks. ive discussed the whole order thing before, but @e[tag=test,limit=1] is different from @e[limit=1,tag=test] and the first one is less efficient in terms of what the @ is doing (not factoring how many it ends up picking)
@NeunEinser3 жыл бұрын
@@Cl0udWolf Did you mean nbt= instead of limit=1?
@MScEDTA3 жыл бұрын
Nice video, very interesting! I was a bit confused with the difference between scores= and tag= selector, since the tag is really meant for selecting, I assumed it to be more efficient. Also the score needs to check the name of the score AND the value, while the tag only needs to check the name. I decided to go for some testing and have to conclude all off them are too efficient or I don't know how to test it. Using say command, all the load came from the say command itself, so I eventually did testing by changing a score. 15000 marker entities, selecting 1000 of them or all of them -> instant (even with @e[type=marker] 1200 marker armorstands -> my computer slowed down to 1fps, but changing a score on 250 of them took the same time as typing 1 letter in chat...
@Cl0udWolf3 жыл бұрын
As I said in the vid idk the diff between them cause they r pretty fast on their own. Scores r typically better in general cause u can check them easier in predicates
@Squeezestang3 жыл бұрын
Hey I was just watching one of your videos on launching items and I got a little bit confused on how to actually get it to register. Could you help me by any chance?
@petersmythe6462 Жыл бұрын
"we're gonna start with data modify entity" *dial-up modem noises*
@qcom10083 жыл бұрын
I’m guessing nbt= is going to be really f tier
@connerduncan35743 жыл бұрын
Woah. I guess there's no preprocessor that goes through the functions and loads relevant files based off of function calls. It makes sense that since the function is in a separate file it wouldn't be as readily available in memory without some more direct indication that it should be loaded written into the file the call is being made from. Very interesting. Still a situation where I'd pick organization over performance though.
@Cl0udWolf3 жыл бұрын
Na functions r pre loaded it’s just they do extra stuff that unnecessary
@slava61053 жыл бұрын
wait, when nbt became plain string? it has it's own class and children. But... you still need to find entity, then correct node (selector can contain a lot of stuff like matching ( a[{Slot:109b}] ) ) and parse the input value then edit nbt
@elliehugg3 жыл бұрын
16:05 run say balls Classic
@duarteferreira81763 жыл бұрын
So about the "using_item" trigger for advancements what would be the most efficient way to differ itens (for example an ender eye that is a gun and another that is another gun) and also only apply it to specific players? I'm currently using a custom nbt when giving the item and using tags to mark players but i'm not sure if it will be an efficient way when I add lots of diferent itens, here's an example of what im currently using: { "criteria": { "requirement": { "trigger": "minecraft:using_item", "conditions": { "item": { "items": ["minecraft:ender_eye"], "nbt": "{selected:1b}" }, "player": { "nbt": "{Tags:[\"ready\""]}" } } } }, "rewards": { "function": "test:test" } }
@Cl0udWolf3 жыл бұрын
I would check for a nbt tag to know if it’s a gun idk what the tag of ready is for, as for different guns it depends on ur system. My current project uses a diverse stat system so the code doesn’t care if it looks like an AK or an m1911- all that matters is that it reads the intrinsic nbt stats in the command and applies the logic from there
@duarteferreira81763 жыл бұрын
@@Cl0udWolf Im going through a similar route, but i was gonna create a different achievement for each weapon (thats why i used the selected nbt on the item). The ready tag is because there are some specific times when I want the player to not be allowed to shoot, for example when reloading or for a period after he shot once, since i dont want players shooting 20 times a second. Is that a bad way of doing things? The "ready" tag will also be used for another things.
@Cl0udWolf3 жыл бұрын
@@duarteferreira8176 I typically just let them shoot and use scoreboard checks to figure out what to do and why they can’t shoot to help give some info to the user why they can’t shoot
@duarteferreira81763 жыл бұрын
I see, well for my case I don't really need to tell the players why they can't shoot cause everytime they can't there will be something visual happening so they'll now. Another question I have is when you say that clear can delete itens that you have already clicked in were you talking about itens that are selected and therefore are not anymore in your inventory? Cause I tested it in 1.17 and it didn't work. Is there a right way of doing it, cause i could really use something like that. Anyway thanks a lot for taking time to answer my questions and for making these awesome videos, they are being very helpful.
@Cl0udWolf3 жыл бұрын
@@duarteferreira8176 I still think using a tag is redundant and harder to debug. As for clear it can clear items that u have clicked on to move around in ur inventory
@boris60693 жыл бұрын
Regarding "as @s", sometimes when i put a function in a function the executor of the second one doesn't exist, so i have to put as @s at @s to run it, idk why but yeah
@Cl0udWolf3 жыл бұрын
No that isn’t necessary at @s does do something and just doing at @s would be enough. As @s does nothing and adds no logic unless it’s on a chain being run from a server and u don’t want players to run it
@kilianivanka56373 жыл бұрын
What about execute store data? Is it as bad as data modify?
@Cl0udWolf3 жыл бұрын
That’s sorta tricky cause u need to pair it run something after it, but store data is about the same as data modify (on its own)
@connerduncan35743 жыл бұрын
No hesitation clicking on this video.
@benh64623 жыл бұрын
I basiclly saw this as "explaining all commands in 5s or less"
@unbekannt50893 жыл бұрын
Actually scoreboard commands are not that great, because every single scoreboard command that changes a score causes the minecraft server to send the updated score to every player that is online. This is especially ineficient since scoreboard operation commands usually come in a large batch in order to calculate some mathematical term; a single update packet at the end of the tick would be sufficient. Also hidden scoreboard player updates get broadcasted. Disclaimer: I checked the code on some snapshot that was release this year, but I don't think the code changed in the meantime.
@Cl0udWolf3 жыл бұрын
That’s more going to server, but what is ur alternative? There r no commands that can do calculations and doesn’t get broadcasted to users. Literally the Only thing in Minecraft (which just got added) that is server side only r marker entities.
@unbekannt50893 жыл бұрын
@@Cl0udWolf There is no alternative. As I understand, that's not really what your video is about, so I figured this fact is worth mentioning. Would you elaborate on your second sentence?
@Cl0udWolf3 жыл бұрын
@@unbekannt5089 every command in one way or another will need to send info to all clients there aren’t server side only commands
@unbekannt50893 жыл бұрын
@@Cl0udWolf Obviously yes, but how is that related to anything what I wrote? My entire point was that scoreboard commands send way more packets than necessary.
@Cl0udWolf3 жыл бұрын
@@unbekannt5089 every command will be sending extra packets and it’s not more than necessary cause each user could use a scoreboard command and then they need to know the score. I focused on just minecraft single player stuff and mentioning what is important to know when u could use something else instead
@waqular4683 жыл бұрын
Great video! One question: how bad is checking for nbt inside an advancement?
@Cl0udWolf3 жыл бұрын
It’ll b the slowest check u can do but it’s fairly fast, hence my hit detection can do it with little cost
@nicolassantosdosreis82993 жыл бұрын
Sweet. Useful stuff. How about the Attribute command? Specifically "add, multiply and multiply_base". Are they efficient?
@Cl0udWolf3 жыл бұрын
faster than data modify, still not amazing i wouldnt run it every tick
@nicolassantosdosreis82993 жыл бұрын
@@Cl0udWolf I see. Thanks
@fuzzbearplush44533 жыл бұрын
This is very informative but makes me feel bad cus i use *summon area effect cloud* + *data modify entity set from* when you pick up items to display how many points you got 😭. Since you cannot summon an entity with scoreboards in their name. Thankfully i don't get lag though
@kopasz7773 жыл бұрын
Great stuff! But you muddled the commands' comparison with the selectors. Any command will be more expensive if you run it multiple times, that is on the selector used not the command itself. We should assume the commands are properly branching to only use @s as soon as possible in the call stack.
@Cl0udWolf3 жыл бұрын
@a is more efficient than @e even if the path to the same amount of entities being used which was my point. @e[type=player] is less efficient than @a
@Delta00303 жыл бұрын
Is data modify block closer to storage or entity in efficiency? I’d assume storage but I’m not sure.
@Cl0udWolf3 жыл бұрын
entity
@DeveloperJake3 жыл бұрын
Nbt should be in A tier, and @e should be on S tier. @e with Data modifiers is extremely useful, and doesn’t lag like you keep talking about.
@Cl0udWolf3 жыл бұрын
ppl that know what theyre doing avoid as many @e and nbt based commands as possible, because theyre performance is very poor. lag doesnt mean i run one command and my game freeze, it means that it scales poorly.
@spuduking95283 жыл бұрын
Where would you place /give, /effect, /replaceitem, and /attribute? Edit: what about /playsound and /particle? I'm just going down the list of miscellaneous commands I use all the time lol
@Cl0udWolf3 жыл бұрын
oh particle is a good one, i dont use playsound every tick so i dont know and i dont use those others every tick too often so id just put them middle, they arent super inneficient but arent known for their efficeincy.particle tho is quite innefficeint or i would just say laggy cause particle rendering can be laggy on lower end computers
@tylermartin79833 жыл бұрын
Would execute if score @a be more efficient than execute as @a[scores={}]?
@Cl0udWolf3 жыл бұрын
pretty similar but i like if score its clearer to look at
@olillin3 жыл бұрын
Are structure blocks more efficient than clone or fill commands?
@Cl0udWolf3 жыл бұрын
the thing that makes both of them lag is the lighting updates involved
@HarryHelsing3 жыл бұрын
I'm curious if there is any lag created by having mobs with custom NBT but not running a command to change that NBT. When you're talking about NBT I presume you're talking about altering something's NBT if I'm correct?
@Cl0udWolf3 жыл бұрын
Ya entities with custom Nbt can cause load tho on the RAM
@HarryHelsing3 жыл бұрын
@@Cl0udWolf How do monster spawners compare to straight up Summon commands by the way?
@Cl0udWolf3 жыл бұрын
@@HarryHelsing that’s more of an implementation concern cause mob spawner can spawn pretty much indefinitely and quickly fill ur entity max
@HarryHelsing3 жыл бұрын
@@Cl0udWolf So to modulate how many creatures are spawned what would be an efficient method? Considering that sometimes loads may be killed by players and sometimes very few may be
@Cl0udWolf3 жыл бұрын
@@HarryHelsing i prefer to just use natural spawning and go to all new mobs spawned and regulate what actually spawns with scoreboard rng
@lawlietgaming96213 жыл бұрын
clear might be efficient by doing 0 idk. but it causes ghost item glitch if u are doing it every tick.
@Cl0udWolf3 жыл бұрын
it causes ghost items if u do it in certain situations and especially if ur in creative
@lawlietgaming96213 жыл бұрын
@@Cl0udWolf it caused in most situations and even in survival. that is my experience atleast
@Cl0udWolf3 жыл бұрын
@@lawlietgaming9621 not from the gif I posted in the discord
@theotherguy73633 жыл бұрын
how do you replace an @e
@王司徒-g8r3 жыл бұрын
is result item custom nbt into a score better than nbt={}
@Cl0udWolf3 жыл бұрын
Ifu need to check multiple nbt such as having swords types 1,2,3,4,5,6,...
@RaxTheFirSt3 жыл бұрын
I have a question: how can I disable the possibility of throwing an eye of I have a question: how can I disable the possibility of throwing an eye of ender? (in a normal world)
@schnurrmaschine41793 жыл бұрын
You can just give it back after thrown and delete the entity, but not fully disable it
@RaxTheFirSt3 жыл бұрын
Uh... Thank you for the idea😄
@Cl0udWolf3 жыл бұрын
use /item replace after u detect the throw, and kill ender eyes with special nbt
@RaxTheFirSt3 жыл бұрын
Thank youuuu❤️
@MarvelousButter3 жыл бұрын
How efficient is /effect?
@Natural_Power3 жыл бұрын
Where's /give
@AgentM1243 жыл бұрын
I'm very sad how tags are less efficient than scores. You're only keeping track of a tag, why can't they store tags on a binary tree to search tags more quickly. You don't need to go through the setting up scores, also polluting your /scoreboard list with tons of tag scores. If only limit=1 would just pick from the entity list arbitrarily before creating a list. Like, don't they just have an internal list of loaded entities already? Why do they need to make another list. Even sort=... + Limit=1 Could be optimized as a special case. A bit sad that function has weird overhead. Instead of writing clean code. I feel more like dumping my entire program in a single function file only branching whenever I need to. Instead of clean OOP files... Also, tellraw is such a sweet print debug function as well as just nice text output. Doesn't have to run each tick. But eh doing @a and then tellraw @s will have to parse the command for each player instead of tellraw @a I assume. But in certain cases you're already in that context and it's so tempting. Ugh. Why no JSON text caches Mojang? Very sad Mojang never made these things perform well. Some of it is really useful or necessary in commands but it's cumbersome to use.
@Cl0udWolf3 жыл бұрын
It’s all relative. Tags and scores r about the same efficiency for like selectors, but not inside predicates and other places. Functions r still fast just not as fast as they could be
@ahmdmoadi3 жыл бұрын
Do you think that mojand should add things like () and ;?
@ahmdmoadi3 жыл бұрын
And I want javascript as well added?
@vesaucy67473 жыл бұрын
mods
@changelog03233 жыл бұрын
I seeing that I had the same list in my head, only with f and s exchanges: .-.
@Applecakes3 жыл бұрын
Excuse me? NBT on F tier!!!!
@nuklearboysymbiote3 жыл бұрын
Ye unfortunately directly accessing nbt is really inefficient
@Unknown-bi7mf3 жыл бұрын
Hi
@le3lux3 жыл бұрын
first! Pls more Videos!
@vesaucy67473 жыл бұрын
smh can’t believe he forgot @r
@thehbpro73833 жыл бұрын
hi
@schnurrmaschine41793 жыл бұрын
hi
@marcostark89263 жыл бұрын
I used @e[limit=1] often. Yes the game searches every entity and than pick the top element, but the command used gets only executed for this 1 entity.
@Cl0udWolf3 жыл бұрын
Yes but that is less efficient than if u could somehow use @s or @p