#udon-showoff

1 messages ยท Page 5 of 1

fierce flare
#

If they quote the "preemptive" clause, I can just make it so moderators have to check against a png image of hacker names, and manually click a button to ban each hacker, the outcome will be the same, just slow and ineffective......

drowsy orbit
#

Yah, that's why VRC gave us groups with ban lists. So people have a choice on who they interact with.

fierce flare
#

The whole debate of group instances and moderation rights can be a mess and there may not be any good solution at all, like what even are groups

#

But wait actually that is besides the point, a Udon based moderation system as suggested by the guidelines is a every-instance, world level system, which exists before this whole group/instance owner/world author division even comes into play...

meager igloo
#

oh I didn't realize the world author had so much control over instances, that seems strange.

fierce flare
#

The original intent of "Udon based moderation system" is likely meant for world author designed game rules like "if you fail to name 3 types of cars you will be put on a silly hat by a moderator" kind of things.
So group instances banning people they dont like, is an altogether non-world and non-udon problem.

So having Udon based moderation system does not take away group bans, if one so desire, because the two types of moderation can be used in conjunction, because they are on totally different seperate levels...

#

Especially when Udon cannot actually kick/ban people for real, they can just "loljail" you with some teleport trick

#

My personal opinion would be world creators should be allowed preemptive ban lists as long as the result is non-inflammatory etc, because they are the copyright holders, but that is a bit beyond the immediate topic

faint charm
#

Thatโ€™s how we all feel, but in the end we all know and have full access to the tos and must abide by it

drowsy orbit
#

I personally like the idea that there is such Freedom to Associate in VRC, although I will admit persistance can add some complexity to the issues

#

With that said, with how inherently unsecure the borderline p2p system that VRC uses is, any dramatic attempts to fix it will likely cause more harm then good.

fierce flare
#

Yeah it is as much a Udon technical issue, and VRChat basic design issue (multiboxing lol), and VRChat anti-hack not very effective issue, and VRChat moderation team capacity issue, and instance moderation rights politics between world author and groups... it is all a big mess

#

and ToS

#

It's all bloody tangled

#

and P2P architecture

#

what even is VRChat?

#

And is it being stretched beyond its natural limits thus creating all these unmanageable mess?

#

Is VRChat Inc, or players, or world authors, expecting too much out of the idea of VRChat?

left sluice
#

Yeah, VRChat was initially a college project right?

regal sonnet
hushed tiger
#

Source Engine Movement in VRChat implemented ontop of the NuMovement package
While it's an initial test release, I have published it for anyone to try. It's quite basic so far, only implementing the original equations from Source SDK 2013. It features air acceleration, split gravity calculation before and after walking, and ground acceleration.

Surfing is implemented at higher air acceleration speeds but is tweakable, as is the typical Source Engine where surfing uses values of 100-3000 where standard GMOD uses far smaller values. Can be tweaked to any GMOD feel you want on the prefab.

slim peak
#

How anyone overrides vrc's player controller without it being super jittery is beyond me

hushed tiger
#

NuMovement handles the skeleton of the system using a Charactercontroller component in Unity.

proven totem
#

NuMovement makes a nice framework to build override controllers that don't need any weird orientation/horizon stuff via a unity Character Controller.

hushed tiger
#

For example I changed the velocity from worldup to projecting to the surface normal direction of the thing you're standing on.

#

Since that's how source handles it to make surfing so nice.

proven totem
#

totally. just when it's time when you need to change the horizon of the player's view is really the only thing you can't do

hushed tiger
#

I do want to add CoyoteTime to it just since Nestor didn't have time to implement it themselves.

left sluice
#

Can you drop a link? I'll star and take a look at some point.
I have been wanting to be able to bunnyhop so badd

hushed tiger
drowsy orbit
hushed tiger
#

What type of differences have you noticed?

proven totem
#

Still good to do a B&T tho when you can!

hushed tiger
#

A quick build and test at 60fps seems to be the exact same testing as in editor, though let me see if there's potentially some errors with frametime dependency.

#

Going to the upper limits of 240fps seems stable.

proven totem
hushed tiger
#

Keep in mind that there is a height diff in NuMovement.

#

So if you are smaller, it will behave slightly differently to your height.

proven totem
#

i trust NUMovement enough that everything will be the same so long as it's contained in the main loop

drowsy orbit
#

So far I've only seen one specific incident: a rigidbody with a very low drag value being affected by physic materials would correctly decelerate in editor, but in client it decelerated as an extremely slow rate once it got close to a velocity magnitude of 1.

hushed tiger
#

Oh, we aren't using any form of Rigidbodies!

#

CharacterController is a kinematic character controller built into Unity.

#

It's not a physically based simulator but rather very programmable that gives us access to physics data.

#

It handles some of the more frustrating elements out of the box.

drowsy orbit
#

Ahh yah, then it shouldn't matter.

hushed tiger
proven totem
hushed tiger
#

It's rather unpleasant at 10fps but all things are, lmao.

#

After a quick build and test, I can confirm it's 100% stable at different heights and framerates.

drowsy orbit
#

I going to guess that it reads user input in Update rather than FixedUpdate (that's what I had to do with my own physics-based project)

hushed tiger
#

I'm noticing no huge difference in control and velocity seems to be the relative same.

#

Being tiny has me moving at the same speed 'relatively' to being my normal height.

#

You run slower than larger people of course, but I prefer this heavily.

#

The worst feeling in VRC is tiny avatars bolting around.

proven totem
hushed tiger
#

Oh this feels so nice ingame, lmao.

#

Loooove source movement.

#

It's my favorite movement algorithm.

drowsy orbit
proven totem
#

that should be done in VRChat's PostLateUpdate for minimal latency reasons

#

if you are pulling GetTrackingData from VRChat

drowsy orbit
#

yah, it's being done in PostLateUpdate; but when I was saying Update vs FixedUpdate, I was bundling all the different forms of Update

proven totem
#

ah

strong quest
hoary nimbus
#

Henlo frens. Still WIP (~60% done) but I'm working on an updated version of my internal general-purpose framework - this one I'm hoping* to make public eventually. (see the Drum Hero world for a demo of the old framework ).

It is built around a strict, opinionated MVVM + Services + EventBus pattern. It enforces clean separation of concerns, single source of truth, and a structure that's hard to fight against once you're in it.

  • State // single source of truth - holds all data & app state (everything else stays stateless)
  • ViewModel // presentation layer - auto-bindings + change notifications straight from State
  • View // UI layer - binds to ViewModel properties & reacts to notifications
  • EventBus // messaging layer - dispatches high-level events/commands to Services
  • Service // business logic layer - listens to events, does the work, mutates State
  • Container // containerization layer - acts as a small class to encapsulate parts of your app with cross communication (think Docker)
    [These components are designed to be abstract & inherited, so e.g you could build out multiple event buses or global services, etc.]

Heavy focus on simplicity + standardization. Comes with built-in editor Dependency Injector and custom editor tools per behaviour for baking serialized refs, data generation, validation, etc. (working in scene & prefab view).

Visually, it's hard to demonstrate but have a small UI demo below. Mainly showing off how it can handle multiple UIs concurrently with animation, loading, states, etc. (final version won't just be for UI but managing general gameplay objects too*)

left sluice
#

Looks nice. Excited to see ๐Ÿ˜„

hoary nimbus
#

ty ty ๐Ÿ˜„ I feel tempted to upgrade my current worlds to it or maybe better to make a new world to really show off what it can do (and to battletest it a bit)

drowsy folio
#

still need to add a few things tho, like different behaviours depending on if you hold someone with one arm, two arms, or if two people are holding the same person, and with the HeroScriptSystem create many ways to customize that

misty gull
#

not exactly udon but imo worth showing off, very WIP state atm
unity... but co-op development ๐Ÿ‘Œ

vale fox
#

that is so trippy

#

woah

empty frigate
misty gull
empty frigate
misty gull
#

yee im excited to see if ppl will work together on like worlds and stuff or like avatars since this wont pass your ip to vrchat meaning your account wont get linked to someone elses :p (i think.. im pretty sure at least)

empty frigate
#

speaking of worlds- would the api work on editing say, the same udon graph and both parties seeing the updates / comments on it?

misty gull
#

this isnt built explictly for vrchat and i dont know graph so i have no idea

#

but as long as it saves as a file it should sync just fine at bare minimum

twin depot
tulip apex
#

Came back to this project, implemented AO + Smooth Lighting + actual water

misty gull
vale fox
#

I am going to sabotage so many projects with this ๐Ÿค

solid ridge
frigid bronze
misty gull
frigid bronze
lofty flame
#

sorta long form video of a dynamic scene loading thing i made (this is similar to runtime string editing of a scene without a reupload if you're working with known assets)

there's a backing asset registry for loading known prefabs, that part isn't especially hard to do over string loading in terms of geometry

importantly it supports networked objects because it's built on my networking (it can either update them in place, spawn them, or despawn removed scene objects)

so at around ~2 minutes the flashlight held by client 1 is updated in place

ashen tide
#

Finally done with my brand new Udon piano! (Yes my playing is bad)
The code was not an easy task without all the C# features

lofty flame
faint charm
ashen tide
#

(I made a map with the asset so anyone can use it without buying it)

faint charm
#

Iโ€™ve at least seen world links here and nobody bats an eye

drowsy orbit
#

yah it'd be weird if they didn't allow you to link info to the thing you're showing off

ashen tide
# faint charm You should drop both here, Iโ€™m pretty sure it wouldnโ€™t be considered an ad since...
Gumroad

If you're here you probably like piano or music. Well I have good news for you, because this is the most realistic MIDI piano asset ever made for VRChat๐ŸŽนPresentationIMPORTANT: This asset will add 48MB to the download size of your map by default. You can reduce this down by compressing the sounds. At 70% compression the asset will only take 33...

The most realistic custom MIDI piano ever created on VRChatโ€ค Features weighted keysโ€š fully animatedโ€š all 3 pedals working and moreวƒ This map also features a cozy place to chill inวƒ Listen to piano whโ€ฆ

#

The asset is also on Jinnxy but I need at least one order on Gumroad for it to be posted

ashen tide
left sluice
#

Looks awesome.
Curious if you intend to release a smaller or "lite" version that would support worlds with more people along with having a smaller footprint for size.

strong quest
ashen tide
#

The asset itself is like 6MB I believe, everything else are the sounds

#

But the less sounds, the lower the quality is gonna be because then it's just a pitch shift

left sluice
#

Just curious as I think it would be lovely to see a full lobby and someone on the piano. Darn VRC limitation

drowsy orbit
eternal walrus
drowsy orbit
#

Not the first time I've heard that said, funnily enough

eternal walrus
#

Golf is already hard in real life ๐Ÿ˜‚

#

Looks really polished tho, props

drowsy orbit
#

Thanks! Actually had to rewrite a lot of the code when I had a group of people try out the game and realized stuff broke at lower fps. Now I can confirm that the game runs even at framerates so low they instantly cause headaches.

pallid kayak
fierce flare
#

how?

restive echo
#

I have released a world game asset that you can put in your home world. You press buttons as they light up, but they go faster and faster... https://mararizer.booth.pm/items/8144511

Sample world link included.

SPEED is a chaotic world asset that you can put in your worlds. Test your speed and reflexes with this game! Works perfectly both on PC and Quest! You can try out this asset before buying here: https://vrchat.com/home/launch?worldId=wrld_c719c77c-faf5-4c9d-b9f4-f39c1a9ac1ca [CONTENTS] - A fully

ashen tide
#

You can put the asset on a 90 people world if you want, it's gonna be heavy on VRChat's side though but not for us users

left sluice
#

Ah ok, I misread the description. Ty ๐Ÿˆ

twin depot
#

i wana get it to make my own piano room :D

meager igloo
#

oh yeah, I was going to try that, I have a keyboard too

lofty flame
#

silly networked turret thing i was trying, with a pretty heavy focus on performance

silver patrol
#

Hi, today I'm releasing UShogi!
This is a free/open-source VRChat asset that implements automated controls for Shogi, please consider it for your virtual worlds.
Not a virtual world maker but still wanna try it out? Feel free to check out this demo world: https://vrchat.com/home/world/wrld_a5bd56a2-4f34-4372-99d3-9c4dbaa50b42/info
Github: https://github.com/jiray-yay/UShogi
Booth.pm: https://jiraymin.booth.pm/items/8166902
Demo video: https://youtu.be/DJlYpNV2uS0
If you can share this around people who think could be interested, it would be greatly appreciated ๐Ÿ™ (twitter post link in case you are fine to RT it https://x.com/Jiraymin/status/2041122097175425493?s=20)

Github: github.com/jiray-yay/UShogi/
Booth: jiraymin.booth.pm/items/8166902
Music used in this video: "Jumping to the moon" by ใพใ‚“ใผใ†ไบŒ็ญ‰ๅ…ต
Thanks to Omega22, Coffika, and hnnes6 for their participation in this video.
(I really need to fix that clipping issue on my avatar someday...)

โ–ถ Play video
rancid scarab
drowsy orbit
#

neat

wicked hawk
#

Been working on the interfaces for a world I'm making. Want to make it as toy like as possible, so looking into momentum based 3D buttons, toggles and sliders. Got the system stable enough for my worlds needs, but plan to keep developing them each update with some different approaches to expand the use cases. Aim is to build a decent range of alternatives to Unity UI buttons.

drowsy orbit
#

we need more physical based inputs in VRC

fading meteor
#

yess i love physical buttons and levers so much

simple ferry
supple cedar
#

About a million things to touch-up post Game Jam (mainly small networking issues), but it's pencils down time. Thank y'all who helped me with troubleshooting issues in the last week
Game Jam submission page:
https://growingtreesoftware.itch.io/steel-drivers-legend-of-john-henry
World Access Link (currently in Community Labs): https://vrchat.com/home/launch?worldId=wrld_7eb01af7-e6c8-4bcb-9f37-d2bba66edb46

itch.io

Steel Drivers is an adaptation of the African American folk legend John Henry

fierce flare
meager igloo
#

oh neat

faint charm
#

neat indeed, wonder if I should use this

#

Iโ€™m about to set up chair interactions in my world and this would help a lot

meager igloo
#

same

slim peak
lofty flame
#

effectively infinite (to floating point error) voxel sample i've been working on, synced to session players and late joiners

has deform operations like add/remove, a mining laser, a way to save and load modified chunks by region or globally

and tries to support small-ish tunnels (disables colliders above the player, making otherwise impassable tunnels possible to traverse)

keen forge
timid echo
timid aurora
hard sphinx
timid aurora
#

Yeah, stations have the option for a character animator override. The avatar dance video worlds use it, but if you have full body tracking, you get stuck in a T pose when you exit the station

hard sphinx
#

While I only rarely go to MMD worlds, I thought that was less of an issue nowadays.
-# Seemingly been an issue with every MMD world for all of VRC's life.

drowsy orbit
#

Maybe one of these years we'll have more ways to interact with a player's avatar than seat jank... one of these years..

nocturne goblet
#

I just released a fully midi controllable, 8 voice, virtual analog synthesizer in VRChat! Definitely my biggest udon project yet. Will keep working to refine and improve it! https://www.youtube.com/watch?v=7v9BMy3-MfU

Introducing Rat Synth: A fully MIDI controllableโ€š 8 voiceโ€š virtual analog synthesizer available exclusively in VRChat.

VRC World: https://vrchat.com/home/launch?worldId=wrld_86205822-6f40-4e9a-8707-8d61395e519e

Song: Cover of Enjoy the Silence, by Depeche Mode, created entirely within VRChat using Rat Synth. Excludes percussion and some po...

โ–ถ Play video
ashen tide
nocturne goblet
# ashen tide I am so curious, how did you make it possible to have things such as attack, env...

Much like the architecture of a real synth, the oscillators are always playing! Then, with the amplifier for example, it's just a function of controlling that value of the final volume calculation influenced over time. Of course, the envelopes either reset every note for multi trigger mode, or only on a fresh press with single trigger. Lastly, the amount knob controls scaling the influence of the part of the final volume calculation.

Big fan of your piano, btw. Was playing with my friends last night! Love music things in VRC.

ashen tide
nocturne goblet
ashen tide
nocturne goblet
#

Awesome, be there in a sec

faint charm
#

sigh

wicked hawk
#

Been working on an experimental VRChat physics puppet theater with 3D streaming and recording. It's still very much a Version 1 prototype, so some of the interfaces are a bit rough around the edges, but the core systems are now working.

Players can create puppet shows, upload the motion pattern videos to YouTube, and then other people can watch them later in-world as recreated 3D performances. Or just mess around with puppets together.

Plan is to improve the physics, interface and overall presentation over time, but I'm happy to have the core functionality working for now.

woeful nimbus
#

I updated my gumroad with some free stuff I've been cooking in-house for a bit
https://4bakers.gumroad.com/

  • music transition system that only uses 2 audio sources so it supports AudioLink. it also has UTC Time Sync and uses a Boolean[] for muting. pretty bespoke but I'm happy with it
  • a basic color mixing drinks system
  • the vents from UNDERTALE
  • an Amplify-based unlit shader with vertex color support and pixel art sampling (in "Baker General")
    nothing super special but it's free so hey why not right
celest grove
nocturne goblet
strong quest
faint charm
strong quest
faint charm
#

the goodest of news!

strong quest
#

You can check it out at my map WarehouseLoft, just hit the okay and go outside

desert girder
copper wasp
#

wow

main veldt
#

Easy Claps

celest silo
valid wind
restive scaffold
#

random color synched on interact

#

that only works for master at the moment. I need to figure out why

stray mesa
drifting oar
#
worthy bison
valid wind
desert girder
dawn oxide
#

@valid wind why does that look insanely fun and mind numbing

compact patio
normal isle
drifting oar
#
violet vapor
pallid kayak
strange zodiac
crude echo
#

that was fast

wicked torrent
#

my respects

#

I made gol using shaders a year ago but didnt finished it ๐Ÿคท

ocean citrus
#

GOI ๐Ÿ’Ÿ

#

udon doesnt need anything else its done just release it

potent hatch
wicked torrent
fathom cradle
red mirage
junior cipher
#

Oh yeah, totally forgot ^^'

gusty osprey
blissful siren
#

A dab detector, @red mirage ?

#

Nicely done

red mirage
#

It's @junior cipher that did it, but yeah (saw that failed emoji Jordo)

junior cipher
#

unity_chan_dab (no you didn't, you have no proof)

blissful siren
#

I saw it

#

๐Ÿ‘€

junior cipher
#

The possibilities for this interaction are endless

red mirage
#

Sync it

fathom cradle
#

The UI only needs one button and that button is dab.

stable phoenix
#

that was pretty cool PhaxeNor with the dab detector

red mirage
#

Not me >.< It's Jordo that did it

stable phoenix
#

my mistake but still pretty cool that you can make gesture-recognition like that

red mirage
#

Will be better once we actually get access to more tracking stuff

blissful siren
#

Now someone just has to remake Black & White

#

It'll summon Peter Molyneux

stable phoenix
#

oh yeah that would be lovely to be able to track more yeah how long till someone makes a gesture-based spellcasting system

west barn
#

how long until someone just recreates Minecraft

red mirage
#

Already been done (in a way) though ^_^ #PreMadeWithUdon

stable phoenix
#

personally the one I'm excited to see is a good AI pet as I want to go pet a dragon

solid kestrel
#

๐Ÿ‘€

dawn sky
#

@west barn Check my world "VRMC". #MadeWithoutUdon We'll eventually replace triggers by udon to greatly simplify the system

humble quartz
#

With Pose Detection similar to @junior cipher โ€˜s I bet an interactive Just Dance world could be super fun ๐Ÿ™‚

dreamy vigil
#

Or obusvr type spellcasting

blissful siren
#

@strange zodiac I should hope Udon is Turing Complete, we designed it to be so

#

๐Ÿ˜‰

stable phoenix
#

so go make a simple Turing machine to test

ashen gale
#

lol Turing Machine? Niiice

balmy relic
#

Hoping someone makes a tutorial on using udon with particle animations and how to make it collide

void horizon
#

To be fair, most of that stuff comes with unity knowledge. I have done some interesting things with udon just because i know unity,

alpine sluice
#

A pitiful attempt was made to make udon run doom.

Unfortunately, udon is currently too slow to parse even a fraction of the WAD's filesystem, let alone read any data from it or do anything with the data. It times out after 10 seconds, and only manages to read the header and the names of 11 maps and their associated lumps in that time. I'll have to wait until they optimize udon a ton more and add native byte array conversion operators before it becomes feasible to do this.

|| I can't believe udon is slower than a toaster ||

dawn sky
#

Do you make the udon graph manually or write an editor script for this? @alpine sluice

alpine sluice
#

Manually.

#

The graph is a complete mess. Visual scripting was not made for something this complicated. Somebody, please make a compiler for udon in a real language.

#

and that's just reading the names of lumps in the wad's filesystem. Imagine how complicated a script that actually reads data and creates a functioning map would be.

trim needle
#

literal spaghetti code

normal isle
#

udon*

alpine sluice
#

I get the feeling that each time I try to use the array of bytes from the WAD, udon goes back and reads the entire wad into a new array instead of using the old array and that's why its taking so long. Yay for having no control over your variables!

normal isle
#

f

flat path
#

handwriting the assembly would probably be a better route xd

tidal pulsar
#

That graph could look better when sub/nested graph nodes are supported. That can only take you so far and large scripts will be inevitable so additionally some sort of comment group boxes with user colours that go behind a logical group of nodes, colours/shapes for particular node types and icons should make it a lot more readable.

#

but if you're dead set on using a textual language it looks like you could make a compiler targeting Udon Assembly

#

and how about zooming in/out on nodes, i don't know if Udon supports that now

wicked torrent
#

@alpine sluice Yea I believe there is something wrong with reading. I did some performance tests on basic math operations trying to see what overhead nodes have and it's seems fine. Try to save Get Bytes into custom variable (of type Bytes[])

#

I also did noticed that it's not obious when all "get" operations happens so for consistensy it's better to get thing and immediately save it into temporary variable, as "setvariable" have exec path you know at when it was computed

#

And I believe set/get temp vars nodes is easier to maintain than all that spagetti lines from a single node goes everywhere

wintry current
#

In that case, the assembly generated correct variable usage but would create an additional unused ByteArray for each new connection from the TextAsset get ByteArray node. Some inside loops, which is probably where performance was killed.

earnest sigil
#

Portal gun when?

stable phoenix
earnest sigil
#

Yeah, i know about the portal gun on Neos, but i was asking for a VRChat one u.u

covert plover
#

Iโ€™m really not a fan of visual scripting, has anyone ever made an analog where code instantly becomes nodes or nodes instantly become code or do they just not convert 1 to 1

west barn
#

AI Pathfinding in Udon, which could totally be done without Udon as well but have to give up project as can't find position of player so showing just this.

alpine sluice
#

@covert plover part of udon is that they gave us an assembly language as well as the nodegraphs. I know of a couple people that are writing compilers for udon in real languages already.

wintry current
#

@covert plover I'm writing an LLVM-LLC target for udon. However, I can't guarantee all code that compiles LLVM-IR will be able to compile into Udon bytecode that works well. Many optimizations and patterns will have horrid performance. Cannorin is creating a language that will effectively be fine tuned to Udon's capabilities.

gaunt night
west barn
#

I wonder what would happen if you then referenced one of them as an argument in an execution loop. Timeout? Crash/freeze?

gaunt night
#

Im not going to try to find out what happens xD

dawn oxide
#

do it for science

west barn
#

"Game Object Get Game Object" why does that even exist?..

gaunt night
#

Yeah no idea either xD

#

Thats the perfect example of non-sense

red mirage
#

If you loop the VM it will stop

wintry current
#

I haven't used graph much, but I'm almost certain red means bad (ie. No assembly is generated)

daring roost
waxen chasm
lilac spoke
#

@red mirage That looks super smooth! What would you be using an autoCam script for?

red mirage
#

@lilac spoke If you were to do a 3rd person controller, then it could be used there, as one example

west barn
hasty fossil
#

i was just talking about something like that lol

quartz pasture
crude herald
dreamy vigil
#

Damn

#

I can't wait to see full fledged udon worlds

gaunt night
#

I cant wait for full fledged udon :^)

desert dirge
#

;w;

fathom cradle
junior cipher
#

@upbeat matrix

upbeat matrix
#

hello

#

oh nice

gaunt night
#

This UdonAsset will store all PlayerAPIs of the current Instance in an Array and update itself if someone joins/leaves.

You can then iterate over it to do something with the APIs, e.g. getting their Position (Most RPCs like teleporting a player remotely are forbidden however)
NEW Files can be found on my GitHub

ocean citrus
#

this may be the coolest thing i have seen in here so far

gaunt night
#

Hehe well thank you ^^ @ocean citrus

quasi jolt
#

Can you output that to a map? It would be really useful to have worlds with maps that show where there's a bunch of people, by using a heatmap

honest solar
#

@gaunt night how did you get 2 players in one world when i test with 2 clients they endup in different instances

gaunt night
#

@honest solar I actually have two accounts, uploaded the world and joined of myself ;P Thats the only proper way to test Networked things, as the so called "local testing" is pretty unreliable.

#

@quasi jolt what you see is actually a Quad with a shader that renders on top of it. You can put that Quad anywhere. I'll consider making it an actual prefab

honest solar
#

well thats bad thats pritty mutch the thing i dont want to do

gaunt night
#

@honest solar Unfortunately thats the thing you have to do :/

red mirage
#

Or ask friends to come test

gaunt night
#

Friends who? kappa

potent hatch
#

made a simple dynamic mesh with vertex handles: https://www.youtube.com/watch?v=9u5-CkHJpoM
post with info here: https://ask.vrchat.com/t/dynamic-mesh-updates/299

Made a simple triangle mesh with handles for realtime manipulation for shared creation in VRChat.

โ–ถ Play video
quasi jolt
#

That's really cool

junior knot
#

Really neat idea. Technically what is being described in this graph is equivalent to skinning a mesh. With regards to optimization, I suspect that the most efficient way to build such a system would actually be skinned mesh with one bone per vertex (if quality is set to 1 bone, it's really efficient). Sadly, unity does not expose a way to update only one vertex without setting everything.

The real interesting udon stuff will show up when you want to allow creating geometry like faces, vertex ops like you see in a 3d editor such as blender. I'm excited to see what mesh editing capabilities people come up with

potent hatch
#

Thanks for the feedback, @junior knot. This scene is a step in the direction of recreating this, where you can build geometric art through simple mirrored meshes: https://vimeo.com/57420631
So I'll be adding in vertices on-the-fly and manipulating them. Array management is a little difficult right now since we don't have lists or dictionaries yet, so I'll probably wait a bit before taking it further rather than writing workarounds.

lilac spoke
dawn sky
#

@junior knot one can implement mesh editing in shader like the eraser in my 3d copy world. Udon isnโ€™t very efficient for this

potent hatch
#

Very cool, @lilac spoke! How is it controlled?

west barn
gaunt night
ocean citrus
#

๐Ÿ’Ÿ

normal isle
#

woah holy shit, hail udon

bronze pike
normal isle
#

do they put colliders on the hands?

#

I'm looking to make physical buttons

bronze pike
#

they put game objects on the hands

#

In my case I put capsules and of course they have colliders.

normal isle
#

lmao

lilac spoke
lilac spoke
#

@potent hatch the virtual joystick above is how I plan the control the drones. This is just one idea for input, I plan to explore more controller ideas.

pallid kayak
dawn oxide
quiet salmon
#

perimeter measurement tool

west barn
#

That is cool!

quiet salmon
#

Thank you ๐Ÿ˜„

lilac spoke
#

@pallid kayak That looks awesome! What are you planning on using the lift component for?

pallid kayak
#

wings ๐Ÿ˜

normal isle
#

proper flying in vrchat?

pallid kayak
#

that is the idea yes

quiet salmon
#

Was toying with nested loops in udon and came up with a tower builder tool. Tower is made of standard unity cubes. Arrow keys change sizing

dawn oxide
#

ooo nice

quiet salmon
formal flame
potent hatch
#

beautiful work, @formal flame! To trigger the shapes in the background, are you setting threshold levels with the spectrum data in order to show them? They seem smoother than a direct level-to-scale would be.

formal flame
#

well, I just spawn them when the first and second sample in the spectrum go over a certain threshold

#

then it's just a shrinking animation and they destroy themselves once they're done

potent hatch
#

Thanks, @formal flame, that makes sense.

trail snow
#

I made a simple jukebox to figure out Udon - the first minute shows off the jukebox, and then it goes into what was done to make the jukebox work: https://www.youtube.com/watch?v=GIw6mNcrlis&feature=youtu.be

VRChat Udon is out in Alpha, so it's time to figure out how to let people play all their weeb music in the new world SDK.

Questions about Udon should go here: https://ask.vrchat.com/
Getting started info is here: https://ask.vrchat.com/t/getting-started-with-udon/80

โ–ถ Play video
mystic creek
#

That's awesome work man! Agree with a lot of the feedback too ๐Ÿ™‚

west barn
#

@trail snow "there is no isNull as a function"
There is a null node, and you can then check if object X is null with equality. Requires 2 nodes rather than 1 though.

#

Ugly, but possible to break For loops with a temporary bool variable... ๐Ÿ˜ƒ

#

I agree with so many of your suggestions though.

#

And passing flow into concat is not neccesary. I don't know if that is a bug or intended, but it will automatically resolve any nodes required to understand an input argument.

#

And for now I can recommend the following workaround when working on interract inputs, as it works both in-game and Unity. In the future it would be great if two flows could go into the same node.

worldly otter
#

Is there a canny for it?

gaunt night
boreal nest
west barn
potent hatch
cedar stirrup
#

@potent hatch Do not talk about ripping content here.

potent hatch
#

@cedar stirrup - this is UGC from the Beat Saber mapping community, not ripped out of the game (now edited to clarify)

cedar stirrup
#

Ah I see, please clarify when talking about it in the future.

potent hatch
#

will do! Totally understand.

cedar stirrup
#

thanks!

quiet salmon
#

I decided my graphs weren't colorful enough

#

Here it is with party mode off. Random colors from every node.

quiet salmon
#

now these modes are toggle able

#

colors change every time colorful mode is toggled so you can hit it till you get a combo you like

quiet salmon
#

Just fixed the logo popping up over nodes
Now the background logo always remains in the background

west barn
wintry current
#

That hash looks very short, is it being accidentally truncated?

west barn
#

@wintry current Ah nice catch! Yes, it is being accidentally truncated due to too small hight of the Text/rect transform. Increased the height and it is now working.

#

I appended the "sha256 : " text before recording, and didn't notice it pushed the text outside.

#

All unit tests I had made still passed so didn't notice it wasn't printing correctly.

wintry current
#

Also, make sure to match NUL termination handling which should be ignored

west barn
#

What do you mean?

#

Currently it takes a String as input, and runs string.get Length for data length

wintry current
#

Try the sha256sum utility in nix, passing a NUL terminated string ignores the last character

#

I don't really use c# so I've got no idea what it's strings are like

west barn
#

C# doesn't use null termination at all.

#

And as far as I know that behaviour is specific to sha256sum due to C. Haven't seen that in python or other languages.

wintry current
#

None of the hashes match the output of sha256sum or the openssl SHA256 function

junior knot
#

If you're on Linux, press Ctrl-D twice to avoid needing the newline termination for the command line

#

or use echo -n to pass in the string to sha256, but as far as I can see it works.

In other words, the issue isn't with a nul terminator, it's that when you were testing on *nix, you were probably adding a newline at the end.

#

@west barn This is really awesome! I do wish we would be given more builtin algorithms like hashing, compression etc just as utilities, but it's definitely possible to implement these as udon

#

as your example shows

west barn
#

Xorbin is actually the website I used to cross-reference it generated correct hashes. Also matches python3.

wintry current
#

I was doing it on my phone and the terminal emulator was adding the characters. Whoops

west barn
#

@junior knot Haha thanks! Yes, I don't see anything stopping us from re-implementing everything, except the performance drawback. Will optimize more, currently takes on average 50ms per calculation, I can shave off some of that, but any implementation like HashSet or other compression algorithms in Udon vs raw C# would make big difference when in turn implemented in something else. After every project I'm doing right now I have to go through and optimize, as when I launch it in VRChat for the first time it always brings me down to single digit FPS... ๐Ÿ˜… Noticed GetProgramVariable has huge overhead, much more effective to fetch a variable once and save to a local variable, and then use GetVariable e.g. in a loop.

#

Also I'm not really sure what SHA256 could be for use in a VRChat world, this was primarily a proof-of-concept... ๐Ÿค”

honest solar
#

@quiet salmon did you by chance implement zooming in udon graph?

west barn
#

I attempted it, it's not trivial.

honest solar
#

yeah sadly also did a bit of digging but its too hard to fix especially cause it will probably come as a feature anyway soon

dawn oxide
#

this version of unity broke it

dawn oxide
#

is it using the same windowing system as the animation controller?

gaunt night
#

It uses an undocumented (legacy) Graph API

worldly otter
#

without zoom though

compact patio
dawn oxide
wary lance
#

just wanted to say thank you guys for what you do, I can't wait to see what you guys can make in the future!

pliant owl
covert plover
#

was foot IK changed? The feet appear to step at pace with the ground far more accurately

#

in your video, at least @compact patio

compact patio
#

The IK wasnt changed, which part of the video are you talking about?

nimble shuttle
violet vapor
torn aspen
#

Looks incredible so far

red cloak
#

I like this!!

violet vapor
red cloak
#

Oh >[]<

unique agate
#

@dawn oxide oh lord i remember having to make one of those egg catching games in game development class.

#

we had to do it with written code though

dawn oxide
#

@unique agate Oh I feel ya. I've originally made my rabbit game using Corona SDK back in 2013-2014. Coded it using Lua, and released it for Android devices on Play Google (Currently removed for now). Just reusing my assets and trying to port it over with Udon haha.

cedar stirrup
#

So you are making a Superman 64 simulator? Bold move.

violet vapor
#

This is the fourth time it comes up and it actually makes me wanna stop working on because Iโ€™m afraid to end up like Superman 64

cedar stirrup
#

it already looks like it controls better. So I wouldn't give up

valid wind
#

@violet vapor that's AWESOME

violet vapor
#

๐Ÿ™‚

#

will try to get it somewhat more polished for the community meetup (if it will be in open beta again), so... wink-wink ๐Ÿ˜„

crude echo
main tapir
#

is there a limit to this rewinding? minutes? hours? years? ๐Ÿ˜ฎ

crude echo
#

till you run out of ram ๐Ÿ™‚

#

I set it up so it only rewinds up to the last 10 seconds though

dawn sky
#

@crude echo how does it work? animator playback?

crude echo
#

no just made a circular buffer that stores the transform matrix

main tapir
#

how much memory does it take for 10 seconds worth?

crude echo
#

Not too sure but it doesn't take up that much memory, but since each object that can be rewound gets updated it starts getting laggy with more objects

junior knot
#

Array storage should be really efficient. A transform is a matrix of 16 floats, plus some vtable stuff let's say 2 pointers so like 80 bytes
80 bytes * 100 objects * 15 fps = 120kB/second
120kB * 10 seconds = 1.2 MB
If you wanted an hour of 100 objects with this formula that would be 432MB of memory which is less than the download size of some worlds so hours should be ok for a simple world. So it adds up and I'm kind of guessing at the overhead per object: it could be more or less.

#

Wow both demos are super amazing. Really excited to see where they go.

#

@violet vapor is the flight done in a station so the player can be rotated/tilted? I really love to be able to fly upside down, however disorienting it is...

violet vapor
#

no stations :3

#

maybe in some other iteration

junior knot
#

Aww I want a version with stations. Rotating the player can be an option

violet vapor
#

slowmode here, better discuss in prefabs ๐Ÿ˜„

violet vapor
snow surge
#

please orels spam more with updates about that, it look so good

red cloak
#

Agree. lol

frosty lichen
#

hi

safe escarp
#

That is so freaking cool

#

Oh my goodness

dawn sky
#

@junior knot affine transform only needs 12 floats if you want to save memory

jagged monolith
#

@violet vapor I have #udon-general here.

How to track controller pos?

gaunt night
#

@jagged monolith
Networking.GetLocalPlayer > PlayerAPI.GetTrackingData(Left/Right/Head) > TrackingData.get position/rotation.
Please still ask questions in #udon-general and not here.

jagged monolith
#

Finally! I know what does that node mean.

tranquil cape
ivory sorrel
#

Awesome!

lavish gorge
#

who knew that some noodles could do so much magic huh

tranquil cape
#

noodles are magical

crude echo
#

aside from some limitations, udon is pretty much just programming so if you know how to implement something you can do a lot

compact patio
west barn
compact patio
lunar edge
cerulean sandal
violet vapor
safe escarp
#

This is SO cool.

compact patio
violet vapor
gaunt night
#

Contributing to the great pile of Udon projects, here is my GitHub Repo for all things UDON
I will only upload things that are generally useful and not (too) specific for personal projects.
Also this is my first time using Git so please if something is broken/missing/misformated let me know, so I can fix it and dont be too harsh ;-;
https://github.com/TheHelpfulHelper/UDON-Collection
Currently includes:

  • Event Subscription System
  • VR Detection
  • Player Manager
    (All of them use the wonderful Extended UASM by Toocanzs so please check his Repo out as well ^^)

PS: I do not use Graphs so everything is written in (E)UASM. Its all commented and should be relatively easy to understand however.

violet vapor
#

Sooo. UdonPie was a total game changer for me, so i was able to rewrite the whole flight system. So since the last week's preview:

  • Everything got migrated to UdonPie
  • A new hover/descent logic was added helping immensly with controlling vertical acceleration at low speeds
  • To help with takeoff and landing - i slow you down when you're close to the ground, helps a lot when trying to land in the exact spot near other people or objects
  • ADDED GLIDE! (this is quickly proving to be the most fun part of the whole thing, now you can zoom around the world while I maintain your altitude automatically)
gaunt night
#

Currently working on building a completely custom player controller, using a Rigidbody. This is more or less just a prototype, because of how limited uasm is right now. (Missing and broken features in uasm and the serializer) I will upgrade it as soon as the required features get fully implemented. ^^
It currently only supports Desktop, but it has the structure to support VR in the future.

(None of the movement you see in the video is handled by VRChats Character Controller!)

delicate blade
#

Awesome! What are your plans for it? Like, what will it be used for

gaunt night
#

I personally dont plan on using it for anything right now. But maybe something in the future ^^
(I will release it when its feature complete and tested it a bit.)

dawn oxide
#

so your using a rigid body as a character controller?

gaunt night
#

@dawn oxide Yes, because we have no access to the Standard Unity "Character Controller" Component.

dawn oxide
#

Ah okay

#

it would be nice to be able to have access to that,

north bane
#

Hey

formal shard
#

Hey

#

๐Ÿค”

violet karma
#

Hey
vrcThinking

feral field
#

Hey vrcVPoorThinking

compact patio
compact patio
compact patio
gaunt night
compact patio
#

Boom

quasi cargo
#

๐Ÿคฉ Centauri your combat system is so cool!!

lusty moss
#

Ended up completing my save/load system on stream lastnight. it's time stamped to where i test it
https://www.twitch.tv/videos/562234035?t=02h32m22s

Pretty much all it does is encode a string of data eg position,level,exp,strength into numeric values and gives the user that code to copy. than in a new instance of the world they can paste it back in and get all there data back!

torn aspen
#

Love seeing this kind of job around save states. Amazing job!

lusty moss
#

cheers ๐Ÿ˜„

violet karma
#

Finally figured out enough things to redo the 3rdPerson Controller I made a while back in Udon (100% thanks to Udon#)
https://twitter.com/VowganDesign/status/1235784374416797697?s=20

Finally got my #VRChat Third-Person-Controller fully rebuilt with #madewithudon. The FPS is much better than Twitter is willing to show off for some reason. If there's any add-ons or requests anyone wants, feel free to comment them! https://t.co/NUKDXEKjYx

โ–ถ Play video
lusty moss
#

Looks great!

gaunt night
#

Progress on my Music Visualizer powered by Udon, special thanks to @cerulean sandal @fierce oak and @woven hamlet for giving me some tips and generally helping me out.
(Also: Compression Algorithms hate this trick!!1!)

boreal nest
#

nice! The background looks great

gaunt night
#

Had a sudden realization that it would be pretty cool to modify the Skybox shader ;D

fierce oak
#

I've just today made one synced to the active stage palette ๐Ÿ˜‚

trail snow
#

I'm currently streaming some Udon development work, if anyone gets a kick of seeing world dev work (using Udon C#) -> www.twitch.tv/fairlysadpanda

spice cave
#

Can people share their udon worlds here so i can test them myself?

dawn oxide
#

Yeah, I definitely want to test some of the things shown here. That would be great.

jagged monolith
azure cipher
#

seems to be an impressive gameplay script please make it public so we can play =p

tiny ingot
#

Looks delicious

ashen zephyr
delicate blade
#

very impressive!

gaunt night
#

Does it support bumpy surfaces? ๐Ÿ˜ฎ

ashen zephyr
#

Yes, I hope so

#

@gaunt night There you go

gaunt night
#

Noice. Now what if some of the legs are not on a surface? :P

ashen zephyr
#

It just points down

#

I'll make a property for releasing thresold

gaunt night
#

Yeah maybe give it like a minimum angle, but other than that impressive ^^

ashen zephyr
azure sand
#

spoodz

shrewd moon
#

can we have it as a mount?

#

@ashen zephyr btw, is it supposed to be a spider or ant there? the amount of legs is getting confusing with the body lol

crisp hornet
#

There are 8 legs

#

But it does look kinda like an ant

azure sand
#

no

dawn oxide
#

can somebody make a model, so it looks like the cute little spidey. I always wanted to pet a spider in VRChat

trail snow
#

I have a fully-working port of Codenames in Udon but can't publish it to community labs due to lack of trust ๐Ÿ˜ฆ

azure sand
#

oof

potent hatch
#

@trail snow I'd love to see it - can you send me a link to the world?

nova estuary
#

what's codenames?

red mirage
#

a board game

potent hatch
west barn
#

@potent hatch Thanks! It was originally made back in December, so completely in graphs-only as U# didn't exist back then. 8hr/day for 10 days, almost lost sanity. By now about half has been rewritten in U# for performance reasons.

potent hatch
#

oh wow! That's some dedication ๐Ÿ˜“

tender crater
#

going to check it out later, seems cool

west barn
#

Incredibly thankful to Merlin for UdonSharp, otherwise big projects would not be feasible. I feel like it would be difficult to show-off a compiler, but he is enabling a lot of stuff to be made. I want to give Kudos to him as well.

potent hatch
#

indeed! He's doing a great service to the community. And I'm hopeful we'll be able to combine all these efforts down the line.

trail snow
#

Took me absolutely ages

potent hatch
#

congrats @trail snow! Looks awesome. Post up the world link when it's available, I'd love to try this out.

trail snow
#

How long do I have to hang out in game for to get out of New User

#

๐Ÿ˜„

#

I'm stuck there!

#

Once I'm out I have a UI button to fix and then I can upload it properly

#

Otherwise I can invite people to play it ๐Ÿ˜›

red mirage
#

wouldn't mind taking a loot at it at some point. I've had a "working" codename since the last years udon closed "beta", but a dead project at the moment ๐Ÿ˜›

trail snow
#

It's a good test game for the engine

#

Because the rules are simple and there's a network requirement

red mirage
#

Yours is a tad bigger than my version.
Mine was created to be a small table game. (With multiple other smaller games in the world)

queen bear
#

Have you interacted with anyone else? Pretty sure you need to make friends to get out of the New User tag.

trail snow
#

I've spent most of my recent VRC time making the world

queen bear
#

Ah yeah, understandable

#

I do believe the trust system expects some sort of social interaction as part of it

turbid cipher
scenic lily
#

yep, stuck in new user also. got real interested in making worlds since vrchat is about the best platform for 3d art on vr

#

am artist, will make interesting things for user status

trail snow
#

Will need artist help once I am making more complex stuff ๐Ÿ˜„

#

I have an art-free project coming up first though, a UI thing

scenic lily
#

very well ๐Ÿ™‚

delicate blade
#

@scenic lily excellent work

scenic lily
#

o7

blissful tusk
#

I'm petrified of spiders. how dare someone request a spider. i'm gonna die

ivory sorrel
#

@turbid cipher That's awesome, can't wait to see a finished version

red mirage
#

Been working on the new world for the Community Meetup event.
It got some neat features like event time that is local to your time zone (and does count down to the event time)
There is also Hosts status (which will get a added feature to show our location in the world.)

The world itself is almost ready, just missing a few things and waiting for VRChat to add support for Player Audio Override so we can use that, which is required for a event like this.

verbal socket
#

@red mirage Is player detection achieved through cross referenced DisplayName or Player ID? If so; is this native support or does it involve a larger node throughput.

red mirage
#

@verbal socket itโ€™s pretty much native. Just make a string array and loop over that until you find one that match, then continue from there

ember elk
#

@verbal socket random info, playerID is just an index for each user in a room, starts from 0 and if someone disconnect new joiner can't take that number, (it will keep increase)

tiny ingot
#

If a person disconnects, then rejoins later in the same instance, do they get a new number or retain their old playerID?

red mirage
#

New

trail snow
#

You writing that in U#, @red mirage

#

?

red mirage
#

Yeah

trail snow
#

Neat, when is the event? I'd like to see your work

red mirage
#

Itโ€™s on Sundays, 10 PM CET / 4 PM EDT

#

Though itโ€™s not going live yet. We require Player Audio Override to work, which doesnโ€™t atm

trail snow
#

What's CET in the UK

#

ah, 9pm

#

That is during a game I run alas

#

What do you need overriding for? An anti-troll move, or a specific feature?

red mirage
#

For people to hear the hosts talk, weโ€™re 40-70 people every week.

worldly otter
#

Correction on the time:
4pm EDT / 1pm PDT

west barn
#

Also CEST, so UTC+2 now and not UTC+1 for those not doing this time switcheroo ๐Ÿ™ƒ

trail snow
#

Heads up btw I'm doing U# development at my Twitch channel for a few hours if people want to come say hi -> twitch.tv/fairlysadpanda

#

Counts as showing off I think ๐Ÿ˜‰

spark wagon
#

๐Ÿ™

gaunt night
#

Been working on my Custom Controller again thanks to Merlin's U# keeping me sane. Showing off something you can do with it...actual crouching/crawling. Still has a lot of problems, but I'm getting there. Currently only supports Desktop, but I'm planning on supporting VR as well ^^

(So none of the movement you see in the video is actually handled by VRChat)

delicate blade
#

I'm so excited to see this

final ice
#

Gunga ginga

trail snow
tender crater
shadow sequoia
#

now for optimisation though ๐Ÿ˜ฆ

cursive birch
crude canopy
#

oh that's nice, is it using peak detection to switch the animations? would be really cool to have different lights on different frequency bands to have it all procedural

cursive birch
#

I'm using a form of peak detection (derivative + minimum value) and animation triggers to do the switching. Trying to look for a way to do some cool stuff with the frequency... But I'm a bit stuck on finding ways to extract rising and falling pitches from the frequency bins

violet karma
#

If it helps anyone, I make a short tutorial to help people get started with Udon. I make a button that toggles a gameobject on and off, with the first half being in the Graph editor while the second half was with UdonSharp. I hope this can be of use to someone!
https://twitter.com/VowganDesign/status/1247015962970374145?s=20

Just put out a tutorial on setting up a basic toggle button using both Udon and UdonSharp. Hope you enjoy!
#VRChat #MadeWithUdon
https://t.co/najMC8S2Ve

boreal nest
placid flare
#

Now I have never touched C# at all (though I have picked up a few things), so I started working on some things to help me learn Udon. I noticed no one has made a working analog clock, that uses actual rotating objects, yet (as far as I've seen), so I made one using one of the free clock assets from the Asset Store (This one from Webcadabra https://assetstore.unity.com/packages/3d/props/interior/clock-free-44164). I also used some examples from @shadow sequoia and @drifting oar with some modifications of my own to maybe help streamline it. I don't think this is perfect so if anyone wants to tell me what I should do different that would help โค๏ธ
The script doesn't have any comments in it as I think its simple enough to follow, but I can add some if needed.

shadow sequoia
#

๐Ÿ™‚

trail snow
idle torrent
#

Nice!

trail snow
#

Hit a button, Udon goodness, take the UI with you across the world

turbid cipher
dawn oxide
#

my uber driver kinda cute doe ๐Ÿ˜ณ

ornate stirrup
#

That looks amazing. Kitani
working on somting simular or almost the same. wish o could se how u made it work ๐Ÿ˜„

unborn folio
#

doing a fujimi kaido run with no stustustututututu

ivory sorrel
#

Thats awesome Kitani, couldn't help but laugh whenever you slammed the shifter though, just looked funny.

violet karma
woven matrix
#

imma follow you on twitter cuz that part in your first vid where you mentioned duplicating otherwise fine udon graphs has saved me a lot of headache

pliant owl
muted island
violet karma
trail snow
#

Am going to be streaming dev work in U# for a few hours as I work on my event emission concept: www.twitch.tv/fairlysadpanda (will nuke this comment when I'm done)

glacial bloom
#

first milestone is done. two-handed gun with animations, with a score tracker for when you hit other players. never done any programming before and this is really fun to make!

#

its a little slow right now when you hold it with one hand because of the rigidbody in the grip, but once its in hand it tracks well!

slim plume
#

The 2018 update added a new conponent we can use, constraint component. It has multiple variants, google it and look through unity docs. It could fix the issue.

trail snow
#

Totally circumvent SendCustomNetworkEvent ๐Ÿ™‚

#

Use synced strings for complex events with payloads

#

Works for all characters who join the world ๐Ÿ™‚

#

Complex events == chat system, complex networked games

dawn oxide
#

@dawn oxide sure this is the rigth chat?

zealous torrent
#

Considering the context, no.

trail snow
#

Working on a chat system on my Twitch tonight, will link it in VRC streams

trail snow
azure sand
#

stop

#

It's spam

#

Now delete ALL of them.

delicate blade
#

?

lone lodge
slim plume
#

Eyy it works, creates chunks around you and unloads as you move far enough. Tiny stuttering with this 5 chunk rendering distance though. So much looping over arrays to ensure they are used efficiently.

proper obsidian
#

@slim plume This is awesome! I hope you thought about making it local the to plaeyer

verbal socket
#

@red mirage When you say 'Continue from there' I've completed my check of displayname and get a Bool value out of it. Question is, is how do I turn said Bool into a Function or a if true then type of statement? ๐Ÿ˜„ In reference to changing in-game when correct player is detected

red mirage
#

Run said bool in a branch, (true/false), then go from there

#

Not really sure what weโ€™re referring to here ^_^ but if anything else letโ€™s do it in the questions channel

verbal socket
#

^

slim plume
#

@proper obsidian it's local, you only see your own chunks. Could be funny to see everyone else tho. Maybe each player shows only specific parts of generated terrain/objects. One shows floors, other walls, third shows interractable items.
The performance of it right now would be too bad for something like that. I hope my other design of the generator/renderer will work out as it would be way faster, fairly certain at least twice as fast.

gaunt night
#

The UdonVM is very very slow compared to normal C#. You most certainly want to avoid O(n) problems or even worse O(n^2).
So iterating over an array is bad, and it gets worse the bigger the array is.

slim plume
#

Lmao let you should one of my functions, every time I call them, there is massive spike in cpu useage

gaunt night
slim plume
#

Alright

rain wedge
trail snow
west barn
trail snow
#

XML, not JSON? Cursed.

west barn
#

@trail snow No. XML allows us to parse HTML. I am currently also working on a ZIP extractor, which would allow us to parse entire DOCX files.

nimble temple
#

https://youtu.be/YoO8Ao-hujI Worked on some simple orbit physics, works for two objects at a time, still have to test with more

I made a simple orbit script with udon. It only creates one relation at a time, so you can make two object orbit a third one, but they won't have an influence on each-other's tragectory. Might improve that if I get time.

โ–ถ Play video
worldly otter
#

Imagine extracting zip files using Udon

peak lantern
#

Can I get some votes on this issue with SDK3? I want to see this and other light-based ideas making use of Udon!

#

works in editor, not in vrchat

#

Also had some cool ideas for my cinema, but ditching realtime lighting cancels that.

dawn oxide
trail snow
#

Works in flatscreen mode via hitting K ๐Ÿ™‚

woven matrix
crude lake
#

@peak lantern
preety sure u can make your own updateGI script with udon

peak lantern
#

@crude lake I couldn't find any nodes matching the names for the functions in the manual for updating GI

ashen zephyr
gaunt night
#

Impressive! ^^

trail snow
#

I should big this up more. Hey, on the release page is a package.

#

That package should be pretty easy to get working

#

And it would give you text chat in your world ๐Ÿ‘€

slim plume
#

This events system will certainly save a lot trouble. I am wondering how it handles packet loss? Actually has there been word on if udon uses tcp, udp or something custom built on top of udp for networking?

junior knot
#

I believe events are sent reliably: you will crash the instance if you send too many

#

The synced variables, however, no guarantees

#

And no known way to pass data with an event.

#

This is all similar to the trigger (sdk2) syncing

gaunt night
#

Well what about Variable Sync updates tho?

junior knot
#

What I mean by no guarantees is a particular update may take unspecified time to propagate and updates are not guaranteed to arrive, I believe

#

Take the example of a synced int with value 0. On one frame you set it to 1. On the next frame set it to 2

#

Will any clients ever see the value 1

dawn oxide
#

It is what it is

sonic moat
gaunt night
trail snow
#

Ouch ๐Ÿ‘€

#

For event firing, much like any distributed event-based architecture there would be a need for the various buzzwords like monotonicity and idempotency

#

This is the same as sending custom network events

#

You must guard against race conditions.

gaunt night
#

Synced Variable Updates are unreliable by nature. You might not even get an update. So yeah this is more of a toy than a mechanic.
They will give us Events with payloads eventually just needs time.

trail snow
#

Synced var updates are not unreliable. I have seen no such occurences in my testing.

#

If you can get a repro case or similar let me know

#

As it would be worth getting it over to the VRC devs

#

If you can get 24 people into the chat world I made and start spamming it might well fall over, but from my testing it was reliable at low world pop numbers

#

The reason I made that world be 24+1 capable was to stress test

trail snow
#

Actually now that I think of it, you can add Ack/Nack functionality into the system I wrote pretty easily (receive an event from an emitter, call the emitter's send custom network event function with eventName + Ack and Owner as the target)

#

Then have the emitter await receiving an ack of the emitted event, if that is important

covert plover
#

You can code in a way that does not need to know every frame. Just speak the entire current state

#

IE if a variable counts up, and you get a 3, you know it was 1 and 2 in the past, even if you didnโ€™t receive it.

trail snow
#

Bingo. A great use case would be to sync the properties of a GameObject, because you only ever care about the latest version you received.

#

As long as you know what event guarantee paradigm you are working around, you can structure your events accordingly.

#

For example, if SendCustomNetworkEvent is best-effort at-most-once, and synced vars are eventually consistent and at-least-once on their delivery (because from my research Photon offers an option of repeatedly sending out the state of a synced object even if there is no change) you can decide on how to use your networking to make things work properly.

tiny ingot
#

You know, the only winner of this race is going to be the first one of you to implement a swipe-type keyboard and emoji into the interface. And public key encryption.

#

(I kid, I kid.)

woven hamlet
#

Or someone could make VRCoin built on a block chain that uses Udon and Udon sync to do transactions of a currency between people in the same world.

trail snow
#

D:

#

OK I'll implement Twitch emotes

#

It should explain its use and how to extend it

candid palm
#

jjst wanted to show off

still flare
#

I hope you release it so I can try it

candid palm
#

yes i will

floral estuary
#

i thot this was something else

covert plover
#

Thatโ€™s not your udon. You stole it from the internet. Poser.

candid palm
#

caught in the act

dawn oxide
gaunt night
covert plover
#

They are digits and the answer is 4736

#

Off topic, nerd sniped sorry

alpine lake
gaunt night
#

@alpine lake I hope you didnt forget about desktop users :P

alpine lake
#

I did not ๐Ÿ™‚

elfin sand
#

udon is fancy for
holy shit we can have more freedom making maps and stuff.

covert plover
#

How do you have so many rigid bodies without lagging into oblivion

#

Once I get around 20 I stutter

elfin sand
#

probably because the server calculates them or something

alpine lake
#

yeah, mine are just local simple sphere colliders

boreal nest
#

sphere colliders are very efficient

potent hatch
#

@alpine lake tried out the ball pit today - the buttons are very satisfying. nice job with making the UI board grabbable, too

last acorn
young harbor
#

For those messing around with synced variables, I did some probing for latency and throughput limits, experiment results here: https://ask.vrchat.com/t/how-to-sync-with-udon/449/6 . tl;dr Udon's about as fast as a 56K modem.

static cove
summer flame
#

i am getting this as well

static cove
#

how to fix

woven matrix
alpine lake
#

@potent hatch thanks! ๐Ÿ˜Š
I'm thinking of making different type of buttons and switches and share it as a unitypackage ๐Ÿ™‚

potent hatch
#

Oh, that would be great!

celest kindle
#

Hi. I made a " background music play list " using vrchat udon.
It's a little strange, but I tried my best.
If you have any advice on this udon, please advise.
Have fun ..!

#

AO1Z227bRhD9FYPPWmPvFwN5SJy0CAq0ARL7pTCE2VvKliFdUUrqOvmyPvST+gsdSrZ8IaOyjpLKcSHDAGWRnj0zc86Z0V9//HlevIVqkYqDH8+LvKiq7+ENXhQvz9p5evO8ngu+P50++3UBVTudrt79wf+cwvzy6knTVAnqYlIsyoh3GpY0DVoTrsESKYQj3nhNcpaUKu6FzBk/fNq05bxs6uLgvPitODDa7tNJcVYcEK74Pv0wKeompqPnT1sMrUjJcueiJC7LTKTkCR9qgOATNUhwYHV4T/GxPBrhAwWiRZBEOhqJjRmI0ikrFR3VWuIHTyZFrpp3F48/Wf2z4w6IdonEoi7nZ6tzHq/gOS/Kup1DHdLzp8VBF187n5X164s/F8WHyd1uO+luvIb8McxK8FWaHnUPe1a/Luv0eBHL5mWzmIW0xjkK0MpoR6g2Bk/qNIEYFOHSOy5NBOtkH2e5hlkNwIyfv/rZGYxWdbb/cvnmZO9NG5pZVfrJ3nGatXi0R3Kfdq/J3uGimi9m6VGdFvMZVJO9FwtfleG7dPaq+SXVj7qaUUFp5oRM1Lr30AHbroD9pOAuumC70b2aLXYxrG+QC+4a17+o98OqPH08m8HZuuSzVixxCYRHyomkwIlzzJGYbbTSWG8165c8l/T/mr9d8wHB3cHSehAVP0zsKLNtmk+7xEwHe+FScI8bbIZ1SzipYoiUMM0Uqi21BKVQEiZ4SMzakDLvtwRjXSNcyC3TvZ5QTIVEhSdcCE1QsA3xkQv8JXyyTAPLbim3jmnqFUo8M1IQaZgk3oMhIgmrlHE5GtOT2yJGx0W2geSAgiWj88RmyQlo7Rn4lIU0xU6J8kdT9hpTVrYvKjjD+z9miQKwCIFHgnodESU8OVDHCAtCRx+tkiFukmrO7V1T9DkI7TY43yIGlyy+PvOY+DadmXHap+rtn+Yz8uwogza+0roaG6SAUd3UpwBF6RYo4FZnb6lrR1UYwpwy1UAC784NFo8clMLBIKsgBWOBDZ0bSfHy3Fbe8xIbZYh6aD6ZYbA/XXWq9dzFYAkNKnYS4omTHEcmBTrbRA31oY+j5WsYhezT05gpsF8+kKw2nZDZCDjmUYZjHrOUUK6CsDxjxjvVGSV6X7ASx0ynAyOvpV8P2QEYCtojCWWHKdHMYDMaRSDz6BmagczpSDTHjPAb0RR9NrtfYEaVkhCMEpVCQAQ4dmQUgSTnbBZGAzquf1aO9fyE4tEBPb220xl2mOsUjLF1m6mV9QetMXy9NJXGMZAOJAkgUTg7p2QNCGICgJcCqUr2ueO/n9WWwG63EAbI++ZirjmdPo5xmYSb+b2R62sXV+ppPXoDnYjJAqUDBCU+SUuw9hhVyooEAymWm9d0KEed5ZBEU4OmwUh8qPeOWG90olJ5HvUyxQ80eetdx1BGRnV9PyNiPckpPeBnHtp2o5uf2/L3XdwiPIjlxi1zyQWTFFkBqzg6IjnquM9IM1ynFEwGUEoNKAm/EvMBNR8zTw/MJpNCy6gizV0gyEoy085p2kiEy0nrLBUG9CWN4xi+3EjCTAwsNO+V17mbcdxIpKMe2UNVX/tq5MsT6eeTIcJ2j6Tr5t2OLqA/hQx3Na4BEzlIRmPIcRMZCTP47coYp9ln61Fbia+C27aU00GBGTNKbRzk3H2fpe+mL8/epno+PTqNML8CExKFqFggzPOEDSJyt+aRqNs04nQcUlADax4uN1iZW0U/yi3dBnxUc4/crPV8WBfyKvplo/e721mmGWVAKMPRXjqExxlniaLJi+gCdni/u7+KmtlS3x42eMOgjxkD7VDONN20mb135uUEX38D

elfin sand
#

is this flood or some udon thing i dont know-

gaunt night
#

Thats the node paste. Essentially you can select nodes and Ctrl+C Ctrl+V

late prawn
dawn oxide
#

Holy fuck I need this

#

I've been trying to find good Stargate stuff for my world forever

#

What a legend

#

Man just hearing the sounds is asmr

woven matrix
granite pollen
dawn oxide
#

@granite pollen is that world public?

granite pollen
lucid dagger
gaunt night
#

Yikes. But every expert was once a beginner, and you never stop learning ^^

lucid dagger
#

I mean i know gamedev and its actually my job, but i can't find the stuff in udon that i normally use in c# xD

#

ill have to scroll through all available nodes when i am bored to see what im missing out on right now

red mirage
lucid dagger
#

Uhh fancy ๐Ÿ˜„

gaunt night
dawn sky
#

Thatโ€™s so cool. Is it like The Forest?

gaunt night
#

Took some inspiration from that yeah ^^

thin magnet
#

Oh sorry thaught i was in that chanel. My fault xD

hot moss
stable trench
#

@granite pollen the best part of your map in my opinion is the mountain next to spawn.

#

We found you can launch off it and had great fun XD

#

So, thank you ^^

alpine lake
#

Just uploaded the Oculus Quest version of my 'Ball Pit in Space' world ( https://vrchat.com/home/world/wrld_f9ac509f-b358-463e-ac46-7ca8707f8f84 )
but had no chance to test it (I don't own Quest)
so I will be grateful if someone will test it and tell me if it works fine ๐Ÿ˜Š

What's Newหธ bug fixesโ€š optimizationโ€š gravity settingsโ€š quest supportวƒ We have balls different sizes and colorsวƒโ€คโ€ค and even something else หธ๏ผ‰ Powered by UDON โ„ U๏ผƒ To reduce lagsโ€š please turn off globaโ€ฆ

tame ibex
#

@alpine lake here I was asking about your world in the udon general and here you are posting this world right here ๐Ÿ˜‚

#

Really nice work on that world, me and my friends have really been enjoying it. As kind of a sidenote to the fun that is ballpit, I wanted to ask if you'd be willing to share how you did the amazing button panel?

#

I am adding a realtime udon elevator in one of my worlds and I would looove to have a push action button. You seem to have mastered it ๐Ÿ™

alpine lake
#

@tame ibex thanks! ๐Ÿ˜Š
I did it with triggers, the math, and some magic ๐Ÿ˜„
I will share ready to use solution in one package later today (player colliders manager + push buttons component + example scene), just need to fix some issues first

tame ibex
#

omygosh thankyouuu ๐Ÿ™

#

wonderful work!

quartz spear
#

https://twitter.com/ThatGotoFinal/status/1252183656120057857 I've updated my udon tool for testing simple udon scripts in editor recently, fixed some bugs and added neat feature to start multiple vrchat profiles with 1 button, with option to quickly upload world and start these vrchat instances already in that world.
I was supposed to make a small game, ended up making tools ๐Ÿ˜

GotoUdon 1.0.5! Now with automated test builds with multiple #VRChat clients on single instance using alt accounts, all with just single button! Also a lot of fixes and now with vrchat SDK version checker and updater. https://t.co/2K2UQu6xaC #MadeWithUdon

alpine lake
tame ibex
#

thanks so much @alpine lake!

#

do you have a patreon? would love to support you for sharing your work

tame ibex
#

@alpine lake this is incredible. Thank you so much

tame ibex
#

Seriously y'all these buttons are incredible. When you try pressing them you won't wanna stop ๐Ÿ˜‚

alpine lake
#

thanks ๐Ÿ˜Š

halcyon kiln
#

Great job @alpine lake! โค๏ธ

old quest
#

Wow these look great indeed, thanks @alpine lake

formal flame
woven matrix
#

Wow that's really cool! Awesome how it's 3D and you can grab it as you draw

formal flame
#

thank you!!

pliant owl
compact patio
#

Second teaser actually shows an udon system, so I'll post it here lol

potent hatch
#

@compact patio what's the Udon system?

compact patio
#

In that video specifically it is the waterbee Im moving around with

#

A lil 2 handed vehicle to move around underwater for those that don't feel like swimming

potent hatch
#

oh cool! Hard to tell what it is in the teaser, I look forward to riding it!

violet karma
#

Heh heh heh

woven matrix
pliant owl
late prawn
pliant owl
dawn oxide
rocky agate
#

@late prawn That is amazing! You should totally make the event-horizon whoosh kill impatient players though. Also if you can get a water shader involved, the surface could ripple around players entering.

late prawn
#

Thank you. And yes there is a kill box on the kawoosh, just have not added my player health tracking script to that world yet because spawn is actually inside the kill zone atm ๐Ÿ˜

#

Just a test dont hold me to the fluid sim being the the world yet, I need to set up a way to not only let the player toggle it but switch the resources around so that its only one set of render textures used between all the gates.

shy drum
#

I loved how it looked already knowing that it actually kills you makes it even better ๐Ÿ˜„

drowsy folio
#

been working on for a while a xenoverse udon map. I have flight going one which is alright, but i now have a system in place which can dynamically assign an existing set of "fists" which will act as colliders for the punching mechanic. This should also reuse ones from people who leave, and keep them in sync without ever having to pick them up ๐Ÿ˜„ https://gyazo.com/d025f6ed51d8c4c42f1b1fd5cb0dbf3f

dawn oxide
#

looking great nono

dawn oxide
#

did you get the ring to actually rotate or not?

pallid kayak
violet karma
young harbor
#

@pallid kayak yeah, i found the positional sync pretty unreliable. For other [UdonSynced] variables though, I did some local experiments and found I got 0% packet loss or reordering at a 200ms update interval, so I'm surprised you're getting late/reordered packets

#

There may be some weird bugs with the interpolated variables like Vector3 and Quaternion; you may have better luck serializing the values into strings and back out again, or if there's a way to turn off the interpolation

potent hatch
#

@pallid kayak - are you using SyncType.None in this case, or something else?

pallid kayak
#

I am using SyncType.None after i tested the different synctypes and saw the other two just causing the value jittering for a bit before settling. I am also making sure that only the owner can change the UdonSynced variables while the others can only read.

potent hatch
#

Ok thanks, that's helpful.

jade temple
#

@alpine lake is it a known bug on your ball pit world that some avatars on-spawn will permanently break collision-based things in the world instance for everyone? (both balls and buttons stop responding to all players), I was on it earlier today with a friend and every time he pulled out this one avatar that wasn't overly fancy we'd have to create a new instance, changing back out of the avatar to the prior one wouldn't fix it

alpine lake
#

@jade temple no, I didn't know about this ๐Ÿ˜Ÿ can you give me this avatar Id, so that I can test it?

jade temple
#

DMing you

compact patio
#

This is a world being constructed to show off the power of Udon in VRChatวƒ It is first being released for the Udon rowโ€š with many updates planned for the futureวƒ

This is the the trailer for the first release of Relaxation Haven, a VRChat experience created using Udon, a new way to program worlds!

Music - Happy Together - Turtles

โ–ถ Play video
misty pendant
#

https://ask.vrchat.com/t/featured-udon-worlds-row/783
I created a forum account to participate in Featured Udon Worlds Row, and when I tried to write, my account was temporarily put on hold.
If you can, would you be able to join us from this message?

#

https://www.vrchat.com/home/launch?worldId=wrld_c094d522-5a54-4c89-8299-8f040b019877
Pick up a BiRocket, fly around the sky and touch the target to get a score!
This is a 4 player game.
It comes with a mini-map so you can see where your next target is and what other players are nearby at your fingertips.
The position of the mini-map can be changed to right hand, left hand or head.
Spectators who do not participate in the game will be able to watch with an overall map and a camera that captures each player.

ใƒญใ‚ฑใƒƒใƒˆใง็ฉบใ‚’้ฃ›ใณ็ฉบไธญใฎใ‚ฟใƒผใ‚ฒใƒƒใƒˆใ‚’็ฒๅพ—ใ™ใ‚‹4ไบบๅฏพๆˆฆใ‚ฒใƒผใƒ ใงใ™ใ€‚่ฆณๆˆฆๆฉŸ่ƒฝใ‚‚ๅ……ๅฎŸ๏ผMade with Udon

potent hatch
#

@misty pendant - sure, I'll add your world to the list. Visiting them all right now for a final look!

boreal nest
misty pendant
#

@potent hatch Thank you! arigato!

robust parrot
hoary crystal
#

@boreal nest @zenith depot guys you did a PHENOMENAL JOB on the map and the mechanics!!! It was really fun even on desktop. I hope you guys would be willing to share a little bit more info on how its implemented when you get your use out of it ๐Ÿ™‚ I can see these kinds of mechanics being used on so many interesting and fun maps

zenith depot
#

๐Ÿ™ โค๏ธ

hoary crystal
#

This was probably one of my favorite things to come out of udon

#

so far

#

not only that

#

but the stylistic assets were very cool

#

and I know how much BlueAsis focuses on that

#

great job you guys

#

๐Ÿ˜„

zenith depot
#

i think we are releasing everything as a pack for people to use?

#

but phase is the man to ask for mechanics

boreal nest
#

Yeah I shared a little bit of the code in the forum post

#

The part that matters the most at least, the setvelocity part

hoary crystal
#

I'd like to read it

#

๐Ÿ™‚

#

and yea I believe its based on a raycast with limitations on the far distance

boreal nest
hoary crystal
#

then animators

#

so and so

#

and then idk what component for the force to go towards an area

#

aha

#

almost forgot

#

that other thing with the playernames displaying

#

was a very nice tough

#

touch*

boreal nest
#

There are Soo many different way s to do setvelocity. You have to program that yourself. A very common thing I've seen is just velocity = current velocity + additional velocity which ends up in a very floaty system that takes forever for you to change direction

trail snow
#

1.1 of UdonChat is out! You can get it for your world at the Releases page. UdonChat can be dropped in on any SDK3 world which has UdonSharp installed on it. You can use the prefab to see how the underlying UdonStringEvents system works, or just allow people in your world to type in text chat.

#

The new updates to UdonStringEvents are pretty huge. You can use it with both U# and UdonGraph code now thanks to the offloading of event handling via a simple interface which any Udon implementation can work with (!!!). There's also a new kind of EventReceiver that can be owned by a specific player and allows for events to be targeted at that player, which is great for when you want to pretend your master player is a server. ๐Ÿ™‚

hot moss
#

why isn't my world on the udon world list

tame ibex
#

Looks like they kept the list pretty small- mine isn't either

boreal nest
#

Aw man that's sad, I really liked allomancer's playground. I know a lot of people had trouble getting into it though because the pull was maybe a bit too weak

#

But honestly if you relied on the pull it would have been the same deal as all the other grappling worlds. Could have leaned into the push by having more ground objects

hot moss
#

is that an index thing

#

the pull generates the exact same force as the push, but i'm an oculus user

boreal nest
#

Woah that's waaay faster than what I saw

#

I tried it maybe a week ago, did you change it?

#

Index should be applying the exact same max amount, it's just binary, 0 or 1.

hot moss
#

it's always been the same since i first released it

undone spruce
#

I also managed to remove the instant stop of the player and replace it with a custom friction

#

and added an air control system, so the player moves less in the air

#

it still need some tweaking but if anyone interested I can send the custom player physics

west barn
violet karma
tame ibex
#

Thanks @violet karma!

candid hull
#

@hot moss It seems when index players pull the trigger fully it doesn't push at all :{ i have to pull it to the point where the trigger doesn't click.. so unfortunately wasn't able to make it work :[ but i still think you did a fantastic job!

severe spire
#

Made a world where you can 'touch' other players. If you hold one of the blue checkered spheres and touch another player, a haptic event plays on your controller.

tame ibex
#

I built a floating platform udon behavior that lets you turn any object into a multiple point buoyant object. There is a working example of it at my world where we have a basketball hoop that floats, and all of the other toys in the world float as well!

#

Also there is neo flight swimming physics inside the pool. Pool party!

woven matrix
ashen slate
woven matrix
#

Wow that's insanely cool. Wasn't sure what to expect but when the door opened I was blown away

ashen slate
#

Thank you! It's still not perfect and a bit laggy, but so far it's the best I can do lol

fierce linden
#

I'm working with trying to get portals working as well for my own project. Currently trying to get seamless teleport working.

dawn oxide
#

YO i had the exact same idea lol

#

im gonna work on that after my avatar

#

keep me posted would love to see the progress ๐Ÿ˜‰

dawn oxide
#

how do u create teleporting like that?

strong ocean
#

Now, this might not be as impressive as a working Tardis within VRChat but I finally have a working door using Udon! ๐Ÿ˜†
I am quite new to this 3D content creation world but I am getting along nicely. I am quite limited to what I can do, like code for example...I do not have much knowledge of it.
(the noise you hear from the audio can be blamed on RTX Voice)

patent needle
dawn oxide
#

it would be sick if someone could make the csgo surfing maps

#

its probably doable

untold inlet
tame ibex
#

@untold inlet that is super neat! I am always interested to see how people do stuff if they are willing to share, and I've been wanting to add refillable cups in my world too so lmk. Either way it's really cool and congrats!

tame ibex
#

@strong ocean is the door global?

strong ocean
#

Should be? Animator is set to public. Not sure if that determines it to be global.

tidal spruce
#

my first working prototype of a trivia game! currently no scoring system and singleplayer, but I plan to keep working on this and make it into a multiplayer trivia world.
this is all written in U# and uses @west barn's UdonXML to load questions.

sharp grotto
vivid eagle
#

oh no you didnt

#

Love it

drowsy folio
crude canopy
#

looking good, also nice start to the combo with just gently touching his butt ๐Ÿ‘€

drowsy folio
#

XD

trail snow
#

That's super cool!

drowsy folio
#

today i added imparting velocity, so as you punch them it now knocks them about, if you punch them enough in succession you'll send them flying in the direction you punch

untold inlet
#

@tame ibex Thanks mate ^^ I'd love to make it availabel to everyone but at the moment I just can't afford to do that. I don't know how yet but some way or another I'd like to make this on a regular base with a bit of income which is why I'm holding onto the scripts etc for the moment, sorry mate

tame ibex
#

Lol all good

#

The time it takes to learn how to implement Udon with minimal documentation should be worth it's metaphysical weight in gold, so I get it haha

jade temple
#

Lovin those gloves PebblevrcInlove

woven matrix
#

Finally got my combat system to work over the network. This is a video of me testing it with a second computer hosted online in a private VRC world. Also I made a machine that thematically uses the teleport to "instantiate" we gotta work with https://twitter.com/Dinky_Studio/status/1255761283103600640

I added the Infected team and their shop the
"Pack-A-Munch" machine
Here is a display of Infected team start and network PvP (hosted in an official private VRChat server with my testing buddy Buster) #MadeWithUdon #VRChat https://t.co/QFkTEpSjcC

โ–ถ Play video
west barn
#

It's not much Udon, and could maybe be done without udon, but it has a little udon at least.

You can now control my lights.
https://twitter.com/Foorack/status/1255968744851062784

You can now control my apartment lights FROM VRCHAT! ๐Ÿ’ก

Why? For fun. How? Join the world. Where? On Twitch and status page at https://t.co/7n8JDRYjU6

โžก๏ธ https://t.co/atIVk5yMCP

pls no spam ._.
@VRChat #VRChat #MadeWithUdon https://t.co/SpqeFRkjvk

โ–ถ Play video
crude canopy
spring fox
#

@strong ocean Is that the synty space station? I always wanted to explore that in VR!

strong ocean
#

Good thing! I will be bringing it to life soon.

spring fox
#

โค๏ธ

#

i've been porting the characters into VRchat (with varying levels of success :/)

pallid kayak
slim plume
#

Very nice, too bad twitter seems to kinda ruin the sound quality, especially when it forces low quality in the beginning of videos for more.

#

This gets me thinking, so the audio mixer is not supported in udon?

dawn oxide
#

That audio vrcInlove

ivory sorrel
#

Oh my god that was awesome. One of the things Vrchat always sucked at was audio but that sounded real! Are you gonna be making this publicly available at any point? Could massively benefit driving and shooting worlds. @pallid kayak

undone spruce
#

I think I'm gonna release the world publicaly soon

dawn oxide
#

@woven matrix do you have it set up to do proper client side hit detection?

pallid kayak
#

@ivory sorrel I might after some refactoring and more testing

pliant owl
rain chasm
#

Yes! I played freeze tag yesterday with my friends and I can recommend we had a blast. Ping differences because Europe and US definitely exist but did not hinder the experience!

dawn oxide
#

Great game!

#

I've discovered that if you click respawn while tagged, it unfreezes you

#

so basically it gives you a second life

#

No other glitches than that!

lone otter
shadow pike
#

so cool ๐Ÿ˜„

dawn oxide
#

@undone spruce That's pretty cool i must say.

violet karma
woven matrix
ivory sorrel
#

Awesome, now we can actually have blood :D

crude canopy
#

wait, you are telling me that robots had blood all along?

dry palm
#

I'm finally content with what I've been making this past month. x_x Still have more to add to the rigs though.
https://twitter.com/TsuyuriAika/status/1257426755863875593

I've been really quiet as of late when it comes to new bullet hells on #VRChat. I've been working on making the rigs from Azur Lane as a new standard for my bullet hell maps. Here's a preview finally. Rigs will have three weapons.

#madewithudon
https://t.co/hKEEt7ZmeK

gaunt night
dawn oxide
#

holy shit

#

so much potential

woven matrix
#

so much potential and I'm just picturing a one hallway big world with the scooby doo doors xD

drowsy folio
#

Made a video showing off my new DBZ Time Nest Udon world, which i just made public on community lab ๐Ÿ˜„ https://www.youtube.com/watch?v=M6ooSt8-2r8

I made a DBZ Xenoverse Time Nest map with udon in VRChat, allowing you to fly around, teleport, shoot ki blasts, and punch each other about. This is as close to DBZ VR as we can get to this point!

VRChat Link: https://vrchat.com/home/world/wrld_de730e74-7c20-45ee-9551-b0ae06...

โ–ถ Play video
woven matrix
#

Wow that world is really coming together, looks like a fun time

drowsy folio
#

ye :3 im gonna work on two mini games for it next so there'd be more to do

tropic copper
#

wow looks really good!!

trail snow
#

Nice stuff! I was thinking about doing a world like this designed for 1v1 fights ๐Ÿ˜„

drowsy folio
#

will mention getting the punchs to work and be fair will be difficult, even here the pos sync is a little slow, and can cause it to do unpredictable actions

zealous bone
#

@pliant owl Does this mod utilize the VRCPlayerAPI[] list by chance? For instance, when a round starts, does it loop through all VRCPlayer's, adds them into the VRCPlayerAPI[] list, and then assigns each player ownership of a capsule/role for the game? Or does it skip the VRCPlayerAPI[] list completely?

pliant owl
#

We cant use lists in udon at the moment.

zealous bone
#

Is there a way for looping through all players and assigning each one ownership of a game object?

pliant owl
muted island
sand iron
#

@muted island Rate me 5*, mr. Freeman

ivory sorrel
#

That looks awesome, can't wait!

rotund maple
#

haven't seen this posted here yet. but this is great

potent hatch
#

my favorite new world!

#

it's in the Udon Showcase now ๐Ÿ˜‰

stable phoenix
#

yes it's a very good world

trail snow
#

๐Ÿ˜ญ You can't just add a world to the Udon Showcase tab, that contest had a deadline

#

๐Ÿ˜Ž Ha ha ha ducks go nom

#

It's such a cute thing ๐Ÿ˜ฎ

potent hatch
#

@trail snow we're going to refresh the row on a somewhat regular basis going forward.

trail snow
#

Only a joke! ๐Ÿ˜„ But that's good to hear.

compact patio
#

Just a little side project Im working on to scratch my horror itch I haven't been able to scratch since my Severn map

compact patio
dull pecan
#

Ducks in VR!

vivid pelican
#

@compact patio Oh god no

#

I mean, hell yeah for Udon AI but, this, thing

molten shuttle
#

Think it is copy protected asset from Bethesda and the creator is it not?

celest kindle
#

Hello I created a ' background music sync player ' using udon.
Please enjoy this ๐Ÿ™‚ And I wrote a detailed tutorial on playing music in Udon. Thank you. https://ask.vrchat.com/t/how-to-play-music-in-udon-music-sync-time-playlist/998?u=yealhee

trail snow
#

Ducks in VR?

#

The code has been quacked

amber field
#

Ducks and VR are the best combination the world has seen, thanks to you we finally took a step closer to god for once instead of away

trail snow
#

The hadoken world is pretty cool

trail snow
#

The new finds for the spotlight world are great

trail snow
quartz spear
#

https://twitter.com/ThatGotoFinal/status/1259381013463085056 New version of tool to test udon, now will file networked event locally so it can be tested in editor too + better detection and customization of vrchat client launcher for testing in vrchat. and some other small stuff

GotoUdon 1.1.1, now just easier to use.
Includes small avatar for emulation.
Better search for vrchat executable + customization.
SendCustomNetworkedEvent will now fire event locally.
#MadeWithUdon #VRChat
https://t.co/MKO5rw8TOa

digital slate
#

It supports huds only you can see, and huds everyone can see.

woven matrix
#

That looks so freakin' good

steep ocean
#

@glacial bloom nice!! Great work, I'll have to try it out today ๐Ÿ‘Œ thanks for making fun world's, not more "club" worlds ๐Ÿ˜Ž

digital slate
#

@glacial bloom I'd love to see how you got around managing players and colliders. Did you use graphs or U#?

glacial bloom
#

@digital slate Graphs! Im not a experienced coder so having the visual feedback helped me a lot

#

Basically everything is handled in the gun itself. when you pick it up your avatar starts tracking a collider. Hits, deaths, score and music is then all handled from there

digital slate
#

ah okay, so it only works while holding the gun then?

glacial bloom
#

exactly!

digital slate
#

Good idea but doesn't work for what I need sadly.

versed depot
#

That looks amazing :D
I need to try it out today

dawn oxide
#

What it's out already?

#

@glacial bloom thanks on behalf of the steel n gold community we've been waiting for stuff like this since steel n gold got removed

glacial bloom
#

@dawn oxide Its not public yet, no. However i have killed of a few extra bugs that has popped up while testing the world ๐Ÿ™‚

dawn oxide
#

Gotcha

#

Good luck on it I'm looking forward to it

#

If you want someone who'd go all in testing crazy Benji would be good he was obsessed with steel n gold

nimble shuttle
#

Supper hacky, but synced network instantiation is possible, at least for now. Proof of concept showing a recreation of prop spawner from sdk2 instead of object pooling to give every player a synced object.

https://twitter.com/cyanlaser/status/1260548533804863488?s=21

Decided to take a break from the horror world today and managed to get PropSpawner working in Udon. Network instantiation is possible if everyone spawns the object with the same name and manually sets the NetworkID. #VRChat #MadeWithUdon

digital slate
#

Omg but how???

cedar stirrup
#

Black magic.

#

Careful.

digital slate
nimble shuttle
#

I like OwlBoyโ€™s response. Yes itโ€™s black magic called understanding vrchat networking. Once I do more verification, Iโ€™ll release the prefab so others can use it, but everyone should know that this is very hacky, unsupported, and will probably break soon. I know it will break in long lasting instances already.

digital slate
#

My solition can only handle about 10 users because apparently sycn'd strings can only go to 40 chars XmX

#

I'm just not sure if we should be keeping the understanding of how to network in vrchat as secret black magic

gaunt night
#

I said that is a guesstimation. Take it with a grain of salt