#Open Denizen Discussion Thread
1 messages · Page 3 of 1
I thought crash to desktop just killed you and your entire party.
All i remember it doing is just giving me an achievement
should this command:<map[dbStats=1]> be command:[dbStats=1] instead?
(mongo command)
phone autocorrected lmao
i meant mages
actually i think even command:dbStats=1 is also fine
is this a lot
no
link pls :(
Stats for Denizen.
Denizen is a scripting engine for Spigot servers!
it's monkey's website ^
neither did i lol, just spent a couple minutes in the search bar
from:mcmonkey has:link stats
HOLY
Gigachads
behr sent an ex command at some day, which counts the script container_types
i think its safe to assume nimsy and 0tick are some of them, considering the crazy stuff they make
would not be suprised if nimsy only has like 10 10000 line scripts
I should my count check when I get on my computer
as per /denizen scripts, i have 189 scripts total
I forgot that this thing exists lmao
but where do you see the total
that thing at the top is the page number
/ex narrate <util.scripts.size>
ye that
oh, i counted them
i have 24 pages, each having 8 scripts, and last page having 5
23 * 8 + 5 = 189
Total Scripts: (525)
Yaml Files: (6)
Inventory Scripts: (18)
World Scripts: (74)
Command Scripts: (38)
Assignment Scripts: (16)
Item Scripts: (147)
Procedure Scripts: (29)
Task Scripts: (129)
Data Scripts: (21)
Interact Scripts: (16)
Entity Scripts: (11)
Economy Scripts: (1)
Format Scripts: (25)
how'd you get that 👀
I used that ex command that @foggy gorge sent me one day lol
damn now i want it too lol
oh i see
lol i think i was stuck in optimization mindset
i was thinking of like, iterating through them and sticking them in lists
but he just parses the list like 20 times
I somehow have still 6 Yaml files lmao
Total Scripts: (211)
Yaml Files: (0)
Command Scripts: (47)
Task Scripts: (64)
World Scripts: (41)
Item Scripts: (33)
Entity Scripts: (17)
Data Scripts: (4)
Inventory Scripts: (1)
Procedure Scripts: (3)
Format Scripts: (1)
211??? where did i count things wrong
denizen scripts doesn't seem to show all scripts
server.scripts.size outputs 525
I have 59 pages, so 8 * 58 -> 464
- 4 -> 468
so 57 are missing
oh no
the next pages show 9 scripts 
the first one 8
lmao
anyway what do you think a town plugin should provide
oh imma make it a discussion
This is my factions server:
Total Scripts: (223)
Yaml Files: (1)
World Scripts: (29)
Inventory Scripts: (22)
Format Scripts: (9)
Task Scripts: (37)
Procedure Scripts: (40)
Command Scripts: (11)
Item Scripts: (72)
Data Scripts: (3)
i honestly thought there would be more lol
i got 328
by the end of the thing me and my friend are doing we'll probably have like 1000 or maybe even 2000 scripts lmao fuck knows
Total Scripts: (1554)
Yaml Files: (2)
Item Scripts: (202)
World Scripts: (104)
Command Scripts: (113)
Inventory Scripts: (48)
Task Scripts: (478)
Data Scripts: (224)
Procedure Scripts: (356)
Assignment Scripts: (9)
Interact Scripts: (9)
Enchantment Scripts: (10)
Economy Scripts: (1)
How about that.
wow!
Now granted a lot of my procedures are really simple returns because I can't be bothered to always check if someone has a flag when I can just write a procedure for it.
@frozen brook <util.scripts.size>
Tag parse results for <util.scripts.size>: https://paste.denizenscript.com/View/103408
16
And some of my item scripts are duplicates of vanilla for the sake of ... creating vanilla slabs?
Yeah I made recipes for slabs and stuff.
still a very impressive amount!
And with slabs you can cobble em back together to make the full blocks like quartz, nether bricks, etc.
Maybe?
I'm sure I could probably shove some of those task scripts into some event scripts and reduce the amount, but it's not a priority.
Not to mention some of my scripts are old and could be replaced or are considered deprecated, haha. But I'm still over 1,000 because I like having procedures and tasks for things that are being checked a lot or are lengthy enough to require a task script for.
Good programming mindset
that's why I'd like to have full workspace scanning in the vscode extension 
always finding an old script with some (future)-deprecated tags
I try to change my scripts as soon as tags become deprecated, and it's been relatively fine for the past month until I discovered something requiring the raytrace tag last night and I told myself "I better fix that later"
same here
also I noticed the ray_tracing tag months ago, but haven't done it yet, just like you because I thought "oh that looks more complicated, I'll do it later"

Now I have no idea where it is in my literal 1000 scripts, haha. I think it was some precise tag which I'll search my entire folder later.
!t location.ray_trace
Traces a line from this location, in the direction its facing, towards whatever block it hits first, and returns the location of where it hit.
This tag has also been referred to as 'cursor_on' or 'precise_cursor_on' in the past.
Using 'return=normal' instead replaces the old 'precise_impact_normal' tag.
Optionally specify:
range: (defaults to 200) a maximum distance (in blocks) to trace before giving up.
return: (defaults to precise)
specify "precise" to return the exact location of the hit ...
world
LocationTag
# Destroys whatever solid block the player is looking at.
- define target <player.eye_location.ray_trace[return=block]||null>
- if <[target]> != null:
- modifyblock <[target]> air
# Spawns a heart wherever the player is looking, no more than 5 blocks away.
- playeffect effect:heart offset:0 at:<player.eye_location.ray_trace[range=5;entities=*;ignore=<player>;fluids=true;nonsolids=true;default=air]>
and more... Check the website for more examples
That does look complicated.
it looks complicated but this tag just combines several other tags into one
precise_cursor_on, precise_cursor_on_block, precise_target and so on
I'll have to learn it soon enough.
meta provides sample inputs for ray_trace within the old tags
!t location.precise_cursor_on_block
Deprecated in favor of !tag LocationTag.ray_trace with input setting [return=block].
world
LocationTag
wait, precise target is deprecated?
what tag exactly
there are multiple that begins with precise_target
not all of them a future deprecated
Now let's see who has the biggest filesize possible in a script. I bet it's going to be nimsy.
Considering my largest one is 102kb because that is where all of my claim commands are, because I'm doing a lot of sub commands too and it's probably my most complicated thing I've ever made.
oh that's a typo, I forgot to add the _position part, precise_target isn't
separate them, one file for each command 
OOOO
I just got separate tasks for like /claim neighbors and other stuff.
one file for each possible outcome 
I mean I could, I think I'd have a lot of files then.
Also it's a good thing I was looking at that file because I just found a line that wasn't going to work haha, I'm surprised VSC didn't catch it.
reminds me I have a monster of command which I should clean up soon
what line, that's likely relevant for the extension
https://paste.denizenscript.com/View/103410#35
I think it's because it accepts spaces? I should probably turn this into a thread, but I just noticed I was missing the && argument and that it probably wouldn't have worked without it.
Content of Denizen Script Paste #103410: 'Unnamed Denizen Script Paste'... pasted 2022/11/24 13:13:41 UTC-08:00, Paste length: 7630 characters across 125 lines
Might have to write up a test file just to see if that is the case.
yeah, please make a post for it then
you know
making these magicka inspired items
i thought lightning would be the hardest
now that i think about it
i should go back in time and KILL the person who added the earth element to magicka cuz this fucker took me a whole day and my head still hurts
there's so many weird fucking workarounds
Not really
anyway here's earth
LMAO that's actually so cool!
how did you do the cooldown on the item?
fake item?
!c itemcooldown
player
itemcooldown [<material>|...] (duration:<duration>)
Places a cooldown on a material in a player's inventory.
Places a cooldown on a material in a player's inventory.
thanks
Where's the documentation for -if x matches y. I assumed it would be in operators but it's not there.
Iirc that was requested to add somewhere
I think monkey also responded to that but not sure
lol
!l operators
Did you mean to search for operator?
i swore i saw it
An operator is a tool for comparing values, used by commands like !command if, !command while, !command waituntil, ... and tags like !tag ObjectTag.is.than
Available Operators include:
"Equals" is written as "==" or "equals".
"Does not equal" is written as "!=".
"Is more than" is written as ">" or "more".
"Is less than" is written as "<" or "less".
"Is more than or equal to" is written as ">=" or "or_more".
"Is less than or equal to" is written as "<=" or "or_less".
"does this list or map contain" is written as "contains". For example, "- if a|b|c contains b:" or "- if [a=1;b=2] contains b:"
"is this in the list or map" is written as "in". For example, "- if b in a|b|c:", or "- if [a=1;b=2] contains b:"
"does this object or text match an advanced matcher" is wr...
Comparables
"does this object or text match an advanced matcher" is written as "matches". For example, "- if <player.location.below> matches stone:"
ye
it uhh
is kind of entirely unhelpful
but it does exist lol
lol
Well, it uses the same logic as advance_matches, so I should be able to do mob matches *skeleton, correct?
ye
yeah
rad
oh that's cool haha
maybe you can increase the amount of particle effects as the charge increases?
just an idea 😄
maybe
you can also play the beacon charge sound
Ok that took 3 days instead of an hour but i got netblocks shared. I have a similar system I was going to use for custom spellcasting that I might go back and finish if there's any interest.
I'm moving on to figuring out a bunch of particle animations and stuff for use with these kinds of tools and scripts, so if anyone is willing to contribute to putting together a collection, gimme a yell.
it looks really cool
idk why the sound is missing from that recording, but that tool was put together to allow configuring and testing new spells or scripts or items without having to manually write them out as a script.
i really like it
is it possible for an item to cast multiple spells at the same time
Yes
ah thats great
but like
It's dodgy
I won't be touching it anytime soon but it's here if anyone else wants to take a crack at it on their own.
https://github.com/Baivo/SBG/blob/main/sandbox/Baivo/Energy_Manipulator_V2.dsc
Fair warning, I usually make jokes about my script quality, but this is literally taped together garbage that should NOT be used in a prod environment. I made this as a first time project with denizen, and there's a lot of bad practices and weird workaround even I don't remember or understand.
if this is your first project its insanely good
I have used it to make some cool stuff, this is a favourite stress relief of mine, lemme go get a recording
shame I couldn't fix the audio but you get half the experience at least
Oh it deadass recorded my shitty webcam mic
Trackpad sounds like someone using a nailgun lmao
send the explosion script 😍
but holy shit
its like one of those premium click item plugins
its better than that
like executableitems but not shit
It's in the em2 script linked above, look for these two:
function_realblockwave
Logblock
I'll go back and remake it as a generic script for you when laptop is charged
oh thanks
Wondering if maybe this is better done as a command system instead of a GUI.
Then I can just make each option a subcommand with tab completion instead of drilling through a gui or entering text.
imo command -> admin friendly
gui -> user friendly
yes
"yrd"
The whole thing was eventually going to be split, with the player version giving predefined options to act as a spell crafting system
would rather be abble to see everything at once instead of having to scroll through options
in situations like this, i usually just make a command, then have a gui that in actuality executes the commands i made
But it gave me a headache so I took a break and never went back
so both are options easily
oh thats clever
bye bye
Definitely spam me with ideas for netblock functions though, they'll get the same command+gui interface but I want to build out as many libraries and functions for them as possible.
Next update is going to allow attaching additional definitions for the configured function so you can customise scripts instead of hard coding
So let your imagination run free then send me a forceful dm kthxbye
Sorry for spamming showcase, I've just had the time today to clean up and post things I've had sitting around for a bit. I will hold off for a lil while before posting the next.
!guide Don't trust players @teal sedge
View the guide page 'Common Mistakes - Don't Trust Players' at: https://guide.denizenscript.com/guides/troubleshooting/common-mistakes.html#don-t-trust-players
Your script you've posted on the forums will quickly break, if a player run /infobot
!t empty
!t n
is there any difference between these two?
eh
no they're exactly the same
they used to be separated <n> for books and <&nl> for chat
but eh
just use <n> lol
I'll look into the first one, this was a remake of an existing script so I'm not surprised if I missed something really dumb
Citizens not requiring depenizen is new to me but makes sense
Ty for feedback
I'll have to see if I can find the original rtp as well, my first attempt managed to consistently crash the server
First and only time I've managed that so far
mm aight thanks
I also wouldn't be surprised to see some color tags like <red> instead of <&c> or hex
I had to remove a bunch, I was the one that put them there and even I was confused today seeing them there
I haven't reviewed everything of your script
there are also funky things like
:D
but i've been using it in it's broken state for a while now and it's better than the alternative
that said
the better alternative is to fix it
yes
I stuggle from having a mindset of sharing anything that has potential value, as opposed to sharing only the things that reach mirror polish
However
I'm understanding the other side of the coin, and especially realizing the likelihood that sharing something that has flaws in this space is likely to cause more damage by demonstrating bad practices
let me take another crack at it now and lets see how mirror like i can get
i am the opposite
i dont post anything that i feel like is heavily flawed
thats why i was so hesitant to post my command manager thing in #showcase
(i did it anyways though)
sharing an in progress script in #showcase is fine for me, other people can take a look at code, might give suggestions and so on
only the discord denizzlins have access to #showcase
I wouldn't post an in progress script to the forums, since there are many outside denizzlins and beginners
That's a helpful solution to both aspects, thank you based diamond man
yes but if you look at my link theres so many bad practices and stuff
i urge you to judge my actual capability on something like the netblocks or the uhh
I should post my finished magnet here that one was a crowd pleaser
oh also *note; people should really make GitHub repos for their scripts
can't bear it to have to download a script everytime I wanna look at it 
what's a subcommand
!c yaml
file
yaml [create]/[load:<file>]/[loadtext:<text> raw_format]/[unload]/[savefile:<file>]/[copykey:<source_key> <target_key> (to_id:<name>)]/[set <key>([<#>])(:<action>):<value> (data_type:{string}/integer/double/boolean/auto)] [id:<name>]
Edits YAML data, especially for YAML files.
Edits YAML configuration data.
This commands exists primarily for interoperability with pre-existing data files and other plugins.
It should never be used for storing data that only Denizen needs to use. Consider instead using !command flag.
Use waitable syntax ("- ~yaml load:...") with load or savefile actions to avoid locking up the server during file IO.
Refer to !language ~waitable.
For loading and saving, the starting path is within 'plugins/Denizen'.
The file path follows ...
this command is subcommand
basically one command that splits into other mini-commands
wait actually i wanna discuss this one
oh you talking about arguments?
yeah
- if !<context.args.get[2].contains_any[1|2|3|4|5]>:
- narrate "<red><italic>Please choose lines 1-5 to set the display"
- determine cancelled
How would you make this more efficient to cancel the command unless it was specifically the numbers 1,2,3,4 or 5
!t element.is_integer
Returns whether the element is an integer number (a number without a decimal point), within the limits of a Java "long" (64-bit signed integer).
comparison
ElementTag(Boolean)
i posted my repo on both
MIT license baybee steal that sh*t
look at all my dirty patchwork
would that be more efficient than the current solution though
another thing I want to point out, XenForo is really bad for showing the GitHub link
who's xenforo
our forum software
talking about xenforo, @low radish when do you have to pay the license again?
so im thinking about adding a subcommands key for linear args
args:
command:
type: linear
# example subcommands
accepted: <list[add|set|remove].contains[<[value]>]>
tab completes: add|set|remove
subcommands:
add:
number: template=integer
player: template=player
remove:
player: template=player
set:
value: type=linear
world: template=world
but i dont htink this is important
I think i'm going to hunker down on that contains_any being a good simple solution to the problem until proven a dumb baby for it
i feel like most commands-with-subcommands should just be split into separate commands
mm from a user perspective I think it get's really confusing if you have to many subcommands as separate commands
yeah
i used to have like /worldmanager create|delete|load|4 other subcommands
now its /createworld /deleteworld etc
but i think its harder to find these commands this way
if only you could namespace command scripts so you can just /worldmanager: to tab complete them :(
- <&[moneykey]>/shop <&[text]>- öffnet dieses Fenster.
- <&[moneykey]>/shop create [id] [title]<&[text]> - erstellt einen Shop.
- <&[moneykey]>/shop [id] close<&[text]> - schließt einen Shop.
- <&[moneykey]>/shop [id] info ({all}/buy/fill/sell/take)<&[text]> - zeigt die Logs des Shops an.
- <&[moneykey]>/shop [id] title [title]<&[text]> verändert den Titel eines Shops.
- <&[moneykey]>/shop [id] open [time]<&[text]> - eröffnet einen Shop.
- <&[moneykey]>/shop [id] extend [time]<&[text]> - verlängert die Zeit eines geöffneten Shop.
- <&[moneykey]>/shop [id] fill [slot]<&[text]> - füllt ein Item im Shop auf.
- <&[moneykey]>/shop [id] storage [slot] [storage]<&[text]> - verändert den Lagerraum eines Items.
- <&[moneykey]>/shop [id] take [slot] [quantity]<&[text]> - nimmt Items aus einen Shop raus.
- <&[moneykey]>/shop [id] remove [slot]<&[text]> - entfernt Items aus einen Shop.
- <&[moneykey]>/shop [id] price [slot] [sellprice] (buyprice)<&[text]> - verändert den Verkaufs- und Ankaufspreis.
- <&[moneykey]>/shop [id] set [slot] [sellprice] (buyprice)<&[text]> - stellt ein Item in den Shop ein.
I have this bulky thing
why.
idek
I have to clean the command script a bit, but that's the syntax
to manage a shop
ah i see
because it can also take in any args definition
so instead of having an args data key you can just define an args
- choose <context.args.first>:
- case firstsubcommand:
- define args <script.data_key[subcommand 1 args]>
- case secondsubcommand:
- define args <script.data_key[subcommand 2 args]>
- default:
- narrate bad
- inject ...
something like this
but then again you should just make them separate commands at that point
nice font lol
- if <list[search/create/setline]> !contains <context.args.get[1]>:
@frozen brook <list[search/create/setline]>
Tag parse results for <list[search/create/setline]>: https://paste.denizenscript.com/View/103448
li@search/create/setline|
yeah
ok now
check the last commit time
!g constructor
View the guide page 'Common Mistakes - Don't Overuse Constructor Tags' at: https://guide.denizenscript.com/guides/troubleshooting/common-mistakes.html#don-t-overuse-constructor-tags
can just be if search|create|setline !contains <context.args.get[1]>
Thank you though, I was 50/50 on if the tag was needed, but was duped by the vs code color formatting
i was telling you that this is invalid
oh I see
I just spotted, i must have hit it with a find and replace i was doing to the format
ah i see
absolute blunder
queue
choose [<option>] [<cases>]
Chooses an option from the list of cases.
Chooses an option from the list of cases.
Intended to replace a long chain of simplistic if/else if or complicated script path selection systems.
Simply input the selected option, and the system will automatically jump to the most relevant case input.
Cases are given as a sub-set of commands inside the current command (see Usage for samples).
Optionally, specify "default" in place of a case to give a result when all other cases fail to match.
Cases must be static text. They may not contain tag...
- choose <context.args.get[1]>:
- case search:
...
- case create:
...
also determine cancelled in a command script?
how did that get there lmao
twice!
ok both are swept under the rug I'm ready for my next bot command beating
not that it's expected, just encouraged
actually in this case yaml would be the command and create/load/set etc would be the subcommands
Denizen is a Citizens addon that has a script engine
like, in that order
in terms of historical development and in terms of userbase lol
I don’t even have citizens installed lmao
also on this point: Post it, just clearly label the status
might be worth adding a dedicated WIP label or something that people can use
idunno tbh
it's annual, only needed to download an update not to keep running, and cheaper to update a license than buy a new one
might be in the admin panel lemme see
side note: I want to punch the xenforo devs in the dick for their shitty TFA impl
forces re-auth every 30 days, which only serves to discourage people from using TFA
No TFA? No reauth, shit just works. Get TFA? Annoying constant reauth.
They make you pick between convenience and security when they could easily just let you have both
They intentionally don't provide an option to turn that off
As we started with xenforo I thought it's cool lol
but the longer you deal with it, the worse it gets
oo
Does the if argument support the ! prefix? As in you'd do
- run my_task if:!<player.is_online>
Or would you do
- run my_task if:<player.is_online.not>
!tias
Try it and see!
If somebody pulled this up for you, you're probably asking a question of the public channel that's easier and faster to figure out by just attempting your idea in-game and looking at the result of that attempt.
You right.
in this case you should also read tags description
Ehh, the if argument is a global, where even is that in the meta?
!Lang global if
The "if:<boolean>" argument is a special meta-argument that is available for all commands, but is more useful for some than others.
It is written like:
- stop if:<player.has_flag[forbidden]>
# Equivalent to
- if <player.has_flag[forbidden]>:
- stop
When the if argument is used, the command will only run if the value of the argument is 'true'.
The most useful place to have this is a 'stop' command, to quickly stop a script if a condition is true (a player has a flag, lacks a permission, is outside a region, or whatever else).
If you need more complex matching, especially using '&&', '||', '==', etc. you should probably just do an 'if' command rather than using the argument.
Though if you really want to, you can use tags here like !tag objecttag.is.to or !tag elementtag.and or !tag elementtag.or.
Script Command System
should also make a post
Yeah if I have more questions I'll make a post.
!makepost
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
meta is searchable
go to the meta site, top right:
type in what you want, hit enter, and you'll probably find it
Is it bad that I've never seen that until you pointed it out? I've always Ctrl F'd? Haha.
now there is one
you can't click high quality yourself but WIP you can I think
cc @teal sedge ^
i got distracted, but, uh, no it does not appear to be clearly listed anywhere i can see
hi i have problem with denizen i use citizens plugin and when i use it standalone i have the command /npc cmd and i also could use placeholders in npcs name but i want my npcs to mirror players skin so i downloaded denizen ver 1.0.3-b1670-REL and after that i can't do /npc cmd anymore also i can't use placeholder in npcs name
!makepost
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
do you know whats the latest version? 1780
@old venture quick question, do you have a custom /enchatn? if so, does your level default to 1?
i tried making one once, never got it to work xD
oh wait /enchant
not custom enchant
yeah it defaults to level 1. it should be on the github if you wanna take a look
@mossy egret pong
ok ty i will default it to 1
nah make it default to 255 xD
what doed that bypass do?
yea its very cool
w/o bypass vs with bypass
(/enchant aqua_affinity vs /enchant aqua_affinity -bypass)
oooo thats cool
make so you can do like enchant remove all, or enchant clear, removes all enchantments from the item
hmm maybe
i know but my server version is 1.8.8 i cant use the latest
oof
i mean, if its because of pvp you can disable holding shields and etc and toggle off the attack cooldown
@old venture how can i fix it ?
1.8 is unsupported, you can and should update - if you're using it for the PVP, there are plugins that replicate it on modern versions
!1.8
Minecraft 1.8 is a 7+ year old Minecraft version (released <t:1409643900:R>) that we cannot reliably support.
While Citizens and Sentinel in their latest versions will still run on it, we cannot and will not provide support on this Discord or other platforms for it.
You can and should update your server. There are plugins for clientversion support and older-style PvP available.
For more information, refer to https://wiki.citizensnpcs.co/Minecraft_1.8.
if you're going to update and want to know how to get the 1.8 pvp feel, create a post and we'll gladly help you out there
LMAo
oo ok tnx
tnx anyway
lmao
the * thing is really cool, idk how i didnt think of adding that to my own
so now that i though to fhtat, im thinking about adding it to.. every single one of my commands
ugh
im just going to remove the * so people dont wonder why its not everywhere else
HAHAHAH NAH DO IT TO EVERYTHING
user friendly > dev friendly
the thing is theres no good way to do it wiht my system currently
so i will hold it off until command_manager is actually good
aww
are you focusing on developing just one of them or are you hopping back and forth between both
@mossy egret ... i always forget the ping
on eof the reasons i even started creating tick's essentials is to create an actual application for command_manager
because i think thats the best way to find issues and know what features to make
which is actually using it
definitely! and now you have probably the biggest todo yet: accept the * everywhere
oh, true, automating that must be a pain
have you started on that yet? i'd be procrastinating until i was old lmfao
im just brainstorming atm
i wish you the best of luck
i have seo much stuff right now
im thinking about creating dLox
denizen implementatino of lox
I have a script that runs, but I am trying to get it to animate the npcs to make them swing thier arms but not actually break a block.
Does anyone know any tips that could help?
!makepost
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
^
funny little bug (i fixed it later)
This is the opening of Dr. Seuss' The Lorax.
The movie is amazing ! Go watch the full movie and have fun !
ye same
it happened for one other thread earlier
not sure what triggers it, it's not just a reply to the opening post cause other threads don't have that
have you considered suggesting dscript highlighting for discord code blocks
Discord uses a public library for that, they just don't bother updating it ever.
lots of us would love that and the furthest i think we've gotten is getting it added to Github
a lovely denizzle here PR'd it for us
fun thing that aya, acikek, tutzhino (before he was banned >.<) and I were experimenting with on my discord server a long time ago was using ASNII code blocks on discord to sorta "emulate" dsc highlighting and it looks pretty cool when you mess with it enough:
[1;2m[1;34mmy_script[0m[0m:
[2;34m[1;34mtype[0m[2;34m[0m: task
[2;34m[1;34mscript[0m[2;34m[0m:
- [2;35mnarrate[0m [2;33m"Hello, World!"[0m
uses ANSII codes to change the color and weight of text. no italics though :(. was able to do so using this website https://rebane2001.com/discord-colored-text-generator/
pretty fun to mess around with
not very optimal for big scripts (or quick ones) because you have to highlight the text and click buttons and stuff but it's cool to showcase :)
oh damn, that's awesome!
that has to be killer on the character count though right? lol
owww
You could probably make a bot to automate that with the existing C# highlighting stuff, right?
Sadly mobile still can't see these :/
very much annoys me :(
oh cool
tutzhino was banned?
aww
that’s why I haven’t seen them around
pretty sure I have code somewhere that already does this too
Either ANSI codes or something close
Monkeybot had exporters for a bunch of weird formats
including IRC which is very similar to ANSI
not to mention ANSI codes is what minecraft server log files used to be before someone rudely stripped the colors out
:D
Now my vanity enchantment system won't be bugged when you use a grindstone 😎
Anyone know how I can contact the creator of denizen player models directly? I assume it wouldn't be acceptable to just ping them?
- Make a thread
- Actually ask what you want to ask, not just "hey i want to talk to <x> person"
- If it's genuinely something that only Max^ can answer, you can ping em. Chances are it's not. Because, yknow, A: lot of questions can be answered by anyone with Denizen experience not just the relevant script author, B: Max^'s script is heavily just copied out of my own DenizenModels so chances are whatever you're trying to do is something from my original script anyway
Gotcha thanks
It's less of a question about Denizen more of a core shaders thing and the underlying method of using player heads to rebuild player models
#1027976885520584814 for that then lol, idk if Max^ can answer though iirc he yoinked the shaders from somewhere else
Gotcha
made a thing which auto formats lore 
Nice :)

👏
it drives me crazy trying to make the lore the most readable it can be, but chances are I’m just a perfectionist
I have made something like this as well https://github.com/acikek/ilore
!m alter_uuid
Alters the entity's UUID, changing it to the new input UUID.
This is very likely to break things and is almost never a good idea.
This sorta-works with players, with significant side effects that will need to be compensated for.
EntityTag
ElementTag
<EntityTag.uuid> Returns the permanent unique ID of the entity. Works with offline players.
Perhaps we were preoccupied that we could, and have not considered if we should ...
What could possibly be a valid use-case for this?
Why is the mechanism max_health, and the tag health_max ?
I’ve wondered that as well
They were made at different times
Does anyone know how to get the title of a potion? For example, a vanilla night vision potion has the title "Potion of Night Vision". But if I were to do <[item].translated_name>, I just get "Potion". I could figure it out from the potion type, but I wasn't sure if there was a more right way to get it.
great question. Does .display return something for it?
nope
The problem is the name is somehow derived from the potion effects
Same way a water bottle would probably also return "potion"
yeah, material name
Ya. They're all just "potions". I don't know how to get "water bottle" or "potion of night vision" or "potion of the turtle master" without just keeping a manual list.
Which, honestly, is probably what Minecraft does underneath the hood somewhere
The king of "screw it lets just hardcode everything"
Sets the strength for all blocks of this material type.
This does not work for specifically obsidian (as it is a hardcoded special case in the Minecraft internals).
MaterialTag
ElementTag(Decimal)
<MaterialTag.block_strength> Returns the material's strength level. (Only for block materials). Th...
^ i always find this funny when i see it
lol yup
Also, you can't get the sound of a block from the blocks material
Sometimes it's just <material>_block_break
But other's aren't, because some blocks share sounds
You just have to... know

!t material.break
Did you mean to search for materialtag.item?
If the material is a block, returns the sound data for that block.
The returned map has the following keys:
volume, pitch: a decimal number
break_sound, step_sound, place_sound, hit_sound, fall_sound: Bukkit name of the sound effect
MapTag
yeah it was my feature request
Interesting mech example for cannot_enter_hive
- adjust <player> cannot_enter_hive:1s
!m cannot_enter_hive
Changes the minimum duration until a Bee entity is allowed to enter a hive.
EntityTag
DurationTag
<EntityTag.cannot_enter_hive> Returns the minimum duration until a Bee entity is allowed to enter a hive.
Generated example
So not a copy/paste err?
These examples are automatic, they're usually helpful for understanding how would using the mech look but aren't always valid as there's no way for the generation code to know it's only valid for bees
Although Bread and 0tick have started working on PRing more examples to the meta (and anyone can help ofc), so the meta is getting more tested and descriptive usage examples :D
But yeah if it says Generated example then it's a computer generated one, if there's a mistake in a non-generated one should def report it though
That was in Discord :o
And to be fair, I have never really worked with Java in any useful sense, or with Git, for that matter, so I'd be next to useless. Anything I could contribute can easily be constructed by someone else.
Yeah ik, but that format was made to look like IRC right?
I thiiiink that's a copy-paste, and put in a pair of ``'s
No like, the messages displayed without the user's pfp & all
Looks the same to me.
As opposed to this
Oh weird. Maybe because I am using the webapp at the moment.
It's a setting
Should the meta's descriptions for mechanisms that are specifically for item frames, i.e. framed, perhaps note that they apply for glowing item frames as well?
it's a display setting in your discord settings to have compact/cozy formatting - compact removes pfp's and crunches it like that first image
cozy is default and what most people use lol
Yeah ik, I remembered someone talking about that but wasn't sure, although looks like it has a #IRC in it's name lol
oh lol
yeah that was very much born of people complaining that Discord was too chonky compared to IRC
which, to be fair, it is
i feel like there could stand to be a middle ground
where just like
these spaces get cut down
maybe make avatars a lil smaller
idk
(ie: all the same content visible as 'cozy' has, but eating less space)
it's a little annoying that even with a 4k monitor i can't fit as many discord messages on screen as i used to fit IRC messages on a 1080p monitor
Is this acceptable, or should I just make three different item scripts and choose one of them randomly?
rep_bonus_item_rare_book: type: item debug: false material: book_<list[red|black|blue].random> display name: <aqua>A rare book
(the three base materials exist elsewhere)
that's not technically invalid, lots of item scripts have dynamic details, might have side effects though
if those three base books all have the same book or written_book vanilla material, then you're probably fine
if they have different base materials, that'll prevent some matchers from working
is that not an option in discord settings?
oops forgot disabe pings
with 4 px
oo
that is indeed an option, hell yeah
not the same as what I was suggesting as an option tho
meant that as an example of the types of lil tweaks they'd use
gets part of the way there but still leaves a lot out
definitely shrinking that space via the option now though, thank you for pointing out that out!
0px as well. That looks, smoooth.
This might be a dumb question, but does it make sense to migrate all of my item and quest data from data key scripts to a massive server database flag? Is that just standard procedure?
!makepost
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
you just did it wrong
hello everyone!
anyone here can tell me if I can flag an inventory?
I'm using notes to make multiple player backpacks
What
i use it for "referrals" which are prettier than direct links
#1027064108056580106 message who wants to click this
discord should make a better way to do this
Would be cool if they did something similar to GitHub, automatically embedding message/channel etc. links
Or at least let people do text
_ _
_ _
anyone know that weird discord message that just hides whatever you put at the end of it
causes massive lag for me though
Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.
(credit nottexttospeech)
oh, right, i should've flagged just the main map and not all submaps inside it
guys how do I run a script with definitions?
like
- run <script[create_ab_task]> def:<player>|test
I tried like this and it didn't work
please make a thread
create_ab_task is a task script, the log says it's not a script
oh I thought it was too small to a thread
!makepost
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
it's pretty smart to make a command for that
since you guys probably hear it like 10 times a day
thanks
i think its even more than 10
now wheres your post. i wanna answer you
creating it ^~^
I made it
i love having to work around vestigial vanilla minecraft code!!! (my head hurts)
turns out whoever the FUCK wrote the code for falling sand and eventually other blocks made it so that any falling block that spawns, if the block its in has the same material as the falling block itself, it will erase the block it's in
however this is basically entirely useless? as normally it erases itself and spawns a block already
so i dont know what the fuck they were thinking coding it like that but it sure makes dealing with held blocks a HASSLE
it doesnt even properly remove them it makes like weird ghost blocks?
but those ghost blocks are different and NOOOOOO they cannot be affected by - showfake at all
like why why is this a thing?
denizen rant moment
so true
falling blocks are a pain
OpenAI's "ChatGPT" understands denizen and can almost write you a script on demand
My github copilot can write scripts quite well
im trying to turn on a redstone lamp. and the mech just does not switch it. - adjust <context.location.backward[1].material> switched:true I used narrate and it is the correct material m@redstone_lamp[switched=false]
does it work a different way than im thinking?
The impressive bit is this a general purpose AI, it went from accurately describing the history of my small town to making me a website to converting denizen script to java using the paper api
!c switch
world
switch [<location>|...] (state:[{toggle}/on/off]) (duration:<value>) (no_physics)
Switches state of the block.
Changes the state of a block at the given location, or list of blocks at the given locations.
Optionally specify "state:on" to turn a block on (or open it, or whatever as applicable) or "state:off" to turn it off (or close it, etc).
By default, will toggle the state (on to off, or off to on).
Optionally specify the "duration" argument to set a length of time after which the block will return to the original state.
Works on any interactable blocks, including:
- the standard toggling levers, do...
well shit....
core
adjustblock [<location>|...] [<mechanism>](:<value>) (no_physics)
Adjusts a mechanism on the material of a block at the location.
Adjusts a mechanism on the material of a block at the location.
That is, an equivalent to !command adjust, but that directly applies a "MaterialTag" mechanism onto a block.
Input a location or list of locations, and the mechanism to apply.
Use the "no_physics" argument to indicate that the change should not apply a physics update.
If not specified, physics will apply to the block and nearby blocks.
oh wow holy shit it do
details are all wildly off but the structure and concept are there
Yeah
I find that when I have a massive script file open, copilot is much more accurate
Because more samples
That’s scary
If you give it a script and ask it to explain how it works and what it does it will do so perfectly
Ask it "Can you rewrite this script in java using the paper API?"
huh duration does not seem to do anything. does this look right? - switch <context.location.backward[1]> state:on duration:5s ? The light flicks on and then turns off.
well its not working. at least not for this lamp.
I suppose use wait and turn it back off
Hmm
If i cant figure it out i will just put levers under them and switch the levers instead lol
I also asked it how to make a script more performant and it gave some pretty solid advice
!makepost
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
LOL insult command when?
nice
I should make a denizen java addon that adds in useless commands like that
not bad
lol the not equals sign
Why is it in the utility category
That’s actually != btw, just my font thingy makes it look like that
huh
Well that’s dumb and I don’t like it. change it. now.
No
Thanks for respecting that
is flagged:!flagname a valid switch
!makepost @tender locust
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
👍 assuming no thank you for answering
You shouldn't assume. Your question is easy answered when you make a post and provide more information to the event you're using.
And no, that is not the correct answer - the answer is as always not actually the yes/no you think it is which is explained in the above info message
Try feeding it a script and ask it "Can you document and add comments"
Weird issue I'm running into. My VSC extension isn't color coding things. I turned extension on and back off. I reinstalled it. I disabled the only other extension I have. It's just showing as white.
Sorry if this should be a forum post ^. Just figured it's not directly Denizen related.
yeah, but make it explicit in the title that its about the vsc extension
just anything is "forum postable"
The example I saw of someone feeding low level driver code decomp to figure out... I think it was trying to fuck with an anticheat lol, was really impressive.
With Denizen scripts imo it's less impressive because Denizen scripts are designed to be very simple to read and understand
Neat feature of forum system: once you start typing vsc into the forum title box, it'll pull up all the other VS Code related forum posts (or, at least the ones labeled "vsc" or "vscode", not the ones labeled "vs code" unfortunately, search needs work).
At which you'll both
A: see that we do indeed allow VS Code forum posts
and B: see if there are any other posts that sound similar and be able to read through em before making your post in case there's already an answer for you
ive always wondered why elementtags werent split to stringtags, floattags, integertags, booleantags, etc
(not making post as imnot asking for help, nor do i need an immediate answer)
doesnt it overcomplicate things?
maybe, but i feel it makes things more secure
secure?
They were for D2 and FS
just not for D1
the reason they were split wasn't whatever "more secure" means, but rather for the performance benefits
wait doesnt splitting it boost performance?
oh nvm i thought you said "weren't split"
also are named TextTag (not 'string' cause that word is technobabble), and Decimal (not "float", which is also technobabble)
actually no FS does Integer and Number
and by more secure i mean its easier to find bad code so less problems in runtime
javascript just has number, which is interesitng
"easier to find problems" also means "harder to write working code" in many cases
there's a careful balance to be struck
i personally prioritize safety
its why i use typescript instead of javascript even if typescript forces you to type more stuff
Java as a language is infamously specific and safe, at the cost of ease of writing, conciseness, runtime performance, ...
so im definitely slightly biased here
part of the goal of Denizen is to not be java
i feel like many modern languages are quite easy to write and very type-safe
for example ts, golang, nim
a lot of its because of type inference or whatever they call it i think
FS and random parts of D1 including the script checker do weak type inference
ie they infer types but don't care if they don't end up with an answer
the script checker actually knows if you have a number or not, it just doesn't really apply that knowledge much
ooo
Returns the element plus a number.
math
ElementTag(Decimal)
anyway so I forgot to give the actual direct answer to this
auf made the choice to do it that way forever ago in like 2013 for simplicity
and it never got changed in D1
and in hindsight that choice gave us benefits that FS/D2 sorta lack
like:
Tag parse results for <element[12345678912346789.123456789].add[0.5]>: https://paste.denizenscript.com/View/103690
12345678912346789.623456789
^ you can't do that with either an integer or a float
Having no particular definition of what types of numbers are actually supported, allowed us to seamlessly revise that tag to allow infinite scaled numbers
i see
i actually have so many questions about denizen's design lol, will probably ask them in the future
How can I define in Lore a colon?
<&co>
But next time, should make a post - it helps other people with the same question find the answer in the future
Yes, but if it's a long discussion it'll be confusing, if it's a term that's used a lot (I.e. you want to do something with an npc walk you'll finds thousands of messages), if there are several people asking questions at the same time (which happened a lot before we had threads) it'll be a mess, etc.
!makepost
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
when creating a post, you get prompted about related prior posts. the more posts we have about different questions, the better that tool works. please do not undermine the moderators - it is our policy that support questions should be asked by creating posts, and we ask you to respect this
where 1.19.3!!!!!!!!!!!!!!!!
When you open your inventory and you have an effect you can see the effect name with the duration remaining, is it possible to add custom ones of those does anyone know? Not alter existing ones but add new ones. No actual effect needed with it, just a name and a timer.
never thought about that, but i dont think its possible without mods
no
Status update for those involved in the deranged furnace burns event discussion
Now that I got all the backend working, new 'perks' or whatever I end up calling them can now be added in with no additional work other than the logic to run the 'perk' itself
average baivo W
I got a lot more work to go before this reaches the vision I originally set out to capture, but you best believe it's all available on my github if you want to poke around and steal anything
https://github.com/Baivo/SBG/tree/main/ProjectSP
thanks king
ayy that's pretty cool!
Don't go in there to provide feedback though, it's still all in the 'get it working' stage
I'll probably end up splitting out this perks thing and giving it a config file so it's drop-in ready. Lemme know if you got any suggestions for things to add so you can make me do the work for you.
you can make custom achievements which pop up
Is it possbile to affect mining speed without applying haste or something? Like e.g. buff it for 5% instead of the fixxed 10/20/30% haste gives? Since it's not an attribute i can't think of a way
i thought it was an attribute, just hidden as an nbt tag
i dont think so
might just have to make your own mining system
if you search “custom break time” in the bar the look for jump she has made a proc for that
me
Is there documentation which ! (or other) commands are available? i.
what are ! commands?
do you mean the !<tag> invert thing
i think he meant ! argument
yea that
Multiple possible tags: <ElementTag.not>, <MaterialTag.note>, <server.notes[<type>]>, <util.notes[<type>]>, <CuboidTag.note_name>, <EllipsoidTag.note_name>, <InventoryTag.note_name>, <LocationTag.note_name>, <PolygonTag.note_name>, <MaterialTag.note_tone>, <MaterialTag.note_octave>, <server.area_notes_debug>, <EntityTag.cannot_enter_hive>.
!t elementtag.not
Returns the opposite of the element
IE, true returns false and false returns true.
You should never ever use this tag inside any 'if', 'while', etc. command (instead, use the '!' negation prefix).
element checking
ElementTag(Boolean)
Did you mean to search for operator?
iirc
An operator is a tool for comparing values, used by commands like !command if, !command while, !command waituntil, ... and tags like !tag ObjectTag.is.than
Available Operators include:
"Equals" is written as "==" or "equals".
"Does not equal" is written as "!=".
"Is more than" is written as ">" or "more".
"Is less than" is written as "<" or "less".
"Is more than or equal to" is written as ">=" or "or_more".
"Is less than or equal to" is written as "<=" or "or_less".
"does this list or map contain" is written as "contains". For example, "- if a|b|c contains b:" or "- if [a=1;b=2] contains b:"
"is this in the list or map" is written as "in". For example, "- if b in a|b|c:", or "- if [a=1;b=2] contains b:"
"does this object or text match an advanced matcher" is wr...
Comparables
i think most, if not all commands with a matcher accept ! too
thats a diff system
ik but the question was vague so its better to just cover everything lel
!help
help shows help output
hello shows a source code link
update [project ...] shows an update link for the named project(s)
github [project ...] shows a GitHub link for the named project(s)
issues [project ...] shows an issue posting link for the named project(s)
info <name ...> shows a prewritten informational notice reply
rule [rule ...] shows the identified rule
quote [quote] shows a random quote that matches the search (if any)
logcheck <link> gathers information from a server log paste
versioncheck <version text> checks whether a project version is current
script <link> checks a linked script for basic syntax validity
command [name] [usage/tags] to search commands
mechanism [name] to search mechanisms
tag [name] to search tags
objecttype [name] to search object types
event [name] to search world script events
action [name] to search NPC assignment actions
language [name] to search language docs
guide [name] to search the beginner's guide pages
search [keyword] to search all meta docs
If these are the commands you are referring to ^^^
i.e. !update, or !vague
Available info names: ask, thread, debug, scripts, channel, no_s, paste, pastelog, pasteconfig, pastejava, pastepom, citizensfree, getstarted, mcve, logs, restartlog, donate, timings, worksisnotcorrect, knowwhatyouknow, donttrim, cracks, skins, 1.8, plugin_conflict, guides, forum, hiring, clickcommands, iunderstand, tias, cantreadminds, faq, notspigot, toovague, xyproblem, seltool, npchealth, freeservers, forks, patchupdates, npcname, disablereplies, loadorder, piracy, crackedserver, crackedplugins, ancientversion, api, denizencitizens, invite, imnothome, leftclick, forumpostfaq, minimessage
Not all of them, but certainly a lot. A good start. Thank you :)
!makepost
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
The others are just aliases
should make a post for your question
Oh my bad
oh your question isn't clear
we all thought you meant denizen commands
because you asked in #1026104994149171200
No no no. My bad for not being more clear.
pinned post in #actives-only
to answer your question
(should ask in a non-project channel for stuff like this next time lol)
Aren’t those just everything in !info list + the aliases
hey guys check it out
i have a video of icecapade and i dancing to some wonderful christmastime music

lmao
straight vibin
I've been thinking about making a system for VRmc, where you could cast spells by drawing sigils. I remember seeing this API that you could send it a collection of points, and then it would return the amount of accuracy compared to a preset drawing. and then all you would have to do is make it so that when you're drawing a sigil, instead of the sigil being in 3D space, the whole thing gets projected to a 2D plane, and then just send that to the plane to the API, and then as long as it was above a certain threshold of accuracy, then you will have cast the spell
but then I keep forgetting about it and doing other things instead
if you have a VR, i'd totally contribute to that 
holy shit that'd be so cool
I do have a VR. I've had a VR since the DK one days
as a mod or as a denizzle?
what?
the spell thingie
it doesn't exist yet but I was thinking a denizen thing
that'd be so awesome
I don't write mods, I'm not a big fan of Java
Plus Dennison makes things more accessible, because it will most likely stay available for a long time, through mc updates and stuff.
reminds me of a show called The Owl House!
what would be the easiest way to change the number of digits of a number. Like if I have the number 5 and I want to display it as 05?
!tag elementtag.pad_left.with
Returns the value of an element extended to reach a minimum specified length
by adding a specific symbol to the left side.
element manipulation
ElementTag
a post can digress some other tags that might be useful too tho
I am posting on this channel based on mcmonkeys suggestion. I am new to Denizen, citizen and constructor. I am trying to find a way/how to set up an NPC so that players purchase it, probably with use of a for sale sign, take the NPC to there region, place it and allow constructor to do its thing. Is this even possible? I'm not a programmer. I've seen others guiding people how to set up scripts to do similar, but I don't know scripts either. New to it. "Hello, World!".. that's it.. lol.. I am trying to learn Denizen but its moving slow but going through the tutorials. But sofar I am not getting any ideas on how to go about this task.
only thing i can say to you is: read and experiment through the whole guide before thinking of applying your newfound knowledge on your own script ideas
!guide
View the Denizen Beginner's Guide at https://guide.denizenscript.com/
you’ll finish following the guide in like 20-30 minutes, and it’s everything you need to know on how to use everything in denizen basically
I kept thinking gzip compress and decompress was for bzipping up entire directories, I think I need my eyes checked.
^^ and if after finishing the guide and trying out the examples and all you still need some help (which is completely fine, ofc), feel free to create a post here and we'd love to help
help shows help output
hello shows a source code link
update [project ...] shows an update link for the named project(s)
github [project ...] shows a GitHub link for the named project(s)
issues [project ...] shows an issue posting link for the named project(s)
info <name ...> shows a prewritten informational notice reply
rule [rule ...] shows the identified rule
quote [quote] shows a random quote that matches the search (if any)
logcheck <link> gathers information from a server log paste
versioncheck <version text> checks whether a project version is current
script <link> checks a linked script for basic syntax validity
command [name] [usage/tags] to search commands
mechanism [name] to search mechanisms
tag [name] to search tags
objecttype [name] to search object types
event [name] to search world script events
action [name] to search NPC assignment actions
language [name] to search language docs
guide [name] to search the beginner's guide pages
search [keyword] to search all meta docs
restart restarts the bot
reload reloads the meta docs
^ it's those + info list. You can view the aliases as a pin in #actives-only
unstackable instaeat beta food
"GENUINE"
Could someone give me a hint how to delete a discord message via - adjust not sure how to define the message properly ? Also is small stuff like this worth a post? Something like - define removetrade "id:Chatbot channel:<server.flag[discord_tradechat]> edit:<context.raw_args>" - adjust <[removetrade]> delete
!makepost @cold rock
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
pretty sure me showing scripts is legally considered a warcrime but here i go
in a haste lol
!haste
Help us help you by pasting your script to https://paste.denizenscript.com/New/Script and linking it back here.
!makepost
If you have a support question, please make a forum post for it!
"But it's just a yes/no question!"
We hear this from users quite often, and, frankly, it almost never is just a yes/no question - many seemingly simple questions lead to long answers or complex debugging or interesting discussions or...
"But you've probably gotten this question before and have the answer prepared"
All the more reason to use forum posts! When you're typing the title, it auto-searches existing posts, and thus if you're asking a repeat question, you'll instantly find the prior time it was asked, and the answer it had then, before you even press enter on your post!
"But it's not worth bothering"
Good news: it takes almost no more effort to make a post than to type in a channel! It's really really easy!
"But I don't want to annoy the helpers"
A forum post won't annoy us! We prefer it! Most of us don't get pinged or anything, it's fine!
discussion
ok
Latest Denizen stable release builds are at https://ci.citizensnpcs.co/job/Denizen/. Most users should download the stable release build.
Latest Denizen dev builds are at https://ci.citizensnpcs.co/job/Denizen_Developmental/. Dev builds are for usually for test servers only.
Spigot resource page for Denizen is at https://www.spigotmc.org/resources/denizen.21039/ (do NOT download builds from Spigot).
Paper is a higher-performance alternative to Spigot that is 100% compatible with the equivalent Spigot version. It's much easier to update than Spigot itself, and carries a lot of performance and quality-of-life benefits.
Latest Paper builds are at https://papermc.io/downloads.
(If you would prefer to use a Spigot build, refer to !update spigot).
make a command arg manager like mine
what part of im totally bored didnt you understand 
You can fake spawn an item drop right? What command am I looking for?
item is an entity, you just gotta fakespawn it with the correct mechanisms
!c fakespawn
player
fakespawn [<entity>] [<location>/cancel] (players:<player>|...) (d:<duration>{10s})
Makes the player see a fake entity spawn that didn't actually happen.
Makes the player see a fake entity spawn that didn't actually happen.
This means that the server will not track the entity, and players not included in the command will not see the entity.
You must specify an entity to spawn and a location to spawn it at, or to remove a fake entity, specify the fake entity object and 'cancel' instead of a location.
Optionally, specify a list of players to show the entity to. If unspecified, will default to the linked player.
Optionally, specify how long the f...
uh. i think item is the correct entity. it could be like item_entity or whatever bs
create a post if it isnt!
dropped_item
@frozen brook <server.entity_types.filter[contains[type]].comma_separated>
Tag parse results for (Spam): https://paste.denizenscript.com/View/103944
Input too long, refused.```
Er
lol
But yeah, that's the entity type.
oh man i wanna do something in denizen
That log is filled with deprecation notices 😮
oh that'd be why haha
haha
i even thought of recreating the entirety of warframe but then i reminded myself of whta nimsy has gone through to recreate valorant, which is definitely 1000x smaller
As someone who is a warframe vet and even mods the official discord, you're better off not doing that because of the 50+ warframes and oodles and oodles of weapons.
I mean we got avatar in minecraft officially.
oh neat
I've seen some cool unofficial servers do bending with different skills and abusing the scroll wheel, along with fake blocks.
!c displayitem
item
displayitem [<item>] [<location>] (duration:<value>)
Makes a non-touchable item spawn for players to view.
This command drops an item at the specified location which cannot be picked up by players.
It accepts a duration which determines how long the item will stay for until disappearing.
If no duration is specified the item will stay for 1 minute, after which the item will disappear.
Use "duration:infinite" to indicate that the item should never remove itself.
oh i thought you meant the blue giants avatar
ya'll are looking for this
oh dang
i wouldn't use fakespawn for that
Convenient.
@cursive tide
I’m excited for the new movie 😀
ya will are looking for this
see thats what happens when you put the ' in the wrong place >:(
me too! i wonder if it'll be really good or just excellent cgi
please let the writing be good please let the writing be good please let the writing be good please let the writing be good please let the writing be good
@foggy gorge beeeeehhhrrrrrrrrrrr give me denizen ideas, something COOL not nasty stinky command manager like tick told me to make

thanks I knew it was there somewhere.
make a minimap.
vr gravitational guns that can fling weapons at people ;)
I thought you already made that.
almost, i did it for players and living entities, but now i wanna do it with actual weapons lol
oo, so basically your gravity gun but with collision detection so it hurts
i just wont do it in vr bc i dont have one xD
TELEKINESIS HANDLER FOR VR MINECRAFT
😱
aim at a block/entity
do fancy magic sigils
voila!
who was thinking of doing magic sigils again? aya?
lmao
You could also do it in desktop mode if you tried?
kind of - so like, a very long time ago someone made a script to detect if a player shook their head 'no' or nodded 'yes'
in VR, your <player.location>'s yaw/pitch are determined by just the left handset 
the new vivecraft tags add full x/y/z/yaw/pitch locations for both handsets and the headset
so you'd get the real feel of "drawing" a square, or something
but to be able to detect that someone drew like, a star for example, i have no idea how you'd scale and determine the "difference" between what the player's star looks llike and what we define it as
and that's the part that i back down on currently
the hard part
i'd ask ChatGPT but it's more focused on telling me it's status 
use ai
teach me mom
i only know how to use the easiest web based 'enter chat and press enter' AIs currently
i do wanna make some cool weapons and vr mechanics before i get into that crazy stuff anyways
beg
bark

give me a sec and I'll find the repo I was looking at
i came back to this and was like "shit did i just start an uproar barking for jumpsplat"
lmao
found it. https://github.com/jmiskovic/lua-gestures
basically, take the pose of a players hand while they're pulling a trigger, flatten the set of points to a single plane, pass them into either a locally running or cloud running version of this algo (or one like it) and then POST the result back to the server (or waitable it)
this time I've added examples 
#denizen-contrib message

wow so tbh, chatgpt kind of made it feel like i might actually have an idea of how to do the thing
does this event work for crossbows?
yes
can you load tridents with arrows?
