Тёмный
DitzyNinja's Godojo
DitzyNinja's Godojo
DitzyNinja's Godojo
Подписаться
Godot tutorials

Evil Rounding in Shaders
0:31
Год назад
Godot 4's New Networking Nodes
4:39
2 года назад
Godot 4 Networking Demonstration
9:41
2 года назад
JUNIPER Devlog #1
0:36
2 года назад
Комментарии
@jairoacosta8940
@jairoacosta8940 12 часов назад
bro, you would think this basic stuff would be easyer to find. thanks
@ReadOnlyMAIN
@ReadOnlyMAIN День назад
Hello, that was very interesting, I like your videos. (I hope the next ones will be posted soon as this one was posted a year ago 😅).
@tommytress77
@tommytress77 16 дней назад
are you sick? you sound like the such
@sinbala698
@sinbala698 18 дней назад
godot en decadenia , antes estaba mejor
@MR-th1wt
@MR-th1wt 20 дней назад
Could someone tell me how I make the mesh visible in Editor, it's currently only visible in-game?
@chebgonaz
@chebgonaz 23 дня назад
Fantastic video. Thanks
@zottden4970
@zottden4970 24 дня назад
Hi, good video, but what are the server.pck and others files? how can i create them?
@castleclashbot5452
@castleclashbot5452 26 дней назад
i have tried to do "hurt damage" animation with animation player to change material color... not work realy, all enemies get the animation, maybe you do a tutorial about this? maybe i didnt have understand how to synchronize correctly... but hp bar own hp and attack and movement worked fine... i am confused
@robertdeckard2136
@robertdeckard2136 Месяц назад
subscribed because of your channel name
@snakesoul
@snakesoul Месяц назад
In case you are watching this in 2024 or later (godot version 4.X or higher), here is the code updated: @tool extends StaticBody3D @export var SIZE: int = 64 @export var NOISE_AMPLITUDE = 16 @export var noise: FastNoiseLite = FastNoiseLite.new() func _ready(): generate_mesh() func generate_mesh(): print("generating mesh") var plane_mesh = PlaneMesh.new() plane_mesh.size = Vector2(SIZE,SIZE) plane_mesh.subdivide_depth = SIZE-1 plane_mesh.subdivide_width = SIZE-1 var surface_tool = SurfaceTool.new() surface_tool.create_from(plane_mesh, 0) var data = surface_tool.commit_to_arrays() var vertices = data[ArrayMesh.ARRAY_VERTEX] for i in vertices.size(): var vertex = vertices[i] vertices[i].y = noise.get_noise_2d(vertex.x, vertex.z) * NOISE_AMPLITUDE data[ArrayMesh.ARRAY_VERTEX] = vertices var array_mesh = ArrayMesh.new() array_mesh.add_surface_from_arrays(Mesh.PRIMITIVE_TRIANGLES, data) surface_tool.create_from(array_mesh, 0) surface_tool.generate_normals() $MeshInstance3D.mesh = surface_tool.commit() $CollisionShape3D.shape = array_mesh.create_trimesh_shape()
@FriskDreemurr66669
@FriskDreemurr66669 Месяц назад
this line: var image:Image = load(ProjectSettings.get_setting("shader_globals/heightmap").value).get_image() gave me this error: Attempt to call function 'get_image' in base 'null instance' on a null instance. does get_setting work differently now?
@robinj6997
@robinj6997 Месяц назад
This was golden! Been stock on normals the entire day. It didn't make any sense until now. The to_normalmap function solved it all.
@FriskDreemurr66669
@FriskDreemurr66669 Месяц назад
godot 4.2? setget doesnt exist anymore
@howislife-v5
@howislife-v5 Месяц назад
Ikr I just found out😭😭
@LaurentSparksMusic
@LaurentSparksMusic Месяц назад
Its changed in godot 4 break it up into 2 pieces
@LaurentSparksMusic
@LaurentSparksMusic Месяц назад
Set and get are seperate methods now
@snakesoul
@snakesoul Месяц назад
code updated in my comment
@mesopable
@mesopable Месяц назад
I heard ENetMultiplayer is not valid for WebGL games. Is this relevant when using WebSocketMultiplayerPeer or is that whole different approach and topic?
@Rubyboat
@Rubyboat 2 месяца назад
setting the names in the player script is VERY IMPORTANT. I skipped this and it caused me ~1.5 hrs of debugging
@darklord8793
@darklord8793 2 месяца назад
How do you do this if you dont have a heightmap aka if your terrain isnt being generated by a noise texture?
@synccyt_
@synccyt_ 2 месяца назад
Incredible
@nyscersul42
@nyscersul42 2 месяца назад
If you have a large data object which controls your game.... how big would be too big to synchronise this object directly?
@DusanPetrovcic
@DusanPetrovcic 2 месяца назад
wawwww so much easyer than in unity3D
@Tankerbox
@Tankerbox 2 месяца назад
This litterally made my game possible! Without this tutorial I would be moving on lol.
@ditzyninja
@ditzyninja 2 месяца назад
That's awesome man. I'm really glad this helped out. I don't make tutorials anymore, but I've learned a lot since making this. Let me know if you run into any other hurdles. I might be able to give some tips.
@Tankerbox
@Tankerbox 2 месяца назад
@@ditzyninja For context, Im using this framework as collision for my raycast based driving system. The major hurdle I'm running into currently is whenever the collision plane regenerates the raycast slips through for a frame making the driving feel jittery and unpredictable at times. If you found a fix to that or had a similar problem a general tip would be great. If not that's fine Im still extremely grateful for the tutorial!
@puleroxd4116
@puleroxd4116 2 месяца назад
God
@bertnuts
@bertnuts 2 месяца назад
Really appreciate this
@radicant7283
@radicant7283 3 месяца назад
Add chapters
@standard_limbo
@standard_limbo 3 месяца назад
Great tutorial. It's been super helpful so far. One note for anyone else walking through it, I had to put the rpc arguments for the player character in quotes. For example, I had to change @rpc(authority, call_local, reliable, 1) to @rpc("authority","call_local","reliable",1)
@whilelive
@whilelive 3 месяца назад
Amazing <3
@sharjeelparvez4599
@sharjeelparvez4599 3 месяца назад
Love you i couldn't find this anywhere thanks
@iLikePlayingGamesSomtimes
@iLikePlayingGamesSomtimes 2 месяца назад
What changes did you make to port it I can’t seem to even load the mesh lmao
@TheFurball1212
@TheFurball1212 3 месяца назад
Can someone explain why this wont work over the internet and how I can get it to work over the internet?
@ditzyninja
@ditzyninja 3 месяца назад
You'll have to forward a port on the router of the network the godot server is on. Then the client needs to connect to the router's public IP. The port forwarding can sometimes be done automatically by the program. I made a video on it: ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-3e2RI60-bHg.html
@JoshuaSaffy
@JoshuaSaffy 3 месяца назад
How'd you know I had this exact problem XD Thanks. I appreciate that you don't just I assume I know everything and just say port forwarding and instead explain that and then show an example, all in like 3 miniutes
@tunaep_yt
@tunaep_yt 3 месяца назад
I have followed your tutorial and then I implemented it into your earlier tutorial with the balls moving around, but now my players aren't spawning :( I don't know what I have done wrong
@TheLPfunnTV
@TheLPfunnTV 3 месяца назад
I would love if you make a tutorial using godotsteam -> loby creation etc <3 and how to test the gam elocally on 1 pc instead of needing mutiple steam accounts for development
@TheLPfunnTV
@TheLPfunnTV 3 месяца назад
this was increadibly helpful - as someone completely new to godot multiplayer this might just have saved my project
@Thomason1005
@Thomason1005 3 месяца назад
this. was troubleshooting for 3 days, opening ports, ipv4, ipv6, but this made it work. at least in one of 2 networks it did. only change i made is to run it in a thread, so the game doesnt freeze for 2 seconds.
@alexale5488
@alexale5488 3 месяца назад
This tutorial is deprecated... Suck so much how they keep changing the engine...with no real benefit...
@DrEasy1
@DrEasy1 3 месяца назад
Makes me "not" want to use godot.
@Laomer_Dev
@Laomer_Dev 3 месяца назад
how to make a hight level of multiplayer game ?
@lionson5253
@lionson5253 3 месяца назад
thank you you're wonderful
@owenlloyd2528
@owenlloyd2528 3 месяца назад
Thanks for this playlist. Good value for me.
@owenlloyd2528
@owenlloyd2528 3 месяца назад
Thank you
@mrjshzk
@mrjshzk 4 месяца назад
This is soo helpful, I'll try using it to see if it works!
@AdamsAGD
@AdamsAGD 4 месяца назад
well i gave it my best attempt to translate this to 4.0 but i dont know how to code the set get :( i have working code for HP from another game but i need more than the @export on it :(
@ditzyninja
@ditzyninja 4 месяца назад
@tool instead of tool (at the very top of the script) @export var generate_mesh: bool: set(val): generate_mesh() I'm not sure the variable and function name can be the same in Godot 4. I usually call the variable something like "generate_mesh_button"
@KittensRoar
@KittensRoar 4 месяца назад
If any of yall are getting an error like I did just move the camera and synchronizer lines at 3:15 to a delta function instead of the _ready one besides that great vid and it helped me honestly a lot
@oldman222
@oldman222 4 месяца назад
thanks!
@gutzimmumdo4910
@gutzimmumdo4910 4 месяца назад
i can barelly see the code brah...
@vickylance
@vickylance 4 месяца назад
But these nodes don't take care of any lag compensation right? And is not optimised for real world multiplayer scenario. So not sure why these exists
@pand2aren
@pand2aren 4 месяца назад
thanks for this video, helped a lot, so if i understand correctly networkNodes/synchronizers are more for prototyping part i guess ?
@Hodebrot
@Hodebrot 4 месяца назад
Dude, that‘s exactly what I‘ve been trying to achieve. 😂 I just managed to get the clipmesh working. Now I‘ve found your video. 😂
@ditzyninja
@ditzyninja 4 месяца назад
Glad it helped!
@ibluebee2832
@ibluebee2832 4 месяца назад
Actually, a lot of routers don't have UPNP enabled from the start. sunrise router for example. So thanks, but i can't do this for my game since i don't have UPNP enabled on my router :(((
@lightingames
@lightingames 5 месяцев назад
Hey! I have something big, could you provide any ways I could contact you?
@caiocesar3647
@caiocesar3647 5 месяцев назад
I was having trouble trying to make rpc calls, but I was just missing having the same calls in both client and server, tysm!
@zerolelouch22
@zerolelouch22 5 месяцев назад
2:55 this is confusing for me! Okay so connect() is a signal thing so when the signal is emitted, multiplayer_peer can pick up on it. What you want multiplayer_peer to do is outlined in the lambda function. Is this right?
@ditzyninja
@ditzyninja 5 месяцев назад
That's pretty much it. The multiplayer_peer picks up on new players connecting, then emits the peer_connected signal. Any function connected to the multiplayer_peer signal will run every time it is emitted. We could have just as easily created a function in the main script called "handle_peer_connected", put the code from the lambda function in it instead, then connected it like this: multiplayer_peer.peer_connected.connect(handle_peer_connected) When connecting functions to a signal, make sure not to add to the () end, so multiplayer_peer.peer_connected.connect(handle_peer_connected()) wouldn't work.
@zerolelouch22
@zerolelouch22 5 месяцев назад
@@ditzyninja thanks for the quick reply!
@zerolelouch22
@zerolelouch22 4 месяца назад
okay meant to send this to someone else and re-reading this I just realized it sounds so sarcastic but I didn't mean to come off like that. Genuinely thank you
@GaryParkin
@GaryParkin 5 месяцев назад
Thank you for a really great, in depth tutorial. Can you please answer a question for me? Once this is done and you place the player in the scene, how do you get the player character to face the direction you want? You can't rotate the player character or the controls get weird. Thanks again.
@ditzyninja
@ditzyninja 5 месяцев назад
No problem. Glad you found it helpful. How do they get weird? It sounds like you might be rotating around both the y-axis and x-axis on the player character. Or possibly the camera's y rotation has been changed. This should always be 0. Only the x rotation should change on the camera, and only the y rotation should change on the player character.
@GaryParkin
@GaryParkin 5 месяцев назад
@@ditzyninja Sorry, that wasn't helpful... When you place the player in the scene and then rotate it left because you want him to start facing left, after starting the game, you try and walk, but forward is to the left now. Straight would be right. I cannot figure out how to get past this.
@ditzyninja
@ditzyninja 5 месяцев назад
@@GaryParkin All good. What you're describing would happen if the camera was rotated so it's z-axis points left, but not the player character. Does this happen when you add the player to another scene, or in the player scene itself? Also could you copy and paste your movement code here?
@GaryParkin
@GaryParkin 5 месяцев назад
@@ditzyninja I tried replying 5 times and RU-vid deletes my responses. I got it sorted out. Thanks for the great tutorial, I learned a lot.