2 Things: 1. To fix the array problem, you can either remove the spawn point that has been selected from the array, or, you can copy the array of all the spawn points and do the same i said before, remove a spawn point from the copied array, so you can always have one base array that knows about all spawn points and the other array which is just a copy, hence it won‘t matter too much if it is altered. You could also store the selected spawn points and loop over them. If a spawn point is already selected you simply generate a new random number to pick a new spawn point. However that could theoretically result in an endless loop since you could theoretically select the same spawn point every time. So my advice is Copy the array and alternate that array after a spawn point was selected. 2. And for the movement, usually you multiply the movement by the deltaseconds of a tick. So on slower devices an intervall between ticks willbe larger on faster devices it will be smaller.
The progress you made since you began working on BALLZ is pretty impressive. I've been meaning to get more into the Unreal Engine myself, and these videos are inspiring.
Just binged the last 2 videos, love this channel already. I've just finished my 3rd year of university as a game dev programmer. Amazing work for how long you've doing this.
There is a snap function in unreal that you can use to make things snap as you move them around. Set it to snap to grid and set the grid size as you desire. This means you could very quickly make a few levels with all the bricks being aligned. Also for the ball speed you need to multiply your ball's movement by deltatime/11. 11 ms is 60 fps so 11/11 will be 1, 30 fps is 22 ms so it will become 22/11 or 2 making the ball twice as fast at 30 fps. Also don't worry about code smells, everyone makes smelly code when they start out, it's how you learn! Edit: also emissive looks better at night! So grab your directional light and turn it upside down to turn the skybox into a night-time sky to make it look extra cool.
This is funny because I am doing the same thing in Godot. Instead of manually placing a bunch of blocks, I too created a spawner. However, the purpose the spawner was so I could animate the creation of the blocks. So when you load the game in, you see the blocks pop in from left to right, top to bottom over a short amount of time. I just had to do the math. I could also create an array of 1's and 0's that tell where I wanted and not wanted blocks. So that allows for patterns. So if you wanted to create a grid system, you would have to had imagined it mathematically to get it to work.
This was way Impressive than I anticipated. That sound effect making part was hilarious. 🤣 Cannot wait for the next video. Also you should use jstfxr as your outro for every video.
Also, in case you wondered, that weird fading light reflection visible when destroying/changing an emissive mesh comes from the real time global illumination effect you used.
If you already have an array of spawnable locations, then just delete the spawnable locations from the array as they're used up. That should prevent them from overlapping.
If you want to go into more depth in programming and game development concepts I can only recommend CS50's Introduction to Computer Science and Introduction to Game Development. Those are free online courses by Harvard and they REALLY helped me get started. :)
I know this video is half a year old and you probably already figured it out, but You can remove spawners from the list, and when it randomizes a spawner, your last spawner will not be available in the list anymore, so this way it can never spawn in the same location and you do not have to check multiple times if something had already been spawned there
That's the objective, teaching stuff as I learn it in the most entertaining way possible! Glad you enjoy my content, makes my day!! I wish to be able to live off my youtube and game dev one day, but I'm not a fan of most classic sponsors like VPNs and RAID SHADOW LEGENDS! I'd rather be sponsored by things I use like Unreal Engine, Blender, Skillshare or udemy... so we'll see I guess :P
The proper solution for the framerate issue would have been multiplying each of the movements done every frame by DeltaTime (meaning the time that passed since the last frame). Unreal should have that value ready to go for you to use :)
Well.. Can't blame him, was kinda suprised hearing you didn't know arrays. Not against you but knowing that I just don't want to see your code ever, for my own sanity now. It makes it all the more surprising you managed to make such games tho. I know quite a few people who's coding capacities are beyond my knowledge but when it comes to making games.. Let's just say they couldn't find good ideas and implement them well even if their lives depended on it. So congrats for that!
It was mostly for the joke, adriel did help me quite a bit, I just thought it was funny that calling a code smelly is a thing hahaha Also, I'm fairly new with coding, so I knew what an array was but never got around to actually using them in a effective way... And I do try my best to keep my code as clean as possible xD
If your cube spawned at a spawner did you make it a child of the spawner? If you did that then you can check for a child under your spwaner. That way you can check if a cube spawned on that spawner. I just started to code so correct me if im wrong🙃
This definitely could be a possibility, but I didn't make the spawner a child of the cube... I'm not really good with that child/ parent thing, it's on my list of things I want to improve
For now I try to teach people the principles as I learn them, I'm not knowleadgable enough to make proper tutorials... But as soon as I feel more confident and know what I'm talking about I'll gladly do some tutorials of how I do stuff! :D
Check out this video here to see how it all started! ;)
th-cam.com/video/thyGIGXK0IE/w-d-xo.html
2 Things:
1. To fix the array problem, you can either remove the spawn point that has been selected from the array, or, you can copy the array of all the spawn points and do the same i said before, remove a spawn point from the copied array, so you can always have one base array that knows about all spawn points and the other array which is just a copy, hence it won‘t matter too much if it is altered. You could also store the selected spawn points and loop over them. If a spawn point is already selected you simply generate a new random number to pick a new spawn point. However that could theoretically result in an endless loop since you could theoretically select the same spawn point every time. So my advice is Copy the array and alternate that array after a spawn point was selected.
2. And for the movement, usually you multiply the movement by the deltaseconds of a tick. So on slower devices an intervall between ticks willbe larger on faster devices it will be smaller.
The progress you made since you began working on BALLZ is pretty impressive. I've been meaning to get more into the Unreal Engine myself, and these videos are inspiring.
Glad to hear it! 😁
Just binged the last 2 videos, love this channel already. I've just finished my 3rd year of university as a game dev programmer. Amazing work for how long you've doing this.
Very glad you enjoy my stuff, honestly, every comment like this makes my day and is a huge motivation boost! Thanks a bunch!
There is a snap function in unreal that you can use to make things snap as you move them around. Set it to snap to grid and set the grid size as you desire.
This means you could very quickly make a few levels with all the bricks being aligned.
Also for the ball speed you need to multiply your ball's movement by deltatime/11. 11 ms is 60 fps so 11/11 will be 1, 30 fps is 22 ms so it will become 22/11 or 2 making the ball twice as fast at 30 fps.
Also don't worry about code smells, everyone makes smelly code when they start out, it's how you learn!
Edit: also emissive looks better at night! So grab your directional light and turn it upside down to turn the skybox into a night-time sky to make it look extra cool.
You just saved me so much time! Thanks man! 😁👍
@@Floky Anytime! Looking forwards to seeing what you make next!
This is funny because I am doing the same thing in Godot. Instead of manually placing a bunch of blocks, I too created a spawner. However, the purpose the spawner was so I could animate the creation of the blocks. So when you load the game in, you see the blocks pop in from left to right, top to bottom over a short amount of time. I just had to do the math. I could also create an array of 1's and 0's that tell where I wanted and not wanted blocks. So that allows for patterns. So if you wanted to create a grid system, you would have to had imagined it mathematically to get it to work.
👍
This was way Impressive than I anticipated. That sound effect making part was hilarious. 🤣 Cannot wait for the next video. Also you should use jstfxr as your outro for every video.
Hahaha, thanks buddy!
Also, in case you wondered, that weird fading light reflection visible when destroying/changing an emissive mesh comes from the real time global illumination effect you used.
That was one of the things I wanted to look into, again, thank you very much!
If you already have an array of spawnable locations, then just delete the spawnable locations from the array as they're used up. That should prevent them from overlapping.
Thank you very much! 😁
your videos are so entertaining, I'm looking forward to your next one
Coming out this Saturday 😉
If you want to go into more depth in programming and game development concepts I can only recommend CS50's Introduction to Computer Science and Introduction to Game Development. Those are free online courses by Harvard and they REALLY helped me get started. :)
Will check it out! Thanks! 😁👍
I know this video is half a year old and you probably already figured it out, but You can remove spawners from the list, and when it randomizes a spawner, your last spawner will not be available in the list anymore, so this way it can never spawn in the same location and you do not have to check multiple times if something had already been spawned there
Hello floky, how you made the right collision for player platform? My "Box" collision is not working, which i created in character blueprint class
Oh man I love this one
Glad you enjoyed it! :D
I think my next video will be a banger too, coming out on saturday ;)
You know i learn alot of stuff about game dev from you 😂 man i love your videos , hard work = a sponser someday🙂🌚
That's the objective, teaching stuff as I learn it in the most entertaining way possible! Glad you enjoy my content, makes my day!!
I wish to be able to live off my youtube and game dev one day, but I'm not a fan of most classic sponsors like VPNs and RAID SHADOW LEGENDS!
I'd rather be sponsored by things I use like Unreal Engine, Blender, Skillshare or udemy... so we'll see I guess :P
@@Floky your future is brighter than my car's head lights, all love bro🤍
The proper solution for the framerate issue would have been multiplying each of the movements done every frame by DeltaTime (meaning the time that passed since the last frame). Unreal should have that value ready to go for you to use :)
Ohhh that makes sense, thanks a lot man!!
I've never heard of jsfxr, thanks for putting it on my radar!
The solution to your framerate problem is just to multiply Ball's speed with Delta seconds
Yeah... figured that one out later... pretty embarassing now that I look back at it hahaha
Framerate dependend movement ... sounds like it would smell
Multiply movement code by world delta seconds?
Yep, figured that one out too late 😂
Well.. Can't blame him, was kinda suprised hearing you didn't know arrays. Not against you but knowing that I just don't want to see your code ever, for my own sanity now. It makes it all the more surprising you managed to make such games tho. I know quite a few people who's coding capacities are beyond my knowledge but when it comes to making games.. Let's just say they couldn't find good ideas and implement them well even if their lives depended on it.
So congrats for that!
It was mostly for the joke, adriel did help me quite a bit, I just thought it was funny that calling a code smelly is a thing hahaha
Also, I'm fairly new with coding, so I knew what an array was but never got around to actually using them in a effective way... And I do try my best to keep my code as clean as possible xD
If your cube spawned at a spawner did you make it a child of the spawner? If you did that then you can check for a child under your spwaner. That way you can check if a cube spawned on that spawner. I just started to code so correct me if im wrong🙃
This definitely could be a possibility, but I didn't make the spawner a child of the cube... I'm not really good with that child/ parent thing, it's on my list of things I want to improve
@@Floky its a really good thing to learn. I learned it myself a week ago with that i made spawners with a round system.
@@mike_62520 👍😁
Bro it would be helpful if u could share some tutorials or knowledge how u did certain things, that way others can learn too ^^
cool videos!
For now I try to teach people the principles as I learn them, I'm not knowleadgable enough to make proper tutorials... But as soon as I feel more confident and know what I'm talking about I'll gladly do some tutorials of how I do stuff! :D
@@Floky fair enough ^^
@@graforce what I can do thought is release my private Playlist I made with all the useful tutorials I found online 👍
@@Floky Yes, that would be helpful as well. Thank you for that.
Here you go, hope this helps you out :D
th-cam.com/play/PL7NY_f081ofs6FdwgF1iCdtpKeiw55JvH.html
DeltaTime reference
I suppose you're hinting at how to fix my fps/movements problem right?
Yeah I kinda figured that one out a bit later, but thanks!!
what the you only have 570 subs?? you are so underated
Well I just started hahaha!
But thank you 😁👍
watched all your video awesome content
Thanks man! Glad you like them!
👍👌
Noice vid. Underrated channel.
Noice comment. Underrated viewer.
BALLZ
Jsfxr is just an online bfxr copy.😃
Doesn't sound much better tho hahahaha
with what you plan your days 3:47
It's called Trello, it's super simple to use and helps a lot!
and it's free ;)
@@Floky thx
Noice
7/10 great game, but the smell is too strong.
You, my friend, are playing a very dangerous game!
JstFixHEur great
Yeah, don't know who thought of that name XD