Turn PLAYERS into CREATORS with Unity UGC!

Поділитися
Вставка
  • Опубліковано 17 вер 2024
  • 🌍 Get Started with Unity UGC on.unity.com/4...
    🎮 Wishlist my Steam game! cmonkey.co/din...
    ❤️ Watch my FREE Complete Course • Learn Unity Beginner/I...
    🌍 Get my Complete Courses! ✅ unitycodemonke...
    👍 Learn to make awesome games step-by-step from start to finish.
    🎮 Get my Steam Games unitycodemonke...
    Sponsored by Unity
    Enabling user-generated content using Unity UGC | Unity at GDC 2023 • Enabling user-generate...
    🔴 RELATED VIDEOS 🔴
    Making a MULTIPLAYER Game? Join your Players with LOBBY! • Making a MULTIPLAYER G...
    How to use Unity Relay, Multiplayer through FIREWALL! (Unity Gaming Services) • How to use Unity Relay...
    Easy MATCHMAKING in Unity! (Skill based, Platform, Region) • Easy MATCHMAKING in Un...
    Run your Servers like a PRO! (Unity Game Server Hosting Multiplayer Tutorial) • Run your Dedicated Ser...
    Facebook Unity Authentication forum.unity.co...
    💬 Unity has just released their User Generated Content tool. This let's you easily add modding to your games by letting players create and share all kinds of things with other players.
    The content is really just data, it's up to you as the developer to decide what data that represents, it can be just a weapon skin, or perhaps a level or even an entire game mode.
    The tool is really easy to use, especially if you've already used any other UGS Unity tool.
    Create and build mods from inside your game, then check out the Creator Center, Moderation Center and upcoming Discovery Center. Or use the Unity UGC Bridge to let your players use Unity itself as the Editor to create and upload mods.
    📝 Some Links are Affiliate links which means it costs the same to you and I get a nice commission.
    🌍 Get Code Monkey on Steam!
    👍 Interactive Tutorials, Complete Games and More!
    ✅ store.steampow...
    If you have any questions post them in the comments and I'll do my best to answer them.
    🔔 Subscribe for more Unity Tutorials / @codemonkeyunity
    See you next time!
    📍 Support on Patreon / unitycodemonkey
    🎮 Grab the Game Bundle at unitycodemonke...
    📝 Get the Code Monkey Utilities at unitycodemonke...
    #unitytutorial #unity3d #gamedev
    --------------------------------------------------------------------
    Hello and Welcome!
    I'm your Code Monkey and here you will learn everything about Game Development in Unity using C#.
    I've been developing games for several years with 8 published games on Steam and now I'm sharing my knowledge to help you on your own game development journey.
    I do Unity Tutorials on just about every topic, Unity Tutorials for Beginners and Unity Tutorials for Advanced users.
    You can see my games at www.endlessloopstudios.com
    --------------------------------------------------------------------
    - Other great Unity channels:
    Unity - / unity3d
    Brackeys - / brackeys
    Dani - / @danidev
    Jabrils - / @jabrils
    BlackthornProd - / @blackthornprod
    Sykoo - / sykootv
    Jason Weimann - / @unity3dcollege
    Jonas Tyroller - / @jonastyroller
    --------------------------------------------------------------------
    - Website: unitycodemonke...
    - Twitter: / unitycodemonkey
    - Steam: store.steampow...

КОМЕНТАРІ • 76

  • @CodeMonkeyUnity
    @CodeMonkeyUnity  Рік тому +6

    🌍 Get Started with Unity UGC on.unity.com/44lb3sc
    Enabling user-generated content using Unity UGC | Unity at GDC 2023 ua-cam.com/video/YK89XzUdgVU/v-deo.html
    🔴 RELATED VIDEOS 🔴
    Making a MULTIPLAYER Game? Join your Players with LOBBY! ua-cam.com/video/-KDlEBfCBiU/v-deo.html
    How to use Unity Relay, Multiplayer through FIREWALL! (Unity Gaming Services) ua-cam.com/video/msPNJ2cxWfw/v-deo.html
    Easy MATCHMAKING in Unity! (Skill based, Platform, Region) ua-cam.com/video/90Iw1aNbSYE/v-deo.html
    Run your Servers like a PRO! (Unity Game Server Hosting Multiplayer Tutorial) ua-cam.com/video/IvCVFywNXMc/v-deo.html
    Facebook Unity Authentication forum.unity.com/threads/cannot-authenticate-with-facebook.1433617/
    🎮 Wishlist my Steam game! cmonkey.co/dinkyguardians
    ❤ Watch my FREE Complete Course ua-cam.com/video/AmGSEH7QcDg/v-deo.html
    🌍 Get my Complete Courses! ✅ unitycodemonkey.com/courses

    • @emeraldwind
      @emeraldwind Рік тому

      Can you do a video on 2d games vs 3d games. Specifically for new developers getting started. What are the benefits or each.
      I notice programmers saying 3d assets are easier to download vs 2d assets would need an artist to create. Which is easier to develop and why.
      If you have a video on the topic, cn you link it for me please. Thanks

  • @MNenad
    @MNenad Рік тому +9

    I‘ve been waiting for this and it will change my current game I’m working on. Thank you for making this amazing video.

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +1

      Thanks for the super thanks! Best of luck with your game!

  • @tirt
    @tirt Рік тому +9

    You can also convert the array of bytes straight to a file with "System.IO.File.WriteAllBytes(string path, byte[] bytes)," however you need to create a file before writing the bytes to a path!
    There is also an async version! If the file ends up being too big or you just want it in the background with "File.WriteAllBytesAsync(string path, byte[] bytes)"

  • @forbiddenbox
    @forbiddenbox Рік тому +4

    Didn't think you'd be able to make a video on this so quick!!!

  • @501.legion
    @501.legion Рік тому +17

    I would love to see some videos about SteamWorks-Implementations like Multiplayer and the Workshop!

  • @NachitenRemix
    @NachitenRemix Рік тому +8

    Wow!!! I am going to try and add the possibility on your kitchen chaos game for people to create their own levels from within an in game map editor!!

  • @GlassVaultStudio
    @GlassVaultStudio Рік тому +2

    This is really great. I could see this being useful for racing games or forge maps from halo 3. Thank you for this.

  • @savionthomas4325
    @savionthomas4325 Рік тому +1

    Awesome video! Always keeping us up to date with the latest with the Unity Engine!

  • @alec_almartson
    @alec_almartson Рік тому +2

    Amazing Tools... 😯
    Players Moding the Game to their ideas and inspiration... These customization options aim to increase the level of immersion and engagement of the players... taking replayability to the next level... really clever 👍🏻💯

  • @Tarodev
    @Tarodev 8 місяців тому +1

    Thanks CM ;)

  • @GrayFoxware
    @GrayFoxware Рік тому +1

    This is super cool, thank you.
    Also I am looking forward to any ecs dots tutorials you might do.

  • @captainnoyaux
    @captainnoyaux Рік тому

    Nice ! I've been waiting for that !

  • @hamzahgamedev
    @hamzahgamedev Рік тому +1

    Just WOW!! This will really help in getting some free marketing .!!

  • @cynth4941
    @cynth4941 Рік тому +1

    Look... I don't mean to be negative, I like Unity and your content, and am glad you got sponsored. Great video, you go very indepth about the tool in a nice and informative
    But about the tool itself... I'm a bit disappointed. It feels like it barely has anything to do with modding, it seems like just a barebones file uploader and downloader, feels like you could do the exact same with something like AWS S3 or BackBlaze B2 and pay a fraction of what Unity is asking for. I was expecting tools to, say, load code from user generated files, compile it on game load and inject it into the game, load meshes or animations dynamically, allow players to alter existing game code, etc etc. The file uploading seems like the easy part. You can probably do all those above with this tool, but you're left on your own to figure out the difficult parts, this tool isn't much help.
    There definitely are cool usecases though. Texture swaps and data, so anything that you can serialize and deserialize is easy to mod. I imagine you can make a level uploader(serialize say Prefab ID and Pos Rotation Scale) quite easily with this tool

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +3

      Uploading and downloading are the only parts of modding that is general to every game. Every other example you mentioned differs on a game by game basis so you can't make a tool that is applicable to every game. It's up to you as the developer of your game to define what modding means in your game.
      For example loading code from user generated files, perhaps you're talking about using simple Lua scripts, perhaps you're talking about synchronizing C# source files which are then compiled by the game, perhaps you're talking about loading .DLLs. All perfectly valid options that depend on a per game basis. Unity (or the Steam workshop) has no idea what option you as the developer want to use.
      Of course you could build a tool like this yourself, that's true for every single tool, it's up to you to decide if you want to spend the time building something or use a pre-made tool.
      File uploading is most definitely NOT the easy part, if I want to implement mods in my games like I have done I definitely do NOT want to handle all the backend of storing all those files and surfacing them to players.
      Perhaps you have a completely different view of what exactly is modding? Have you used Steam workshop? That's the most used modding platform and this tool is exactly a better version of that.

    • @mandisaw
      @mandisaw Рік тому

      It's a lot more than just Cloud file storage. Setting up an API, multi-provider user-auth, unique content IDs, mod/superuser support, external webhooks - these can all be done with any Cloud provider, but you are doing all the heavy lifting.

  • @kodaxmax
    @kodaxmax Рік тому +4

    Does it have the potential to allow for modded scripts? either editing existing ones or adding new ones?

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +2

      That's certainly possibly, it's up to you as the developer to figure out how you want to implement that.
      The simplest way to add logic is with Lua scripting, no need to worry about compilation or anything.
      For modifying existing scripts you could override some with Lua, or add some logic in the script itself to change behaviour based on data, or implement some C# compiler in your game and allow using custom C# code.

    • @ekzac
      @ekzac Рік тому

      I don't know how it will be, but once I found in roadmap a feature to turn Visual Scripting into a script modding, allowing to include assets on-the-fly. At least, as I understood that, maybe I'm wrong, but it may worth to look for.

  • @Gastrostomi
    @Gastrostomi Рік тому

    hmm... So basically just a storage/moderation tool for the mod asset pipeline. But i guess it would work pretty nicely with something like uMod 2.

  • @lawrence9713
    @lawrence9713 Рік тому

    nice. first time i tried to creat a mod was for valheim. got the game and all into unity, got my custom models in the same style, but failed to get it back into the game and gave up. hope they add this to their game

  • @jamesmillerjo
    @jamesmillerjo Рік тому +1

    They should add support Terrain object deserialization and initialization with serialization.

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому

      Is that not possible? I've never experimented with that specific use case but I assume it should be doable since a terrain is really just a height map texture.

  • @mandisaw
    @mandisaw Рік тому

    Couple questions, since you've dug into it. 1- I saw the webhooks page in the video, but does the service allow for inserting your own server-side storage & validation steps? Or would you have to call your API/logic on the client first?
    2- I would've liked to see how a modder can update a single mod over time. If they are just pushing a new content ID each time, that will break subscriptions, and fill up storage pretty quickly with junk/iterations.
    3- Maybe a future thing, but can the dashboard support theming? A completely custom site would use the REST API, but being able to decorate the default interface a bit with some game art/colors could be sufficient for most folks.
    Great post! Went a little fast in the middle, had to replay a few parts to catch everything. 😅 But it looks like a good way to break mod support out of "Steam jail".

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +1

      I don't think you can change the storage, I think it has to be stored by Unity
      For validation, you can add it if you use the UGC Bridge but not on the regular API, it will just upload whatever bytes you send, although you could add validation yourself if you upload mods from inside the game.
      Yup you can update a content
      Their WebAPI can do everything so you could definitely build your own custom themed website on top of that

    • @mandisaw
      @mandisaw Рік тому

      @@CodeMonkeyUnity Cool! I could see the storage & validation becoming an issue eventually. It seems like it's geared for both beginners & more complex projects alike, and beginners aren't likely to have a whole separate API. Will keep an eye on the service though, thanks for the intro!

  • @ayayrawnnn9725
    @ayayrawnnn9725 5 місяців тому

    I would love another video on adding code to your game as UGC. I don’t understand at all how that works. I get adding levels and assetts, but how do you add code? They said you can add whole games as UGC

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  5 місяців тому +1

      The simplest option is with LUA which is a scripting language. It's very easy to include the script (which is just text) and run it in realtime.
      The more complex option is for your game to support importing .DLLs so players can use something like C# to create a library and then load it in the game.
      It's definitely a topic I want to cover someday, it's quite interesting.

    • @ayayrawnnn9725
      @ayayrawnnn9725 5 місяців тому

      @@CodeMonkeyUnity very interesting, thank you for pointing me in the right direction.

  • @apinoita
    @apinoita Рік тому

    Could you make Unity Leaderboads next?

  • @dimitriosmakridis2898
    @dimitriosmakridis2898 Рік тому +1

    Async Await does not work on webgl, right? How would you go about, using the unity services without those keyboards? My guess is Coroutines, but it would require the unity package, having non async equivalents to the async versions of the method in the package. Right?

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +2

      It does work on WebGL, remember that async/await is NOT multithreading, by default it still uses just one thread. It simply pauses execution and the main thread goes do something else before getting back to it.
      Multithreading does indeed have some issues in WebGL although I think recently they added support for that.

  • @thepizzafoogle5481
    @thepizzafoogle5481 Рік тому

    If I may ask, are you going to be making a video tutorial for the latest DOTS release? I want to use it in my game, but the tutorials for it are outdated, as Unity has changed the API.

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +1

      Yup I'm currently researching it, hopefully I'll have an updated video before the end of July

  • @zumsl
    @zumsl Рік тому

    Hey codemonkey, do you have any experience with Parsec? That coop tool which unkty bought? Cant find anything on UA-cam relating that topic…

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +1

      I've used it a bit myself, best real-time remote desktop tool I've used, I can take my laptop to my office and do some editing on my home computer with essentially no lag, pretty awesome!
      I set it up quite some time ago so don't remember anything specific but everything was pretty straightforward, mostly just install and that's it

    • @zumsl
      @zumsl Рік тому

      @@CodeMonkeyUnity thanks for your fast reply 🙂 okay now i think i understand what its used for… pretty much only read online coop work and thought it would be some sort of github style program to collaborate in one project.

  • @DarKKBeast
    @DarKKBeast Рік тому +1

    Hey Code Monkey, do you know a solution for how i can make my 2d car rotate while in the air without the wheels flying all over the place and to be in the same position?

  • @AlexanderCrumpler-bq4hx
    @AlexanderCrumpler-bq4hx Рік тому

    I do not have access to my computer ATM. So I cant test this but I was wondering if there is a
    GetDownloadedMods type of thing you can?

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому

      What would you want that function to do? You can subscribe and download mods.
      Do you mean like load local already downloaded mods? I believe as of right now this tool has no caching, so it always re-downloads by default

    • @AlexanderCrumpler-bq4hx
      @AlexanderCrumpler-bq4hx Рік тому

      @@CodeMonkeyUnity ah okay thinks :3
      And yeah I ment cacheing. Thanks for the reply:)
      But essentially I was wanting a way to delete already installed mods when offline, while playing the game.

  • @ekzac
    @ekzac Рік тому

    Did I miss something, or there is no integration with Unity itself to use the downloaded content? Is it a separated system, which requires the developer to read the byte array and process it, rather than converting it right to a Texture2D, a particle system (if even possible), a mesh, an audio, or anything? (I am thinking of something like Resources.Load, but it seems not to be the case).

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +2

      Yes it's up to you as the developer to decide what those bytes represent, the system just works on bytes, Unity has no idea if what you're uploading/downloading is a Texture or some Text

    • @ekzac
      @ekzac Рік тому

      @@CodeMonkeyUnity Hmm, it's curious, one of the complains about Unity is the lack of integration of their own tools. It's nice to have the bytes themselves, but it could be easier to use it as objects. Even more because Unity do not expose the serialization API of the Objects.

  • @zORg_alex
    @zORg_alex Рік тому

    So, how do you package assets with scripts to upload and later after downloading, how you use them in your game? That is my biggest question. On the other side all this UGC is cool, but isn't steam workshop doing exactly the same?

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +2

      That's up to you as the developer to figure out, there are many ways to do that.
      Simplest way is to use a scripting language like Lua, more complex would be include a C# compiler or support for dynamically loaded .DLLs
      Yes I talked about at 31:55 how this compares with the Steam workshop, main difference is platform support.

    • @zORg_alex
      @zORg_alex Рік тому

      @@CodeMonkeyUnity ah. I guess I got sidetracked. I'm thinking about DLLs. It seems like most optimized way to do that, especially if modded code will be processor intensive.

  • @dreampiece3828
    @dreampiece3828 Рік тому

    Will this work with multiplayer Unity games aswell?

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому

      As long as both players have the same mod installed, yes

    • @dreampiece3828
      @dreampiece3828 Рік тому

      @@CodeMonkeyUnity I ment like online multiplayer. would everyone in the server have to have the same mod installed?

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому

      Yes, if they don't then the players without the mod installed would have no idea what is happening

  • @Cookinbk
    @Cookinbk Рік тому

    Hi I am a freshman in college software engineering i haven’t taken any programming classes yet but I know the basics of python and java but I wanna also do game development and learn C# I wanted to know where should I start first for game development im a freshman college student i want to really make games as well but i don’t know where i should start from

    • @SpiritedSeeker
      @SpiritedSeeker Рік тому

      Hey there, I would recommend building classic old skool games to get started. Something like pong, breakout, moon lander and/or bomberman. They are relatively easy to build, which when I do that allows me to focus on learning new aspects of the language or the unity editor. After 10 years of unity, I still like to follow the same principles when I want to learn something new, like a new package or a new feature. Since you found yourself watching a video about UGS. Making Tetris with UGS custom blocks could be something fun and easy to make. Also learning about the concept of juice and applying that to more simple games is great to learn about the power of juice (totally recommend you to watch some videos about that if you are interested in building impressive experiences early in the learning process and owning those grades when you are doing practical assignments).

    • @Cookinbk
      @Cookinbk Рік тому

      @@SpiritedSeeker I mean I understand what u saying but I have ideas what I wanna make stuff but I have to start small first I wanna do a 2d pixel rpg game and a 3D horror game for like the main perfect games I wanna make but i understand making basic games and practicing is always first i purchased 2 courses I bought game devtv 2D unity course and game dev tv 2D godot course

    • @ОлександрБоровський-н1г
      @ОлександрБоровський-н1г Рік тому

      Hi, I’m a Unity developer from Ukraine. I’m working in IT school giving game dev lessons for our people. Now I have a goal to become better at speaking English, I can give you free lessons and you can help me to improve my English skills. What do you think about my idea?)

    • @Cookinbk
      @Cookinbk Рік тому

      @@SpiritedSeeker do you think it’s best to use the game dev tv course to learn C# and game development at the same time because they teach about C# as well in the 2D game development course

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому

      Start small, start simple. I recommend my free course whch is targeted at beginners ua-cam.com/video/AmGSEH7QcDg/v-deo.html
      Then as you learn you can increase the complexity of the games you are making unitycodemonkey.com/video.php?v=Vlcop0uxFIQ

  • @Driverbazona
    @Driverbazona Рік тому

    hey Code monkey :)
    im here again for the bundle error,
    So you had a video on making the fake ad games and i downloaded the template, got the packages, and used the same unity version as the one in the video.
    but it still doesnt load things like the gas, water and mainly the URP things even though i have the package. the back ground is purple and most of the UI is unclear to see and when im in one level or the main scene, if i press go to the other level it doesnt allow me. why is it so?
    so like particles and background with some other things just come up as pink/purple boxes, this has happened before when i tried downloading a unity package from the unity story that is about idle attack game where it has a dragon in a dungeon(it is made by unity) but when i downloaded it same thing happened where most things were rendering as pink/purple boxes. still don't know why this is happening.

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому

      What do you mean "doesn't load gas"? Gas isn't really a thing, there's a shader, there's a RenderTexture and there's Layers.
      Purple simply means missing texture, it's been a long time since I made that vidoe so I probably used some background texture that I cannot distribute so didn't include it in the package.

  • @RamunatorGames
    @RamunatorGames Рік тому

    Hey does UGC has any advantages over steamworks workshop

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +3

      I talked about that at 31:55
      Main advantage is it works on every platform, you're not limited to Steam

  • @theteleportingminecart351
    @theteleportingminecart351 Рік тому +1

    sounds intesting hmmmmm

  • @QRF-un1os
    @QRF-un1os Рік тому

    Are You Joining in GMTK Game Gam

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому

      I don't normally have time for game jams unitycodemonkey.com/video.php?v=m6poeapLn4Y
      Best of luck if you participate!

  • @blo0m1985
    @blo0m1985 Рік тому +6

    Tell this to V Rising devs. They killed game by not allowing mods

    • @CodeMonkeyUnity
      @CodeMonkeyUnity  Рік тому +3

      Really? What happened? Did they intentionally not allow mods or simply didn't make modding tools?

    • @jamesmillerjo
      @jamesmillerjo Рік тому +2

      There is a saying that "When people get continous favors, they think it is a right."
      Is it really a life-death problem of a game?

  • @ltecheroffical
    @ltecheroffical Рік тому

    second comment here