#Script API General

1 messages · Page 117 of 1

kind zenith
#

anyone can help me i been trying fix over hours #1439023426999287808 message

loud frigate
#

Bedrock is getting a shit load of money from the marketplace and is run by a multi billion dollar company. My experience so far has been bugs unpo bugs and sloppy features implemented all over the place. Not just this API which feels inconsistent, lacking and when new feature come out the solve micro problems badly instead of addressing the general solution not to mention the game itself is full of bug of its own, internals must be full of legacy backwards compat spaghetti yet new updates still manage to break addons in some ways. I could go on. I have a huge list of those I pass to Mojang contacts when I can. Honestly there's no justification for this. Got to voice my opinion on this tbh, working for the marketplace is very frustrating

nova flame
#

the rest works

woven loom
#

nope

nova flame
snow knoll
#

This is an afterEvent
The hit has already happened

nova flame
#

how else can i do it

snow knoll
#

Not every afterEvent has a beforeEvent equivalent, so you'll need to double check

nova flame
#

how am i supposed to do ts

woven loom
#

cant do that with script api

round bone
#

Custom PVP system

shy leaf
#

but ill tell you its gonna be hard

dusky flicker
round bone
#

I think he is referencing to past

shy leaf
#

if i have to be honest

#

being very negative about stuff kinda feels like it drags us away further from actually getting good stuff

dusky flicker
#

there could be more interesting things that could be made

#

i think it would be better in the long run if they focused on the events in general

#

implement a bunch of events, since the api is event driven

#

and after so, start implementing other things

loud frigate
round bone
snow knoll
loud frigate
#

still doesnt matter much, its no surprise that many things arent doable nicely or at all. take for instance simply getting the weather of the workd. can you do it? sure. is it nice as a simple world call as it should? heck no, you got to track the weather state with events. Thats an easy example. theres many other things that require super slow workarounds or just not possible at all, like the before mentioned properly preventing silk touch drop of a block, or simply making the player properly swing or not the hand. Very inconsisntent there how half the block components events force swing the hand even when they arent used. other half just doesnt

round bone
round bone
loud frigate
# round bone There is already an API method for weather.

theres theres a set weather. there isnt a get one. still you can do that with events. not the end off, the world. theres many more examples for obvious things that arent there, like how to prevent a block fron connecting to glas panes or walls? theres no tag for that. or that blocks placed by worldgen features with a tick component DONT get tick when placed. infact the game barely uses tags at all. for entities they use tags + that old entity family system. animal entity family just has goat in thee for some reason and so on.

round bone
loud frigate
#

should be beta cant be used yet. still this is besides my point

broken pawn
#

well, atleast you can try to use it while it's experimental i guess

shy leaf
snow knoll
shy leaf
#

i dunno if they replied or not tho...

slow walrus
#

nope

shy leaf
#

sad

#

its also in beta in preview too

loud frigate
# snow knoll While I understand your point and your valid frustrations, you need better examp...

this just validates my point even more. my experiene so far has been this, stuff just works "good enough" tm. And for most this is enough, thats what sells i guess, fancy visuals and no attention to details. If i add a block for instance i want it to behave exactly like vanilla. Yet many of th features are misisng hooks or tags.stuff that most people won't notice, small interactions like that one but they all add up. latest i found was that whatever you do, if you give a custom block the SAME PBR textures that vanilal use, the look will be just ever so slightly off from the original block.
Another one was that ambient occlusion didnt even work on custom blocks till some time ago.
Franlky what surprises me the most is that peorople are either oblivious that these issues exist or just dont care

open urchin
#

Ambient occlusion on custom blocks has always been (and still is) broken, that's what's causing the PBR textures to look different

round bone
#

And as you mentioned - there is a still work-around for getting a weather.

loud frigate
loud frigate
round bone
#

Also you can add an entity that will tick a block inside a structure after loading.

loud frigate
loud frigate
round bone
warm mason
# loud frigate this just validates my point even more. my experiene so far has been this, stuff...

Your point is essentially valid. It's just that the API and everything else can't be perfect. Especially when it comes to features: to have all the capabilities of vanilla things, you'd have to modify Minecraft itself. The rest are just bugs that are supposedly being fixed, although the speed with which they are being fixed clearly does not suit everyone...

So, just ask a specific question, and they will try to help you, if your idea is possible, of course. After all, these are addons, not mods

weary umbra
#

is onBreak blockComponentRegistry broken? bc when I try to break the block it doesnt return anything

#

or am I using it wrong?

warm mason
amber granite
#

Guys i have interesting questions

#

I never thinked of

#

In Minecraft java specifically

#

Does Blocks plays as placeholders ?

#

So everyblokc in Minecraft java dosen't have its own instance

weary umbra
amber granite
#

But shares one instance? And swap between those instances and their pre defined behaviours

weary umbra
# weary umbra but it doesnt work though, I used /setblock on the custom block and it doesnt tr...
onBreak: ({blockDestructionSource, block, dimension}) => {
            console.warn("Breaking big block at " + JSON.stringify(block.location));
            console.warn("Block destruction source: " + JSON.stringify(blockDestructionSource.typeId));
            dimension.fillBlocks(new BlockVolume(
                {x: block.location.x + 2, y: block.location.y - 1, z: block.location.z + 2},
                {x: block.location.x - 2, y: block.location.y + 9, z: block.location.z - 1}
            ), "minecraft:air", {ignoreChunkBoundErrors: true, blockFilter: {includeTypes: ["minecraft:barrier"]}});
        },
warm mason
weary umbra
#

thats why I'm confused

warm mason
#

hmm

#

idk then

weary umbra
# warm mason idk then

I use the older version of custom component maybe thats the issue?
"minecraft:custom_components": [
"ct:big"
],

weary umbra
# warm mason probably yes

yeah that was the issue. But now I can't change the scale of the block I get an error. Thats the max scale It can use
"scale": [2, 1, 2]
but if I use an older version I can change it up too
"scale": [5, 10, 5]
or more

weary umbra
loud frigate
#

anyways tbh idk if that particular one is still an issue, it was some months ago, ive reported it and they mght have said something like they were working on it

warm mason
loud frigate
#

you know what a feature is? a worldgen feature. say a random patch of blocks. could be a patch of flowers for instance

#

which could even be placed far away and scripts can only access stuff really close to the player, no way to get a block at an arbitrary position (say a double block wants to break its connected part ends up being in a connected unloaded chunk). i guess thats another story tho

remote oyster
loud frigate
verbal aurora
sharp elbow
#

1st year Minecraft software dev vs 2nd year

snow knoll
gaunt salmonBOT
wicked girder
#

Whats the best way to detect movement of a player? I feel like constantly checking all players positions with a run interval would get laggy.

wicked girder
#

That might work

round bone
#

You can listen to a movement packet and get a player that triggers it

wicked girder
#

annoying to test tho

#

Got any easy way to test with bds?

round bone
wicked girder
#

I use regolith so itll be a little bit harder

gaunt salmonBOT
round bone
wicked girder
#

Its nice, a little hard to get started but I like it

#

My friend is making a better one tho

bronze pulsar
#

What is the most effective method to simulate rising lava while avoiding chunk boundary errors?

sharp elbow
#

Could do it on a chunk-by-chunk basis. Subdivide your volume into chunks by taking floor(x/16) and floor(z/16), then iterate those chunks and attempt to fill a 16×16 space. Could query if the chunk is loaded beforehand, too

stable shadow
#

Is it possible for me to disable the /say or /tell commands? Can I change their permission levels? I don't want players to use them.

verbal aurora
stable shadow
#

Or does it have to be modified like Endstone's?

verbal aurora
#

Just a normal server

#

As mentioned, just can't be a world or realm

stable shadow
#

But I want it specifically for the server.

#

How do you turn off those commands? Do you know?

verbal aurora
#

<your_server_folder>/config/commands.json --> json { "default_permission_level": "admin", "permission_levels": { "me": "internal" } }

#

You just add commands into it like "me" is done

#

That'll stop players from being able to use the command

stable shadow
#

uau

stable shadow
verbal aurora
#

This is just the information I have.. Mojang doesn't document stuff like this and it's really annoying

#

I think someone might have also mentioned something in here before so I'll try and find it

#

Only other thing is this...

#

Honestly, I'll never understand why Mojang chooses not to document this stuff

stable shadow
# verbal aurora

How would I disable them, even for admin?

For example, I want to turn off "/list", would that be possible? lol

verbal aurora
#

You would just put "list": "internal"

stable shadow
#

I was going to replace the /list command with my own custom command, to make the interface prettier.

verbal aurora
stable shadow
verbal aurora
#

wdym as?

stable shadow
#

How did it work for you and not for me? Because I literally did this.

verbal aurora
#

now I have it set to any with list as internal and still list is gone

verbal aurora
#

do you have it in the right location? inside your config folder and then commands.json?

stable shadow
verbal aurora
#

why is it in the default folder?

stable shadow
stable shadow
#

even with the map admin

verbal aurora
#

yeah I noticed that.. i don't remember admin doing this before

stable shadow
#

I disable the command and lose all administrator privileges? lol

verbal aurora
#

do you plan on giving anyone op besides yourself?

stable shadow
verbal aurora
#

i see why these permissions aren't documented.. they're shit

verbal aurora
#

You can also use game_directors which is your "operator" permission level

#

Just make your file look like this though:

{
    "permission_levels": {
        "list": "internal"
    }
}```
#

Remove the default part

#

That'll make everything default and then you can disable the ones you want disabled

#

Also it seems that the help and ? command are weirdly hardcoded

#

They will be hidden from the list but can still be used

stable shadow
stable shadow
verbal aurora
#

All commands in that list no longer work.. besides help

verbal aurora
#

You don't need to include "w" or "msg" as they seem to be all part of the "tell" command

stable shadow
#

I've already achieved what I wanted.

verbal aurora
#

Happy to help, sorry that was such a pain to get working

#

Again.. if Mojang actually documented stuff like this we wouldn't be having problems like this

stable shadow
verbal aurora
stable shadow
#

Because the community doesn't post it on the Bedrock Wiki.

halcyon phoenix
#

I have no idea but there is a guide

serene lava
#

Hey. ¿There's a script that makes a entity fast impulse to a straight direction?
Something like "applyimpulse"

fickle dagger
#

would it be better to use maps or arrays if I wanted to store ids of entities that the player looked at, then clear it when they're not looking at them anymore?

fickle dagger
round bone
fickle dagger
#

I figured this would be the best way to do it, since I need that property override thingy scripts have

#

which gives me another question

#

it's possible to get keys from a map right?

#

not just value

round bone
frozen vine
#

Is there any way for me to see when I've started breaking a block?

warm condor
#

do you happen to know if this is still the case?

frozen vine
scarlet lynx
#

Hey does anyone know why this won't work?


system.run(() => {
    for (const player of world.getAllPlayers()) {
        const kit = { x: 5000, y: 4, z: 502, row: 0 }
        const items = getKitItems(player, kit, 1)

        const inventory = player.getComponent("inventory").container
        const slot = inventory.addItem(new ItemStack("minecraft:chest", 1))

        const shulkerInv = slot.getComponent("minecraft:inventory").container

        items.kit.forEach(i => shulkerInv.addItem(i))
        items.armor.forEach(i => shulkerInv.addItem(i))

        inventory.setItem(slot, shulker)
    }
})

I'm trying to add items to a chest and give it to the player.

verbal aurora
#

For some reason they don't exist once they go inside of a container

distant tulip
#

shulker is not defined to start with

#

there is other ways to do what you are trying to do

wary edge
#

The inventory item component only works for bundles.

distant tulip
#

setBlock
get inv component
put the items you want
get the block itemStack

verbal aurora
wary edge
verbal aurora
#

Fair

potent tundra
#

Does anyone know how to do this? I want to add a custom component to a custom item that makes it so that, if the item is used on a dirt block, it transforms that dirt block into a grass block. I tried to use onUseon, but I can't figure out, how to use that returned BlockPermutation to replace the block.

noble tiger
#

How do I stop the LocationInUnloadedChunkError error from popping up? I'm using getBlockFromViewDirection and it triggers the error when looking into unloaded chunks

halcyon phoenix
neat hazel
#

Is it possible to prevent the player from changing the selected slot?

bronze pulsar
slow walrus
#

oh that was a while ago nvm lol

chrome flint
#

how do i get all block ids again?

glacial widget
#

You should be able to understand

chrome flint
#

Now the only problem i had is how to only get blocks that is an item, because blocktypes returns other block ids that is not the same as the item id

winter plaza
#
mc.system.runInterval(() => {
  for (const player of mc.world.getPlayers()) {
    const riding = player.getComponent("minecraft:riding")?.entityRidingOn;

    if (riding) {
      const mobData = Mobs.find(mobData => mobData.id === riding.typeId);

      if (mobData && !player.hasTag(mobData.tag)) {
        console.warn(`2: ${mobData.tag} e ${mobData.item}`);
        mc.system.run(() => {
          player.addTag(mobData.tag);
155-          player.runCommandAsync(`give @s ${mobData.item} 1 0 {"minecraft:keep_on_death":{},"item_lock":{"mode":"lock_in_slot"}}`);
        });
      }
    } else {
      for (const mobData of Mobs) {
        if (player.hasTag(mobData.tag)) {
          console.warn("1");
          player.removeTag(mobData.tag);
          removeItem(player, mobData.item);
        }
      }
    }
  }
}, 5);

[Scripting] [error] -TypeError: not a function <anonymous> at (wg.js:155)

#

help

verbal aurora
#

runCommand()

winter plaza
#

Ok

verbal aurora
naive tinsel
#

anyone have an updated item list for aux ids?

#

half my items are not displaying the correct icon whilst half of them are correct

winter plaza
#
import * as mc from "@minecraft/server";

mc.world.beforeEvents.entityRemove.subscribe(data => {
const entity = data.removedEntity;
const player = entity.getComponent("projectile")?.owner;

const dim = entity.dimension;
const loc = entity.location;

const test = Projectiles.find(test => test.id === entity.typeId);

if (!test) return;

const particles = test.particlesImpact ?? [];

const others = dim.getEntities({
location: loc,
maxDistance: test.rangeImpact,
excludeTypes: ["minecraft:item", "minecraft:xp_orb"],
excludeFamilies: ["inanimate", "projectile", "attack"]
});

mc.system.run(() => {
for (const part of particles) {
if (!part) continue;
try {
dimension.spawnParticle(part, loc);
} catch (err) {
console.warn("Erro ao spawnar partícula:", err);
}
}
for (const mob of others) {
if (!mob.isValid()) continue;
try {
console.warn('dano');
155-        mob.applyDamage(test.damageImpact, { damagingEntity: player, cause: "entityAttack" });
} catch (err) {
console.warn("Error applying damage:", err);
}
}
});
});

export const Projectiles = [
{
id: "dred:fire",
rangeImpact: 5,
damageImpact: 10,
particlesImpact: [
"minecraft:camera_shoot_explosion"
]
}
]

It's not working, it's giving the error "Error applying damage: not a function" on line [number]. 155

cursive fog
#

How do you guys implement dynamic property for an item?

warm mason
winter plaza
verbal aurora
#

so because there's no tabs (the empty spacing) that's why they said it

meager cargo
#

I have a question, is there a possibility to prevent entity being hurt by a player with some item in hand?
There is no beforeEvents.entityHitEntity and I can't figure it out without manipulating vanilla behaviors

warm mason
fickle dagger
#

is it possible to modify spawned particles with scripts?

#

like setting the expiration on a condition

fickle dagger
#

knew it

#

well thank you for the info 🙏

gaunt salmonBOT
warm mason
#

The "Show Live Diagnostics" button in the Minecraft debugger still doesn't work, right?

tender pier
#

can someone help me? i don't get any logs and I don't really know what I am doing wrong

warm mason
#

use onPlayerBreak

tender pier
#

it still doesn't work

warm mason
#

bruh

tender pier
warm mason
#

hmmm

#

do other scripts work?

tender pier
warm mason
#

show code again

tender pier
#

I just changed a lil

warm mason
#

not "On"

tender pier
#

ty

#

it works now

#

nv

#

it does't

#

why if I add an "if" it just doesn't work

umbral dune
#

Debug your code using console.log

summer cloud
#

On the entityhitentity event is it possible to “cancel” the original damage and replace it with my own, so like if a condition is met I can make a certain weapon do less damage

summer cloud
# wary edge No.

Would it be possible to apply my own damage the tick of or tick before and since after the hit the mob would have invulnerability blocking the intended game damage?

wary edge
#

Due to iframes.

summer cloud
fresh current
#

so im trying to take out a model and script from a mod and add it to my addon anyone can help

round bone
#
  1. Don't be that offensive.
  2. Indentation is very important to your code - it's one of the factors to maintain your codebase readable for others, even you.
#

If you're too lazy to format files on your own, use libraries like Prettier.

prisma shard
#

lol

halcyon phoenix
halcyon phoenix
#

wait

#

can you lay out what you meant?

fickle dagger
#

appear and disappear when player holds out item

#

the problem is the expiration

#

I don't think particles can detect accurately when the player stops doing a certain thing

#

or if they're even able to at all

halcyon phoenix
fickle dagger
halcyon phoenix
fickle dagger
#

👍

halcyon phoenix
# fickle dagger 👍

also it's nice to see you again Felix, what are you working on? if it's fine for you to tell/

fickle dagger
#

things related to furnitures and such

#

been learning much more scripts as of late

#

and think I'm starting to understand it now

#

which means the plan to continue the L4D2 addon continues

#

other than that I just have been doing nothing other than playing Factorio

#

fun game but offtopic

halcyon phoenix
fickle dagger
#

but not the other infecteds yet

#

wait wrong person

#

@lilac glacier

halcyon phoenix
#

oh cool

final ocean
#

Do you think obfuscated dynamic property has any effect?

wicked girder
deep quiver
wicked girder
#

Alright ty

warm mason
shy leaf
#

dynamic properties are only accessible in the same scripting environment

#

you cant get DPs from other environments

somber onyx
#

hi, you know if it’s possible to be able to give permission to a fly player in the idea of the mayfly

round bone
somber onyx
round bone
somber onyx
round bone
#

Yes

#

If you want to add types to ability calls, just wrap it around a class

somber onyx
#

indeed, it’s a good idea I think that I will do this

round bone
somber onyx
#

why not

round bone
somber onyx
#

TS please

round bone
#
import { Player } from "@minecraft/server"

class PlayerAbilityWrapper {
    private player: Player

    public constructor(player: Player) {
        this.player = player
    }

    public setMayfly(status: boolean): void {
        player.runCommand(`ability @s mayfly ${status}`)
    }
}
round bone
# honest spear #overtakes!!!!

Player class is so bloaty at this point, that wrapping a single method inside an another class might be a bit better approach in my opinion

honest spear
#

but in that case i would prefer static method with player as argument so i don't have to create instance every time

#

or something

#

¯_(ツ)_/¯

honest spear
round bone
honest spear
#

my favorite imaginary modifier

round bone
honest spear
honest spear
#

i wouild use over takes with namespace like object

player.abilities.mayfly = true;
#

or just method setMayfly

#

its more explicit

honest spear
#

no you don't have to

#

just getter

#

with the class you have

round bone
honest spear
round bone
#

Oh, I get it

round bone
nova flame
#
"minecraft:damage_sensor": {
                "triggers": {
                    "on_damage": {
                        "filters": {
                            "any_of": [
                                {
                                    "test": "has_tag",
                                    "subject": "self",
                                    "value": "noPvP"
                                },
                                {
                                    "test": "has_tag",
                                    "subject": "damager",
                                    "value": "noPvP"
                                }
                            ]
                        }
                    },
                    "deals_damage": false
                }
            },``` what would i have to do with these damage sensors to make it so that players can only hit other players that share a a tag 
Tag A hits all tag A player nobody else
Tag B hits all tag b players but no tag As. etc
is this possible without script api
warm mason
honest spear
#

use typescript

warm mason
honest spear
#

I am at bed now so typing it on mobile is really bad, ping me tomorrow or ask @woven loom
but basically use module declaration syntax

warm mason
honest spear
lilac glacier
snow jungle
#

Can you change the apareance of a NPC with gametest?

snow jungle
#

nm

drowsy scaffold
#

can you get existing FOV of a player to use with camera.setFov()?

drowsy scaffold
#

greatly saddening

thorn flicker
#

hopefully getFov() will be a thing

drowsy scaffold
#

there's the camera API for it but it's just useless rn because I don't know how to modify FOV off of that 😭

drowsy scaffold
# thorn flicker ?

the setFov method, but it's kinda useless rn imo since you can't get the player's base FOV in the first place to read anything off of it

thorn flicker
#

but yeah, it would be better if we could get the current.

drowsy scaffold
#

that's more of what I was meaning, yeah

simple zodiac
wanton ocean
#

Anyone know if it's possible to remove an item inside a bundle?
The thing I wanna do is make an item both right clickable and change what it does depending on what's inside of it's bundle functionality

wanton ocean
#

or a reference in general

halcyon phoenix
#

bundles has an inventory component

#

modify the bundle and update it

wanton ocean
#

oh i see

#

okay thanks

wanton ocean
#

and with only one item available it just throws out what i want it to read

#

im not sure if there's a way around that or not

halcyon phoenix
wanton ocean
nova flame
#

anyone available for a bit of testing

#

i need to test stuff all my friends are in skl and im out of devices

wheat condor
nova flame
#

it works for when 1 player is hitting another

#

but i need to see if 2 players attempting the hit at the same time will block both or let in both

wheat condor
#

whats your xbl?

nova flame
#

ill be on in a minute

#

its Razzberriiz

#

@wheat condorable to vc or nah

wheat condor
nova flame
#

@wheat condorwhats ur xbl

#

i must add you through minecraft itself

wheat condor
#

i aredy sent the request

nova flame
#

gamebar wont open

neat hazel
#

What's the right way to do this?(Lock mode and Keep on Death)

inv.setItem(player.selectedSlotIndex, new mc.ItemStack("hash:item.2"));

inv.getItem(player.selectedSlotIndex).lockMode = 'slot'

inv.getItem(player.selectedSlotIndex).keepOnDeath = true
shy leaf
#
const item = new mc.ItemStack("hash:item.2"));

item.lockMode = 'slot'
item.keepOnDeath = true

inv.setItem(player.selectedSlotIndex, item)
glacial widget
#

anyone know the max reach on bedrock by player hit?

nova flame
#

can i ask u a Q

glacial widget
nova flame
#

to display a health indicator or a rank of some sort

#

for example

#

i know you did it with HCV once

dawn zealot
nova flame
#

@dawn zealotthanks

dawn zealot
#

np

nova flame
#

also how is your skyblock coming along

#

i seen u start on it

#

are u still making it?

dawn zealot
#

its pretty good but MC bug stopping me from working on it

dawn zealot
dawn zealot
#

script api isnt returning player pfid

nova flame
#

no other way of doing?

dawn zealot
#

so me database no worky

#

there is

#

but i dont feel like changing everything

#

so just waiting for it to be fixed

nova flame
neat hazel
#

How do I find the index of a slot(Example, slot: 2)?

This returns an [Object object]

const inv = player.getComponent("minecraft:inventory");
const lastSlot = inv.getSlot(player.selectedSlotIndex)

player.sendMessage(lastSlot)
warped blaze
neat hazel
#

It was so simple

#

Tnhk

supple perch
#

heya!

#

so i am facing an issue while trying to use herobrine's chestui

#

(couldn't send link because of automod)

#

anyway, does anyone have a script that can update the typeIDs? python, javascript, anything really

shy leaf
#

i dont think the link should be automodded?

#

especially github links

supple perch
shy leaf
#

oh

#

thats fair

#

but well i posted it for you

supple perch
#

and thanks

#

for posting the link

shy leaf
#

whatcha mean by updating the typeIDs?

supple perch
#

see his pack works by aux ids

#

which basically translates ids like minecraft:stick to a number

shy leaf
#

ah i get it now

supple perch
#

when minecraft adds new items, etc. it breaks

shy leaf
#

well

#

good news

supple perch
#

and so i am asking if there's a more streamlined way of just updating them

supple perch
#

oh?

shy leaf
#

two days ago

supple perch
#

nice

#

i must've not seen it

#

thanks!

shy leaf
#

np

supple perch
#

heya i got another question if you're still online

supple perch
#

like

#

hopper1: -> <- :hopper2

#

because there is a dupe related to it

#

i know how to use the playerPlaceBlock event

#

I'm just not sure how to get the direction of the new block

#

cuz there isn't a .face property just chilling on it

#

and also i don't know how to check if they're facing eachother, cuz I'm terrible at math 😭

verbal aurora
#

I think it's called the permutation or state

supple perch
#

but there isn't a .direction on it, and for good reasons

#

I'm not sure what state relates to the lateral directions (ones that aren't up/down)

#

of a block

verbal aurora
#

not sure if they've changed the direction bits around but using commands, facing_direction 2,3,4,5 are the correct directions and then you have to make sure that toggle_bit is true

supple perch
#

ah okay thanks

verbal aurora
#

it's 2-3 and 4-5 that connect

supple perch
#

thanks!

#

i really appreciate the help

verbal aurora
#

👍

verbal aurora
#

only one direction done 😭

#

i've never actually messed with permutations lol

neat hound
#

Is there a way to get the spawn or any ticking area coordinates?

In the pack I am making, I want to turn it off if any entities files are broken/missing. I have that down, but it relies on the dim/loc of that first player. So for local and realms it may work, but servers do not need a player on...

Any suggestions, before I just consider no players as validation and if it's broken, they just get errors?

wary edge
neat hound
#

Oh wait... I thought I looked first, but now I see world.getDefaultSpawnLocation. That may work.

knotty salmon
glacial widget
#

tags

supple perch
#

could you send the code you used for it?

verbal aurora
supple perch
#

but you can send javascript

verbal aurora
supple perch
#

nice

#

thanks

verbal aurora
#

this only accounts for placing them by the way

verbal aurora
#

like i'm only checking on playerPlaceBlock

supple perch
#

isn't placing the only way to put them down?

#

like in pure survival

#

as a normal player

verbal aurora
#

yeah but if you use a piston and place it one block away that bypasses the code i wrote

supple perch
#

ah

#

i guess I'll have to also check out the piston stuff

#

this is gonna be messy probably

supple perch
#

i revamped it a bit, don't be fooled by the .js extension, it's actually typescript, discord doesn't want me to send typescript tho so i had to rename it

#

anyway I'm not sure why the piston logic doesn't work

#

I'm too tired from finishing alot of todos today

#

I'm going to go sleep

supple perch
nova flame
#
world.afterEvents.playerBreakBlock.subscribe((ev) => {
    console.warn("block broken");
    const player = ev.player;
    const multiplier = getScore(player, "multiplier");

    if (ev.block.typeId == "cosmos:tier_1_ore") {
        console.warn("Tier 1");
        addScore(player, "Pending", 1 * (multiplier / 100));
    } else if (ev.block.typeId == "cosmos:tier_2_ore") {
        addScore(player, "Pending", 2 * (multiplier / 100));
    } else if (ev.block.typeId == "cosmos:tier_3_ore") {
        addScore(player, "Pending", 3 * (multiplier / 100));
    }
});```
 anyone know why this aint working
#

no errors

#

the first .warn works but the 2nd one no

#

even tho the typeId is correct

warm mason
#

the block is already broken, when the event fires, so it's typeId almost always will be "minecraft:air"

dull shell
#

can I change a certain area of my world to a different biome?

broken pawn
#

any example of adding container to armor slot?

cold grove
broken pawn
#

wait

#

A.getComponent(EntityInventoryComponent.componentId).container.addItem(new ItemStack('minecraft:'+))

#

but for specific armor slot

summer cloud
#

is it possible to get if the player has a title displaying on their screen?

sharp elbow
#

Titles are generally sent as packets to the client, so no; that would be like reading if a sound is being played.

#

But generally, screen titles are very controlled. If you need to know if something is on the screen, chances are you were responsible for putting it there to start with.

#

What do you need to get that for?

summer cloud
#

well my issue is i have a system that displays a title over and over with a value that i then customive with a JSON UI but i was thinking if someone added my addon to a server if the title is constantly being displayed it would override if the server tries using titles for whatever

#

so i was going to do something where before displaying i check if the player has a title allready being displayed so the server or whatever else takes priority

sharp elbow
#

Ah, gotcha. That is a tricky one

summer cloud
#

i do have it rn so if they dont hold my custom weapons (when it gets displayed) it removes it so titles will show then but again if they hold the weapon it overrides any other titles

glacial widget
#

whats the limit of setting dynamic properites on a player?

distant gulch
#

a lot lol

round bone
glacial widget
runic crypt
#

What's difference between setDynamicProperties and setDynamicProperty in Script API?

supple perch
#

one lets you set one dp

#

while one lets you set multiple

#

i think the multiple one takes something like:

.setDynamicProperties({
  key: 'value'
});
#

the other takes something like:

.setDynamicProperty('key', 'value')
supple perch
#

i couldn't get it to work mainly because of the attached blocks legitimately being piston arm extended or something and air

#

no hoppers whatsoever

round bone
supple perch
#

yeah i guess

#

but it's not really like, THAT different

supple perch
round bone
round bone
supple perch
round bone
#

On which line there is an error or smth?

supple perch
#

no there are no errros

#

errors*

#

it's more of a behavioural error

round bone
#

Does listener trigger?

supple perch
supple perch
#

if you happen to know a workaround to get the blocks moved by a piston or something, please let me know

round bone
#

Doesn't block change due to position change?

supple perch
round bone
#

Maybe that's an issue

supple perch
#

hm

round bone
#

To be honest, I haven't coded any add-ons in a while, lol

supple perch
#

lol

#

neither have i

#

i just thought that the .getAttachedBlocks would atleast have a reference to the blocks

#

i guess i am gonna have to do a more advanced getting method

#

I'm not looking forward to it

#

thank you for the help anyway

warm mason
supple perch
#

well i suspected that too

#

but it still doesn't change

#

lemme send the code

#

I'll open a post

shy leaf
#

but in interval, its probably better to use that one

round bone
shy leaf
#

i didnt meant that but yeah i guess you could also say that

warped blaze
broken pawn
#

EntityEquippableComponent. which one?

#

i must read again

warped blaze
#
Player.getComponent("equippable").setEquipment(<slot>, ItemStack)```
broken pawn
#

looks good

#

imma try it

warped blaze
broken pawn
#

how about non-player entities?

#

like wither_skeleton

warped blaze
#

/replaceitem

broken pawn
#

well, i've tried using the command but it doesn't work

does it means i have a wrong input?

#

imma try it tomorrow, thank you for the explanation sir 🗣️ 🔥

loud frigate
#

from a script how can tell which device I'm on

loud frigate
viral wigeon
#

Does someone have a custom fence template with the new component for this instead of using scripting API?

gaunt salmonBOT
broken pawn
tardy pivot
#

wasn't there a release to detect how the blocks were destroyed, like via fire destruction

halcyon phoenix
viral wigeon
#

Scripting api ones are kinda slow

wary edge
viral wigeon
#

I'm very bad at block components that's why I was looking for an example because ik there's a new component but I don't have idea how to use it 😔

#

I will try tho since I see there are no templates yet

wary edge
viral wigeon
broken pawn
# round bone Can you show me your command?
world.afterEvents.entitySpawn.subscribe(({entity:A})=>{
if(A.typeId=="minecraft:wither_skeleton"){MobBuff(A,0.5);ArmorEquip(A,Head_4,Chest_4,Legs_4,Feet_4);HandEquip(A,Main_4,0.95);A.runCommand("Replaceitem Entity @s Slot.weapon.offhand 0 totem_of_undying");};})
#

sorry cuz i have a lot of task on my academic

supple perch
#

i actually thought it was obfuscated for a second

#

until i focused on it

#

you should probably try to make it a bit more readable

#

for easier debugging

#

and so that people can understand your code easier

#

anyway guys is BlockVolume.isInside faster than using vector3 calculations to check if a vector is inside a volume?

supple perch
#

and ‘Replaceitem’ should be ‘replaceitem’
and ‘Entity’ should be ‘entity’

supple perch
#

because i don't really own a pc, and i can't use the minecraft debugger

warm mason
round bone
round willow
#

Anyone knows how to subscribe to chats? The chatSend event doesn't seem to work

supple perch
#

world.beforeEvents.chatSend.subscribe

#

idk if there's an afterEvent too but yea

round willow
#

i have beta api enabled too

broken pawn
#

then can i use this?

${P1[Math.floor((Math.random())*P1.length)]};
broken pawn
#

🫡 🗣️ 🔥

distant tulip
broken pawn
#

i have tested it back in the day, it was work

#

but i forgot about now

#

lemme check again

#

even this works

distant tulip
#

alr

broken pawn
#

as long the "@" isn't upper case

round bone
warm mason
warm mason
broken pawn
#

sure, i'll try it 🗣️

#

i write the code either it'll confuse stealer or confuse myself

prisma shard
dawn zealot
#

Am i allowed to ping darknavi about a bug thats not been fixed over like 2 months

neat hound
#

Just complain about it like everyone else, and of course do a bug report and watch it.

dawn zealot
#

Bug*

neat hound
#

ok, good. That is about all you can do. Bugging them is not going to make it get done. They have priorities and their own internal politics. Be patient and work around it.

tender pier
#

How can I interact with vanilla blocks?

steep hamlet
#

is it possible to get projectile impact damage value?

round bone
neat hound
tender pier
fierce pilot
#

So here is where I can get help with my script right?

broken pawn
#

Correct

fierce pilot
#

Okay

#

Sry this is my first time in this server so I'm kinda new to this

#

So how does this work?

fluid flame
#

Is it possible to remove the player join message?

#

By using scripts, like idk playerJoin or chatSend

fierce pilot
#

I think so?

#

Let me find out

#

I believe this might work
world.beforeEvents.playerJoin.subscribe((ev) => {
ev.cancel = true;

fluid flame
#

Uh just that? But does it changes on chat?

fierce pilot
#

I'm kinda new to this so it might not work

fierce pilot
#

It should cancel the event and remove it from the chat completely.

#

If it works

fluid flame
fluid flame
fierce pilot
fluid flame
#

I know there is something called globalJoinMessage and globalLeaveMessage

fluid flame
fierce pilot
#

So what are you making rn

#

If u don't mind me asking

#

Okay Ill be testing it out

fluid flame
# fierce pilot So what are you making rn

Oh I am making a friend's SMP, but I needed to learn script to make some items like an item to toggle you invisible and visible, one to toggle between creative and survival, one for setting me in spectator, one for spectator but summoning a lighting and one for toggling invisibility but summoning a lightning

fierce pilot
#

Oh I think I can help you with that

fluid flame
fierce pilot
#

Oh

#

But umm what are you using to make the scripts

fluid flame
#

Wdym

fierce pilot
#

What app do you use

fluid flame
#

Oh

#

Bridge

#

It is a site, but if I could I would switch to VSCode

#

WAY better ngl

fierce pilot
#

Okay

#

May I ask for something

runic crypt
#

Is there a way to cancel or prevent player to player damage directly in the script without modifying player.json file?

broken pawn
#

even it didn't want to run in my character itself

#

B.runCommand('Replaceitem Entity @s Slot.Hotbar 8 Ulkd_Ess:Debug_Stick 1 0 {"keep_on_death":{},"item_lock":{"mode":"lock_in_slot"}}');

this one is actually work

#

i just wanted to make it like this

slow walrus
#

why are you capitalizing the commands 😭

slow walrus
#

also you shouldn't be using capitals in the commands

chrome flint
#

Can i add score to offline players if i know their entity id ?

broken pawn
halcyon phoenix
#

he born to make essays but resorted to code

broken pawn
#

🗣️ 🔥

broken pawn
#

i mean it's online

broken pawn
#

anyway, will function file works for applying entity an armor?

#

entity.runCommand("function entity_armor")

halcyon phoenix
chrome flint
#

Okay that seems the best way to do it

halcyon phoenix
#

goodluck

wheat condor
#

i need someone to quick debug my addon you need only 20 seconds jump sprint (move randomly around) and tell me if it stutters or lag

shy leaf
#

(if you dont know what that is, its a debugger command that records and calculates performance usage)

#

(or live diagnosis if youre using vscode and minecraft debugger)

somber onyx
#
system.beforeEvents.startup.subscribe(({ customCommandRegistry }) => {
    customCommandRegistry.registerCommand(
        {
            name: "cb:tpa",
            description: "Ce téléporter a un joueur !",
            permissionLevel: CommandPermissionLevel.Any,
            mandatoryParameters: [
                {
                    name: "send | accept | deny",
                    type: CustomCommandParamType.String
                },
                {
                    name: "Joueur",
                    type: CustomCommandParamType.PlayerSelector
                }
            ]
        },
        (origin, methode: tpaMethode, targets: Player) => {
            const player = origin.sourceEntity as Player;

            if (player.isInPvp) {player.msg("§cTu est en combat ! "); player.playError(); return { status: 0 }}

            if (!player) return { success: 0, status: 0 };

            const targetPlayers = Array.isArray(targets) ? targets.filter(t => t instanceof Player) : [];

            if (targetPlayers.length === 0) {
                player.msg("§cErreur : Aucun joueur trouvé.");
                player.playError();
                return { success: 0, status: 0 };
            }
            
            const target = targetPlayers[0] as Player;
            tpa(player, target, methode);
            return { success: 1, status: 0 };
        }
    );
});

Hi, where would someone come from?

wary edge
#

For the string?

somber onyx
wary edge
somber onyx
wary edge
#

Yes, for the PlayerSelector at least.

somber onyx
viral wigeon
#

Hey @wary edge

#

Sorry for the ping but I know you know a lot about this

#

Is there any way to display items in blocks? Example a pan with a raw cooked beef

#

Like this

tender pier
#

Can I get some help with this?

#

I'm using v1

wary edge
tender pier
#

scripting v1

#

1.9.0

wary edge
#

What's the event?

tender pier
wary edge
tender pier
wary edge
#

That's quite literally what the error is, empty hand = undefined item. Hence it cannot grab a typeid.

tender pier
#

oh

#

ty

#

now I get this 😭

wary edge
#

You can't set permutation in a beforeEvent, you need to use afterevent or wrap it with system.run

tender pier
#

oh, thanks

tender pier
#

how can I make this work?

wary edge
round bone
#

Did you learn JS before trying to use Script API?

tender pier
round bone
# tender pier no 😭

Consider learning it before Script API. It's very fundamental to know the basics of a language itself, before getting into deeper concepts in Script API.

round willow
# warm mason show code

import { world } from "@minecraft/server";

world.beforeEvents.chatSend.subscribe(function(data) {
world.sendMessage(Echoing )
})

sage portal
#

Small question: is the player gliding property read-only?

warm mason
sage portal
#

Unfortunate.
Thanks though.

neat hound
#

put in a system.runTimeout or system.run to go in next tick

#

and read this #1067535608660107284 message

nova flame
#
system.runInterval(() => {
    const player = world.getPlayers()[0];
    const offhandItem = player.getComponent("equippable").getEquipmentSlot("Offhand").getItem().typeId;

    if (offhandItem === "cosmos:ring_of_regeneration" && getHealthPercent(player) > 60) {
        console.warn("Regen");
        player.addEffect("regeneration", 1, 1);
    }
}, 20);
``` anyone know whats wrong with this
#

theres no errors

#

its just not doing the console.warn or addEffect

warm mason
#

+no reliance on player == undefined

shy leaf
#

instead, do:

world.getPlayers().forEach(player => {
  player.addEffect()
})

or

for (const player of world.getPlayers()) {
  player.addEffect()
}
nova flame
#

oh right

#

i usually do that but windsurf tried that way so i thought it would be the same

#

@shy leaf

#

any idea why#

#

i found out

#

i think

shy leaf
#

the third argument accepts EntityEffectOptions

#

not a number

#

do

player.addEffect("regeneration", 1, { amplifier: 1 });
nova flame
#

no errors

shy leaf
#

out of my reach then

nova flame
#

found this on jayly site

#

villager.addEffect(MinecraftEffectTypes.Poison, duration, { amplifier: 1 });

#

what is vanilla-data

#

i never touched this

shy leaf
#

its an external library thats not included in native module

#

you need to either get the npm to use it

#

or use standalone file made by jayly

warm mason
nova flame
warm mason
nova flame
#

nvm

#

i realised

#

its in ticks not seconds

#

i just had it too low to show

final ocean
#

I think not

shut citrus
final ocean
#

Bt

#

Chac h nay ko choi

shut citrus
final ocean
#

Co

shut citrus
#

addon j

final ocean
shut citrus
final ocean
#

Co vai cai

#

Nhieu thu la rieng tu

full idol
#

I was trying to heal a player though effects, and Instant_Health amplifier 2 kills the player?!?

#

I guess I'll have to just get the health component and set health, but still

full idol
#

No idea! /effect @s instant_health 2 2 killed me

shy leaf
#

wtf 😭

#

overflow maybe???

#

but that shouldnt happen??

#

if its an overflow, it shouldnt trigger entityHurt event, but still, can you try tracking health changes via event callbacks?

round bone
shy leaf
round bone
fleet tinsel
#

Is there any way to capture private messages? Like using /w and /tell?

round bone
shut citrus
#

hox to fix property values return undefined?

wary edge
shut citrus
#

mojang doesn't note in documentation

sharp elbow
#

It does not make sense for it to. The server has no knowledge of the entity's geometry.

#

With entities, the behavior pack simply defines how the entity should interact with the world mechanically. It cannot know what the client definition might look like, because you could overwrite the definition (or geo) to use any other geo—now you are looking at two different sources of truth based on which client should be the one to interpret it.

#

Now you could hardcode what values those queries would return into the default values for those properties. Could even have some kind of script that populates it for you; read the geo, find the head bone, then stick the x-, y-, and z-axes of the bone's origin into each respective property.

snow knoll
#

I'm using a runInterval for a detection system that I made. I'm trying to figure out a way to make it detect the moment a player has a dynamic property set (kind of vague so), here's an example (not actual code):

system.runInterval(() => {
    if (!player.hasTag("startInterval") return;
    player.setDynamicProperty("TF", true)
    if (player.getDynamicProperty("TF") == true) {
    player.setDynamicProperty("TF", false)
    ...
    }
})```

How can I stop this from constantly looping through true and false every tick and only detect the moment that the loop initially starts?
#

Any help is sincerely appreciated

warm mason
snow knoll
# warm mason Why do you need such a system?

Great question honestly
I'm essentially trying to make an animation controller in a runInterval since I don't use player.json files (very dumbed down version since the regular one is a bit more lengthy)

#

So I need to detect the moment movement occurs in the player but not continuously so that it doesn't keep replaying animations from the tick that it starts

#

Its very specific movement in terms of its purpose so different from just walking and running regularly

#

I think I might've figured out a way using an event that's tied to when the movement begins so I'll see 🤷‍♂️
My apologies for being vague

warm mason
harsh robin
#

anyone know the lastest stable server version?

harsh robin
#

good

harsh robin
#

2.1.0?

warm mason
harsh robin
#

where do i find this at i keep forgetting

knotty salmon
shy leaf
#

it does

snow knoll
warm mason
snow knoll
warm mason
snow knoll
#

I'll do the latter since the former option may not be do-able due to 150 lines of code

snow knoll
# warm mason I mean, I don't know what system you have and I don't really understand what's g...

Basically, I made a flight system some time ago, but changed the system to not use player.json and when I did, it meant the animations were stiffened/static, so now I'm trying to create a system that mimics an actual animation controller.
So my plan if to make 2 different sets of uses of player.playAnimation(). One set to control the player beginning to move, and another set for just transitioning between animations
Because of this, I need the system to detect the players movement for the first moment of movement, so that if the player moves forwards in the beginning moments of flying, that movement will trigger an animation relating to the first state
(If I didn't make sense let me know)

warm mason
#

Sorry for the late reply

snow knoll
#

Is WeakSet from base javascript or script API?

warm mason
snow knoll
nova flame
#

ago

cursive fog
#

Are there any script component that allows the player to summon a projectile
Similar to minecraft spawn entity

halcyon phoenix
cursive fog
broken pawn
#

like how entity.dimension.spawnEntity() ?

shy leaf
#

the closest thing you can have is to spawn a projectile and use .shoot() method from projectile component

warm mason
# cursive fog Basically spawns an entity when this component is triggered Like launching a sno...
/**
 * @param {String} projectileId
 * @param {import('@minecraft/server').Dimension} dimension
 * @param {import('@minecraft/server').Vector3} location
 * @param {import('@minecraft/server').Vector3} direction
 * @param {Object} options
 * @param {Number} [options.power]
 * @param {Number} [options.uncertainty] Controls the accuracy of the shot. A value of 0 is perfect accuracy.
 * @param {import('@minecraft/server').Entity} [options.owner]
 */
function shootProjectile(projectileId, dimension, location, direction, options = {}) {
    const entity = dimension.spawnEntity(projectileId, location);
    const projectile = entity.getComponent('projectile');
    if (projectile == undefined) return;

    projectile.owner = options.owner;

    const power = options.power ?? 1;
    projectile.shoot({
        x: direction.x * power,
        y: direction.y * power,
        z: direction.z * power
    }, { uncertainty: options.uncertainty });

    return projectile;
}

Usage example:

shootProjectile('arrow', player.dimension, player.getHeadLocation(), player.getViewDirection(), {
    power: 2,
    uncertainty: 5,
    owner: player
});
cursive fog
nova flame
#
function savePlayerData(player) {
    const dp = world.getDynamicProperty("playerScores") || {};
    dp[player.id] = {
        name: player.name,
        id: player.id,
        Coins: getScore(player, "Coins"),
        Kills: getScore(player, "Kills"),
        Deaths: getScore(player, "Deaths"),
        Hours: getScore(player, "Hours"),
    };
    world.setDynamicProperty("playerScores", dp);
}```
#

anyone know the problem here

somber sundial
#

where are you calling it from?

warm mason
digital robin
terse pulsar
#

Anyone can help me on #1441132483708977292 ?

unique apex
#

is it worth it to implement a proper search algorithm if I'm searching the players inventory a lot? or is checking every slot good enough

unique apex
#

thats fantastic i didnt know that was a thing

#

and ive read this exact page 💀

#

embarassing

shy leaf
#

and the methods only accept ItemStack as parameter

#

so you still need to use old loop way for finding items with same typeId or something like that

shy leaf
unique apex
#

okay thanks :) thats useful for me

shy leaf
#

i think i had a function used for inventory loop, hold on...

shy leaf
unique apex
#

no i call it only explicitly but will be doing so a lot

#

working with simulated players

shy leaf
#

i see, so not runInterval then

shy leaf
# unique apex no i call it only explicitly but will be doing so a lot
function inventoryAddLore(source) {
    const inv = source.getComponent('inventory').container;
    let slot = inv.size;

    while (slot--) {
        const itemSlot = inv.getSlot(slot);
        if (!itemSlot.hasItem()) continue;

        const item = itemSlot.getItem();
        if (!item) continue;

        // ...
    }
}

this is the snippet of old inventory loop code i used before

#

im not sure if making an algorithm is worth it since they all boil down to looping

unique apex
#

Decrementing from the inventory size is so smart actually

shy leaf
#

i remember getting this from somewhere

#

but i forgor

unique apex
shy leaf
#

meh, unless you meant larger database as in huge servers that does heavy lifting in a regular basis

#

i think itll be fine

unique apex
#

Yeah, something more than 36 slots lol

#

Thanks for the advice!

shy leaf
#

np

knotty plaza
#

For some reason, when I change the state of a block that has 2 custom components, one of the components stops working

#

Both components are registered in the block "components" property and not inside any permutation

#

I even tried getting the component with block.getComponent() and it becomes undefined once in the second state

knotty plaza
mystic harness
#

hey yall where can i ask about bds? i js wanna ask on how can i do server switch using commands or scripts idk

#

used with server admin am i right?

warm mason
#

make a post and add the BDS tag

#

or just ask here

mystic harness
#

okay thanks

#

so basically i can ask here in general about it too right

mystic harness
#

anyways where can i see the console logs in bds

#

i cant see any script errors i alr placed it in dev behavior packs

warm mason
mystic harness
#

i dont see it either

granite cape
#

hey

#

what new update?

prime zenith
#

Can i make a custum block act as a redstone block but only when an if condition is true

wary edge
prime zenith
wary edge
prime zenith
#

@wary edge ty but how do i get script to change a blocks block state

mystic harness
#

99999

#

100,000th message

#

anyways

#

how can i have subcommands (not enums) in custom command

#

like this

valid ice
fallen cape
mystic harness
#

aw man

#

but is it possible when the args only show depending on the enum choice?

mystic harness
#

💔💔💔

prime zenith
#

When using permutations how do i use a script to change a blocks block state

lilac glacier
#

can you make the entity move while riding an another entity using applyImpulse?

prisma shard
#

#1067535712372654091 is dead for a long while xd

halcyon phoenix
#
BlockPermutation.resolve("minecraft:sign", { ground_sign_direction: 8 });
halcyon phoenix
#

or like this

block.setPermutation(block.permutation.withState('si:growth', 3))
#

I don't know if this still works

#

this was done at 1.21.3

open urchin
#

They both work still, if you use the first one make sure you import BlockPermutation

prime zenith
#

When using permutations how do i use a script to change a blocks block state

distant tulip
#

Bruh, read the two messages above

prime zenith
warm mason
prime zenith
#

Oh i have them blocked dont remember why memories horrible

#

So lets say a block uses a world dynamic property integar

When that integar is above 0 it uses permutation that req true if it hits 0 that permutation is set to false

misty dagger
#

Is there a way to check which player a phantom is targeting within a script?

misty dagger
#

Nope, Marketplace.

wary edge
#

Tough luck then.

misty dagger
#

Darn. I'll either forget it or make something super janky. lol

warped kelp
#

I'm using scripts to give my boss entity multiple firing patterns.
Cooldown, projectile/entity summoned/shot, range and spread, sound, all customizable

Music is Epic the musical

celest relic
#

Does anyone else get the error "unknown block descriptor" when using itemStack.matches?

snow jungle
#

How can I get firework data?

#

Like can i see things like the level or the pattern

prime zenith
#

I really wish i could get a team on my projects doing solo is really draining

snow jungle
#

do you know it?

celest relic
#

As soon as I added this line the error appears once per world load, when I interact with a block (This line of code is under a playerInteractWithBlock before event)

#

The script still performs normally, however. I also found it odd that the content log says its a JSON error

warm mason
celest relic
#

Yeah, that's probably what I'll do. Thanks!
-# (Should I file a bug report)

tardy pivot
#

is getLightLevel() is still on beta?

mystic harness
#

how can i stop players from glitching into blocks using ender pearl?

ripe sentinel
#

How can we make addon achivement friendly

meager zenith
#

can I teleport an entity to a location in a different dimension that's loaded by /tickingarea

#

I tried this and it does work but the entity just cease to exist

verbal yew
#

Dose any one know the new player leave

#

event

gaunt salmonBOT
subtle cove
#

#debug-playground, for endless usage of the bot/app

prisma shard
knotty plaza
vast rune
#

if i create an object which contains some x y z component then how could i save that position if i exit out

#

or just, how do i store objects containing anything even when they only exist in the script