You’re asking for too much lol
As a programmer who works with very confused designers, modelers, and other artists, this may be my favorite Roblox update all year.
It’s because for example if I have a lot of bushes, and trees, but they’re in different folders I could simply add tags and I’m then I can do whatever I want
Ah yes, better organization. Thanks.
How know chat gpt from this future
Finally! The old tag plugin was very janky and literally broke for me.
Thanks for taking time to explain the background on the delay. Great QOL feature for anyone tag based systems.
LOL now I can see all the tags in my game
Ok, this is a W
This is something I randomly brainstormed about 2 years ago when I looked at all the kill scripts in all my kill bricks, glad to see there are somewhat like-minded people over at Roblox, I was beginning to think that developers and the board were basically a different species
Big McThankies from McSpankies.
While you guys are working on this can we get a way to quick rename attributes? The process of clicking the cogwheel then renaming that way is kinda jank
LETS GO!
This update will be useful for my projects and I will tell my developers about this too.
Meanwhile changing the value type of attributes not being possible.
That kind of makes sense though?
but yeah renaming should be as simple as clicking the name, remove the cog wheel and replace it with an X like tags do currently.
It’s also not possible to rename tags.
so how exactly do you connect this to a script? lets say i had a part named bob, would i get to the tag using the directory/path bob.tag (or bob.[tag name] or a different way???
as a person who barely knows anything about scripting and can only design very simple stuff, i would much prefer tags over giving myself a migraine because I can’t figure out indexing or ipairs
Haha, you still have to use ipairs to get the items which are tagged, which is why I was confused on the use. Also, I was confused by ipairs at first but it really isn’t complicated AT ALL if you read about it. Now, I’ve used ipairs in probably 20 different situations throughout my scripts.
local CollectionService = game:GetService("CollectionService")
local function onFoo(object)
-- Do stuff with the object
end
-- Handle static Instances existing at startup with the tag
for _, foo in CollectionService:GetTagged("Foo") do
onFoo(foo)
end
-- Handle Instances which get dynamically added later on with the tag
CollectionService:GetInstanceAddedSignal("Foo"):Connect(onFoo)
Note that the engine is optimized to make GetTagged
/ GetInstanceAddedSignal
very performant, and this code is significantly more efficient than searching for Instances in other ways would be.
Games which use a lot of tags normally wrap this setup in a wrapper so they can do something like this for each tag they care about:
bindTag("Foo", function(fooInstance)
-- setup for the Instance
end)
Let me copy the Tag from property window
Curious of me, why are small changes like this considered a beta feature if it’s working flawlessly?
Also say I have a game that works for both dummies and actual players, should I assign a tag in players’ characters and dummies as a way to get them easily without utilizing an iteration loop in workspace to fetch them?