Creating Game Data with SerializeReference (Items & Abilities Example)

  Рет қаралды 6,196

Jason Weimann

Jason Weimann

Күн бұрын

Пікірлер: 35
@IDJohnathan
@IDJohnathan 7 ай бұрын
This came at just the right time. I was trying to figure out a system for modularizing the conditions and effects for a story event system. Still a lot of details to work through on my end, but this helps a lot.
@sadiqabbaszade4789
@sadiqabbaszade4789 7 ай бұрын
I have made my own PolymorphList. It works like a list, but under the hood it has serializereference attribute on the filed. When you press the + button, dropdown menu shows up to choose the type of the new object (that inherits from T) to add to the list. That way you can dynamically add any type of object to your list and serialize different types of data in the same object! Pretty neat if you want to for example serialize data for different CharacterSkill-s in the list of usable skills
@elyastigre9867
@elyastigre9867 7 ай бұрын
That sounds awesome ! Would you want to share it ? :)
@MarushiaDark316
@MarushiaDark316 7 ай бұрын
Interestingly, git-amend dropped a similar video the same day as this, showing how to make your own serializable types in the Inspector from scratch, complete with a dropdown. So in theory, you could also use that and apply it to the systems you describe here.
@CamperEater
@CamperEater 7 ай бұрын
I'm too broke to build games atm but this channel has always been a inspiration for me
@MrOmega-cz9yo
@MrOmega-cz9yo 7 ай бұрын
As long as you have a PC that runs you should be coding and learning. There's an amazing amount of things you can do with free stuff these days. Just watching tutorials isn't enough. You need to develop (anything!) to learn all you can. Hopefully we'll see a game you develop in the future.
@Hietakissa
@Hietakissa 7 ай бұрын
​@@MrOmega-cz9yo yeah, you can totally do game dev without paying a dime! (Unless you count app credit fees to even publish your game etc. And obviously provided you already have a PC to do said dev on). All software I use is free and all tools I use are either built-in or made by me, so also free.
@Nebulaoblivion
@Nebulaoblivion 7 ай бұрын
as long as you have a computer (doesn't have to be an expensive high end one) you can make games for free.
@________-by2px
@________-by2px 7 ай бұрын
I'm using an almost identical system in my current project and IMO it's a great choice if you want a modular system that's simple to implement yet powerfull enough for most uses. I also use [SerializeReference] with a "ValueGetter" class that has an T Evaluate(context) method. I use it instead of most int and float fields, allowing for more customisation (random range, power increase/decrease depending on conditions etc.).
@spacelabgames
@spacelabgames 7 ай бұрын
Great video, this will definitely be useful in my future projects...good stuff 👍
@agustintorres6246
@agustintorres6246 7 ай бұрын
What's the equivalent of this in Odin ?
@goldone01
@goldone01 6 ай бұрын
This may be a bit late, but I just tried this myself. It works simply when you have SerializeReference added. It does the rest automatically
@benjaminlehmann
@benjaminlehmann 7 ай бұрын
Really helpful. Thanks, Jason.
@chriwee5297
@chriwee5297 11 күн бұрын
Hey there, great tutoria, and I am using it for my magic effect system. I am curious though, how your Health Pool works. Are you using a seperate Scriptable Object for each character stat?
@dbweb.creative
@dbweb.creative 7 ай бұрын
What's your opinion on this: I've made a CustomEffectSO where I can put string name of a function that is contained in a static class of effect functions (I cache reflection after the first call). The reason I essentially made a static library of effect functions is for those non-generic functions for which I don't really see a point in making a separate scriptableobject class. Or should I still make a separate class for each effect, even though it's basically nearly hard-coded effect (ofc there is src/target parameter, but other than that it's same every time). Is there any architectural no-no, or security against doing this?
@nuin9937
@nuin9937 7 ай бұрын
What if the method name changes what will you do?
@dbweb.creative
@dbweb.creative 7 ай бұрын
@@nuin9937 why would it change? of course you'll need to update particular CustomEffectSO instance that holds that name, which is basically a single SO instance. But really, as I said, this kind of reflection call is for those non-generic one-of-a-kind effects. I just don't see a point in making a menu entry for creating just a single instance of a scriptableObject asset. ScriptableObjects are about generic parameter-based instances. However, to feed the one-of-a-kind functions into effects pipeline - this is the way I did it.
@nuin9937
@nuin9937 7 ай бұрын
@@dbweb.creative What if someone changes the name of the method lol
@nuin9937
@nuin9937 7 ай бұрын
@@dbweb.creative Just map your effects to an enum or something
@dbweb.creative
@dbweb.creative 7 ай бұрын
@@nuin9937 when? during development? runtime? what do you mean? Or do you mean if someone edits/cheats memory at runtime?
@rutchjohnson
@rutchjohnson 7 ай бұрын
Why Task and not Ienumerator?
@SharifTariq
@SharifTariq 7 ай бұрын
Coroutines rely on MonoBehavior. Task doesn't require that.
@DoubleBob
@DoubleBob 7 ай бұрын
Please stop pushing Odin. Their 200k+ cost per seat makes it unusable for most gamedev companies.
@MarushiaDark316
@MarushiaDark316 7 ай бұрын
Why would he stop pushing a tool he uses and enjoys and that many others enjoy, especially after he just made a video saying Unity should outright buy them and incorporate it as standard for everyone?
@DoubleBob
@DoubleBob 7 ай бұрын
@@MarushiaDark316 Cost. Devs that rely on it will have trouble using it in a job due to cost.
@nuin9937
@nuin9937 7 ай бұрын
@@DoubleBob Yeah I liked it at first but I now just make my own attributes and stuff when I need them. No point building a crutch
@SamuelSalo
@SamuelSalo 3 ай бұрын
200k? What? I's 250$ per seat for enterprise
@DoubleBob
@DoubleBob 3 ай бұрын
@@SamuelSalo What margins do you think there are?
Scriptable Abstract Abilities
10:53
Jason Weimann
Рет қаралды 9 М.
My Wife and I Made an Indie Game and it Made Millions!
14:45
Eastshade Studios
Рет қаралды 1,3 МЛН
PEDRO PEDRO INSIDEOUT
00:10
MOOMOO STUDIO [무무 스튜디오]
Рет қаралды 26 МЛН
АЗАРТНИК 4 |СЕЗОН 1 Серия
40:47
Inter Production
Рет қаралды 1,3 МЛН
Will A Guitar Boat Hold My Weight?
00:20
MrBeast
Рет қаралды 119 МЛН
3 Game Programming Patterns WE ACTUALLY NEED.
14:13
Jason Weimann
Рет қаралды 14 М.
The answer is...
7:40
Jason Weimann
Рет қаралды 13 М.
Turn your Unity Game Multiplayer, NOW!
3:03
StrawberryDeveloper
Рет қаралды 1 М.
Top Game Development Tools for Solo Devs | Must-Haves for Unity
10:02
How to: LEVEL DESIGN - Dev Tips | Myrkur Games
7:57
Myrkur Games
Рет қаралды 116 М.
Make Unity Dev Easy with these..
12:54
Jason Weimann
Рет қаралды 5 М.
PEDRO PEDRO INSIDEOUT
00:10
MOOMOO STUDIO [무무 스튜디오]
Рет қаралды 26 МЛН