#Open Denizen Discussion Thread
1 messages ยท Page 13 of 1
idk itโs cool
because it's also in Denizen logs
ancient old syntax it used to use for everything
DEN+> Executing 'RUN' blah blah
helps the c scripts use regex better
really ?
Coolness factor + stand out in logs maybe
love to get random syntax backstory
DEN<(---:]]>>>)}-> would be better
personal opinion
its similar to this:
https://github.com/DenizenScript/Denizen/blob/dev/plugin/src/main/java/com/denizenscript/denizen/scripts/commands/item/GiveCommand.java#L31
you can see where the @'s and the open/closing brackets kinda are for scanning to easily grab the meta in the right places
wait is docs parsing also custom
always thought it was just a doc generator library of some sort used and that's it
yeah, when it loads the data, it scans the repo for it all manually lol
no it loads the repo and goes file by file
yeah that's how any doc generator library works
the question is whether the parsing is custom
the logic is soo I think yes?
didn't found any library when I remade it in react
i mean, specifically for java i don't know but i.e. with JS you have JSDocs
or with emojis DEN๐คญ ๐คซ๐
Now it's more an "IDE typing system to have typescript without having typescript", but initally was a syntax for automatic docs generation
still the case, but also widely used for typing js
no
๐คญ๐คซ๐: type: task script: - narrate "this actually works, please kill me ๐"/ex run :face_with_hand_over_mouth::shushing_face::point_right:```
ope
im not fixing it, it's already too cursed
no way that actually works
it does unfortunately 
emojizen
incoming funky
people who use emojis in their code, even in comments, should have their computers taken away
and their browser history exposed!
if heart rate < 5:
delete browser history
if your heart rate is < 5 pls eat sandwich u are dying
good idea
Yum
๐ฌ:
type: format
format: ๐ง๐ฌ <[TEXT]>
๐ซธ๐:
type: task
definitions: ๐[The item to give.]|๐[The player to give the item to.]|#๏ธโฃ[The amount of items to give.]
script:
- define ๐ <[๐].as[item].if_null[diamond]>
- define ๐ <[๐].if_null[<player>]>
- define #๏ธโฃ <[#๏ธโฃ].if_null[1]>
- give <[๐]> to:<[๐].inventory> quantity:<[#๏ธโฃ]>
- narrate format:๐ฌ targets:<[๐]> ๐๐ซด๐
๐ซณ๐:
type: world
events:
on player right clicks chest:
- determine cancelled passively
- define ๐ <context.location.inventory.list_contents.first.if_null[null]>
- define #๏ธโฃ <[๐].quantity.if_null[1]>
- run ๐ซธ๐ def.๐:<[๐]> def.#๏ธโฃ:<[#๏ธโฃ]> def.๐:<player>
yes it works
no
fuck off
please delete that
and think about what you've done
Im going to need to wash my eyes with soap now
if minecraft's font has emojis, it's for a reason
just use the damn emojis
also quite literally, minecraft having emojis support in its font is great
cases like discord chat bridge become sooo much better
NO NO NO YOU CANT MAKE ME DONT MAKE ME DO THIS
well earned
does something like this this look discrete enough as a way to show what spell someone is holding i wonder
ooo
not large enough, also would be like impossible to see when theyโre moving imo
also you better not be stealing art from ars nouveau
you could like, attach it to the front of their arm? like
right here
thats sick how did you do the offhand slot
is it just a sick texture in a resource pack?
I think it looks good, pretty visible, but maybe try using bright colours as well to make it even easier to see during combat
oh I thought you were talking about the offhand slot. I didnt even see the hand item lmao. So no, not visible enough ig
i think i do actually like that
yeah thats better
i feel like doing normal tasks in a magical complicated way is like engineering a script or program to do a simple task, i love it though
well then script everything about mining
hope you enjoy the challenge!
Lasagna powered magic
Each layer of lasagna is either mana infused or it's a spell
can you bypass aeternous file upload by adding the jar to the world zip. then using a plugin from spigot to move it to plugins folder?
probably violates their TOS
jw f its possible xD
if such plugin exists then i dont see why it wouldnt work
also, "aeternous" LOL
probably violates TOS tho
ye
s
iirc they had this before?
wait no
im thinking of minehut and the /world command
So with 1.21 being here and dev builds being eventually worked on, I've noticed that there isn't a 1.20.6 release build for denizen. Whats going to happen with that?
Well, the next release build will probably be for both - currently neither are stable (mostly because of the 1.20.6 issues carrying over), so doesn't really make sense to release one
Fair enough.
is renaming note a thing or am I cracked?
@winged moss You seem to have a misunderstanding; Denizen is a plugin for Minecraft, not a standalone game. Also,
@fossil steeple warn @winged moss normal rule 4
Warning from @reef wharf to @winged moss recorded.
Reason: "rule 4"
!rule 4
Don't DM helpers or any random users. https://denizenscript.com/discord_rules#rule4
"DM" refers to Direct Messaging.
We don't give help over DM. Ask in the most relevant public channel (if you're unsure which channel, ask which channel to use in #chatter. Do not ask a plugin support question there.).
DMing other users from this Discord (that you haven't already spoken to) is considered DM spam.
does consent matter? if a user does consent to DM? is i t still spam?
the rule doesnt specify
if they've given you consent to DM them, they're not really random users anymore.
The key here is the last line of the rule
๐ญ when i read that i was very confused
is it just me or did the tag get bigger than it used to be
yup in mobile its smaller
and rounder
and smaller
bump
you should probably make a post for this. you can mark it as a feature request because it might get buried here again
!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
!tag inventory
Returns an inventory object constructed from the input value.
Refer to !objecttype InventoryTag.
InventoryTag
#bot-spam
sry
how can I use depenizen for placeholders like %player_name%
First you start by making 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!
could this mayhaps perchance be applied to players? #changelog message
i mean i know players are entities.. but would that work? if so, how would it work?
Pretty sure thats meant for mobs.
Why would it work on players? Just use the death event.
Itโs only mobs
thought so
idkkkkk What Ifโข๏ธ
and do what? delete the items they're using instead of dropping them if the chance fails?
i was eepy when i wrote that pls stop attacking me
oh my god krilliant what are you even talking about?!?!
He should get a second
next to his name for that
DoNotListen
I can sort of understand the idea behind it. It'd be like a drop chance percent for the player to actually drop their items on death.
I plan on doing something like that on my server later where it basically does keep inventory except it has a chance to drop an item you are holding or wearing.
WARNING: not tested
on player dies:
- determine <list[<player.item_in_hand>]> if:<util.random_decimal.is_less_than[0.2]>
- determine KEEP_INV
Should theoretically be as simple as this
Using <list[]> because the event has quite a bunch of different determinations and drops expect a list. Might be useless? Untested
Also, I'm not sure whether this would actually keep the rest of the inventory or just destroy the rest
Might need a pair of determine KEEP_INV passively + take + drop
wot
You don't need the list constructor there
<util.random_decimal.is_less_than[0.2]>
!t random_chance
Returns a random boolean (true or false) with the given percent chance (from 0 to 100).
ElementTag(Boolean)
- if <util.random_chance[25]>:
- narrate "This happens 25% of the time"
- else:
- narrate "This happens 75% of the time"
You probably want to:
Check for %, determine held item passively & take it
Then determine KEEP_INV (passively) & NO_DROPS
literally read the message below
I did
ok
then don't "wot" me
also random_chance is for:
- new people because it's definitely a recent tag
- for people who can't think
context.apademide.is_new_person -> false
context.apademide.can_think -> true
thus i am unable to use that tag
it's not new
not sure when it was added but the oldest meta pull up of it dates back to 2021
nvm i found
#changelog message
as i said, new
ok grandpa
I find that hard to trust
When is denizen 1.20.6 cominggg (the good release not the in-development release)
likely never
je retire
can't say "likely" because i don't know
but "could be" never
since 1.21 is already a thing, it might be the next release target
or not
again, don't knw
since i don't know, this pretty much means my 7 previous messages have basically no point
is this meant to be a joke
it's increasingly hard to tell with you recently
you also shouldn't need the list constructor, single objects will listify themselves if you pass them into a list argument
if not uhh
don't randomly avoid tags that are there to simplify things?
oop somehow my eyes missed this
he already said that
I already asked this. #1027064108056580106 message
wait what
@frozen brook <element[test].is_empty>
Tag parse results for <element[test].is_empty>: https://paste.denizenscript.com/View/124086
element[test].is_empty
Had error: Tag <element[test].is_empty> is invalid!
Had error: Unfilled or unrecognized sub-tag(s) 'is_empty' for tag <element[test].is_empty>!
Had error: The returned value from initial tag fragment 'element[test]' was: 'test'.
you lied to me inquisitor
Well, that's not an argument
Doesn't need to be an argument even, just Denizen knowing what object something takes
Or well, I guess still technically an argument, but doesn't have to be a command argument
!g overuse constructor tags
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
^ see that
I wasn't asking you to make the script for me man. I was just pointing out that I could make sense of what they were saying and I was gunna do it later. I don't even have a player base yet ;(
so what
that's not the player base that brings the features, that's the features that brings the player base
step 1: have a good server with cool things
step 2: wait on players
I gotta have the players to play with and bug test the things I've already got before going off and making more insane stuff. I've already got a 30 page in-game guide book
you don't have to, you set your own goals
if you wanna make something, make it. Maybe it'll be the thing that ends up attracting players
Donโt waste time on documentation nobody will even read
96.3% of people donโt even fill the หusage` command script keys and itโs fine
it's good to have documentation tho
esp if there's a lot of content to go thru
id rather there be a guide to go thru than wait for an answer from players/staff on how to do something
Yes but itโs not good to have a huge ass documentation when you have no player in the first place
People will like the feature then read the docs
You didnโt read the whole denizen meta docs and thought it was cool so started scripting, you saw a bunch of things you could do with scripts then looked at specific meta docs
yeah? i wouldn't have gotten anywhere without the documentation in the first place
Ye, but denizen existed before its docs
Likely started as a simple readme with the few things you could do with it at the time
Then it grew, so did the docs
I'm not saying to add documentation before adding the features
but it's a lot easier to develop both at once imo
Ye tru
i mean, this is true yeah, but if the documentation was incomplete i'd likely not have found some of the things i was looking for
But realistically, the community likely helped you more that the meta docs in itself
100%
Though, if there was no meta i'd have made x100 more posts
Both are pretty important I'd say
Which means (especially on small to tiny servers), a helper or two and a few cool things to do have more positive impact and take less time than spending days on setting up docs
Imo docs REALLY helps when they're easy to search through
or at least, you know how and what to look for
oh
yeah on a smaller scale, i agree
sorry also i keep forgetting to turn off the stupid pings
i.e.this (regardless how bad or wrong the script is) is a feature people can like and have a opinion on and improve your server player experience
while making a complicated in game doc thing is a whole system to think about and "adds nothing"
Ah ye also Iโm not saying itโs bad to have docs im saying itโs bad to spend too much time early on on business ready huge docs
Denizen Meta Docs vs. a readme; a complete minecraft ingame GUI vs. Just put patch notes in your discord group
ahh i misunderstood you then, i agree early on it makes more sense to put effort into the actual features
most servers i play on make their guides on those wiki sites
which i prefer a lot more than in game docs/guides
since it's pretty easy to scour them for specific stuff
i have no idea about the set ups tbh, ive never really messed with anything like that, but id imagine it's a lot less painful than setting it up in game lol
Usually a simple code "parser"
Just some kind of regex on your codebase
And a specific comments syntax of some sorts
Many different flavors of the same underlying idea
sounds fun to play around with, at least for the experience ๐งโ๐ฆฏ might give it a shot if i get super bored sometimes
anywho, show time, cya o/
Mostly it was a guide book like mods do for their features. Do some basic explanations of mechanics and if they want more info then they ask
I had about 10 entries in the book with 1-2 pages per entry. It has a table of contents in the front of the book to quick travel to the page for that section
I've got an open dev log on the discord for the server where people can ask questions as I go
an eggcellent post question
๐ฅ
try it and c
I'd imagine you can spawn in an item frame with the map in the contents, but try it
yes but i wwnt it ws a display
so i can stretch it and esit
I mean soon you can do it with entity scaling :)
Or you could make it a 3d model as a copy of it to spawn as an item display, just wouldn't update lol
I've been using 3d models with item displays for my custom crops lol
I got my big lore proc to work now and it's hot af now. Works for food, armor, weapons. I'll probably reformat enchants too
borgar
I just got a master pickup data script working so it converts vanilla items to my custom versions like replacing animal drops with the custom food with food poisoning and new food values
That's cool, you may wanna consider making a border inbetween things so it looks better.
And spacing.
https://cdn.discordapp.com/attachments/635304225219411988/1207464537561899050/image.png?ex=667e9abb&is=667d493b&hm=325a3550c58c28e3b26a25501138c6df9fa6a4993f7cb20672c8bfcfc746b2d2& Take example my custom lore for special items.
Ah yeah that's good, I thought about it, but never got to it
I'm mostly running lines like this define lore "<[lore]><n><gold>Replenishes <yellow><[2].flag[food]> <gold>hunger."
I can def add breaks like that
Yeah, fair.
It'd work good for the armor or weapon attribute boxes
Here's how I'm handling the attributes
https://paste.denizenscript.com/View/124147
Content of Denizen Script Paste #124147: attributes proc... pasted 2024/06/27 15:03:02 UTC-07:00, Paste length: 908 characters across 22 lines, Content: Attributes_Lore_Proc: type: procedure
So uh, I thought this was how data maps worked before. Not real sure how I managed to get it to work in the first place lol
Stew_Recipes:
type: data
#alchemical:
meat:
- curry_chicken:
- cooking_raw_pork
- new_carrot
- cooking_raw_chicken
- meat_stew:
- cooking_raw_beef
- cooking_raw_pork
- cooking_raw_chicken
#veggie:
alcohol:
- wine_mash:
- new_sweet_berry
- new_sugar
- new_sweet_berry
But hey it worked
Wow that's cursed knowing how maps work better now
- foreach <script[stew_recipes].data_key[<[cauldron].flag[base]>]> as:map:
- define key <[map].keys.get[1]>
- define recipe_ingredients <[map].get[<[key]>]>
I love denizen :)
That can probably be improved. Consider making a thread.
I already am gunna fix it lol, I just made a thread asking for help with map tags and I'm showing now my idiocy :)
^Already closed said thread too
Yeah that's the plan. I remember I somehow discovered sub mapping before I even knew lol when just working with flags
Thanks for the suggestion, it looks much better now. I'm working on reformatting the food items since I'm remaking my cooking system again lol
Cool
By the way the method of my border is strike through space
Oh, I actually haven't even played with strike throughs in formatting
Oh good I was about to do <element[ ].strikethrough>
Do what you feel is best for a border, but this feels cleaner
I just gotta see about setting up an actual lore line in the format for the eventual quirky item references
oh god all of my food items already have a lore line, this is gunna be pain
much better
much better formatting
Hello everyone, denizen issues an error who can help?
make your own post please
how?
Where is Clientizen mod?
wait. this is mod https://ci.citizensnpcs.co/job/Clientizen/
but where is the plugin then?
The plugin is just Depenizen
oh i see
(But also #1131872289688928266 for Clientizen-related stuff)
Why isnt depenizen merged with denizen?
Why is there a whole seperate plugin for something pretty small (afaik), and not just included in Denizen
I mean, Depenizen isn't exactly small, it's integration with several other plugins (and Clientizen ^)
hmm
it would be bloatware
Depenizen is a bit of a technical nightmare tbh
arguably, Clientizen and Bungee support could be moved from Depenizen to Denizen
but all the rest, noooo keep it away
Built in clientizen would be interesting.
it wouldn't do anything without the mod anyway
we'd just get way more confused support threads about why their commands weren't working lol
is redstone named dust now
what
yes
declaration: package: org.bukkit, enum: Particle
ctrl+f redstone
its just dust
Dust particles have existed for a long time
yeah but redstone gone now
i even got an error in console saying its deprecated
Guess they merged it
^ there's still back-support in scripts, Spigot just updated their naming to match the actual Minecraft naming
Anyone know where location flags are stored? I can't find them in the world files or denizen folder.
!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!
!update depenizen
Latest Depenizen dev builds are at https://ci.citizensnpcs.co/job/Depenizen/.
!update denizen
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).
Does anyone know a good web api to edit MIDI files?
I reworked my stew system and made a new stats page which keeps track of all recipes the player discovers when experiementing with stews. Very happy that I got it working
Now I'll have proper tracking for any and all recipes I make going forward as it's working off a submapped flag on the player
One of my goals later on is to essentially create an equal that rivals the plugin Brewery. I already have fermenting, brewing and bottling working, just need brews to actually code in!
Fascinating.
i wanna make a cooking system that you can use any item in the game and ai generates the stats and name for it
I pretty much recreated Pam's Harvestcraft already with just the vanilla items. I am just now making new crops and having more options to make more food
Around 190 edible items
lasagna?
borgar
reminds me of xeane
talfeane
Working off an old resourcepack for pam's back in 1.7.10 or something
hey I don't want to get in trouble for using recent assets haha

If youre going to do that, at least make the AI generate a custom image as well
Train it on a bunch of existing minecraft food icons
and real food
string sandwich
@small kernel give us three custom minecraft food ideas where the recipe calls for either string or cobweb!
How about these three recipes?
- String Lanterns: A block of cake with a diamond on top and 4 cobwebs around it, surrounded by 9 pumpkin pies
- Spooky Spider Cookies: A cookie with sugar on top and a string attached to it, made of wheat and cobwebs.
- Stringy Stew: A pot of beef stew with a sprinkle of gunpowder on top and 4 strings hanging down around it.
Oh god I tried to use a stable diffusion to gen textures, that didn't go well
Pizza better give you crazy buffs
I'm glad I remembered that I had the resourcepack before I went too into it
I think I'm using the stable diff for book textures though since I'm bad at art
I suck at pixelart too. But I know that AI is dogshit at pixelart lol
Have tried too many times
Though I did get into 3d modelling recently and that didn't turn out too bad for custom crops
yay
+> YAY!!!
Lowkey I thought about doing this too.
But I haven't mingled enough with it.
I know blockbench can help with this.
I'm using item displays for the 3d model crops
yeah blockbench, great help
I'm having the crops piggyback off of an invisible beetroot crop for their growth cycles
Ah.
Clever.
I was wondering how you managed the actual block aspect of it.
How did you make the beetroot invisible?
I screwed the texture into being transparent
Making minecraft style crops is pretty easy tbh. Just get the model you currently have, and make it flat. Then copy paste the flat plane either 2 or 4 times (I think wheat uses 4) and cross them together in a square or X. And there you have your minecraft style crop. If thats not the style you want ignore this ofc
:)
Then what about actual beetroot?
who eats beetroot
nobody
exactly
dingdingding
I'll remake it later into the 3d model version
ahh so youre going for the 3d style
I thought you did something like fakeblock air for everyone on the server.
what do we look like, dwight from the office
It just looks better as 3d
I just didn't realize I could do that
I imagine my method would have less errors as wouldn't you have to fakeblock it every time a player enters render or something
I don't know either!
This sounds like a TIAS
amen
True. Not to mention I don't know how well it'll work with blocks that alter the existing block.
Such as growth.
Yeah I'm running a lot of flagging and data off of the beetroot crop itself
Here's my block I have for the crop growth:
https://paste.denizenscript.com/View/124979
Content of Denizen Script Paste #124979: crop growth... pasted 2024/07/25 13:38:18 UTC-07:00, Paste length: 1204 characters across 22 lines, Content: on beetroots grows location_flagged:crop: - define location <context.location>
Oohhh Item displays
Pretty clever.
So it spawns the item display with the name input from the crop
Hm interesting
I think I would work with entity flags for stage
Instead of multiple entities
Well it removes the entity and spawns the new one
Can you easily just change the item in the display?
It's an item display sitting ontop of an invisible beetroot
ye
Yeah, just replace the item with the item mech.
Wish I figured that out sooner. I'll change that when I get the next batch of crops to code and model
Yeah
oh legacy already answered
!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!
@mossy tide look, i found you on the youtube https://youtube.com/shorts/HWpKS0O05cc?si=4bibcrhyeUdj2-FS
#animation #stickfigure #alanbecker#minecraft #minecraftanimation #animator #stickfigureanimation #stickanimation
simple DPS tracker:
debug: false
type: world
events:
on player damages entity:
- flag <player> dps:+:<context.damage.round_to[1]>
dps_reset:
debug: false
type: world
events:
on delta time secondly every:1:
- foreach <server.online_players> as:__player:
- flag <player> dps:!```
I use this on the action bar so players can see their DPS
and a placeholder that pulls that flags value
!t online_players_flagged
Returns a list of all online players with a specified flag set.
Can use "!<flag_name>" style to only return players *without* the flag.
ListTag(PlayerTag)
Might be better.
it flags everyone
cwhen they hit
anyone who hits gets flagged
I see what you mean
But
You're flagging the attacker, and foreaching all online players and removing the flag. I'm saying it'd be better to forloop players flagged with dps
yes, but by how much realsitcially?
I suppose I see your point. Might be worth a thread asking if it's worthwhile.
i did change*
Im just saying its such a negligible impact
i also wrote:
debug: false
type: world
events:
on player damages entity:
- ratelimit <player> 1s
- if <player.item_in_hand.raw_nbt.get[MMOITEMS_ITEM_TYPE].after[:].if_null[null]> == DAGGER && <player.item_in_offhand.raw_nbt.get[MMOITEMS_ITEM_TYPE].after[:].if_null[null]> == DAGGER && <player.item_in_hand.raw_nbt.get[MMOITEMS_ITEM_ID].after[:].if_null[null]> == <player.item_in_offhand.raw_nbt.get[MMOITEMS_ITEM_ID].after[:].if_null[null]>:
- if <player.attack_cooldown_percent> >= 50:
- execute as_server "ml tempstat add <player.name> ATTACK_DAMAGE <context.damage.mul[2]> 20 default"```
for mmmoitems to sort of hack-ish method of dual wielding
.
Lowkey feel like you should make that a proc instead of a lengthy nbt tag, but that's my personal opinion.
a proc?
A procedure.
It needs to check NBT since denizen doesnt have support for mmoitems
I'm saying is, wouldn't it be better to make your own procedure that returns that information instead of putting down the exact same lengthy tags up to 2 or 4 times?
<player.proc[mmoitem_type].context[hand]> and it'd run that big nbt tag you're doing? Could even define them prior.
Maybe it's just my type of practice.
Cool though.
Content of Denizen Script Paste #125051: Testing Dummy... pasted 2024/07/28 00:53:36 UTC-07:00, Paste length: 1208 characters across 41 lines, Content: test_dummy: type: command
heres my damage dummy
When 1.21 ๐ญ
Already supported on dev builds, if you're having issues then...
!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!
Ok didnt know, im new
Not asking support, just want someone else to see this insanity I'm fighting
[21:05:16] [Server thread/INFO]: Filled tag <proc[Cooking_Math_Proc].context[dough]> with '1.5'.
[21:05:16] [Server thread/INFO]: +> Executing 'DEFINE': Queue='q@COOKING_MATH_PROC_81_NamAe' (ingredient_value:ADD:2)
However if instead of an add function, I just use set it doesn't round up to 2 for who knows why
I just want to be happy and have proper working math. I didn't graduate HS from Calculus 2 to be fighting with addition :(
bro I'm in so deep I don't even know what's happening anymore, but all I know is using set works for what I want :(
Could be because I'm using dev branch on 1.21, I also haven't updated in a week or so
Can I see the armor of invisible npcs?
!makepost @errant cairn
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!
make also sure you are in the correct channel
Isn't it the right channel?
You clicked the forum thread that explicity says NOT FOR QUESTIONS / SUPPORT
Been fiddling around, managed to make a small replica of Infernal Mobs through denizen.
Mobs have specific blacklisted affixes. Ex: Blazes don't have fire resistance, cave spiders can't have poison, shulkers can't have knockback immunity. Etc.
It's an excuse to play with mob scaling.
Sorry to be the one to tell you this....
But check your ping
@quartz wraith didn't you make this too once? or did it get abandoned?
sick
infernal mobs will always be a cool concept
it was written really poorly but i made it data driven
@grim quail is yours data driven too?

itโs licensed under MIT so idgaf what anyone does with it
that sounds so fancy
mob_mod_speedy:
type: world
debug: false
mob_modifier:
type: prefix
events:
after entity_flagged:mob_modifiers.speedy spawns:
- adjust <context.entity> speed:<context.entity.speed.mul[1.5]>
for the mob modifiers (both suffix and prefix) you would just make a world script with the name starting with โmob_mod_โ and a data key called โmob_modifierโ
also i cant tell if youโre insinuating that i โmade it first in denizenโ because i absolutely did not, i think adriftus did, which is where i got the idea. not to mention that the whole concept is based on infernal mobs
There's a huge data container for the rarity of the mob, prefix/suffix blacklist per entity type, and the suffix/prefixes display and potential modifiers that are used in a choose/case during a run task to apply them as a modified mob. Usually adjusting their base attributes in some form unless it's something special like vamprism or random status effects applied on hit.
Rarity also influencing some of these modifiers such as walk speed/attack damage.
I'm running it in a mcve before I put it onto my personal project server, because while attributes for damage is nice, I completely override damage for my personal server and dictate stuff via a data container for every single mob.
oh yeah that is a thing i forgot to add, all the modifiers have the same chance to be added to a mob
so there is no weighting system which sucks when you have a modifier that just makes the mob super powerful
Ye. Can't let have blazes have fire res and such.
Also have to flag the server with every single mob so I can delta forloop em for visual fx.
another thing i didnโt do, particles, i forgot about those
It's cool trying to think up names.
I had to look up a mob generator to remember what attributes did what, and which attributes can be assigned to mobs. Because attack speed isn't changable sadly.
Like, TIL there is water movement and oxygen bonus (???) attributes.
weird
guess that's for the enchantments for depth strider and respiration
Well that's just terrifying in a sense. I continue to make a few more extra affixes to slap on.
Immune means they're immune to any negative effect, so withering, poison, weakness, and others will not work on them. Chaos means they will randomly put a bad effect on you when they strike.
Eventually I plan to let their rarity (Color) dictate how strong and long an effect is given.
what does this mean?
That you need to make a thread
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!
why isnt this working type: world
events:
after player clicks wooden_sword in inventory:
- execute as_op "summon pig"
!makethread
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!
how tf does if_null or exists even work ๐ญ im looking at internals and... wat
if a valid elementtag is provided, itโll return true
my guess is - look how its registered on ElementTag.class, so the tag only exists for elementtags
things that return null don't return elementtags
so it won't use this tag, and it won't return ElementTag(true)
that's just not even how that code works at all
the actual relevant implementation is in the core internals that handle tag errors, there's code to look for those special case tags and handle uniquely -- if it hits the method you screenshotted then it definitely exists
Ok
I've done a stupid.
I'll probably turn this into a showcase display, but for now
Behold, the brick.
Why?
Funny.
lmao
Still trying to figure out the glass breaking particles, gotta include a minor cooldown for survival players.
@old venture Did you yeet your github for dCommands?
https://forum.denizenscript.com/resources/dcommands.122/
Tried to click on the wiki and it 404.
Are you tired of having to use bloated plugins for just one simple command you want? dCommands is here for you!
dCommands' commands feel like they've come out of Essentials, but they are far more customizable!
Use /dcommands to get a list of all...
@fossil steeple warn @night glacier normal rule 4 after you asked I said not to
Warning from @reef wharf to @night glacier recorded.
Reason: "rule 4 after you asked I said not to"
Please open a thread.
denizen for minecraft version 1.21?
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!
but i couldn't find denizen for 1.21
Please follow the instructions.
Hey does anyone know what mechanic it is to shove text on the middle of the screen or is that just a modded mc thing and I'm losing my memory
(It's a high chance I am developing not only code, but also amnesia)
!c title
player
title (title:<text>) (subtitle:<text>) (fade_in:<duration>/{1s}) (stay:<duration>/{3s}) (fade_out:<duration>/{1s}) (targets:<player>|...) (per_player)
Displays a title to specified players.
Shows the players a large, noticeable wall of text in the center of the screen.
You can also show a "subtitle" below that title.
You may add timings for fading in, staying there, and fading out.
The defaults for these are: 1 second, 3 seconds, and 1 second, respectively.
Optionally use 'per_player' with a list of player targets, to have the tags in the text input be reparsed for each and every player.
So, for example, "- title 'title:hello <player.name>' targets:<server.online_players>"
would n...
@mossy tide ^
Ah that makes sense, I knew I wasn't losing my memory just yet
is there a way to check if an element tag have any special characters/symbols?
Looking for a way for players to enter only alphanumerical text
!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!
Heya, how does denizen compare in terms of performance to say skript?
Skript really decreases performance on large servers
I swear every half year we get this question.
im sure it depends on your use case
in my experience with some larger things though, it's been pretty performant and works pretty well
unsure about it in comparison to skript though as i've never used skript
Wow you're not kidding! A quick search of "skript" came up with posts from January and August of 2023 and 2024
i never saw anyone complaining about denizen hurting performance
and when there is someone doing that, spark profiles say denizen's not the culprit
and as far as i've scripted, if it lags you did it wrong
Denizen is well optimized
It took all day, but I am getting projectiles working slowly, It's my first time working with raycasting and moving display entities, but I'm using some old code for magic to get an understanding to how to do particles. I already see I'm gunna have to redo it entirely as I'm doing a particle for every half a block and I can see it puts a strain on the server to render and check for targets.
Anyways, here's Burger Projectile.
I posted this alongside the sneakpeak in my server
#actives-only message
nice music thanks
I think this came out really nice
Currently the projectiles are using an old targeting foreach from the old magic system I was cannibalizing, so it's kind of laggy. I want to see if I can have the particle to instead Mount the projectile Item Display and do it like that.
huh
playeffect at the projectiles location
Yeah that would prob work too, I'll have to also rework the targeting. Lemme show how it's being done currently.
- foreach <[loc1].points_between[<[loc2]>].distance[0.5]> as:value:
- playeffect effect:dust special_data:2|<color[<[color]>]> at:<[value]> offset:0
- wait 2t
- foreach <[value].find_entities.within[1].exclude[<player>|<[projectile_entity]>]> as:target:
- if <[target]> in <[target_list]>:
- foreach stop
#- narrate "found <[target].entity_type>"
- define target_list:->:<[target]>
- hurt <[damage]> <[target]>
Very not nice due to the points_between running so often
I might make a thread if I want help, just wanted to show how its done rn
can denizenscript make custom recipes? im looking for something like kubejs but serversided so this is perfect if it can do that
Yes. 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!
update java 21 and paper 1.21 not working?
java 21 should worki
[23:26:44] [Server thread/INFO]: +> [Denizen] Running on java version: 21.0.3
[23:26:44] [Server thread/INFO]: +> [Denizen] Running on unrecognized (future?) Java version. May or may not work.
[23:26:44] [Server thread/WARN]: [Denizen] -------------------------------------
[23:26:44] [Server thread/WARN]: [Denizen] This build of Denizen is not compatible with this Spigot version! Deactivating Denizen!
[23:26:44] [Server thread/WARN]: [Denizen] -------------------------------------
[23:26:44] [Server thread/INFO]: [Denizen] Disabling Denizen v1.3.0-SNAPSHOT (build 1804-RE
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!
I'll will help you then
Finally took the decision. Im removing mmoitems and writing all the systems i Will Need in denizen directly.
yay
+> YAY!!!
This will make so many things easier for you
Idk all the hard stuff was managing lore changes. At the end It Will be a lot the same for that
(I think)
this is the ""hard"" stuff i'm handling and that take me a lot of time to make correct every time.
idk if this will be more simple or the same removing mmoitems and using only denizen
Nha got it from my git repo
Looking at it, is this converting Mmoitems when you receive them? If so then it's just a bandage until you actually convert them on the backend with item scripts
i'd imagine it's some sort o inventory gui thing
You could also simplify some of your definitions like stat_value since you're already defining the raw_nbt. It'd just be like <[raw_nbt].get[MMOITEMS_<[stat]>].after[:]>
But I could be wrong in that tag, writing tags on mobile is ass
Idk I'm one who overly relys on definitions
That Is a gui script to change a dtst of an item and update the custom lore
Idk why i did not define a raw nbt but i think there was a rradon but this script Is kinda old so i dont Remember clearly
what does the mmoitem config look like
might want to boot back up my mythic to denizen project again
breeze rod isn't a valid material apparently (in vscode)
Make a bug 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!
๐
i was thinking that probaly i could make a dynamic lore building script that build the lore for all the items but idk will have to experimentate.
couldnt you theoretically just read the yaml?
like i know its possible just dont know if it'd be better
Does anyone know how to lock spectator_target
I mean to not let player shift and quit entity spectating
!m spectate
Forces the player to spectate from the entity's point of view, using a packet (meaning, the player starts spectating clientside, but not serverside).
The player will not move from their existing location serverside.
To cause real spectator mode spectating, use !mechanism PlayerTag.spectator_target
Note that in some cases you may want to force the player into the spectate gamemode prior to using this mechanism.
Note: They cannot cancel the spectating without a re-log -- you must make them spectate themselves to cancel the effect.
Like: - adjust <player> spectate:<player>
PlayerTag
EntityTag
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!
idk never tried messing with files directly
write a python script to convert some of it automatically
!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 ...
there's also tons of tags for yaml
Hey since it's not really a denizen issue exactly, anyone know why the coloring isn't working properly for VScode? Just opened it up and tried to close and open multiple times, it sticks with the last color it was doing.
I've had the problem in the past, but it was fixed by just reopening the file
Oh annoying I opened another file I had and it fixed, ignore me then
Usually just opening another fixes it. It's a common issue and I don't know if there is ever going to be a perma fix.
cough cough semant-
I love updating my servers from a minecraft version. :)
(Not asking for help, just passively complaining that I have to fix my own problems.)
rip waterbottle โค๏ธ
wait what happened to it
drank it
did they kill it or was it remapped to a different name just like everything else in 1.21?
npc not coming but how to fix itI'm adding the mod but the npc is not coming any kind of citizens
!channel @copper stag
When you have an issue or question, please create a thread for it in the most relevant channel. Don't use #chatter, it's not a support channel.
#1026104994149171200 is for Denizen questions.
Citizens questions go in #1027028179908558918.
Questions about Sentinel should be put in #1024101613905920052.
Other minecraft/tech topics can go in #1027976885520584814.
Also look in #info for the description of each channel, or at the topic bar (at the top of the screen within each channel). That topic bar also links to the relevant readme file for each project, which contains lots of handy information and links to builds and stuff like that.
Is it out for 1.21 version?
not until our beloved aya gets back
gotchu, thanks
she in vacation?
oops sorry ping active
his laptops broken
ah sad, both for he/she and for the wallet ๐
let's hope that the hdd/ssd was at least in good condition for the ability to extract data
I still find that section funny with it's limit. Just look at mine
Wait tf it's gone. You could put 20 characters long for your pronouns
Oh it was just on my home server
It's always pronouns and not amateurnouns
Always forget it exists lol
The laptop is fine, just the a fan died because Portugal gets very hot and dusty and we didn't have proper AC till recently - it's a very easy fix, Lenovo is just taking forever to deliver the part for some reason
Hi, just letting you know, the link on the spigot page that supposedly goes to the latest devbuild, actually goes to a 5 month old build. Might wanna update it.
what link now?
if you mean the link to the latest release build, yeah that hasn't been updated in a while as spigot itself hasn't been stable, I haven't had time to focus on things, and aya's laptop is dead
ie: upstream is unstable and us devs aren't active enough to compensate
er, s/spigot/minecraft basically
the whole 1.20.6 update kerfuffle
yeah those are the release builds
Ah fair enough. At first I think I didn't realise the large gap between the dev and release builds
And I hadn't gone down to the Dev builds link further down
I assumed someone forgot to update the link or something haha
man I didn't know 1.20.6+ update is still in shambles for spigot/minecraft
I was actually waiting for these to like get stable so I can continue working on a server
I just kept working on my stuff and gave up on stuff that is broken as I know it'll be available to fix later.
yeah thats what I'm doing rn. some of the features on the modules I worked on broke so I had to shelf them until tthings becomes stable
so rn just stopped doing dev coz everything else is done reworking
Same. Need some problems alleviated, but I know this is a free plugin and it takes time to work things out.
Really looking forward to that scaling attribute.
Yeah same I think it works currently in 1.21 but I haven't had a need to test with it. I know stuff will be fixed eventually. This plugin honestly really opened me up to having fun with coding. Only problem now is time and motivation to finish projects. :(
if i was currently running a server and needed use of any of the things that broke, i'd be sitting on 1.20.4
not ideal but that's the last relatively stable version
Unfortunately, scaling is 1.20.5 :(
Sadly I already updated and ran on 1.21 for a bit and I found that trying to downgrade the world on the server caused it to crash the server on launch.
ye downgrading is never supported
any1 knows how to disable falldamage?
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!
I dont want to make a post for every question i have ;/
can i make one for ALL my questions?
I mean, it's literally just one button press extra, and it helps us manage everyone's support questions
If they're all related (I.e. the same project) you can probably do one post
It really nice for other people who have the same questions as you. I can search the posts and oftentimes find the answer to my question because someone before me made a post. ๐
I'm not sure how thats related to denizen.
Good point
Ooooh I hate that, I was halfway through writing a support thread since Definemap stopped working when I was using it for the first time and I didn't know why(I still don't) and then I went to add another key to the map since I forgot it for a spell component and it works just fine.
like why tf isn't the coloring working properly its frustrating, makes me think its borked
yea known issue
Try to avoid using ||, though, if needed, use .if_null[]
Then again, avoid relying on fallbacks alltogether.
It's sort of needed when I'm relying off a single modular script to parse data from items with different possible flag dates.
What's wrong with fallbacks
If there's reason to believe that flag might not exist, you can check with has_flag[] prior, or even as a global condition.
Fair point for the flags but fallbacks in general are great imo if you know when and where to use them
although the simplest way to do this (imo) is just store all the stats the runestone has under 1 flag map
that way you don't have to deal with nulls and only have the stats that are existent
Appreciate the suggestion, I might change it around later, but I think how I've got it handled with the definemap above is workin great since I am passing it through a run task which has each definition it needs so it grabs that and ignores the extra defs. I tried to make it modular.
I might put it in a showcase if I get it in an actually useable state, its more of a proof of concept right now trying to setup different types of runestones/spell bases. The basic concept of the system is different Gemstones represent different possible spells when put in combination with targeters such as projectile, utility, touch. A Ruby might do a Fireball spell when used with a projectile targeter, whereas a Sapphire could freeze ice around you when used with a Utility targeter.
So far I've gotten basically 4 different element types working for gems and a random gem size function when the gems spawn which modulate the power and uses of a created spell. Am very happy hence my block of text(It's almost 5 AM, kill me please)
ill just keep using || cuz there is no problem with that
The problem with || is that it becomes a little messy when using tags in fallbacks
and it looks weird
I really need to remember to turn off my self debugging messages when I'm trying to do something unrelated.
oh shit a rat
How long do you have to stay in the sun until your race changes to "Sunfull"? :3
I usually put dumb messages so I know exactly where they are.
I know this is a meme, but it's just the fancy name for the Monster race.
MONSTERS HATE THIS ONE TRICK.
Hey atleast it's not as bad as some of the ideas from my team. They wanted Avian players to lay eggs every now and then
I mean.
I get it.
But probably only if they pressed sneak and the delay was over.
Next thing you know you're having 10 players squat to egg farm with the chickens and you coded up a golden egg chance.
Cursed
We do have #1098024603756015726 but I think that's a different idea of cursed.
@zealous frost I think your script's missing usage instructions https://forum.denizenscript.com/threads/discord-marketplace-script.633/
aky submitted a new resource:
Discord Marketplace (Script) - Discord Marketplace Script
Provide a marketplace channel on Discord for your members to buy and sell goods.
Read more about this resource...
Thank you for letting me know, I'll fix it later when I'm available
I almost had to make a post for my issue, until I realized I was missing vault for an economy script container.
Turns out if you don't, denizen doesn't recognize the script type economy. I feel like it should be a little more informative than that, but you know.
( Also it even ignored the enabled key which I was hoping would be read first. )
ive done that a couple of times lol
We support only the latest patch-version of Minecraft for any recent main version (and Mojang, Spigot, Paper, etc. all generally also follow the same rule).
"Patch version" means the last number in a version label, for example in 1.20.6, the main version is 1.20, and the patch version is .6.
So if 1.20.6 is the latest patch version, then 1.20.3, and 1.20(.0) are all outdated patch versions, and therefore are unsupported.
Note that we do still support recent older main versions (such as 1.19 and 1.18) so long as you are on the latest patch-version of those main versions (like 1.19.4 and 1.18.2).
Reminder that this is for discussion, not support as per the pinned message.
ye i saw that little late ๐ฆ
If you need help updating your server to a recent patch you can make a thread though.
got it working now its just weird system that patch thingy
If you mean it's weird how we drop support for versions that are not the latest patch, it's because it's better to remain on more supported versions that already have bugfixes, performance increases and vulnerabilities patched out.
Helpers and developers have explained this before, but I realize it's not in the info box.
One can argue the same thing for remaining on 1.19.4, but I don't have an answer for that.
Which I'm just assuming stability.
There's also the spigot limitation of file size and files.
Hello Friends, is there any problem when i run Skript and Denizen?
!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!
just realized we cant define list of maps in data scripts lol
sooomething like this https://paste.denizenscript.com/View/126644
Content of Denizen Script Paste #126644: Unnamed Denizen Script Paste... pasted 2024/09/20 07:48:36 UTC-07:00, Paste length: 182 characters across 11 lines, Content: data_script: type: data
its been two years since i did something with denizen, is there a good way to catch up on whats changed besides reading the changelog?
dont think so, if you want to see changes.. well you should look at change-log
i'm searching for someone to join my denizen-coding team on my server - is there an option to do such advertising?
There's a #1023545298640982056 but that requires actual monetary investment, otherwise not sure exactly what you can do as an incentive. It's difficult to get people onboard with passion projects(I am in the same boat, not enough time to work on my project)
I canโt join but I am interested to hear what projects you have on the docket. Like every other server owner here, I have too many projects and not enough time.
can relate lol
Is there any events on discord something like on boosted server/after boosted server?
!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!
I bought a spell icon pack like a year ago and only just made use of it by rigging it up to my runestone spell system
I think it worked well
last pic
[04:11:23] [Server thread/INFO]: [Denizen] Enabling Denizen v1.3.0-SNAPSHOT (build 1804-REL)
[04:11:23] [Server thread/INFO]: +> [DenizenCore] Initializing Denizen Core v1.91.0-SNAPSHOT (Build 1378), impl for Spigot v1.3.0-SNAPSHOT (build 1804-REL)
[04:11:24] [Server thread/INFO]: +> [Denizen] Running on java version: 21.0.3
[04:11:24] [Server thread/INFO]: +> [Denizen] Running on unrecognized (future?) Java version. May or may not work.
[04:11:24] [Server thread/WARN]: [Denizen] -------------------------------------
[04:11:24] [Server thread/WARN]: [Denizen] This build of Denizen is not compatible with this Spigot version! Deactivating Denizen!
[04:11:24] [Server thread/WARN]: [Denizen] -------------------------------------
[04:11:24] [Server thread/INFO]: [Denizen] Disabling Denizen v1.3.0-SNAPSHOT (build 1804-REL)
!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!
!c adjust
core
adjust [<ObjectTag>/def:<name>|...] [<mechanism>](:<value>)
Adjusts an object's mechanism.
Many object tag types contains options and properties that need to be adjusted.
Denizen employs a mechanism interface to deal with those adjustments.
To easily accomplish this, use this command with a valid object mechanism, and sometimes accompanying value.
Specify "def:<name>" as an input to adjust a definition and automatically save the result back to the definition.
You can optionally adjust a MapTag of mechanisms to values.
To adjust an item in an inventory, use !command inventory...
cmon pls someone
is everyone asleep rn?
Please be patience
bro its one hour
i'd like to add that i was, in fact, asleep.
along with most of the western world
mb i thought this was mostly european ๐
Oh man I'm getting so hyped to do my brainstorming for my next project system, but at the same time I know I'm going to start coding and immediately hit a slogfest. But it seems so promising eeee.
Maybe I'm just really cold since its past midnight, I should sleep
I'm gunna make a regenerating dungeon system that players can clear and then tear apart for building materials and it'll then auto regenerate after a week
Lemme repost from my dev server.
My idea is to have a final objective block that acts as the ward/protection of the dungeon at the end of it where the player can break to dispel the protections. Think of it like a dungeon core. Once broken, it'll send a flag to the server stating its been beaten and to put itself up for full looting and recycling.
Once the storm begins it will check every dungeon in a list and if its eligible for regenerating, it will run that dungeon's regen task.
This will constitute a multi-stage process as follows:
- Unregister any mob spawners
- Kill any entities inside
- Remove all Blocks
- Paste in new Schematic
- Spawn all special decorations or entities at specified Coords
- Spawn Mob Spawners
- Place Chests with loot tables
- Remove itself from being Eligible in the list
Storm being my server cleanup and reload event happening weekly
Think of it like Stalker's Emissions or Elona's Ether Winds. Very deadly events that happen just as life events
sounds sick as hell
why is support gone?
What do you mean? Ps. It's 2AM PST rn so do the math for people who are east coast.
i mean no helper has reacted to my post since 3 days
We are volunteers and not all of us know the answer to anything, so we only answer things we can know the answer for.
Please stick to your post and dont use this one to get help or getting attention. A helper is not the only one who helps here as you can see in your threads.
Just wanted to say nice
I keep getting an urge to make a discussion thread just with the title, "What can't denizen do?" Everytime I manage to finish a milestone on my coding project or when I find the exact weird tag I need to input.
runjava
I'm sure you could manage to run java with webget somehow lol
You're right, let's use webget to pull denizen scripts and hot load them and then delete them when no longer necessary. Why? Because we can.
time to make denizenยฒ
Reminds me of that guy that made a computer in mc to play mc
You can do multi line inputs in just the ingame chat for just using the /ex command right?
right
It's been a while, so I forget how you do that.
Hence the question which I realize now is not really a question.
perhaps you should put a question in the question place if that was meant as one
note: this is not the question place
My only concern is opening too many quickly answered posts. I'm self conscious man
making new posts is only a problem if what you posted is identical to what somebody else already asked & got an answer for
which is the whole point of the forum system, to have a long term catalog of past questions & answers
if your question has never been asked before, then it's actively helpful to make a post, as that adds to the catalog for future users to find
If you include stuff like webget then there's very little it can't do (other then stuff your computer itself can't do while already running) - can always write whatever you want with whatever language and run it from Denizen one way or another
/ex repeat 1 { - command 1 - command 2 }
I wanted to share my new model, it's my dungeon core. You go up to it and smash it to "clear" the dungeon and remove the protections which will allow you to break any blocks.
Say, is there a tutorial you followed at all for this? I'd be interested in making models like this.
Haha, all on my own. I'll be happy to share any of my BB models if you'd like. But to give context of this one above, I originally just made it as one single model then got the idea to have it spin so I separated it into two models and have it spawn as item displays of course. Then I just had the center model spinnnn. I have no idea what I'm doing when it comes to art so I'm just winging it!
The glowy particles coming off is actually just two end rods. Delta Time event particles scare me for lag reasons.
Someone send help, I've been coding with Denizen in my dreams. I barely feel like I'm getting sleep as my brain stays active.
/ex adjust <human[Talfein]> denizen_dreams:false
Oh man it was so bad I was having some kind of existential nightmare that for some reason everything in the world was built from tags and I could read it.
Who here is a fan of the 2006 Game of the Year winner?
I never even thought about making an extended item just for that.
I originally was gunna import textures right from the game, but that got squished... Then realized I can just make a model myself with BB
cape i made for someone with simple Denizen particles
You say particles, but that cape looks like shaders or a client mod.
It's actually a model with a display offset in their offhand, neat
love it
Guess who just spent 3+ hours learning how to make custom GUIs using fonts and extremely sub-par art skills?
cool
Yours looks better than mine.
Yours has a more unique look to it.
I just kind of stretched textures lol.
man it was so painful to do as I am so bad at art, I took an image from an Oblivion mod to use as essentially a stencil
I still don't know why it went black and white when I imported it
some texture's have locked color modes because of compression, you have to set it to rgb again with your editing software
lord help me im about to sin
this screenshot looks like it's from the hospital, dude
What
If you need help with a script issue, one of the most powerful tools Denizen has to offer is full debug output. This is displaying in your console whenever scripts are running until you turn debug off. To share a debug log quickly and easily with helpers, simply run the command /denizen debug -r in-game to begin recording, then run through the part of the script you need help with, then run the command /denizen submit. This will give you a link to a paste of the debug log, which you can then copy/paste back to us!
.-.
I think you pulled this up for yourself.
why use many letters when few letters do trick
d๐
i need to rebind something for it to be less buttons but im here for it
This comment still confuses me, what hospital is he refencing? Did he mean an X-ray?
it do be looking like an xray or ct scan
bro swallowed the lock UI from oblivion
all me scripts are broken
sad day
probably related to all the new changes but not sure aha
im so rusty on denizen that i just caught myself putting text in double quotes and commenting with //
Like that yeah
!mohist
Our plugins (Citizens, Sentinel, and Denizen) officially support both Spigot and Paper.
Any other forks of the Bukkit project are not supported, but may or may not work in practice.
-
Lower forks, like CraftBukkit, do not function. You must upgrade to a higher fork (Spigot or Paper).
-
Hard forks and cross-forks, like Cauldron/Magma/Mohist/Any other Forge-integration fork, or Cardboard/any other Fabric-integration fork, will not work. Some unofficial custom builds of Citizens are made to support these servers, but we cannot provide any support for them here.
-
Higher forks above Spigot/Paper, such as Purpur, Airplane, etc. are compatible with Citizens only as much as they are compatible with Spigot/Paper. They are generally expected to work in most cases, but we cannot make any guarantees. We will still offer support to users running such forks, but be aware that if you encounter bugs while running such a fork, we may ask you to replicate them on Spigot/Paper to confirm they aren't caused by changes the fork made.
This will never be a thing? Does it need a certain amount of people to be interested in a Mohist Denizen?
Hey you're likely more than welcome to do it yourself, but it's too much work to maintain support for an entire loaders like Forge or Fabric when the entirety of the plugins here are coded for supporting Bukkit style loaders. As it says on there, it'll be unofficial eitherway. From what I see here, this whole project is volunteer work, so there's that.
is there a custom model to mob code in denizen?
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!
Alternatively, someone may have asked this.
can someone give me the link for a depenizen version for 1.21
!rule 9
Please observe channel-specific rules and limits where applicable. https://denizenscript.com/discord_rules#rule9
Refer to pinned messages in each relevant channel. Use #bot-spam when you want to interact with the Discord bots (except when you need a human's help with it).
!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!
Denizen (Denizen-1.3.1-b7085-DEV) error on latest version of purpur 1.21 (build 2329)
Non-ASCII nickname for @patent matrix changed to base username. Please only use a readable+typable US-English ASCII nickname.
!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!
๐
does anyone have a working build for 1.21.1?
Please pay attention when participating in channels.
Dev build 7081 is the last one for 1.21.1. https://ci.citizensnpcs.co/job/Denizen_Developmental/7081/
This isn't a support channel.
We are too trigger happy to immediately make people feel dumb for asking something in this channel.
#1027064108056580106 message Rules exist for a reason, we ask them to make a post intentionally.
in accordance with the rules, vanze is perfectly fine to ask that question here.
what does vanze mean
what do you mean
i've got to go stop WW3 rq. I'll be back in a couple of hours if all goes well.
name
dawg ๐
They made a post just a bit ago about the build you provided not working properly.
As Legacy said and posted a picture of the only pinned messaged here, this channel is not for support questions, as they often don't have a simple answer and need clarifications etc
It's amazing that you want to help but try doing it in accordance to the system that is set up here
don't ping me
Sorry, my phone is cursed D:
Must have a valid (HTTP/HTTPS) URL any solution?
??
Do any of you use denizen alone to control your chat colors/groups?
I am curious because I'm trying out LPC and i might have more success with what I want if I were to implement it instead myself using denizen.
We rolled over this in #actives-only I believe.
Yeah it was a cool idea.
I was curious if others have tried it haha
Maybe you're crazy! You're the odd one out!
My entire procedure is around 182 lines, but that's including it's data scripts inside.
What are data scripts?
Data script containers, you can put them inside of other scripts if necessary.
I haven't messed with denizen much outside of world scripts, item scripts, and I think I did a few "function" scripts that you can call from anywhere.
!l data script container
Data script containers are generic script containers for information that will be referenced by other scripts.
No part of a 'data' script container is ever run as commands.
There are no required keys.
Generally, data is read using the !tag ScriptTag.data_key tag.
data_script_name:
type: data
# Your data here
some_key: some value
some_list_key:
- some list value
some_map_key:
some_subkey: some value
Script Container System
They're static containers, think of em as configs.
Ah I see
While you can call them externally, some of them can be in the script itself.
my_script:
type: task
data:
my_data: <&e>It's a message.
script:
- narrate <script.parsed_key[data.my_data]>
Etc.
Makes sense.
I needed the data scripts inside of my procedure because of information such as colors, resource pack chat font, titles and prefixes.
I was thinking of adding a title system
like you can earn titles and click through them
instead of having group names
you'd still have groups but like it wouldn't be what shows up in that box that usually shows your rank or whatever.
neat for sure
I let users choose what ranks to display.
Oh wait that's interesting you can customize the inventory screens like that?
What even is that kind of display?
It looks like your normal player inventory but with a backpack or something from a mod
I know it's vanilla of course
!l inventory script container
Inventory script containers are an easy way to pre-define custom inventories for use within scripts.
Inventory scripts work with the InventoryTag object, and can be fetched with the Object Fetcher by using the
InventoryTag constructor InventoryTag_script_name.
Example: - inventory open d:MyInventoryScript
The following is the format for the container.
The 'inventory:' key is required, other keys vary based on the type.
Some types will require you define either 'size:' or 'slots:' (or both).
'Procedural items:' and 'definitions:' are optional, and should only be defined if needed.
# The name of the script is the same name that you can use to construct a new
# InventoryTag based on this inventory script. For example, an inventory script named 'Super_Cool_Inventory'
# can be referr
...
Script Container System
I'll have to look into it all again, it's been a while haha ๐
Is there a location for known bugs?
you can press the bug filter on the threads
Thanks
yes
i use teams to sort then on the tablisy
lpc? luckperms?
if so then that's one of the three plugins that shouldn't be made with denizen
in no particular order, they are, in my opinion:
- CoreProtect
- LuckPerms
- WorldEdit
LPC is a chat plugin.
Generally, yeah don't replace WorldEdit.
You can but it's better not to reinvent the wheel.
yeah like if you have a super specific idea that cannot be done in the plugin, for sure add it with denizen, but you definitely do not need to go all the way to completely rewrite these plugins
@behr
@mossy tide Regarding your script, you could easily <&sp.repeat[43]> or however long that space length is.
Instead of hard defining it.
!t elementtag.repeat
Returns a copy of the element, repeated the specified number of times.
For example, "hello" .repeat[3] returns "hellohellohello"
An input value or zero or a negative number will result in an empty element.
element manipulation
ElementTag
Ah so that's how they suggested how to do it. Someone just told me "just repeat it" and I didn't remember to look it up
I use it for my borders too.
Didn't know if they meant - repeat <number> or what
I mean, originally I did that for the first concept of borders and then I was told of that tag.
How are you going to handle actual dialogue? Like, a few sentences being put out.
Because I'd imagine you want to have it wait a bit between sentences.
Yeah....
Oof.
I'm sure I can turn my dialog: key into a list tag and it'll narrate that
Ah you mean waits
eh we'll see what my new leader wants me to do
Yeah, it may or may not be necessary. I did it for mine but mines still kind of uh..
https://paste.denizenscript.com/View/128347 My generic quest for writing down a template for dialogue is still WIP, but it's a little hacky with how I'm doing it? Reliant on data script usages.
Content of Denizen Script Paste #128347: Unnamed Denizen Script Paste... pasted 2024/11/20 15:17:23 UTC-08:00, Paste length: 8803 characters across 173 lines, Content: quest_assignment_gzk: type: assignment
Missing is the validity script, which just checks if the player is even online anymore and will kill the script if the player isn't there.
Because validation is important.


