A lot of people have assumed I’m not using version control. Of course I am! Before I make any changes, I print out screenshots of my existing scripts. There’s a huge binder on my desk that holds all of them. They’re all organized by file and date so they’re easy to find.
Fun fact: the floating point error you experienced is the exact reason that there are elevators in Metroid Prime. The devs ran into a bunch of glitchy motion once the player got more than a few thousand meters from the point of origin, so the elevators were a clever way for them to be able to reset the 0,0,0 point without the player being aware of it.
@@onlysmiles4949Outer Wilds devs solved this by making the player the origin, and the world moves around the player, rather than the player moving around the world.
As someone who is playing through Metroid prime remastered (got it for Christmas) elevators are interesting from a game design perspective because they work well as very small breaks in the action and they also give anticipation of what might come after you exit the elevator
For the record: The industry standard is to pick an update version and work on the same version until the project is finished, even if new updates are released. You should only update if there are bugs that are fixed in later versions that you need dealt with, or in the rare case that there's a piece of functionality you really want in a later version.
If working on a team, I 100% agree. If it's a personal project I'd say it's a good idea to upgrade with intention. If you're still deep in development, those updates could help or add new features. If you're months away from release, then yes stay on that same version as you polish the finished product.
Not the game dev industry, but I remember when speaking to a pro in the music industry, and we talked about the latest version of one of the industry standards for music and audio creation/design. The update was not free, so I asked him if he thought it was worth it, assuming he had upgarded since he was a pro. He told me that he was still on version 3, which was released when I was six years old. The current version? Version 13. 10 whole massive updates over 20 years, and he just didn't get them because "I am working just fine with what I have".
This is 100% bullshit though. The industry standard is to adapt whatever feature set is based on a future target system, aiming it to be the standard by the time the game releases. The industry standard is _not_ to use outdated systems.
@@mattc9598 Then he's definitely not a music industry pro, because that industry has skyrocketed in just the last two or so years ago in terms of DAWs and functionalities. Yes maybe he doesn't need access to all those modern plug-ins, but the reality is that some of the bread and butter features have been improved an insane amount. Maybe he only records indie bands that don't require the latest and greatest audio fidelity, but most recording studios don't have the luxury of sticking with 6 year old software. Heck, don't be surprised if there's zero technical support for software that old. On top of that, most software has transitioned to subscription fee models, meaning you will get the latest versions anyway.
@@PHeMoX and yet hollywood/record labels keep coming to him for audio work. Maybe he's updated since I spoke with him, but he definitely didn't need to keep updating in order to win any awards.
I'm studying Video game design in college, the one thing they say is you choose a build for your engine and you don't update it, you stick with it. incompatibilities between versions are mostly inevitable
A good example of why would be Legendary Tales. It's a VR dungeon crawler that decided they wanted to move to UE5... and then realized after updating that a lot of their systems don't work anymore and had to downgrade again, SEVERELY slowing down development and causing many people unaware of the situation to assume the game had been abandoned.
@@StygianIkazuchiI can't even imagine someone working in a game studios that has the worst boss they can't go against that is advocating for this kind of update...
That sounds really cool! Is that a full four year degree? I already did my time in college, but learning game development sounds super interesting to me.
I spent almost a year making game using libGDX. My thoughts are: Making game is not hard. Making Fun and Polished game is. LibGDX actually does some stuff better than Unity. Like... more freedom and stuff... And finally... Marketing is veery important. Failing at this one makes your game not exist.
My guy, updating software for development is like loading a shotgun shell into a revolver. Stuff's gonna explode. Never update mid project, this ideology that you need the latest version is what's killing your game, not vis scripting
yeah.... vscode kept updating C# and .net versions which would end up breaking the unity integration, so I flat out disabled all automatic updates. Nothing more fun than spending 3 hours trying to figure out what the hell changed and fixing it with the 3 hours I of "free time" I had for dev time.
We're backkkk I honestly thought of the first person view indoors as well as it kinda seems awkward now, having to look over your own shoulder to see where you should go. Nice progress AIA!
Love the spell book idea as well as the minor details (shadows, sun rays, and particle effects when casting spells, etc.)! Keep it up we’re rooting for you.
As a solo dev myself who is working on an open world game, I can totally relate to these challenges. Once I was also using some weather Asset, updating which completely messed up my scene lighting buuutt your problem completely overshadowed mine 😅😅 All the best with Mana Valley, i am surely getting this on Day 1 ❤️
Really great work on the game and I love that you show some more of the struggles that are related to code architecture. Great video editing and voice-over too. Your devlogs are super entertaining. I wish you the best of luck with Mana Valley, you got this! 💙
You shouldn't use the latest and greatest "just because". In this video, switching to the newer version forced you to change the visual scripts which was a net gain... *but* what if it was something solid (like actual scripts) that broke? This is why a ton of even AAA devs didn't switch to unreal 5, their enviroments weren't made with Luminen and Nanite in mind and the transition could also break stuff.
Just wanna say (and i know its been a few months now) I've been wanting to start game dev for a few years now! Even though it ended up costing some extra work and time, I'm happy and jealous that you're getting to put your ideas into reality! Castles in the sand and all that; I'm excited to play this when its ready, and I'll be taking some motivation to put my own work and ideas into reality too!!
NIce devlog! Subbed! I started with the plugin in question (GC1) but switched to Playmaker and made quadruple the progress in my game, just a couple annoying bugs to squash and I can successfully release it. Can't believe how much came in the box with no game breaking updates :) That said Marti is an incredible guy and amazingly smart, and I will definitely go back to GC2 at some point.
As far as artistic color grading of shadows and highlights go - you could write a fairly simple shader that shades the darker/lighter parts of a texture map a different color - or even just use a LUT for which parts get which colour - then you have a bit more control over what's "shadow" and what's "highlight" - but in reality, in a game with this artstyle, it's probably going to be fine going the extra mile here!
I rather program manually than use visual scripting. Also you shouldn't update anything in unity mid development, unless you completely backup the project. Been a unity dev since Unity 2.5
I think that is part of the reason he said "i don't think anybody knows" about Unity visual scripting Unity encourages coding over visual scripting. The majority of people who actually want visual scripting over code are using Unreal. The ones using Unity never seem to need visual scripting, as they are doing their work via code
@@mattc9598 I can see that but I made another point besides hand coding. I stated backing up your project before any update. Unity also warns about this all the time. This is mostly due to things breaking bc of the updates.
@@mattc9598 "Unity encourages coding over visual scripting. The majority of people who actually want visual scripting over code are using Unreal. The ones using Unity never seem to need visual scripting, as they are doing their work via code" This is such nonsense. The majority of unity devs rely heavily on asset packs and coding done by others. Nothing about Unity encourages people to 'learn to code', which is why there is such a massive backlash about people wanting to switch engines after the whole Unity 'self-destruct' thing, but feeling they 'can't'... People also really seem to hate the concept of visual scripting, without understanding how it has become a legit way of creating games years ago. Yes, in my personal opinion it will never replace coding by hand, but that doesn't mean it's trash.
6:13 Here you could keep the color and use a shader that would only change the hue instead of multiplying the texture by color. Keeping the whole texture more lively since shadows and highlights vary in hue, this keeps the same dynamic of colors, hope this helps!!
For your hair highlight problem, couldn't you technically use another black and white texture for where the highlights are, and then multiplying that by some value to do hue adjustment? So the final color would be what you have right now with shifted hue where the highlights/shadows are? Not sure if it can be done with just material properties, but could definitely be done with a simple shader
Just hue shifting by a fixed amount from a color picker output might not have consistently pleasing results. Putting the hair color through a color map would be a similar idea, while allowing the output to be tweaked on a per color basis. Alternatively they could use the new dynamic hair color system internally while still having the available options for the player be presets. Each preset could then have associated shadow and highlight colors. That would bring back the artistic vision of the old system while keeping the streamlined dev pipeline.
Usually a game project doesn't update anything. Only if you need the security patch or you have a bug and the patch fixes that bug otherwise you don't update. If you are early in the development cycle you can update, but an update results in testing everything from scratch again.
I hope you could fix it and are going on strong with the indie deving! I have great respect for you. One thing you should consider: When you start a serious endevour into making a game (or any software) stick with one LTS (Long Term Support) version of your tools throughout the whole process. Don't update unless absolutely necessary!
I'd honestly prefer the game turning first person in buildings, even if you manage to create the most advanced indoors-third-person-view system mankind has ever seen. There's just something weirdly cozy about playing in first person when indoors, and Mana Valley feels like a game that can benefit from embracing that coziness
As soon as you said you moved the starting point way far away I knew you were about to have problems with floating point values. I didn't expect the problems to look really cool; that surprised me.
I like the middle ground for hair between the way you had it and the way it is now. You can do a grey scale map to apply your colors to and then set up a primary color and a highlight color section that each have a color wheel and allow for more player customization to make it more artistically pop compared to a single color application. It also lets people do wild things like black hair with purple highlights or blonde hair with green highlights.
It's generally not common to update your engine every time a new version comes out, games generally stick to a specific version to prevent this kind of stuff, unless the game specifically needs engine changes for specific features, other than that you're just hurting yourself, your iPhone analogy is completely wrong. Of course it's probably better if you refactor your visual scripts into C# classes, but there is no need to update the engine at all. You'll either end up with depracated packages, or a bunch of depracated libraries and functions that need to be changed, it's not worth it at all.
With the hair thing, you could add like an additional detail layer in the shader itself to slow in a overlaying texture that gives you more control over the highlights
Man this looks so dang good. I know I mentioned it before but it still gives me slight FLYFF vibes and it makes me happy to see that you're not letting that update ruin it for you! GONNA KEEP SUPPORTIN AS LONG AS YOU KEEP MAKIN IT BUDDY! This is why you're my favorite Mushroom Spaghetti Soup!
6:16 you can still have hue shift on highlights and shadows if you map the black-white spectrum to a curve in color space, effectively just specifying a several-color palette instead of a single material color. now, i'm a math nerd and not a game dev, so i don't know how to do that or what the technique is called. but that sort of thing might be what you're looking for
To me AIA is content creating game dev god. The fact that you keep working on the same game is beyond my understanding. I need to change project every few days or I would lose my mind.
If you don't mind the shader referencing two textures, the second texture can also be greyscale and added to the first. Basically image based lighting (IBL). Edit: or you could still just use one texture and store the base greyscale image in Red, and the IBL in Green. But if you want to choose between different highlights, keep it as a separate textures but set the texture type to single channel R.
At 6:18 I sighed relief as I was panicking for you at all the materials for hair. I did the same thing before and quickly found out how opposite of fun this approach is.
honestly im glad to hear you are not canceling i want ot try it out its been sitting in my wish list for a good while now... i hope it will come out soon at least a beta or something.
I think you don't neccesserily need to give up control on hair colour tinting, you can set up your material to take a few mask textures to use as a lerp which will get their own colour tint, lets you get closer to how things might have looked originally without all the extra materials, additionally you could use this to customise in even more interesting ways like changing roots, highlights etc seperately from the base tint.
Guys if you flip AIA's name upside down, turn it 360 degrees to the left, scale it up by 60%, flip upside down again, scale it down by 60%, flip it to the right twice and then try to read it, it will still after all that say AIA. Mindblowing stuff.
Your development method and approach hurts my soul, but your video was charming enough to keep me interested in your "Villian" arc and see if it pays off
I haven't updated the engine since they changed their pricing... I also use visual scripting and now i don't know wether to update or not, is it actually better?
Always backup your projects before upgrading, especially if you have a big scene and are using a ton of assets that do stuff under the hood for you! Hopefully there wasn't too much code that broke. But I'm sure you can recreate it much easier and faster than your first time.
@AIAdev 6:00 Why not just have your highlights as a separate texture layered over the top in the final shader? Or you could save a gradient of colors and apply it as a gradient map in unity.
you know, at 2:00, I was expecting you saying you ended up in the hospital from overwork considering you mentioned soaring through the skies while rude buster was blaring.
How did I miss this one?! The float issue is going to nail me at some point, I need a reset to origin thing. Thanks for the tip - I'll add that into my backlog. Love your your videos AI, A.
6:28 Im not sure about unity but I do know In many engines, you can have 1 texture map where shadows and highlights are all on their own rgb channel. Then from there you can set up a node system where you take the shadow and highlight and assign them different colors. Then you apply both onto the players custom color with different blending options. That way you can have all hair colors have more colorful shading that isnt washed out. You could also just let players pick shadow, highlight, and base color.
oh.. I don't know about orbit camera but I was talking about 11:51, transitioning(I didn't have it's name in mind so i said camera switch lol)! I'm pretty sure you can do it with State-Driven Camera in cinemachine! (in case you don't know). @@AIAdev
If you wanted to, you can make multiple masks for the dark, light and medium tones and have the player shift only the middle one, and have the dark and light tones shift of of the middle tone to reflect coldness/ warmness of the environment? or just set it to shift an x amount so that for example if middle is orange, the dark one shifts a little towards red and darkens and the light one shifts a little towards yellow and lightens?
The book and the cat from earlier would both make for fun familiars - maybe the player can have one active familiar at a time, swapping between them for different passive buffs or combat styles? If that ends up working out, you'll definitely have to add a crow/raven as well
There is an asset on the Unity store that can help with your World's origin issue. It actually moves the origin with or... or maybe it moves it ahead. I don't remember the details. But I remember it standing out from a Code Monkey game asset video.
Looks great. Hope one day I will be able to do something similar. Right now I am working on my first game and I am really happy with the progress.... but still a million miles away from something like this. Gj for solo dev.
Im so glad i found your channel. Your passion and desire to make your game is contagious. I find it funny that i heard my name cus its Mardy. I was like huh? What did I do? It was Marti but it sounds similar. Look forward to your progress and hope to be able to ask questions to you in the future about game development.
With respect to your colorizing your texture maps, have you considered using masks to obtain more control over your shading? You could colorize your base layer as you are doing now, and then apply a colorized mask layer on top of that which only affects the parts you want shaded.
I think having the book toggle-able could be good. You can have it follow you if you want, and put it away if it’s bothering you. Maybe even with an active or passive effect when it’s out.
thanks Skeffles. It certainly has. I feel like I'm fighting with things much less now. The advantage of going back and redoing things is also experience
For the textures, you can split the rgba channels into base color, highlights, shadows and detail, than you make the collor pallets and asign each color to each channel, it's actually quite simple to implement
I love your video been a big fan for a while, I’m in high school and for one of my projects is to get an interview with someone that’s doing the same job which is a game dev, if you don’t mind I would love to have a interview with you if not that’s ok. Love your videos
Hey Caden, Thanks for thinking of me. What I do is a bit bizarre as a game dev career. I'm not sure I'd be the best person to talk to in that regard. If you need help finding someone else, join my discord and LMK. I have some other YT game dev friends that also work in the field. Best, AIA
I feel your pain fam... Unity did me dirty as well recently I was writing a complex algorithm that had a low chance of success, and after 3 days of continuous debugging, I shut the software down, open it back up, and miraculously, it works without changing anything I ask around, and that's when I got introduced to lock states (you keep saving your file, but Unity low key didn't save it... So your code never ran through because of a buggy software) And don't get me started on the great system transition... I went from something that works to completely destroying my game, and I'm still trying to fix it for the better
I imagine you know far more than me about gamedev, but about the not so smooth zooming camera, have you tried using Lerp? I recently made a camera controller from a tutorial and it used Vector3.Lerp to smooth the zooming. Anyway if you have and/or know about it already, please ignore me. Otherwise I hope it helps.
Hey @AIAdev I love your game idea and wish you the best in developing it! I had an idea that I'd like to run by you as well. What if you made a picture snapping spell where you could take control of the spell book and take pictures of yourself or your environment? Just something I wanted to run by you and your followers. Again, love the game! Cheers!
hi AIA. first of all I really admire you for how much hard work you’re putting into your game and I know that game design is extremely difficult and hard work. Have you ever thought about adding a Minecraft narrator style ui reader in your game as a toggle-able option? This would make it easier for people who struggle to read certain fonts/font sizes to play the game. and also be fairly useful to new players. For example, they could toggle it on until they use to the control scheme and use it first and then toggle it off once they’re more familiar with it. I realise that this might be extremely difficult if not impossible, but I have dreamt of more games adopting this aspect to be more inclusive and you don’t know if you don’t ask. I realise they are several downsides to this as well though for example, having the text speech program stutter if someone changes options to quick as that happens a lot in Minecraft too.
When indoors for a tight area, it might make sense to just have the camera stick to a static position in that room and then just look at the player. At least for non-combat situations. Helps it feel less claustrophobic
seeing some of the customization I kinda hope that if you have a ponytail hairstyle, it doesn't disappear when wearing a hat, I have my hair in a ponytail all the time, and my hair doesn't just disappear when I put a hat on. It's a pet peeve I have with a lot of games with character customization where they just make ponytails disappear rather than having a hat version of the ponytail.
first time watching, but very cool, and good work on cleaning it up! I think the spellbook is very cool, and it leveling up is interesting, I hope you figure it out 👍
Fun fact: the floating point error problem is one that plagues many open world space exploration games. One way they solve this is by not moving the player at all. They do this by keeping the player at (0,0,0) and moving the world around the player.
I have no game dev experience but it kinda sounds like you want the book to function somewhat like Grimoire Weiss from Nier. He’s basically a sentient spell book who floats by the player character while being used as a weapon who uses its magic to supplement the main players combat. This role is also taken up by the pods in nier automata. Look up some gameplay if you’d like to see how they function. I hope it helps!
To fix floating error world I track when player goes 5km away from center - then every root object in scene is moved 5km opposite direction back to center, making player and camera in world center again Works smoothly, as long as you keep in mind how it will break your other systems. Makes stuff much more challenging. Yet for player it looks seamless Any rigidobody and camera should be max 10km from center. That would prevent game from physics or rendering bugs
My brother I understand your iphone analogy, but I regret to say that its never the case in the creative field. I myself make music on an outdated version of ableton but would never even humor the thought of updating because of the fact that my UI is customized to the point where my workflow is efficient and I know where everything I need is. Like others have said in the comments updating while actively working on a project is a death sentence in most cases. Im thankful you had the resilience to work through the update sabotaging you! So excited to see how Mana Valley turns out!❤
idk about other engines, but with Unreal it's a common thing to use Visual script for high level design and prototyping, but most important and heavy calculation stuff with classic code as it performs better.
Generally studios avoid updating the engine to avoid issues like this. You only update if you know there's something in it that you'll use, not just because it's the latest and greatest; so I think the iPhone metaphor is inappropriate. That aside, the game is looking good and I'm glad you're learning a lot through making it.
Great video as always AIA! Rolling your own save system isn't too complicated and can have finer control over it, have you tried that at all? Also, something to note for you/future devs, if you want to ship on consoles, you can't use playerprefs to save stuff as it they don't work on consoles :)
First things first, you can't just throw Jet Force Gemni out as a game you played as a kid and I don't have to comment. Secondly, yes... levling the book and having a companion is always a fun mechanic to have in games, DO IT YOU WONT!
Just commenting to share my own experience with floating point errors: While creating a tile-based overworld for a project, I felt the need to make it somewhat automated (all I'd have to do was place tiles in the editor and every tile would automatically know its neighbours and where movement was possible). Somewhere along implementing this, I felt the need to attribute new names to my game objects... To include their X, Z positions. I would then use the game object names to help nodes know if they had neighbours or not but I would get some very interesting results, such as a game object pointing to the same neighbour twice, when it intended to point to two different ones. This was due to a slight 0.000000001 or so difference in value (which is normal for floating point values to have when being stored in memory) which would cause incorrect rounding. I had to offset the entire overworld by 0.5 to avoid affecting the whole part of the number, while also running two rounding operations to make sure values were being saved/read appropriately throughout my different logical implementations. It's just one of those things where it *seems* like it should work without any issues, logically, but then computer architecture decides to slap you across the face.
About highlight's and lowlight's shifting hue. Wouldn't it be possible to sample the lightness of the texture to know how much to add or subtract from the base hue? Eh that said you're using the material to change the color rather than script so that'd be probably be fairly difficult to implement.
A lot of people have assumed I’m not using version control. Of course I am!
Before I make any changes, I print out screenshots of my existing scripts. There’s a huge binder on my desk that holds all of them. They’re all organized by file and date so they’re easy to find.
5000IQ
This is the best! You just made my day.
LoL 🤣 this is awesome
It's better than the shit-show at my current employer. You get a pass!
🤣
Fun fact: the floating point error you experienced is the exact reason that there are elevators in Metroid Prime. The devs ran into a bunch of glitchy motion once the player got more than a few thousand meters from the point of origin, so the elevators were a clever way for them to be able to reset the 0,0,0 point without the player being aware of it.
That’s really cool
that's a trick used to change scenes. It's called the bend in the tunnel method.
It's also a problem the devs of Outer Wilds encountered
@@onlysmiles4949Outer Wilds devs solved this by making the player the origin, and the world moves around the player, rather than the player moving around the world.
As someone who is playing through Metroid prime remastered (got it for Christmas) elevators are interesting from a game design perspective because they work well as very small breaks in the action and they also give anticipation of what might come after you exit the elevator
For the record: The industry standard is to pick an update version and work on the same version until the project is finished, even if new updates are released. You should only update if there are bugs that are fixed in later versions that you need dealt with, or in the rare case that there's a piece of functionality you really want in a later version.
If working on a team, I 100% agree. If it's a personal project I'd say it's a good idea to upgrade with intention. If you're still deep in development, those updates could help or add new features. If you're months away from release, then yes stay on that same version as you polish the finished product.
Not the game dev industry, but I remember when speaking to a pro in the music industry, and we talked about the latest version of one of the industry standards for music and audio creation/design. The update was not free, so I asked him if he thought it was worth it, assuming he had upgarded since he was a pro.
He told me that he was still on version 3, which was released when I was six years old. The current version? Version 13. 10 whole massive updates over 20 years, and he just didn't get them because "I am working just fine with what I have".
This is 100% bullshit though. The industry standard is to adapt whatever feature set is based on a future target system, aiming it to be the standard by the time the game releases. The industry standard is _not_ to use outdated systems.
@@mattc9598 Then he's definitely not a music industry pro, because that industry has skyrocketed in just the last two or so years ago in terms of DAWs and functionalities. Yes maybe he doesn't need access to all those modern plug-ins, but the reality is that some of the bread and butter features have been improved an insane amount. Maybe he only records indie bands that don't require the latest and greatest audio fidelity, but most recording studios don't have the luxury of sticking with 6 year old software. Heck, don't be surprised if there's zero technical support for software that old. On top of that, most software has transitioned to subscription fee models, meaning you will get the latest versions anyway.
@@PHeMoX and yet hollywood/record labels keep coming to him for audio work. Maybe he's updated since I spoke with him, but he definitely didn't need to keep updating in order to win any awards.
I'm studying Video game design in college, the one thing they say is you choose a build for your engine and you don't update it, you stick with it. incompatibilities between versions are mostly
inevitable
A good example of why would be Legendary Tales. It's a VR dungeon crawler that decided they wanted to move to UE5... and then realized after updating that a lot of their systems don't work anymore and had to downgrade again, SEVERELY slowing down development and causing many people unaware of the situation to assume the game had been abandoned.
agree with this, usually update not worth it
@@StygianIkazuchiI can't even imagine someone working in a game studios that has the worst boss they can't go against that is advocating for this kind of update...
That sounds really cool! Is that a full four year degree? I already did my time in college, but learning game development sounds super interesting to me.
unles you still new into the game i mean a few mouths in and i could see updating it
Making games is really hard. Shout out to all the indie devs going through development hell!
I spent almost a year making game using libGDX. My thoughts are:
Making game is not hard. Making Fun and Polished game is.
LibGDX actually does some stuff better than Unity. Like... more freedom and stuff...
And finally... Marketing is veery important. Failing at this one makes your game not exist.
Shout out to all the haters who complain and say "all they had to do was make the game fun"
@damsen978 you are a bit incorrect. making good game is indeed hard task.
help
Thanks man, appreciate it a lot :)
Petition to call the spell book companion: Scribbly!
Looking forward to all your inspiring videos AIA! :D
thanks floky ;)
Signed
Signed
Signed! ♥
we should be able to name it ourselves if its a pet
My guy, updating software for development is like loading a shotgun shell into a revolver. Stuff's gonna explode. Never update mid project, this ideology that you need the latest version is what's killing your game, not vis scripting
yeah.... vscode kept updating C# and .net versions which would end up breaking the unity integration, so I flat out disabled all automatic updates. Nothing more fun than spending 3 hours trying to figure out what the hell changed and fixing it with the 3 hours I of "free time" I had for dev time.
And no version control.... Genius
I LOVE MANA VALLEY!
how'd you comment 9 hours befoe the video was even released?
@@RedHeadphones he is a memeber
We're backkkk
I honestly thought of the first person view indoors as well as it kinda seems awkward now, having to look over your own shoulder to see where you should go. Nice progress AIA!
if Yordi says it, it will be.
@@AIAdev Careful IAI
Awesome progress. I feel like the cutscenes are gonna help for the story a lot !
Love the spell book idea as well as the minor details (shadows, sun rays, and particle effects when casting spells, etc.)! Keep it up we’re rooting for you.
As a solo dev myself who is working on an open world game, I can totally relate to these challenges. Once I was also using some weather Asset, updating which completely messed up my scene lighting buuutt your problem completely overshadowed mine 😅😅 All the best with Mana Valley, i am surely getting this on Day 1 ❤️
every time AIA mentions an old game I remember he's in his 80's
I keep getting older faster than everyone else
Really great work on the game and I love that you show some more of the struggles that are related to code architecture. Great video editing and voice-over too. Your devlogs are super entertaining. I wish you the best of luck with Mana Valley, you got this! 💙
You shouldn't use the latest and greatest "just because". In this video, switching to the newer version forced you to change the visual scripts which was a net gain... *but* what if it was something solid (like actual scripts) that broke? This is why a ton of even AAA devs didn't switch to unreal 5, their enviroments weren't made with Luminen and Nanite in mind and the transition could also break stuff.
Just wanna say (and i know its been a few months now) I've been wanting to start game dev for a few years now! Even though it ended up costing some extra work and time, I'm happy and jealous that you're getting to put your ideas into reality! Castles in the sand and all that; I'm excited to play this when its ready, and I'll be taking some motivation to put my own work and ideas into reality too!!
Your landscapes look better than every single game Gamefreak makes
NIce devlog! Subbed! I started with the plugin in question (GC1) but switched to Playmaker and made quadruple the progress in my game, just a couple annoying bugs to squash and I can successfully release it. Can't believe how much came in the box with no game breaking updates :) That said Marti is an incredible guy and amazingly smart, and I will definitely go back to GC2 at some point.
As far as artistic color grading of shadows and highlights go - you could write a fairly simple shader that shades the darker/lighter parts of a texture map a different color - or even just use a LUT for which parts get which colour - then you have a bit more control over what's "shadow" and what's "highlight" - but in reality, in a game with this artstyle, it's probably going to be fine going the extra mile here!
I rather program manually than use visual scripting. Also you shouldn't update anything in unity mid development, unless you completely backup the project. Been a unity dev since Unity 2.5
I’m with you
I think that is part of the reason he said "i don't think anybody knows" about Unity visual scripting
Unity encourages coding over visual scripting. The majority of people who actually want visual scripting over code are using Unreal. The ones using Unity never seem to need visual scripting, as they are doing their work via code
@@mattc9598 I can see that but I made another point besides hand coding. I stated backing up your project before any update. Unity also warns about this all the time. This is mostly due to things breaking bc of the updates.
@@AnthonyMaddenVRStudio Yes, at the very least devs should save a copy of their project every single time they close the program.
@@mattc9598 "Unity encourages coding over visual scripting. The majority of people who actually want visual scripting over code are using Unreal. The ones using Unity never seem to need visual scripting, as they are doing their work via code"
This is such nonsense. The majority of unity devs rely heavily on asset packs and coding done by others. Nothing about Unity encourages people to 'learn to code', which is why there is such a massive backlash about people wanting to switch engines after the whole Unity 'self-destruct' thing, but feeling they 'can't'... People also really seem to hate the concept of visual scripting, without understanding how it has become a legit way of creating games years ago. Yes, in my personal opinion it will never replace coding by hand, but that doesn't mean it's trash.
Awesome Progress, cant wait to play it
6:13 Here you could keep the color and use a shader that would only change the hue instead of multiplying the texture by color.
Keeping the whole texture more lively since shadows and highlights vary in hue, this keeps the same dynamic of colors, hope this helps!!
For your hair highlight problem, couldn't you technically use another black and white texture for where the highlights are, and then multiplying that by some value to do hue adjustment? So the final color would be what you have right now with shifted hue where the highlights/shadows are? Not sure if it can be done with just material properties, but could definitely be done with a simple shader
Just hue shifting by a fixed amount from a color picker output might not have consistently pleasing results. Putting the hair color through a color map would be a similar idea, while allowing the output to be tweaked on a per color basis.
Alternatively they could use the new dynamic hair color system internally while still having the available options for the player be presets. Each preset could then have associated shadow and highlight colors. That would bring back the artistic vision of the old system while keeping the streamlined dev pipeline.
Usually a game project doesn't update anything.
Only if you need the security patch or you have a bug and the patch fixes that bug otherwise you don't update.
If you are early in the development cycle you can update, but an update results in testing everything from scratch again.
I hope you could fix it and are going on strong with the indie deving! I have great respect for you.
One thing you should consider: When you start a serious endevour into making a game (or any software) stick with one LTS (Long Term Support) version of your tools throughout the whole process. Don't update unless absolutely necessary!
It’s been so long since a good UA-cam devlog has come out. Glad to see it 😍
I'd honestly prefer the game turning first person in buildings, even if you manage to create the most advanced indoors-third-person-view system mankind has ever seen. There's just something weirdly cozy about playing in first person when indoors, and Mana Valley feels like a game that can benefit from embracing that coziness
Agreed
Your a dev right? Your the good one for the 100 devs video right? Hope we can get those hand back to their former glory.
@dualwielded @aiadev you guys should definitely collab. Two of my faves from the game dev challenges.
1:59 that Nerd hitted so hard
anyway u gained a new sub today, also i think that u are realy crazy to still use unity after what happened
As soon as you said you moved the starting point way far away I knew you were about to have problems with floating point values.
I didn't expect the problems to look really cool; that surprised me.
I like the middle ground for hair between the way you had it and the way it is now. You can do a grey scale map to apply your colors to and then set up a primary color and a highlight color section that each have a color wheel and allow for more player customization to make it more artistically pop compared to a single color application. It also lets people do wild things like black hair with purple highlights or blonde hair with green highlights.
It's generally not common to update your engine every time a new version comes out, games generally stick to a specific version to prevent this kind of stuff, unless the game specifically needs engine changes for specific features, other than that you're just hurting yourself, your iPhone analogy is completely wrong. Of course it's probably better if you refactor your visual scripts into C# classes, but there is no need to update the engine at all. You'll either end up with depracated packages, or a bunch of depracated libraries and functions that need to be changed, it's not worth it at all.
2:57 this is why we use subgraphs you can share between objects. Once you get a certain action loop finished you can copy paste that to other objects.
I respect the "killing my game" instead of "killing your game", cool vid
With the hair thing, you could add like an additional detail layer in the shader itself to slow in a overlaying texture that gives you more control over the highlights
Man this looks so dang good. I know I mentioned it before but it still gives me slight FLYFF vibes and it makes me happy to see that you're not letting that update ruin it for you! GONNA KEEP SUPPORTIN AS LONG AS YOU KEEP MAKIN IT BUDDY! This is why you're my favorite Mushroom Spaghetti Soup!
6:16 you can still have hue shift on highlights and shadows if you map the black-white spectrum to a curve in color space, effectively just specifying a several-color palette instead of a single material color. now, i'm a math nerd and not a game dev, so i don't know how to do that or what the technique is called. but that sort of thing might be what you're looking for
To me AIA is content creating game dev god. The fact that you keep working on the same game is beyond my understanding. I need to change project every few days or I would lose my mind.
If you don't mind the shader referencing two textures, the second texture can also be greyscale and added to the first. Basically image based lighting (IBL).
Edit: or you could still just use one texture and store the base greyscale image in Red, and the IBL in Green. But if you want to choose between different highlights, keep it as a separate textures but set the texture type to single channel R.
At 6:18 I sighed relief as I was panicking for you at all the materials for hair. I did the same thing before and quickly found out how opposite of fun this approach is.
honestly im glad to hear you are not canceling i want ot try it out its been sitting in my wish list for a good while now... i hope it will come out soon at least a beta or something.
I think you don't neccesserily need to give up control on hair colour tinting, you can set up your material to take a few mask textures to use as a lerp which will get their own colour tint, lets you get closer to how things might have looked originally without all the extra materials, additionally you could use this to customise in even more interesting ways like changing roots, highlights etc seperately from the base tint.
Guys if you flip AIA's name upside down, turn it 360 degrees to the left, scale it up by 60%, flip upside down again, scale it down by 60%, flip it to the right twice and then try to read it, it will still after all that say AIA. Mindblowing stuff.
Your development method and approach hurts my soul, but your video was charming enough to keep me interested in your "Villian" arc and see if it pays off
Sorry for the breaking changes! 💔 We pinky promise we won’t make such drastic changes again. We’re incredibly glad the project goes on! Best of luck!
Your channel is inspirational to me! Your videos feel so professional, keep it up!
I haven't updated the engine since they changed their pricing... I also use visual scripting and now i don't know wether to update or not, is it actually better?
He didn't update the engine, he updated a unity asset
Always backup your projects before upgrading, especially if you have a big scene and are using a ton of assets that do stuff under the hood for you!
Hopefully there wasn't too much code that broke. But I'm sure you can recreate it much easier and faster than your first time.
Awesome devlog! One of the most entertaining and easy to understand dev logs I’ve seen! Subbed 👍
@AIAdev 6:00 Why not just have your highlights as a separate texture layered over the top in the final shader?
Or you could save a gradient of colors and apply it as a gradient map in unity.
Yay another aia video :D. Glad I got to see it before my deployment :)
Be safe buddy
you know, at 2:00, I was expecting you saying you ended up in the hospital from overwork considering you mentioned soaring through the skies while rude buster was blaring.
How did I miss this one?! The float issue is going to nail me at some point, I need a reset to origin thing. Thanks for the tip - I'll add that into my backlog. Love your your videos AI, A.
6:28 Im not sure about unity but I do know In many engines, you can have 1 texture map where shadows and highlights are all on their own rgb channel. Then from there you can set up a node system where you take the shadow and highlight and assign them different colors. Then you apply both onto the players custom color with different blending options. That way you can have all hair colors have more colorful shading that isnt washed out. You could also just let players pick shadow, highlight, and base color.
Fine Works! also if you don't know, cinemachine has collision detection and smooth camera switch itself!
The 3rd person had collision detection but not the orbit camera 🥲
oh.. I don't know about orbit camera but I was talking about 11:51, transitioning(I didn't have it's name in mind so i said camera switch lol)! I'm pretty sure you can do it with State-Driven Camera in cinemachine! (in case you don't know).
@@AIAdev
First time, working on something myself and your overview is insightful thanks so much!
If you wanted to, you can make multiple masks for the dark, light and medium tones and have the player shift only the middle one, and have the dark and light tones shift of of the middle tone to reflect coldness/ warmness of the environment? or just set it to shift an x amount so that for example if middle is orange, the dark one shifts a little towards red and darkens and the light one shifts a little towards yellow and lightens?
The book and the cat from earlier would both make for fun familiars - maybe the player can have one active familiar at a time, swapping between them for different passive buffs or combat styles? If that ends up working out, you'll definitely have to add a crow/raven as well
There is an asset on the Unity store that can help with your World's origin issue. It actually moves the origin with or... or maybe it moves it ahead. I don't remember the details. But I remember it standing out from a Code Monkey game asset video.
Him: casually changes to fix a game by looking through the universe of code
Me: *error*
Looks great. Hope one day I will be able to do something similar. Right now I am working on my first game and I am really happy with the progress.... but still a million miles away from something like this. Gj for solo dev.
Im so glad i found your channel. Your passion and desire to make your game is contagious.
I find it funny that i heard my name cus its Mardy. I was like huh? What did I do? It was Marti but it sounds similar.
Look forward to your progress and hope to be able to ask questions to you in the future about game development.
The song at 0:36 is "Some Assembly Required" from the Portal 2 soundtrack for anyone wondering
With respect to your colorizing your texture maps, have you considered using masks to obtain more control over your shading? You could colorize your base layer as you are doing now, and then apply a colorized mask layer on top of that which only affects the parts you want shaded.
I think having the book toggle-able could be good. You can have it follow you if you want, and put it away if it’s bothering you. Maybe even with an active or passive effect when it’s out.
These look like really solid changes, and I hope it makes the game better for you to develop.
thanks Skeffles. It certainly has. I feel like I'm fighting with things much less now. The advantage of going back and redoing things is also experience
Awesome devlog, thanks for sharing your journey 🙂
For the textures, you can split the rgba channels into base color, highlights, shadows and detail, than you make the collor pallets and asign each color to each channel, it's actually quite simple to implement
Babe, wake up the new Mana Valley devlog just dro....
Oh boy that's depressing haha. But great work getting everything back on track at least.
I love your video been a big fan for a while, I’m in high school and for one of my projects is to get an interview with someone that’s doing the same job which is a game dev, if you don’t mind I would love to have a interview with you if not that’s ok. Love your videos
Hey Caden,
Thanks for thinking of me. What I do is a bit bizarre as a game dev career. I'm not sure I'd be the best person to talk to in that regard.
If you need help finding someone else, join my discord and LMK. I have some other YT game dev friends that also work in the field.
Best,
AIA
@@AIAdevOk, thank you for replying. Love you video keep up the good work ❤.
I feel your pain fam... Unity did me dirty as well recently
I was writing a complex algorithm that had a low chance of success, and after 3 days of continuous debugging, I shut the software down, open it back up, and miraculously, it works without changing anything
I ask around, and that's when I got introduced to lock states (you keep saving your file, but Unity low key didn't save it... So your code never ran through because of a buggy software)
And don't get me started on the great system transition... I went from something that works to completely destroying my game, and I'm still trying to fix it for the better
I imagine you know far more than me about gamedev, but about the not so smooth zooming camera, have you tried using Lerp?
I recently made a camera controller from a tutorial and it used Vector3.Lerp to smooth the zooming.
Anyway if you have and/or know about it already, please ignore me. Otherwise I hope it helps.
Hey @AIAdev I love your game idea and wish you the best in developing it! I had an idea that I'd like to run by you as well. What if you made a picture snapping spell where you could take control of the spell book and take pictures of yourself or your environment? Just something I wanted to run by you and your followers. Again, love the game! Cheers!
hi AIA. first of all I really admire you for how much hard work you’re putting into your game and I know that game design is extremely difficult and hard work. Have you ever thought about adding a Minecraft narrator style ui reader in your game as a toggle-able option? This would make it easier for people who struggle to read certain fonts/font sizes to play the game. and also be fairly useful to new players. For example, they could toggle it on until they use to the control scheme and use it first and then toggle it off once they’re more familiar with it. I realise that this might be extremely difficult if not impossible, but I have dreamt of more games adopting this aspect to be more inclusive and you don’t know if you don’t ask. I realise they are several downsides to this as well though for example, having the text speech program stutter if someone changes options to quick as that happens a lot in Minecraft too.
The Hair colors solution is pretty cool, thank you
Just stumbled on your channel while trying to fall asleep and now I can't im hooked this only my 2nd vid in
When indoors for a tight area, it might make sense to just have the camera stick to a static position in that room and then just look at the player. At least for non-combat situations. Helps it feel less claustrophobic
seeing some of the customization I kinda hope that if you have a ponytail hairstyle, it doesn't disappear when wearing a hat, I have my hair in a ponytail all the time, and my hair doesn't just disappear when I put a hat on. It's a pet peeve I have with a lot of games with character customization where they just make ponytails disappear rather than having a hat version of the ponytail.
Fun idea: Make a weird purple realm with very dangerous monsters and beasts. But In this realm the books shakes like when it was glitching.
why would you update while working on a project it was literally just 1 version away not even that old
first time watching, but very cool, and good work on cleaning it up! I think the spellbook is very cool, and it leveling up is interesting, I hope you figure it out 👍
Fun fact: the floating point error problem is one that plagues many open world space exploration games. One way they solve this is by not moving the player at all. They do this by keeping the player at (0,0,0) and moving the world around the player.
oh man it s like a slot machine with every new update i start sweating... will it be the end? great develog, love ur work :)
Hell yeah, new AIA video just dropped
I have no game dev experience but it kinda sounds like you want the book to function somewhat like Grimoire Weiss from Nier. He’s basically a sentient spell book who floats by the player character while being used as a weapon who uses its magic to supplement the main players combat. This role is also taken up by the pods in nier automata. Look up some gameplay if you’d like to see how they function. I hope it helps!
Good Job, please keep it up. Dont give up I want to play this game.
To fix floating error world I track when player goes 5km away from center - then every root object in scene is moved 5km opposite direction back to center, making player and camera in world center again
Works smoothly, as long as you keep in mind how it will break your other systems. Makes stuff much more challenging. Yet for player it looks seamless
Any rigidobody and camera should be max 10km from center. That would prevent game from physics or rendering bugs
Do u apply overrides on prefabs before transfering them to other scenes? Without applying it may cause some problems :) Great video!
My brother I understand your iphone analogy, but I regret to say that its never the case in the creative field. I myself make music on an outdated version of ableton but would never even humor the thought of updating because of the fact that my UI is customized to the point where my workflow is efficient and I know where everything I need is. Like others have said in the comments updating while actively working on a project is a death sentence in most cases. Im thankful you had the resilience to work through the update sabotaging you! So excited to see how Mana Valley turns out!❤
I had to replace ES3 because it would randomly not spawn an item in the players inventory that they should have...
idk about other engines, but with Unreal it's a common thing to use Visual script for high level design and prototyping, but most important and heavy calculation stuff with classic code as it performs better.
Amazing video, keep up the progress!
Generally studios avoid updating the engine to avoid issues like this. You only update if you know there's something in it that you'll use, not just because it's the latest and greatest; so I think the iPhone metaphor is inappropriate. That aside, the game is looking good and I'm glad you're learning a lot through making it.
Great video as always AIA!
Rolling your own save system isn't too complicated and can have finer control over it, have you tried that at all?
Also, something to note for you/future devs, if you want to ship on consoles, you can't use playerprefs to save stuff as it they don't work on consoles :)
Congrats for not giving up!
First things first, you can't just throw Jet Force Gemni out as a game you played as a kid and I don't have to comment. Secondly, yes... levling the book and having a companion is always a fun mechanic to have in games, DO IT YOU WONT!
Can we talk about the working reflection on that mirror. I'm so used to games just not doing that, even big ones.
1:35 your words GIVE ME POWER, I DON'T WANT TO BECOME A STATISTIC EITHER
Just commenting to share my own experience with floating point errors:
While creating a tile-based overworld for a project, I felt the need to make it somewhat automated (all I'd have to do was place tiles in the editor and every tile would automatically know its neighbours and where movement was possible). Somewhere along implementing this, I felt the need to attribute new names to my game objects... To include their X, Z positions. I would then use the game object names to help nodes know if they had neighbours or not but I would get some very interesting results, such as a game object pointing to the same neighbour twice, when it intended to point to two different ones. This was due to a slight 0.000000001 or so difference in value (which is normal for floating point values to have when being stored in memory) which would cause incorrect rounding. I had to offset the entire overworld by 0.5 to avoid affecting the whole part of the number, while also running two rounding operations to make sure values were being saved/read appropriately throughout my different logical implementations. It's just one of those things where it *seems* like it should work without any issues, logically, but then computer architecture decides to slap you across the face.
About highlight's and lowlight's shifting hue. Wouldn't it be possible to sample the lightness of the texture to know how much to add or subtract from the base hue? Eh that said you're using the material to change the color rather than script so that'd be probably be fairly difficult to implement.
4:20 Well I am already subscribed so I'll just press the like button for the algorithm