Really glad to see you started your own channel, Jason! Loved your contributions to Jason Weimann's videos, always got interesting stuff to add to the conversations.
Good stuff! I like the editing, keeps it light and easier to digest. Yeah I'd be up for editor code. What I'd be most interested in is how you'd setup a codebase for production, something mid sized like an indie pc game. Specifically I want to understand how you use interfaces and why, and how to avoid things like zenject and singletons. Also curious about your take on UniRx and DOTS. Thanks for this man!
I like these kinds of videos. It's easy to initially do the array by hand in Unity but you're right, it requires opening Unity, it's not portable, etc. It's nice when someone says 'there is just a different/better way that is easier long-term and way less overhead' appreciate the video.
I would love to see more tutorials from you. About anything really... You seem very experienced with industry and know a lot about shortcuts/easier ways to do stuff.
Man went absolutely bonkers with the editing, but in an awesome way. This has a good balance of having fun, novel things going on while not being so much as to be distracting. It must have taken a lot of time to do all of those tricks; much respect!
This is amazing. The hard thing about this is as a person who learnt unity and C# on my own, how would I even know these functions and options exist until I come across this. Amazing work tho!
I'm reading Game Programing Gems and on the first chapter they talk about how you should use text files to not scare away designers. Great to see it implemented in Unity
Awesome vid, I did a basic version of this text loading before, but I didn't realise you could do this with several data points. It's just what I need for my current project.
I really like this approach of making data easier to access. You can even put these files behind a web server and dynamically update them without having to have the players download a new game client. Changing that damage stat on a sword no longer requires validating an entire new release! One suggestion: Unity includes the Newtonsoft JSON library already for you which can handle serializing and deserializing complex types for you. Instead of splitting text files manually which can break when you add another field, using some structured data like JSON, XML or YAML can make this more robust and less likely to trigger weird and confusing warnings when a data file is incorrectly changed or your type gets updated. I believe that code to do this will be shorter than the manual parsing version as well! For example: var lines = JsonConvert.DeserializeObject(_file.text); Should be all you need when converting your Items data 😀
I completely agree! In fact I use Newtonsoft JSON for most of my projects, but in unitys documentation they do actively caution you against relying on the version they include as they only promise it is there for editor tooling and not always guaranteed, also while I would use json/bson for data myself as I am comfortable editing it, when it comes to giving something to non-tech people, asking them to just type some words in a file with commas between them is easier to explain and reason about, so for user facing stuff I often use plaintext/flat files. (though secretly I will often parse what they give me, model it as a json DTO and use that myself. )
Wow! Nice upping the ante with the animated graphics. That was awesome Jason. I think the editor scripts would be awesome for a next video, or a video to hit the pipeline soon! I want more!
More editor videos please! Not a lot of channels ever really talk about improving your development pipeline and I feel like that is one of the many quality of life things a lot of developers don't do simply because they don't know where to start.
CSVs forever! they are super useful for swapping out dialog files for localization. localizer doesn't need editor or engine they just need to be able to open a spreadsheet. you sir are a fantastic teacher, a gentleman and a scholar. the epitome of your favorite programmer's favorite programmer.
Great video topics. Simple tips that should be shared more often. I'm surprised things like this aren't more prominent on Unity Learn. I'm just disappointed you don't start your videos by asking "What's the Storey?".
Please make more videos, and the editor tutorial if you can that would be splendid. I want to know about Custom Editor and I'd love to hear it from you.
Man, why did you stopped your awesome videos... I was ware of txt files but I never thought to use them in the way to fill content of the objects!!! Thank you so much and thumb up!
Hey, Iove the streams you do with Infallible Code, and I am hyped for what you can come up here. But please keep the videos as clean as you keep your code clean... Are those special effects really adding to the underlying message of the video? One or Two might spice it up, but in this video it has been too much ;)
Very good explanation of why arrays aren' t the best approach when comes to data editing and reading. Also thank you for teaching a new for me at least class the textasset, but I tried using also something new that I saw the required attribute and the visual studio compiler wasn' t recognizing it, it was only displaying me the requirecomponent attribute. Does anyone know why I couldn' t access it ?
Neat, this is surely going to be useful at some point! Next level: How do I automate file population? ;) Btw, I notice your videos' audio is not quite synced up -- if you use Davinci Resolve, it can auto-sync your high res audio track based on the video's original audio track (I'm sure Premiere must have something similar).
Well I do personally have some apis I use that actually generate the prototype data, it can create fake users, ai user faces and random photos... maybe that could be another video when I have time :) As for the audio, that's strange. It seems in sync for me, and the audio is recording directly through the camera as a source, so that IS the original source track. Then again premiere was crashing for me this week so it could have gone a bit wrong, I'll keep an eye on it for the next one!
@@JasonStorey Sounds interesting! BTW, I like your topic choices so far, they're a bit more niche. Would be great to see more around advanced architecture topics as well. Re audio: That is strange! I asked my partner and he doesn't see it either but I swear the video is slightly delayed. I only even commented on it because I noticed it in multiple of your videos. But hey, if no one else sees it, no need to fix anything, I'll survive. :)
using notepad to set values in an array that is a good way and gives instant feedback, clearly helps me very quickly make changes to the data in my script I mean unity shouldn't have given the option to inspect these have you not seen scriptable objects?! I mean like, they do exactly what you're doing but gives more freedom lol
How should we apply our custom components or script automatically? I mean we drag the fbx in the hirarachy again and again and each time we have to add those compoennts. Is there any good approach video ?
Very helpful, do the validation video next. I am making a quiz game and I'm avoiding making different scenes for different levels. I just want to load the text files to load questions and other assets in the same scene via text files
So what's the difference between this and using scriptable objects for data loading? I used scriptable objects in order to import level data. But I didn't really understand them that well. I just know that I read the data and create objects out of that data. Then I create assets from those objects. But why is the ScriptableObject class in there? What does it do?
The bad thing is, unity loads that text asset into the memory for full apps lifetime even though nothing accesses it. Maybe deleting that textasset reference after the array creation might work better
Late to the party but thanks for the useful video! Any thoughts on loading larger quantities of data (e.g. big datasets generated by another process outside of unity ?)
Would be great to learn more about custom editor scripts! Especially in the context of multidimensional arrays or dictionaries since those are a huge pain to visualize traditionally (as far as I can tell anyway)
if u can spare 25USD, there is a bundle sale at the moment including the Odin inspector. This will serialize everything including multidimensional arrays, static fields and dictionaries.. I have done a bit of custom editor stuff, but you'll generally get very unflexible solutions, and its a huge pain in the a** .. so those 25 bucks is extremely well spent
Thank you for this video! Is there a way to make something similar with sprites? I am working on a game where tile sprite is being picked from an array of sprites in a scriptable object. And i can't think of something that would make this system look prettier
Great video, Jason! Love the content, love the memes, love that you're finally putting stuff out there. Can't wait to see the next one
The next topic is "Custom Editor Scripts" then "Validations" or vice versa, oh yeah the data interruption was cool!
Really glad to see you started your own channel, Jason! Loved your contributions to Jason Weimann's videos, always got interesting stuff to add to the conversations.
wow! such an improvement in your presentation in just 3 videos. This shows you're really good at this buddy. Thank you a lot :)
Good stuff! I like the editing, keeps it light and easier to digest. Yeah I'd be up for editor code. What I'd be most interested in is how you'd setup a codebase for production, something mid sized like an indie pc game. Specifically I want to understand how you use interfaces and why, and how to avoid things like zenject and singletons. Also curious about your take on UniRx and DOTS. Thanks for this man!
I like these kinds of videos. It's easy to initially do the array by hand in Unity but you're right, it requires opening Unity, it's not portable, etc. It's nice when someone says 'there is just a different/better way that is easier long-term and way less overhead' appreciate the video.
Really glad to see you started your own channel, Jason!
I really hope you can make more of these in the future.
I would love to see more tutorials from you. About anything really... You seem very experienced with industry and know a lot about shortcuts/easier ways to do stuff.
Man went absolutely bonkers with the editing, but in an awesome way. This has a good balance of having fun, novel things going on while not being so much as to be distracting. It must have taken a lot of time to do all of those tricks; much respect!
This is amazing. The hard thing about this is as a person who learnt unity and C# on my own, how would I even know these functions and options exist until I come across this. Amazing work tho!
Great content! So happy to see you started posting! I'd absolutely love to see some editor extension videos.
Thank you for another useful video! Love the editing!
He's killing it with the editing
Super excited to see you make your own channel! Every bit of content I've seen from you on Jason and Charles' channels have been so useful already!
I cannot express how valuable this video is! Cannot wait to learn more about custom editor scripts!!!!1!!
I'm reading Game Programing Gems and on the first chapter they talk about how you should use text files to not scare away designers. Great to see it implemented in Unity
So happy to see you making videos on this channel, Jason! And I appreciate the editing skills ;D
Kudos for the extra effort on editing. Good way to stand out. gg
Awesome vid, I did a basic version of this text loading before, but I didn't realise you could do this with several data points. It's just what I need for my current project.
I really like this approach of making data easier to access. You can even put these files behind a web server and dynamically update them without having to have the players download a new game client. Changing that damage stat on a sword no longer requires validating an entire new release!
One suggestion: Unity includes the Newtonsoft JSON library already for you which can handle serializing and deserializing complex types for you. Instead of splitting text files manually which can break when you add another field, using some structured data like JSON, XML or YAML can make this more robust and less likely to trigger weird and confusing warnings when a data file is incorrectly changed or your type gets updated. I believe that code to do this will be shorter than the manual parsing version as well!
For example:
var lines = JsonConvert.DeserializeObject(_file.text);
Should be all you need when converting your Items data 😀
I completely agree! In fact I use Newtonsoft JSON for most of my projects, but in unitys documentation they do actively caution you against relying on the version they include as they only promise it is there for editor tooling and not always guaranteed, also while I would use json/bson for data myself as I am comfortable editing it, when it comes to giving something to non-tech people, asking them to just type some words in a file with commas between them is easier to explain and reason about, so for user facing stuff I often use plaintext/flat files. (though secretly I will often parse what they give me, model it as a json DTO and use that myself. )
I learned something today, had no idea you could do cool file IO stuff like this in in Unity. Concise, well-presented and edited!
Wow! Nice upping the ante with the animated graphics. That was awesome Jason. I think the editor scripts would be awesome for a next video, or a video to hit the pipeline soon! I want more!
God, your content is so damn good. keep up the hard work dude!
Love to see the Editor Scripts covered in more detail! Great job!
Super excited to learn more about the editor extension stuff! This was really interesting.
Great video, thank you Jason. I'd love to see a video where you cover some insights on the Unity Editor scripts !
I almost learned 1 new thing per minute in a 4 minute video
Keep the good job man!
I love this approach of tutorials.
The way you explain stuff is clean precise and very informative with fun in between
As always very good info in a straight forward manner, the editing too is really great, all those little touches, superb craftmanship.
It's really nice to see you posting videos man!
More editor videos please! Not a lot of channels ever really talk about improving your development pipeline and I feel like that is one of the many quality of life things a lot of developers don't do simply because they don't know where to start.
your videos are awesome. you're awesome. look forward to each and every new vid that you got cooking up.
CSVs forever! they are super useful for swapping out dialog files for localization. localizer doesn't need editor or engine they just need to be able to open a spreadsheet.
you sir are a fantastic teacher, a gentleman and a scholar. the epitome of your favorite programmer's favorite programmer.
Great video Jason - looking forward to more of your content! Great to see these editor tips!
Love the new editing =) Thanks for your time =)
I've never seen a tutorial video edited this entertaining xD
This was great stuff, and the editing was great 👍👍 I hope this channel blows up
This 1.0x Jason is an Impostor. Put on 1.5x for Authentic Jason.
Great job on the editing.
You are one of my hilarious guide in my game dev journey Jason! Keep it up! Great content!
There was a young lady from Venus... Loving these videos, packed with useful tips and now humor!
Great video topics. Simple tips that should be shared more often. I'm surprised things like this aren't more prominent on Unity Learn.
I'm just disappointed you don't start your videos by asking "What's the Storey?".
Thank you for your content, this format is really informative, easy to digest and to understand. Love it!
Why'd you stop creating videos. These are so good
Totally agree with Mr Thomas. It was very entertaining yet informative.
Love the unique experience you bring to the game dev community!
very nice video as always .
best of luck doing more .
Your editing is top-notch!
I can see you doing the "hello there" in every intro.
that star trek reference was gold! I didn't know you watch star trek
+
Would love to see the advanced editor stuff, especially the weapons example, perhaps using JSON + validation? Great work JS, thanks again!
Please make more videos, and the editor tutorial if you can that would be splendid. I want to know about Custom Editor and I'd love to hear it from you.
The editing on this video is great! xD
Man, why did you stopped your awesome videos... I was ware of txt files but I never thought to use them in the way to fill content of the objects!!! Thank you so much and thumb up!
Great video Jason
Nice video and editing! I'd like to see more videos about editor coding
A lot easier and more robust approach would be to use JsonUtility to serialize/deserialize the objects within textfiles
Hmmm, i really love a well edited tutorial video, and you surely scratch that itch, insta subd * cheff's kiss *
Great video Jason keep them coming.
Love it! Although a note about audio, it's seems like your volume is really low compared to the editing popups.
Nice video. I'd like to see you explain how to work with Editor scripts in Unity since I don't really have much of an idea of how to start.
Yes, please address the Editor code. That's something i'd love to see and adventure into it.
Editor Extension stuff. Would love deep hard details on that.
Hey, Iove the streams you do with Infallible Code, and I am hyped for what you can come up here. But please keep the videos as clean as you keep your code clean... Are those special effects really adding to the underlying message of the video? One or Two might spice it up, but in this video it has been too much ;)
Very good explanation of why arrays aren' t the best approach when comes to data editing and reading. Also thank you for teaching a new for me at least class the textasset, but I tried using also something new that I saw the required attribute and the visual studio compiler wasn' t recognizing it, it was only displaying me the requirecomponent attribute. Does anyone know why I couldn' t access it ?
Neat, this is surely going to be useful at some point! Next level: How do I automate file population? ;)
Btw, I notice your videos' audio is not quite synced up -- if you use Davinci Resolve, it can auto-sync your high res audio track based on the video's original audio track (I'm sure Premiere must have something similar).
Well I do personally have some apis I use that actually generate the prototype data, it can create fake users, ai user faces and random photos... maybe that could be another video when I have time :)
As for the audio, that's strange. It seems in sync for me, and the audio is recording directly through the camera as a source, so that IS the original source track. Then again premiere was crashing for me this week so it could have gone a bit wrong, I'll keep an eye on it for the next one!
@@JasonStorey Sounds interesting! BTW, I like your topic choices so far, they're a bit more niche. Would be great to see more around advanced architecture topics as well.
Re audio: That is strange! I asked my partner and he doesn't see it either but I swear the video is slightly delayed. I only even commented on it because I noticed it in multiple of your videos. But hey, if no one else sees it, no need to fix anything, I'll survive. :)
Very informative video ! I would find it useful to face a video about an editor script. That's something I always struggle with
Would love a vid on validation in this context.
I like the editing. Reminds me a bit of that silly style of Clean Code videos :D
Aaaahhh!!!! You started a channel! FUCKING YESSSSSSSS!!!
I would use JSON files instead of plain text, tad safer and also portable to other systems.
Would ve loved to see him make more videos..
Super cool -- definitely will be using this in my project.
Great editing! And a great tip.. Quality content overall
\
using notepad to set values in an array
that is a good way and gives instant feedback, clearly helps me very quickly make changes to the data in my script
I mean unity shouldn't have given the option to inspect these
have you not seen scriptable objects?!
I mean like, they do exactly what you're doing but gives more freedom lol
Really cool, never thought about this before!
Ok the video editing is awesome
Funny and informative, a golden combination!
Insta-hooked on this channel!
How should we apply our custom components or script automatically? I mean we drag the fbx in the hirarachy again and again and each time we have to add those compoennts. Is there any good approach video ?
I was trying to recreate the items script file you made but the video cuts off and I'm sort of lost... Where do you call the ConvertToItem method?
Okay it's safe to say that it's impossible to say "super easy" without adding "barely an inconvenience" to it
Wish I knew this before deploying my own data serialization and delimiter solutions.
i thought Jason Storey was a plugin for json storage
Very helpful, do the validation video next. I am making a quiz game and I'm avoiding making different scenes for different levels. I just want to load the text files to load questions and other assets in the same scene via text files
Very helpful, thank you so much for your videos :)
JSON serialization & scriptable objects are better alternatives depending on your needs
So what's the difference between this and using scriptable objects for data loading?
I used scriptable objects in order to import level data.
But I didn't really understand them that well.
I just know that I read the data and create objects out of that data. Then I create assets from those objects.
But why is the ScriptableObject class in there? What does it do?
The bad thing is, unity loads that text asset into the memory for full apps lifetime even though nothing accesses it. Maybe deleting that textasset reference after the array creation might work better
Lol. Loved that Ryan George reference :P
My man used 100% of his editing skills
Why reinvent the wheel and not use a CSV or JSON parser?
Late to the party but thanks for the useful video! Any thoughts on loading larger quantities of data (e.g. big datasets generated by another process outside of unity ?)
That Barely an inconvenience got me xD
Don't you need to mark the game object as dirty in order to tell the editor it should save the change..?
0:03 Jason was a Unity MLAgent all along 😮
Such a good example, thanks a lot :D
Would be great to learn more about custom editor scripts! Especially in the context of multidimensional arrays or dictionaries since those are a huge pain to visualize traditionally (as far as I can tell anyway)
if u can spare 25USD, there is a bundle sale at the moment including the Odin inspector. This will serialize everything including multidimensional arrays, static fields and dictionaries.. I have done a bit of custom editor stuff, but you'll generally get very unflexible solutions, and its a huge pain in the a** .. so those 25 bucks is extremely well spent
You're awesome, thanks for the video!
Man, i love your tips
What font do you use in Rider Jason?
Great video! After finishing typing the code, before switching away from it, could you keep it on screen for a second so we can pause and take a look?
Thank you for this video!
Is there a way to make something similar with sprites?
I am working on a game where tile sprite is being picked from an array of sprites in a scriptable object.
And i can't think of something that would make this system look prettier