#Open Denizen Discussion Thread
1 messages · Page 16 of 1
that's called rubber ducky debugging and it's quite common
you can harness it into a skill
oh! that thing where some people have a literal rubber ducky they explain their problem to?
i see
I hadn't made a help thread for several months until the one two days ago and we never had a real solution since my issue was so stupid
more efficient for me to write a forum help post
figure out i figured it out writing it
and then /resolved immediately
ducky takes too logn
I just schizo babble as I complain that its not working, then I realize my issue
same here lmao
usually explaining how I’m doing things/what I want to have it be, presenting possible solutions, refuting/nit-picking my solutions, and constantly repeating that whole process until I’m at a satisfied point with it all
New voice channel for this discord just has prerecorded sounds of someone saying 'okay' and 'hmmm' and such on loop to explain your code to
Attempted to update to 1.21.11 recently from 1.20.4, and as predicted I have like 20 exceptions.
Most of them were from custom enchantments, ones a bad material for an item script, and another is #1350649389135302748.
So hopefully I can fully upgrade when that bug gets squashed.
i figured out how to give items a max stack of up to 99; but didn't we have some mechanism somewhere that let us change it to more than 99?
oh wait, that should be a denizen forum question lel
>doesnt make a forum post
just discovered you can do subscripts on procs as well
yup yes uh huh you heard me right
test_proc:
type: procedure
debug: false
test:
- determine "omg! subscripts in a proc! no way!"
script:
- determine "boring normal proc"
test_task:
type: task
debug: false
script:
- narrate <proc[test_proc]>
- narrate <proc[test_proc.test]>

you did not know????
i had a gigantic proc script with like 20 subscripts it was not good design
I think subscripts can go on most script containers.
Monkey posted something about keys regarding subscripts recently.
To krilliant, who said he was wrong lol
^
I'm gonna miss custom enchantments because I could specify what they can be enchanted onto and what they're compatible with, and if I use a datapack I'm gonna have to tell denizen how to do that in almost every instance it wants to apply enchantments.
Oh wait, datapacks can also tell enchantments some of the keys that denizen has. So I can do it, but if I wanna match a hyper specific denizen item that's gonna be worth a thread.
Data packs are gonna have more or less every feature the scripts had, as both just supported what Minecraft allowed for the most part
But there could be specific edge cases of things Denizen allowed that'd be annoying in data packs yeah
I don't think any of my custom enchants targeted specific denizen stuff, thankfully.
I don't know if something like this would be possible on a technical level in the enchantment itself with how Mojang made it
But you can always just cancel an event
Sure can, if I really really need to intercept enchantments. I already do a lot of intercepting and custom item nonsense to begin with.
Enchantment json supports tags, so I guess in theory? Worth a thread if I need to.
That was kind of easy.
denizens equipment map uses helmet, chestplate, leggins, and boots. MC's components are internally head chest legs and feet. That was a confusing trying to figure that out for a bit there lol
There was a change for slots using feet instead of boots
For attribute modifiers.
So that was fun.
when will hytale add hytale support (launcher keeps crashing)
are you in usa or europe by any chance
and throttling others
lets go to actives only
im not an active yet bro 😭
Wait really? I thought I see you here all the time lol
yea im like halfway through lvl 9
he keeps losing his account 😭
past present future krillaints
Its just me or Jenkins source is slow at the moment
and there were more, but i wasnt denizzlin so i didnt join here with them
xDDDD
I swear this shit is my sleep paralysis demon
Not looking for help just to vent lmao
vehicle.boat_type is deprecated and warns you to switch to vehicle.color, which then throws an error ONLY IF YOU CHECK IF .color is truthy, and says it was deprecated for .type.
why not just have player.is_in_boat 🙁
Dude same I was fighting with item components last night trying to modify a tool component and literally tried for an hour or two until I realized it required a rules component which was formatted crazily
Also - if <true> and !<false>: should be a pass and yet the if block still doesnt run
leading me to lose my mind
Again, not seeking assistance just venting because I'm obviously doing something stupid but I'm going to brute force it until it works.
That's the way to do jt
it was literally an extra colon
- if <player.is_inside_vehicle> && !<player.vehicle.type.contains[boat]>::
That was why it wouldn't work
lmfao
Oh and .sitting and .is_sitting both existing and not being context aware drove me into a rage lol
And instead of .sitting returning false on entities that can't sit it just throws an error xD
lemme share something with ya then... .sitting.if_null[null].is_truthy
if sitting is valid, will return true or false, and is_truthy will return true for true and false for false
if sitting isnt valid, it'll null, and is_truthy will return false for null
D:
the moar u kno ⭐ 🌈
i mix em
wouldn't if_null[null] just always be true
but generally truthy is more handful
if .sitting errors, no, itd be null
if it doesnt error it does nothing
i just assumed if_null[null] was checking if the thing inside the braces was null
idk why
LMFAO
thats a sign to go get some sleep xD
what other things would you put inside the []
every lang is jank in its own sense xD
c, c++ and c# are kinda jank too
lua is super jank
inside the brackets is what the tag will return if it nulls. so, i can do .if_null[Oh my god!!!! An error!!!]
for FiveM, like 7 years ago ors omething now, I wrote a wrapper around some rockstar natives and they r equired floating points exclusively. So I had to write a lua script to detect floats.
I wonder if I can find it
I used to work on fivem long long ago
in the before times
its just more useful to have it be null xD
in some scripts, i do .if_null[false]
which now that i think of, is a better way of writing the ifnull.istruthy thing
same stuff
we actually did some unit testing and tried like 5 different ways to see which was fastest
Ah
makes sense
so you did actually useful lua
i only ever interact with it for cheat engine
and oh my god its such a pain
put that shit in https://discord.com/channels/315163488085475337/1098024603756015726 where it belongs
haha
KEK
oh its dead, yeah im reviving it
NPC.is_sitting and entity.sitting are two fairly different tags just a roughly similar concept
as much of a thing as unicorns and dragons
as in yes, but in the distant past
long dead and extinct
#d2sponge message
hytale port when 😔
yeah a fair bit, very fun to mod and mess around lol
not very fun to look through the server jar though
complete clusterfuck
I'm not young enough and it's not as much of a divergence enough for me to want to no life it yet, especially in the middle of a minecraft with the bros session that I'm already doing.
Yeah I would love ot make mods for it.
But I'm not super fond of the character artstyle.
mods are all server side right now so adding items, blocks, armor, and stuff like that is really easy
yee
the content runs dry at around day 3, tho
super good for early dev
Was very stable for me.
did denizen 2 add anything meaningful that hasnt been added to denizen 1 yet?
you only really ever touch code if you want to do more technical stuff like modifying ui per player or permissions etc
6 years ago so I assume not
fr. cant wait until the inevitable .obj model import as character
someone will definitely do it
we just have to give it time
it's been forever, but, there were things that only made sense with the "we're rebuilding from the ground up" approach
eg for the most part on sponge we ignored the whole idea of properties and just autoimported whatever sponge made available
which spigot hasn't been able to do until like, just right the fuck now in the past couple major minecraft versions
but the level of rewrite to change to that would not be worthwhile
oh yeah was about to ask that
(since it was mostly only done that way to reduce development work need on our end)
So the burning question is:
What's the difference between Denizen2 and good ol' Denizen for Bukkit?
In no particular order, here are a few:
Denizen2 is for Sponge primarily (whereas Denizen 1 was for Bukkit and Spigot).
Denizen2 is a total internal rewrite, with no shared code at all...
What's being worked on right now in Denizens?
Anything interesting?
I don't keep up to date with what development ideas are formulating
Did that entity display thing ever get incorporated?
dmodels i think it was called
Denizen2 has "numbertag", "integertag", "booleantag".
I made a joke about this here #denizen-contrib message without realizing it was, at one point, a real thing
I got some 1.21 additions and back-of-sign support, but I don't think there's any "big projects" being worked on atm
How are we doing for full item components support?
currently waiting on ayas awesome component registry pr to be finished, then tons of components can be added super easily
Ye figured
i strongly dislike reading and setting up Jarva to understand it well enough but i kind of what to see what he has cooking 🍳
meanwhile, fun fact,
!command give
item
give [<item>|...] (quantity:<#>) (unlimit_stack_size) (to:<inventory>) (slot:<slot>) (allowed_slots:<slot-matcher>) (ignore_leftovers)
Gives the player an item or xp.
Gives the linked player items.
Optionally specify a slot to put the items into. If the slot is already filled, the next available slot will be used.
If the inventory is full, the items will be dropped on the ground at the inventory's location.
For player inventories, only the storage contents are valid - to equip armor or an offhand item, use !command equip.
Specifying "unlimit_stack_size" will allow an item to stack up to 64. This is useful for stacking items
with a max stack size that...
well i can't find the changelog/news/where-ever it was but uh
(unlimit_stack_size) isn't required with components_patch 
you can just specify 1-99 now
i mean, in components_patch.max_stack_size
components_patch.pot_decorations can implement new textures implemented from resource packs, so you can implement your own fancy pot decorations
Behr really out here hoping to make a B pot decoration.
i need a lasagna pot decoration
components_patch.glider set to <map> / null lets you make items that you put in your chest piece act like an elytra
not equipable? fine, components_patch.equippable.slot set to chest
components_patch:
tool:
rules: <list>
can_destroy_blocks_in_creative: byte:0
prevents the item from breaking things in creative, like swords do
no more than 99? damn
when was that set as a limit
iunno lol
i remember back in the days it was 127 iirc
or 255
reddit post 11 years ago confirming it was indeed 255
You can also make items fully edible now 😂
Changing their eat speed, the hunger and saturation levels they heal, whether or not you can eat it when full like potions do, and the sound it makes when you nom
Oh and the animation
Oh to eat the lasagna sword...
I was trying to find a gif of the barbarian from dungeon soup after he finishes with the Lich
5 seconds · Clipped by Bear Riley · Original video "CHAOTIC GOOD BARBARIAN - SEASON 1 COMPILATION" by Dungeon Soup
Weird seeing dungeon soup mentioned outside my friend discord.
Haha I just watched through that again last night
back on topic of fun things with components patch
!haste
Help us help you by pasting your script to https://paste.denizenscript.com/New/Script and linking it back here.
Content of Denizen Script Paste #138719: LG_Legacy — 7:40 PM Weird seeing dungeon soup mentioned outside my friend discord.... pasted 2026/01/16 19:40:08 UTC-08:00, Paste length: 1904 characters across 63 lines, Content: very_fanci_sticc: type: item material: stick display name: <&[emphasis]>W0w, such sticc
i present, the most rediculous item i could slap together
it's a stick that:
- looks like a diamond sword
- stacks up to 99
- if you add a tintable textured resource pack for swords, makes this greeen
- can make you glide when holding it (lmfao thats hilarious)
- doesn't break blocks in creative
- hits multiple entities at once but is obnoxious to do so
- stabs instead of whacks
- can be eaten
- when eaten, gives you diamondz
that glide thing is really funny to me - that could open a whole new world for people who want to wear their stuff and sometimes glide
oooooo, custom fireworks that let you glide instead
brilliant
oh yeah it also has a cooldown that doesn't tie to actual sticks
I had the funni idea of making a bread sword, and each time you eat it the texture changes.
i had a great idea, but
nice_fireworks_bro:
type: item
material: firework_rocket
display name: Super Fireworkz
mechanisms:
components_patch:
# item_model: string:d:super_firework
fireworks:
flight_duration: int:127
use_remainder:
count: int:32
id: string:minecraft:gunpowder
use_cooldown:
cooldown_group: string:wee:woo
seconds: float:10
equippable:
slot: string:mainhand
glider: <map>```
can't make it both offhand and mainhand 😅
was going to give it a recipe that required a stack of gunpowder (and gave you 32 when you used it); but i forgot recipes don't like quantities
restricted by the technology of my time /s
oooh boy-so
i was looking at components_patch.recipes and thought "eh, why would i do that when i have denizzle to do that bit - im not gonna strugglebus minecraft's recipe structure"
it's actually a component that makes the user learn something, like from the item knowledge_book
that would be a cool way to implement Denizen items' craftability; selling them at a shop, or from an NPC, or from a trade menu
"Hungry for something spicier than uncooked potatoes, rotten_flesh, and cooked_chicken? buy our custom food recipes to learn how to make the FANCY foods!" starring gyros, lasagna, and tacoooos
ie, on use:
!mechanism playertag.learn
Did you mean to search for playertag.level?
Causes the player to discover a recipe, or list of recipes. Input is in the Namespace:Key format, for example "minecraft:gold_nugget".
PlayerTag
ListTag
@sinful spindle
What do I need to do to be able to write in the chat and discuss my pr
or can I write about this directly here?
Get a role added by mcmonkey. You should probably make a thread in this channel for it if you haven't already
Should I create a thread for discussion?
look at what stupidity I found in the script for my crop system I made like a year ago
lol
me when i get paid by the line
obviously would be both too chaotic to ping the masses and to maintain such a role, but was thinking of what a role for "pingable denizzles" would look like
terrible idea aside, i want to make moar GUI driven stuff
is there anyone that would be interested in making a new blackjack script 
made me think of Pringles
@humble flower how is your showcase different than a combination of the uh
!tag points_around_
those'ns?
cus i never figured out how to use those to form a full sphere xD
oh heck
because
if you mean just rotating it 180 degrees
it doesnt look the same
since the lattice makes the points aaaalllllmoooooost equidistant
(was just curious btw not hazing you lol)
points_around would be denser in the poles
poles 
yeah i figured it out after some seconds xD
uhhhhhh like, if i rotate it 180°, there are 2 points that never move because they're in the center
those them poles
https://discord.com/channels/315163488085475337/1404387943992393778
https://discord.com/channels/315163488085475337/1403644226427944992
https://discord.com/channels/315163488085475337/1402409291998302340
https://discord.com/channels/315163488085475337/1397194052537155759
https://discord.com/channels/315163488085475337/1396772207346188298
https://discord.com/channels/315163488085475337/1396428185683492966
https://discord.com/channels/315163488085475337/1342831849763770429
https://discord.com/channels/315163488085475337/1243810270380429402
@cloud sigil you have so many feature requests 
-# and you have so much free time to learn java and implement them, a match made in heaven!

if i spent time learning jarva more i'd want to fix the broken things for us to have an official release before the 1.26 shiet comes along 
Do you guys have a preferred site for Java instruction? I’m ready to start learning it.
learning by doing is a lot more fun and effective imo
you could go the route of opening a denizen pr or making a plugin on your own. if you want to pr to denizen first. I’d recommend having a look through the denizen threads and filtering by the easy pr tag. discuss within the post about how you might go about its implementation, open the pr, receive feedback, apply feedback, and then boom profit :)
same thing with denizen itself, challenge yourself. Do stupid shit, figure out how to make stupid shit work regardless, then when you learn more, fix the stupid shit
shit, thats kind of encouraging. i might give contributing to denizen a try
Because they're nice features ☺️
for most of them cursed solutions exist, but a built-in denizen command or tag would just make way more sense
26.1 🤭 😅
Sry i had to


how to make pretty particles
Insane idea, make a 3d model using block bench and spawn the projectile with an Item, bonus points if on the model you use a animated texture
Denizen can spawn a bajillion boats per tick and still not lower tps lol, no clue why you'd use this but good to know.
debug: false
type: world
events:
on tick:
- repeat 1000:
- create acacia_boat test <server.online_players.first.location> save:test
- remove <entry[test].created_npc>```
This reduces my server to only 12 tps
only
1000 npcs created and murdered per second
That's not per second, that's per tick
Which is 20,000 NPCs a second
If anyone runs into performance issues with denizen they doing something crazy
Are there any known performance chokepoints with Denizen?
Not that it matters in my use case
That's more Citizens than Denizen though at that point
Ah, true true.
so 10000 per second (500 per tick) seems to run at 20tps
So the answer lies somewhere between 10000-20000 on a 7800x3D
running the game on the same machine
and listening to youtube, discord, and 10 tabs open
Alright that's the funniest thing I've made so far #1098024603756015726 message
Reminds me of when I had my Dell XPS windows xp machine back in like 2007 with the cupholder.exe on my desktop popping open the CD tray
next you want to create a normal npc, you created id 102012930230 😄
omg lmao
true
I never use NPC id's luckily manually
I only use /sel when looking at them T_T
Not an official recommendation in any way, but assuming you haven't created any actual NPCs since, I believe you could just lower the last id in the save file?
At your own risk™ though
never
i need to pump those numbers up
I am appaled at the different formatting in both of these messages

I wonder what data type stores the ids
text file
That's....
it's in saves.yml
I don't know if you're trolling me or that was more ambiguous than i thought
Once it is read from the text file, it needs to be stored in some java number data type
I said that because it could theoretically overflow
oh that was the question lmao
I know what my goal is later on
looks like it's normal integer
I'll be sure to submit a very rudely written bug report "why can't I summon several billion NPCs to heat up my office"
If i put intmax-1 into the next id slot in saves and made 2 npcs, would my server then crash on start?
!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.
Haha
We sometimes see users opening support threads or replying to them while not able to test things.
This is often revealed in messages like "I'm not home right now and wanted to ask", or "I can't access my server but I think I remember the details", ...
This often leads to one of two problems:
• The user asks questions they could have answered themself if they were at their server. This is a problem because it wastes the limited resource of our expert helper team on simple questions that would never have been asked if it were not for the fact that the user wasn't near their server.
• A helper enters the thread to actively assist but is unable to provide any help because the user is unable to actually act on any responses. Many threads start with requests for basic followup information such as server logs or other demonstrative data from the server, that of course they can only provide when they have access to that data.
In both cases, helper time is wasted and the user don't actually get to act on any responses faster than they would have been able to had they simply waited til they were able to access their server before asking for help.
Currently eating sushi lol
why is my minecraft folder 10gigs
2.147 billion npcs
Lots of screenshots
Can't wait for Minecraft 6.7
Yeah playing vastly different versions on the same instance can be funky at times, idk if that's a reasonable side effect though o.O
But that's why I use Prism
They just added in-app skin switching as well, now it's perfect imo
why an extra client if you can use SkinRestorer, Denizen and behr's Skin Command
I play on more than just my servers lol
whaaat, you play this game?
Ofc, haven't you been to the weekly annual Denizen VCs?
Maybe I'll stream again tonight, wrap up the components stuff now that the decision making part is done
Oh
went from 3 weeks holiday into 3 days work into another 1 1/2 weeks of sickness
That emoji is so mentally associated with Behr in my mind, I keep forgetting other people use it as well lol
Lol i bet the strong majority of the helpers haven't actually played minecraft in years
what the hell is a mince raft
I can't tell if that's sarcastic or not.
Anyone familiar with the vscode plugin? Sometimes the pretty colors stop working. No amount of fixing and writing good code seems to fix rendering the colors.
For me color issues are usually fixed by closing and reopening the file
just switching the current tab fixes it, no need to close
i always have at least 2 scripts open in a vscode window at a time, so when colors break, i just use the switch tab keybind and gg
Smart
Is there a reason why the colors are breaking?
Blind leading the blind. I dont know specifically what I turned on but it's generating code with the wrong syntax it's crazy lmao
if you try to follow along with it you will quickly get lead into a weird spot of it just misunderstanding denizen scripting
github copilot will make a mess there yeah
you can either turn it off or configure it to exclude .dsc
It just confuses me when I'm using it because it gives so many wrong suggestions haha
so I am like fighting against it and my own bad ideas at the same time
i don't see broken colors in there
No, it's working fine right now.
Next time it breaks I'll screenshot it.
It's usually when I go back to a file and add a new line.
when you do, make a thread for it
The new lines are in correct syntax but don't get colored right
Sure thing!
This happened after I hooked up my github account to vscode like an hour ago by the way the copilot stuff
I pushed my plugin folder to my actual account
and then this started happening
there we go
Wonder if I can train my copilot on my denizen code so it's not rock stupid sometimes
I think you would have to train the model itself no amount of feeding it code will make it understand it intrinsically
you would need to do some data annotation
feeding it code, as in, just sending it through the llm and trying to expand the context to make it understand.
Where are all these categories readable from?
#minecraft:swords
#minecraft:enchantable
for datapacks?
I was wondering if I could find a list somewhere of all of them and their contents lol
An item tag is a group of items. They are used when a recipe allows multiple different items as inputs and control many other gameplay features. See below for the use of each item tag. They can also be used when testing for item arguments in commands with #<resource location>, which succeeds if the item matches any of the items specified in the ...
Looks like it might be this page.
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!
Hey I had a basic question, when we fully convert to the new formatting and mech support for item components, we'll need to convert our items to new ones to properly stack and be read by Denizen right
I'm meaning like currently we use the components_patch mech and soon there will instead be directly a mech for like max_stack. We'll need to convert using a script to respawn the items
Oh it won't be exactly necessary because the original items will still have the denizen script NBT tag applied, so they'll still be read as that item, but it'll just not stack properly
Ignore me I guess?
and then we'll have to make a script to listen for any of these items and replace them with their modern format version lmao
I wonder if I should hold off on making a full item system until after we get Aya's update
I was gunna go crazy making custom stack sizes for ingots and a bunch of micro crafting materials
i am
currently doing everything else that doesnt involve what aya's update would cover
components_patch isn't going to break or anything, we're just going to add a nicer way to do it
If you still wanted to use it after the nicer version is added for some reason, you could technically
Oh neat, is it going to be depreciated eventually?
Probably not right? It would still be useful for some people who want lower-level control over stuff
No, it's just another mechanism that has reasons to exist (e.g. handling any sort of data properties don't) - all that's changing is that there's going to be easier ways than components_patch to apply certain values
nice
glad to hear that since I can read the component patch stuff like item model and reapply the item model to a new item
you could do that trivially with a dedicated tag too lol
ive got a simple question thats just curiosity
why is list.parse ever so slightly faster than list.parse_tag?
is it just less code since it doesnt have to take into consideration the <[parse_value]>?
shouldnt it be other way around?
it aint tho
.parse is ~10% faster than .parse_tag according to my measurements
LMFAO youre right
examples are written to be minimal complete "here's a one liner you can /ex and see the syntax of the tag" not meant to be useful
it probably changes depending on what subtags and how many
parse does some string parsing wonk, whereas parse_tag just hits up the normal core engine, so it depends how much string ya gotta parse and whether the core engine is smart about the tag you gave or not
(some tags are static, some are well-compiled, some are dirty-compiled)
oh also depends on the size of the list probably
and how many
oh, yup! just measured it using .rotate_around_x, around_y and around_z. so at 3 subtags, .parse is ~10% faster. but at 9 subtags, it starts to get slower, but still ~5% faster than .parse_tag at 9 subtags
ayy thats a nice levelup message
now as for "on what subtags", i have no clue which ones would or wouldnt impact that so we'll live without knowing xD
yes, .parse runs gradually slower as list size increases
at list size 100, it's ~15% faster
at list size 100.000, .parse_tag takes the lead at ~12% faster
What kind of things are you needing a list that big?
never
just tested it cus monkey said so
so technically yes just takes an unreasonably huge list for parse_tag to win
Idk who needs to hear this but you can stop minecraft from pausing when you tab out by pressing F3+P
Ironic.
Since you can just pull corners via a cuboidtag.
Which might have existed then?
#changelog message 2021.
¯_(ツ)_/¯
it's doing something else, not the corners exactly. the script is named middle_cube_corners_from_hypothenuse and has no further explanation on what a middle cube corner would be
i'll find out tomorrow though
```yaml
- define points <proc[fibonacci_lattice_2d].context[<[config.arrow_quantity]>]>
- define points <[points].parse[rotate_around_x[<[reflection].yaw.add[<[increment.yaw]>].to_radians>].rotate_around_y[<[reflection].pitch.add[<[increment.pitch]>].to_radians>].mul[<[config.portal.diameter]>].add[<[reflection]>].with_world[<[reflection].world>].with_yaw[<[reflection].yaw>].with_pitch[<[reflection].pitch>]]>
i was doing this. which was why i was worried on parse's speed lmao
that's gotta be one of my biggest monster tags
That's almost #1098024603756015726
Oh man I wish I had one of my largest tags still, but I got kicked from the dev server I was on :(
step 1: play in windowed mode
Step 2: open chat and then your mouse is free to go wherever you want
True but this lets you just alt tab without having the chat take up some of your screen as well.
Not a huge deal either way, but I was often using ESC to alt tab lol (and alt tabbing also opened up the ESC menu)
or click off rather
step 1: play in windowed mode
:(
I'm glad that borderless windowed is becoming the norm in games to replace fullscreen
me when i have to get flashed with a black screen for 3 seconds while i switch out of fullscreen mode
I will say that borderless fullscreen never does seem to run as good as fullscreen (I have two high refresh rate monitors)
Windows supposedly fixed the issue years ago, but they reintroduced it at some point. An issue I will add that has been solved on Linux for like 20 years.
we need a windows-like linux asap
i want to switch but i dont want to lose familiarity
check CachyOS
I feel like if you're willing to accept the tradeoffs of linux, you'd find learning a popular distro a valueable skill
Plenty of themes for KDE
People don't recognize the fact that I'm on linux at first.
I've heard Windows people liking ZorinOS as well (haven't tried it though)
oh jeez what the fuck is that
Linux XP
the rare times i bother to fullscreen, i consistently see the opposite: "true fullscreen" is the buggiest hackiest brokenest shite
window full screen is fine, because it is literally just a window covering the screen, no nonsense
regular window is best though
the times people see to not like windows are usually either (1) on a tiny shitty laptop or (2) on a tiny shitty desktop monitor
which. like. it's 2042 guys, a 4k high refresh rate monitor is like two nickles and a smile on amazon
i've got 3 4k monitors (Center, leftside, rightside) and it is not an expensive setup
if you're on a computer all day you oughtta give yourself some screen real estate
I'm on a 7900XTX, 7800x3D, 64GB DDR5 and two DELL 1440p 160hz refresh rate monitors over modern display port cables.
27 inches
But like I said, Windows did at one point fix the variable refresh rate issue and then reintroduced it.
Any advice for working on the wiki?
Or where to begin?
A lot of the generated examples are in rough shape lol.
A lot of them that can't use player for instance are using player T_T
defined in Denizen source, you can submit PRs to add decent examples. Every meta entry has a link to where in source it's defined. Find some good (non-generated) example entries and use them as a format reference
Should each example be its own commit or should I do a bunch at once and then make the commit
Also, I noticed speed and glowing don't show up in the auto-complete for the adjust command. I will look into fixing that as well.
(Both work on player, I tested them, in spite of them not auto-completing)
Commit size doesn't really matter, but I think you mean pull request
No I just mean if I'm editing ab unch of examples would I make each one its own commit before pushing
But I have determined that to be the best approach
in-case any are rejected.
They're easily fixable and don't need separate commits
If you're doing one example per pull request, that would be a lot
I'd generally say that for adding examples, try to stick to one file per pull request
If anything needs to be changed, you can make a separate commit with any changes
So this is a bad idea
lol
I didn't push anything of course, yet.
And it's all in the same file so far.
i strongly recommend https://github.com/apps/desktop
...bad isn't the right word, I'd use unnecessary
I am using github desktop as well
That's what I used to pull the repository
Fair enough, I'll stop that.
For instance, I point you toward where I did this for the ElementTag file https://github.com/DenizenScript/Denizen-Core/pull/119
I had one large commit with all my initial changes, and a couple small one after for any fixes or things I forgot
Alright, cool. I know this defeats the purpose of trying to do this on my own and help out the project, but how would I stop EntityTag.type from outputting a deprecation error when used on an NPCTag?
You I believe had mentioned it was due to ObjectTag.type matching it and throwing an error because NPCTag.type isn't registered.
deprecation error*
I feel like including a line in the description that says "For NPC's use another tag <tag here instead>" is probably bad manners or something along those lines not sure how to describe it. Instead of just fixing it.
It does properly return NPC though, so that's what's strange about it haha.
Could you make a separate thread to discuss any questions you may have?
Alrighty
I'll do that after I finish up what I'm doing now, don't want to sidetrack too much lol
I'm mainly just tackling things I ran into in the past week with some examples.
What's everyone working on this week?
valentine gift for my gf 😭
Nice!
what about you?
I made this pretty picture 5 seconds ago.
It's so bad it's good.
I submitted a few pull requests to the github just for some documentation stuff. I don't know enough Java to contribute features at the moment.
Other than that I finished my Time Cycling plugin for my players to stop asking me to make it daytime.
They can jsut right click a bell now and it will make it daytime.
Oh and I added another enchantment to my server. Stomp I - II.
Lets you use fall damage and flying into walls to launch other players around and deal a bit of damage to them. It's actually super fun to use haha.
TIL timetags are flaggable
Hey guys, is there a way to keep posts visible on my client side? Basically I would like to be able to see all the posts I started and that are not closed yet, but even by subscribing them they disapear :(
That's what I do
Yes, that's what I do but a bit annoying... Sad that discord did not manage to improve this feature
What?
exactly lol
"FlaggableObject" is a pseudo-ObjectType that represents any type of object that can hold flags,
for use with !command flag or any other flag related tags and mechanisms.
Just because an ObjectType implements FlaggableObject, does not mean a specific instance of that object type is flaggable.
For example, LocationTag implements FlaggableObject, but a LocationTag-Vector (a location without a world) cannot hold a flag.
none
None
N/A
aya aya aya and/or mcmonkey what you think about https://discord.com/channels/315163488085475337/1467992092432273458 wink wink wink
almost all objects are flaggable in some capacity just for the sake of... "Me not knowing why you'd do this does not mean I should prevent you from doing this"
you might flag a timetag for like... maybe some form of daily stat counter, flag <[today]> players_joined:++, idk
can you increment flags like that? 😮
!l data actions
Several commands function as a way to modify data values,
including !command flag, !command yaml, and !command define.
These commands each allow for a set of generic data change operations.
These operations can be used with a syntax like "<key>:<action>:<value>"
For example "mykey:+:5" will add 5 to the value at 'mykey'.
The following actions are available:
Actions that take no input value:
Increment: '++': raises the value numerically up by 1. Example: - define x:++
Decrement: '--': lowers the value numerically down by 1. Example: - define x:--
Remove: '!': removes the value entirely. Example: - define x:!
Actions that take an input value:
Add: '+': adds the input value to the value at the key. Example: - define x:+:5
Subtract: '-': subtracts the input value from ...
Useful Lists
Anyone here familiar with tethers/leads in MC? I was wondering if there was a way to make them unbreakable.
Because I know if you run to far ahead of mobs, they just snap.
But I was curious if there was something in the code that allowed you to stop that from happening.
!e entity unleashed
Entity
<entity> unleashed (because <reason>)
when an entity is unleashed.
when the entity being unleashed is an NPC.
<context.entity> returns the EntityTag.
<context.reason> returns an ElementTag of the reason for the unleashing.
Reasons include DISTANCE, HOLDER_GONE, PLAYER_UNLEASH, and UNKNOWN
True - this adds switches in:<area> + location_flagged:<flag name>.
Not outlined in the meta, but is cancellable only on Paper
On player left clicks air fires when you right click interactables (like doors). That is truly unfortunate.
The event does say it misfires when dropping items but I didn't knowh ow bad it could be lol.
@fringe hamlet https://github.com/DenizenScript/Denizen-Core/pull/119 I was curious what the other pull request was and it was yours from 2025!
Converted examples to @example format
Replaced instances of empty values with .isEmpty()
Converted a few tags to use ternary format
Slight meta grammatical fixes
script errors
turn debug on and try to find out why
suddenly doesnt error
turn debug off again
errors
just keep debug mode on /j
on error:
- enable debug
Hey I haven't been on in a bit. I see that - narrate "<&b>Remote <&8>| <&c>Rift generator recharging... <&6><player.flag[dim_remote_cooldown].expiration.formatted> <&c>remaining." is depreceated. So we want something like <player.flag_expiration[dim_remote_cooldown].formatted> but that isn't returning a value for me. I'm sure I am just missing something simple but still getting my toes wet after 10 years break.
This is worth a thread, since this is a non-support thread.
thanks ill try that
Help us help you by pasting your script to https://paste.denizenscript.com/New/Script and linking it back here.
https://paste.denizenscript.com/View/139079 and dere it is for fwee!
Content of Denizen Script Paste #139079: yayayayay... pasted 2026/02/08 13:53:33 UTC-08:00, Paste length: 16601 characters across 454 lines, Content: get_easter_sunday: type: task debug: false definitions: year
there's probably something in there i did way too late at night and should have changed though
wut
is discord having trophies a party mode thing
psssst #showcase pssst
yeah lol ive never seen these
I wonder if I should share my stupid dialogue system too since I put too much work into it and not going to reuse it for my new project
Yes
I'll post mine to showcase if you do ;;;)
[17:02:44 WARN]: [Denizen] Citizens does not seem to be available! Denizen will have reduced functionality!Get this on startup. Does this mean that I just won't be able to use the NPC functions or are there other functions that are unusable?
basically yea
one non npc function that you wont be able to use is sit
That makes sense, is there any other functions or a list somewhere? lol
Actually nvm, I don't know why I am asking. I can just install the Citizens 2 Plugin lol
https://meta.denizenscript.com/ just check whether the function require citizens
Denizen Meta Documentation Website homepage.
Oh! Its working now. I was trying to access it the other day and kept getting a host down error
Thanks
World
loot generates
for:<type> to only process the event if a certain inventory type is receiving loot (like 'for:chest').
when loot is generated somewhere in the world (like a vanilla chest being opened for the first time).
when the linked entity is a player. - this adds switches flagged:<flag name> + permission:<node>, in addition to the <player> link.
<context.entity> returns an entity that caused loot generation, if any.
<context.inventory> returns the InventoryTag that loot is generating into.
<context.items> returns a ListTag of the items being generated.
<context.loot_table_id> returns an element indicating the minecraft key for the loot-table that was generated.
"LOOT:<ListTag(ItemTag)>" to change the list of items that will generate as loot.
True - this adds switches in:<area> + location_flagged:<flag name>.
True - this adds <context.cancelled> and determines cancelled + cancelled:false.
well that was half in the wrong chat but i can keep going lol
when a player finds a rando chest out and about, a chance to make it a mimic 
I've so wanted to make a mimic trap for dungeons or anything, but I keep forgetting
i was thinking something silly simple for the moment until i can get into wanting to make it actually attack or something haha
@small kernel give behrror some cursed ideas to make with denizen
Here are a few cursed ideas for Behr (or anyone adventurous enough) to try with Denizen:
-
The Cursed Chest: A chest that, when opened, spawns a mob of the player's worst memory (based on some spooky tag logic). The mob follows them until they solve a riddle or find an item. Bonus: it drops the player's dropped items when killed.
-
The Echoing Sign: A sign that, when read, replays the last 5 lines of chat from all players in a distorted voice. If someone writes on it, they get a random line from their own history played back to them.
-
The Gravity Well: A region where gravity pulls players down toward the ground, but if they stay still for 10 seconds, it reverses and flings them into the air. Traps can be added to make it harder to escape.
-
The Time Loop Room: A room where time resets every 60 seconds unless a specific task is completed (like finding an item or solving a puzzle). Players get trapped until they figure it out, and the loop gets harder each time.
-
The Whispering Tree: A tree that whispers secrets about nearby players when interacted with. If a player dies near it, the tree grows a new branch and repeats their last words to anyone who approaches.
Behr would love these ideas—especially if they involve complex tag logic or performance challenges! 😄
"worst memory"
*logs in for the first time*
"please input your worst memory to continue"
time loop room sounds like it could be fun
oh my god
ive almost fully automated the process of inserting NPCs entirely off of prompts with some LLM models; this would be very, very easy to focus on lol
Oh god don't remind me, one team I worked on was trying to make all npc dialog be fetched from an LLM in realtime
if i was prompted Please input your biggest fear(s) before i was allowed to enter an area of a map, i would shit myself on the spot
women
ow. i've regrettably made a few of these
-# sexy_jitsu_naruto_scene.mp4
can you give some ideas along the lines of behrror's previous creations? he did bed bugs, and is considering turning random chests into mimics that attack players when clicked
Absolutely! Behr's style leans toward clever, interactive, and often slightly spooky mechanics that challenge players in unexpected ways. Here are some ideas inspired by their work:
Amazing
insightful
solution: stopn't
Truely Unique Ideas
monkai follows all 11 rules in this discord
a pattern of clever support methods
just never ask monkai for help if you're on fire
||it will watch you cook||
"Here's how to extinguish a fire:"
wonder how hard it'd be to have a llm make snide comments on everything you do in-game
that reminds me of the guy who claimed he was forced to watch an ad on youtube instructing him how to perform CPR when people starting pushing back to them adding them forever ago
can't wait for the story of asking gen ai how to perform cpr and getting lied to lol
@small kernel how do i perform cpr, and hurry
Oh no! I'm not a medical professional, but if someone is in need of CPR, it's best to call emergency services immediately and follow their instructions. If you're trained in CPR, perform chest compressions at a rate of 100-120 per minute to the depth of about 2 inches. If you're not trained, hands-only CPR by doing chest compressions without breaths is better than nothing.
Stay calm and get help
close enough
17:42:00: behr_riley joined the server
17:42:05: behr_riley used a custom warp to the mining dimension
17:42:12: behr_riley broke deepslate_diamond_ore
17:42:15: behr_riley crafted a diamond_pickaxe
17:42:30: behr_riley placed a torch
17:43:01: behr_riley was damaged by a creeper
narrator: Wow, a whole minute of productivity before nearly being erased by a walking bush. Truly peak performance.
17:43:02: behr_riley drank a splash_potion_of_healing
17:43:10: behr_riley killed a creeper
17:43:15: behr_riley picked up gunpowder
17:44:00: behr_riley used a home command to return to base
17:44:05: behr_riley opened a chest
17:44:10: behr_riley fell from a high place
narrator: And there it is. Survives a literal explosion just to be defeated by the basic laws of gravity in his own living room.```
behr_riley drank a splash_potion_of_healing
it tried its best
took you 5 seconds to pick up some gunpowder
Adding bodies to my procedural spider.
Previous Videos:
2. https://youtu.be/r70xJytj0sw
All my links:
https://heledron.com/links/
Source Code:
https://github.com/TheCymaera/minecraft-spider
World Download:
Spider Garden: https://www.planetminecraft.com/project/spider-garden/
Ambertry Forest: https://www.planet...
his older video got posted once but like
goodness gracious i wish i were this capable with denizen lol
I think I remember this.
why is the forum down?
alright
I pay for YT Premium and hwen I click the embedded videos on discord it makes me watch ads
😡
No...
Maybe you can do some DNS shenanigans like the custom DNS of dns.adguard.com I usually use that on my phone
when will the forum be up again?
Okay ya'll wish me luck, I'm getting started on my first massive system for my new server. I'm making a POI schematic system with an ingame GUI for managing spawning mobs, loot and ect.
I'd be interested in this, since I plan to do a system similar.
Luckily I already have my previous dungeon system I made which was sort of a psuedo POI since I had it spawn all the features with a big ass data script to store the data, but I want to try my hand with making that data script on the fly with file editing a file saved on the server
Plus my method for managing the mythic spawners sucked ass since I had to manually make the spawners myself and just disable and enable it based on the dungeon being completed or not
I've yet to get around to custom spawners and such, I made a whole trigger system but it's still WIP and I think some of the mechanics aren't even done yet.
I know I'm still waiting for #1165695239227445419 to tack onto things too, but actual POI system will be interesting since I don't usually use schematics.
Man this would be so much easier if we had dedicated trial spawner support
I probably would do it so the trial spawner spawns in a invis mob and replaces it with a mythic mob
Oh yeah, there isn't a method for changing the entity for the trial spawner event is there?
maybe?
I meant via paper api.
declaration: package: org.bukkit.event.entity, class: TrialSpawnerSpawnEvent
I'm not surprised considering spawner spawns entity doesn't let you determine the entity either, so yeah the solution of just replacing the mob would make sense. Until we get mechs for properly changing the entity of the spawners.
Yeah ofcourse lol, I can see we already have a PR for it too https://github.com/DenizenScript/Denizen/pull/2790
excited for new denizen
The PR does not actually cover this event, it's not really useful unless you want to know the entity came from a trial spawner rather than a spawner
pain
Trial spawners are super cool though and I'm excited for when they actually get supported regardless
i broke it down here #1327984407251914772 message as to why it may take a little longer than initially thought
only thing i know is that spigot made a typo in their #getDescription() method and had to leave a note for it
playsound <context.hook.location> sound:entity.fish.swim volume:1 pitch:<util.random.decimal[0.5].to[2.0]>
Good way to vary up some sfx
the random pitch helps breakup the monotony.
What kind of saves does the Delete section of config.yml refer to?
# This is mostly to clean up saves, but could potentially be abused.
# Set to 'false' if you're worried about security.```
Did you mean to search for command determine?
!m system.delete_file
Deletes the given file from the server.
File path starts in the Denizen folder.
Require config file setting "Commands.Delete.Allow file deletion".
system
ElementTag
<util.has_file[<file>]> Returns true if the specified file exists. The starting path is /plugins/Denizen.
- adjust system delete_file:data/logs/latest.txt
Can you escape the denizen directory?
../
I guess it just seems strange to enable file deletion and copying files by default in the config
To me, at least. being an uninformed noob
Hell, if a script even has those lines in them it should throw warnings in the server output.
Not that anyone here is likely doing anything weird haha I am just looking at my config and noticed that it was enabled by default and was curious if some core functionality related to flags or whatnot required that.
Those are not enabled by default. Excuse me?
Mine were enabled and I don't remember configuring them
One sec 😮
When I get a chance I'll check
yes it is default
so is copy
Despite being in the config on the git, doesn't it auto-generate? I don't know where the code is for making the config, so I don't know if theres like... an array of settings to plop in somewhere.
I'm like 90% sure that's not suppose to be default.
I would also just assume it should not be default. Might be an oversight. I can't do a fresh denizen install right now though to check.
Sorry by the way, not trying to start drama of course I just was curious if flags relied on this functionality.
Because I don't remember enabling it, but I very well may have for some reason.
It's been a few months since I setup my base-server and have been just updating the jar
So I don't remember every change I've made.
Something unrelated lead me to go through my config and I noticed it.
They are both enabled by default in a fresh install @grim quail
(latest)
Huh, that doesn't sound correct.
yes, but this isn't even generated in the configuration file. you have to know how to look it up and enable* it, and even then you have to actually read it because it'll shut your server down otherwise for ignoring the mega-please-dont-do-this-warning
i think the delete_file might have changed at one point? when the fileread thing came around, but that might be wrong. i do think i remember needing to adjust the config to handle some kind of file management
is denizens abandonware? i havent seen a new update and it doesent seem to support new 1.21.11
i see a bunch of updates
and an announcement post about 1.21.11 support
so idk where you're looking but it's not at any of the places where updates are listed
yea i realized this shortly after i messaged
its just that stable builds (not dev builds) dont target 1.21.11
i initially wasent looking for that
and last stable hasent been released for over a year now
pretty much everything is dev build only since minecraft started releasing a wave of breaking core changes that make it really hard to guarantee stability
1.21 has been a helluva version
oh understood! thank you
Me when people think the scripting language I use is abandonware
:3
nononono im sorry i just saw it was last updated a year ago and was taken aback
Pretty sure denizen still holds the title of most updated spigot resource despite dev slowdowns lol
Thats actually pretty baddass
Actual work has begun. I am forcing myself to learn how to use the Yaml mech and its 12:30AM. This shit is gunna be silly, on server start or a command reload it's going to read and load every yml file stored in the poi folder and keep it loaded for reading at any point. I'm just wondering if that will cause any Ram issues if we end up with hundreds of POIs
yay atleast I can create and store data
+> YAY!!!
ah I can unload the file after grabbing some basic data and then reload it if the builder selects it to edit or place
isnt that just overcomplicated flags
Yes.
:finger_guns:
But it also lets us modify the flags easily file side for each POI organized
Like I'm going to have a massive overcomplicated GUI for adding new "features" and modifying them in-game with book and quill stupidity, but it's going to be exponentially easier to make a change through an actual text editor if something needs a rebalance or something for example being a mob spawner warmups or loot table.
like bruh its gunna be silly
I'm working on adding DenizenScript support to Zed.
I've been struggling to wrap my head around tree sitter for a week or so now but I've finally started to make progress. Mainly just trying to create general rules and not focusing on edge cases for the time being.
I need to look at the YAML implementation a bit more to get some better ideas but I'm using the python scanner because it's significantly easier to use and modify and understand.
Zed is like vscode but not bloated to high hell if anyone is curious.
Specifically didn't want copilot and shit looking at everything, sick of turning it off for each project, didn't want to learn the settings that likely exist to make it never ask again, so I just stopped using vscode.
ex adjust server text_color:blue
Might look into a neovim extension after I get the parser finished. I wanted to get the rust extension for Zed working first. If you wanted to implement it in neovim just let me know what's missing (maybe next week since most things are missing lol)
General Question: For inputting quick like 1 line data for systems would it be more intuitive to use;
A: Chat Input, listens for the player chats event
B: Book Input, listens for player writing into a provided book and quill
I can do either way, but I'm curious what would be better/easier to use for quick input like changing a value in a GUI
for me chat is more intuitive, but i think the interface should make it very clear that chat is used as an input
Oh I guess also Anvil UI would work too
Resource pack and a custom UI imho
It's easy enough to distribute, and I've come to the conclusion fuck bedrock player support.
Fuck bedrock, agreed
As nice as bedrock sounds, since I can't have my fancy symbols and such on bedrock I refuse to support it.
I hate even trying to think about balancing combat since they can literally just spam hit
Progress report of day1 of vacation: I got started on the prefab and feature system, the first feature type I wanted to tackle was Items so we can decorate our POIs with items that players can literally loot and pickup. So here we have items being placed in world, I still need to hook up clicking to pickup the item. I'll also eventually make a command for players to place items in world like this for decorating and showing off our fancy 3d models
Alot of today was working on the backend for GUIs, and figuring out how to use YAML files to store data better
Day 2 Progress time: Got schematic placement and feature placement working with spawning it in from saved data. It's late so I can't brain to explain the stupidness I had to do today.
Most of the fun was figuring out how to properly do stupid math based off saving the Origin point of the schematic and then subtracting it or something from the designated location to then store it on the file to then pull from for spawning or doing other shite later
Day 4: I got burnt yesterday :( But I tried to get down to business today and tried setting up rotating the POI by rotating the Origin point's yaw. And uh yeah. I'll probably be opening a thread since I am obviously too dumb to make a proper thing.
👣
Day 5: I hate dealing with Yaw and rotating stuff and trying to beg my code to actually work.
Day 6: Everything is working, but confusing to implement! But hey it works, just needs more input sanitization, reloading automatically and other things.
this looks so fun :D
It's gunna be super easy to use later on, this whole week has just been me forcing myself to work on it each day
it is a staff tool or would it be something players can use?
i've had an idea for so long to code a survival build printer where you need to cash in all materials necessary
after which you can do something similar to your video
never really got around to it tho
I'm probably going to make a survival builder with "pre-approved" schematics with special workstations included in for a crafting system or benefits for a town.
However, this tool I'm making is for Staff. It'll make building locations with loot super easy since we're going for a Extraction RPG server. Players come out of metro tunnels and loot structures for supplies and materials to use back at town.
Might be cool to have "slots" at town to plop down buildings which have special stations. The idea is to do something like the Escape from Tarkov hideout system where you use materials to improve your facilities, but for the whole town itself so players can collectively pool mats to build useful stuff.
!rule 4 @plain harbor
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.
my bad
As for the topic you've asked about..
yes
I don't even know if I have the script on hand.
dangg is the website down?
Forums have been problematic for the past month, the previous server hosting a lot of things died and monkey has been fixing things as we go.
Oh cool.
I still have it.
THANKS A LOT MAN SRY FOR DMING
You agreed to the rules upon joining the server, just be aware of them more in the future please.
got ittt
man I hate math, I should've paid more attention instead of being on discord in class
<3
Garry's Mod server I play on has random sentences constructed that you get to type out for currency, figure I'd try to replicate something similar in denizen.
It's not done yet but I got it mostly working.
I'm not gonna do sentence construction, I'd rather just have predefined answers and questions.
Pretty much got this down so far. Can't think of what else to do.
https://paste.denizenscript.com/View/139501 If anyone is interested in the script.
Content of Denizen Script Paste #139501: Quiz script... pasted 2026/03/18 22:19:00 UTC+00:00, Paste length: 6728 characters across 129 lines, Content: cfg_quiz: type: data config: time_remind: 10s
I may improve it sometime.
I need to double check on the timer checks though.
You write scripts very differently than me lol
<server.flag[quiz.start].add[<[expire_time]>].from_now> isn't this just a complicated way of writing <[expire_time]> or does the math somehow differ
oh unless the start isn't right now, dumb question
Admitably the times were set low for testing
Big stuff, I got containers working at a good enough state by using a loot table file, also made a secondary version of the container to represent a "looted version"
If you'd like a question pack, I made this question pack for a different trivia plugin a while ago. May be good to steal some q/a from, or just as ideas for other trivia to add in
As for other things to add, unscramble is a fun 'trivia' thing, or questions that can have multiple people answer and get rewarded (ex: name a planet in our solar system- 9 winners)
Oh the minecraft ones are neat and the most likely to be swiped.
Because the quiz is meant to be centered around minecraft and/or custom info of the server.
Usually meant to be really easy questions at times.
Ex:
- Whats the max stack of most blocks?
- Who created minecraft?
- How many ingots are used to make a sword?
- How many blocks can a player jump?
- What mob drops leather?
Having runner ups for answering correctly might be an idea too.
A multi-quiz would be interesting. Multiple choice questions that players can all participate in, and depending on the end score and how many you got correct, you'll get rewards based on your score.
I might take the idea and put question quizzes in scavenging as if you found someone's old junk mail. You activate it with right click, it sends the quiz in local and you say the answer in the local chat.
The garry's mod server I play on also does math questions at random too, which can be a problem because anyone can just keep a calculator open.
I'll probably make the questions relevant to the lore of the server or answers to game mechanics
That is pretty much what I want.
Nothing that can be cheesed.
I'll have to change my quiz rewards later, make a weight system so the rewards aren't equal.
Random is nice but you might not want to leave high tier rewards to equal chance
Ooooh I am gonna steal some of these ideas myself, I have been looking for a way to expand in the minecraft direction for the quizzes myself. The crafting questions are nice too, especially for something like "What is the Heart of the Sea used to craft?"
If you do want to try an unscramble too, this is a list of every item/block/mob in the game, minus joke items, education edition items, and such
I don't even know what the heart of the sea is used for lmao.
You can make a conduit if you surround it with shells, and it automatically attacks mobs in water in a certain radius. I think. I feel like if it was good though, more mob grinders would use it
it auto attacks mobs? I always thought it just gave the conduit effect which gives basically aqua affinity, dolphins grace and water breathing
huh I guess it does auto attack hostiles
Fully-constructed conduits also damage any hostile mobs, like drowned, guardians, and elder guardians, within a range of 8 blocks of the conduit.
oh lmao 8 blocks
I didn't even know it did that tbh. It could be good for underwater speed tunnels, I guess?
Oh I guess it doesn't do the dolphin grace
Yep that's a mojang feature, "let's add something with a stupid requirement, no ingame explanation and it's not even good, but we won't be changing it ever."
Oooh the sounds for it attacking is kinda cool. block.conduit.attack.target
damn no embed
All the sounds are pretty good, tbh. I may steal some of them for other things in game
Yeah same, I might use it for some cursed fleshy monster
On a scale from 1 to wonkest, they're a solid wonk
time to make your own debugblocks
item/block and text displays are now handy for this
perfect
Oh right I forgot I wanted to make loot beacons with shaded glass
oh uh
block displays were added in 1.20 right
and denizen still supports 1.17 right
it's time to drop < 1.20 support for some of my scripts heh
also thing i noticed, find_blocks_flagged centers by default, chunk.blocks_flagged does not
I was still on 1.20.4
Eventually I moved to 1.21.11.
I was mostly afraid of the resource pack changes.
Someone here helped me migrate.
I tried helping a server recently that was trying to relaunch, but it was still on 1.20.1 , I wanted to include my fancy systems but they relied off item displays and item components
Is there a fancy guide for this
I still have to change some stuff I think
Yesno.
#1461840622037237823 message Behr helped me out from migrating to make custom models.
So pick this apart.
I forgot to resolve it lol.
Also the old scripts aren't there, womp womp.
I eventually converted all my stuff over to the component system with item model, took forever to do
The most irritating part is just setting up each of the items JSONs.
I wish blockbench had a setting or export tool to auto generate the item json alongside the model file
I gotta look at custom advancements too. I'm curious how those work.
Oh right, I forgot the glow command doesn't accept colors of any kind. You gotta do teams for that which sucks.
We're almost there. The beam needs to spin, and the color needs to change. Them being in teams isn't changing the color which may be worth a thread if I can't figure it out.
!m entity.glowing
Sets whether this entity is glowing.
EntityTag
ElementTag(Boolean)
<EntityTag.glowing> Returns whether this entity is glowing.
!m entity.glow_color
(Property) A display entity's glow color override, if any.
For the mechanism: provide no input to remove the override.
Properties
EntityTag
ColorTag
<EntityTag.glow_color> (Property) A display entity's glow color override, if any. For the mechanis...
yay
+> YAY!!!
I realize that this is going to suck to rotate because the center of the display isn't truly in the center, it's on the corner.
quaternions ✨
Yeahhhh. Something I'm not overly familiar with.
Interesting.
I may look at that sometime.
I don't know if it'll work on block displays because of the corner being the center, but I'd like to give that a try.
Can't use an item display?
It's kind of funny when you use an item display in place of a block display it's almost exactly the same
Actually what do block displays even do?
That's an interesting point.
Is the item display the 3d model block?
I guess it doesn't have to be 3d, just looking like a beam.
Yeah item displays are the full model of whatever it is, apparently it can also render the variations for like what hand it's in or if it's on the ground. Learned that today while reading on the wiki
But more importantly item displays are automatically centered around their location point
So for your beam you can do like a white concrete, scale or down in width and length then increase the height by a ton and it's already centered
Block displays can render block states and take a full material input, which item displays can't
i noticed i had a tiny wonk in that logic, but fixed it https://github.com/Hydroxycobalamin/Denizen-Script-Collection/blob/dev/external/Item_Display_Editor/item_display_editor.dsc#L371
kinda*
why is working with quaternions is always a mess, like rotating them on the Z axis works fine, but Y X dont 
oh my lord i've got it
Did you?
yes ✨
When looting containers, should it open a GUI for players to take from or should it drop it like it already does. Wondering what would feel the best for players
dropping it feels nice
it becomes annoying when there is a rare drop and my inventory is full though
so maybe make sure only the player who right clicked can pick these items up?
Hmm maybe, I might also try to spit it out onto the ground in front of the container too instead of on top where it could bug out from blocks ontop
<3
And that's why we always check the debug when running scripts when something goes wrong.
Was going to make a post about advancemnts not being read from a data script, only to find out I was forlooping my data script itself and not the keys, so it was using the map to read from itself and not knowing what to do.
[13:06:58 INFO]: +- Queue 'EXCOMMAND_43_VirusFiles' Executing: (line 1) reload ---------+
Beginning work on new system :) So far just have the setup process for setting the flags and block locations for the workbench
when is the forum up again? feels like weeks have passed
Okay you asked, I turned the Cyan_Stained_Glass block model in the minecraft directory on my resourcepack into an empty 3d model
This lets me place the block ingame as literally empty air
Oh we're doing this here okay.
You're telling me users who try to place that down immediately have an invisible block?
Cyan_Stained_Glass_Place:
type: world
debug: false
events:
on player places Cyan_Stained_Glass_Item:
- spawn cyan_stained_glass_model <context.location.center> save:item_model
- modifyblock <context.location> cyan_stained_glass
- flag <context.location> cyan_stained_glass:<entry[item_model].spawned_entity>
on player breaks cyan_stained_glass location_flagged:cyan_stained_glass:
- define entity <context.location.flag[cyan_stained_glass]>
- remove <[entity]>
- flag <context.location> cyan_stained_glass:!
Get a block of nonsense
I then made a seperate 3d model of the original stained glass, and then spawn a item display of that glass inplace of the same block
Am I reading this correctly? Does this replace cyan stained glass completely?
Wait what.
Hahah
There's the full file
I had to make this stupidity because people on the server I was working on got pissy because I removed the block so I could use it for custom blocks
So I literally had to recreate cyan stained glass
I can't say I fully understand this fully. I get placing something invisible, but to make the actual block itself invisible?
Wait no.
No I see.
Haha. Okay.
Are you familiar with making normal blocks into 3d blocks in resourcepacks like 3d ladders?
Not really. But I see the logic you're doing now.
I just killed the model for it and MC just goes, "Oh okay sure thing bud"
That's an interesting work around.
I am curious if performance gets killed if you have a lot of these entities in one area, but I doubt that would ever happen.
Yeahhh probably eventually, for my project I'll probably just remove this workaround and tell players to get fucked
Since it does spawn an entity for the fake block
But the end result is, I now have a barrier like block that can:
- Emits no light
- Translucent
- Can be broken with any tool
- Doesn't bug out models when you shove one inside
Maybe I should #showcase this haha
Would be curious on that.
Might turn my portal module into a whole thing, though I'd rather have the forums back up personally.
The insanity has been shared.
is the newest denizen build paper compatible?
It was made before Paper
I.e. idk maybe tias
(and report bugs if you find any ofc)
hm tested, its not starting "Made for spigot"
Think I made a post somewhere regarding titles above players head, but probably gonna turn that into a showcase for others to mingle with.
Only quirks that'll come with is I'm requiring to replicate player names because apparently the text display mounting to the player eats the original player name, and I'll probably need to have the tab completion engine as a hard requirement. And the forum is still down for that so uhhhh.
eating?
As in, it's not visible. I assume because the text display is... I don't know. Hiding it? Doesn't happen when I don't mount it. Might be worth a thread if it's unintended behavior.
text displays have been so annoying to deal with for me
They are like hidden by other UI elements or models
Oh?
Lemme see if I can find my insanity I ran into with my alcohol barrels
weird ass bull
I had found it was fixed by using the Iris mod which is a shaderpack mod
So probably a MC bug
Great.
Tab completion is pain.
yea
Learning how to do consumables using item components
needs some fx when it breaks, but i love this entirely!
I should post an update to the progress I've got, been a bit since then. I gotta figure out my issue with the component patch stuff first. I thought you could apply two different patches to an item if they were different components, but the second one was overwriting the first one.
Is there any timeline for 26.1 ?
you can use mcstacker
I might check that out, but I was using denizen adjusts
https://obsidian.refugiacraft.de/tron.mp4
thanks 2 denizen ❤️
dude that is SO GOOD!
!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!
Is there any information for 26.1?
#news if you have any further issues/questions then create a thread.
Hi everyone. Can anyone recommend the latest and most stable version of Denizez for 1.21.11 purpur?
latest should work. if it doesn't, please
!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!
Could you send me the link, if it's not too much trouble?
!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).

