devloglogan / multiplayerfpstutorial Goto Github PK
View Code? Open in Web Editor NEWA Simple Godot 4 Online Multiplayer FPS Prototype
License: MIT License
A Simple Godot 4 Online Multiplayer FPS Prototype
License: MIT License
There are a bunch of errors / bugs for 4.1, seemingly.
Loved the tutorial, every bit of it!
However after I finished all the steps and moved from localhost to upnp, I have not been able to get other people to join the host. Whenever inputting the address into the address bar and joining, it just gives a grey screen.
I even copied the code in the repo to make sure there weren't any mistakes. No errors in the debug either.
Any Ideas how to fix this? UPnP is enabled on my router btw.
I get this error while trying to shoot someone, any ideas?
Just figured out that I need to have blender installed and Blender 3 Path
set correctly in order to import the project.
Maybe mention that in the Readme?
I am having trouble to run this project in godot 4.0.It showing error in func upnp_setup() ,please fix this
I am sorry to ask this here but I do not know how to ask this in a better location and Youtube comments do not have links.
I have been making open source forever free working multiplayer 'big game' systems and demonstrations examples in Godot 4+ for the creative community. Currently I have been making an ~'educational community archive demonstration copy' / testing version of your great RPG inventory, item, chest, pick up and drop, equipment and other foundational RPG data systems tutorial. I have been recently recreating your 'Godot 4 - RPG Inventory System From Scratch' tutorial in Godot 4.2.1.NET+ (via the Voxel_Game engine module 4.2.2.NET+ to be exact) https://www.youtube.com/watch?v=V79YabQZC1s . I got everything to the chest and potions systems working in the exact copy version. Then I felt I had to pause and think more deeply and with more critically about the player items systems after getting the inventory, chest and pick and drop item systems working. I have a big worry now because I feel / think the player items in the great tutorial are not multiplayer compatible with the community open source forever free Godot_Voxel (Voxelgame Blockygame) Community Demonstration: https://github.com/Zylann/voxelgame + https://github.com/Zylann/godot_voxel . I feel I must find help and community guidance to do things properly going beyond the known tutorials, documentation and directions.
I am endeavouring to create an open source and forever free creative community educational foundational game systems demonstration example library. With the main focus being based around a working multiplayer seamless chunk system for Godot 4.2.1.NET. So as for people in the creative community to have open source forever free working game examples to help create big multiplayer games in Godot 4.2.1.NET+. Here are some example goals, work and progress links: WithinAmnesia/ARPG#16 + Zylann/voxelgame#103 + Zylann/voxelgame#104
I am at a point where I need to ask for help with the author of the Godot 4 - RPG Inventory System From Scratch tutorial. For there are a lot of details that need to be addressed in order to successfully ~translate / adapt the Godot 4 - RPG Inventory System From Scratch tutorial to work with a community educational implementation for the Godot_Voxel (Voxelgame Blockygame) Community Demonstration. I am a very experienced RPG person who desires to create big games in Godot 4.2.1.NET+. For I have worked on big games for decades 20+ years now and I wish for the community to have the tools they need to make big games forever free. I have a lot of experience working on big games such as retail and private servers for WoW, Baldur's Gate, Diablo, Minecraft, Zelda, OSRS, Mount and Blade, Civilization, WoT, War Thunder, and more shooters and big games but I mainly work with RPGs and Military Equipment and some Racing / flight / minigames games too: https://www.deviantart.com/withinamnesia/gallery +
+
https://www.deviantart.com/withinamnesia/art/Game-Master-Veldryn-858651305 + https://www.deviantart.com/withinamnesia/gallery/75508504/catacombs-of-the-screaming-shadow + https://www.deviantart.com/withinamnesia/art/Long-Sword-3-Varscona-Arms-and-Armour-Emporium-770141205 + https://www.deviantart.com/withinamnesia/gallery/51118284/baldur-s-gate-path-of-the-lost-odyssey + https://www.deviantart.com/withinamnesia/art/7TP-75-mm-wz-97-4-709711208 + https://www.deviantart.com/withinamnesia/gallery/50390205/b-o-w-n-3ds- + https://www.deviantart.com/withinamnesia/art/The-Jewelled-Eye-of-AGABAL-Jeweyel-Level-800-915001367 + https://www.deviantart.com/withinamnesia/gallery/64014697/agabal-r-p-g-project + https://www.deviantart.com/withinamnesia/gallery/52155361/concept-art-drawings + https://www.wowhead.com/item=118080/admiral-taylors-greatsword + https://www.deviantart.com/withinamnesia/art/Greatsword-of-Omen-3D-Model-Blender-2-79-871967906 (I am also a heavy duty mechanic for heavy equipment and I work on basically tanks. I have business experience operating a cedar salvage and milling corporation. I build houses and develop land from scratch too. I love learning and reading and writing history and I really love world building. These are some of the extra details that may help share a bit about who I am. I love creating massive multiplayer online role playing games and anything like most big games the most though lol.)
Where may I properly reach / contact / communicate? What should be done? What are your thoughts, feelings and suggestions? All feedback is welcome.
Update: Here is a completed example for DevLogLogan's Godot 4 - RPG Inventory System From Scratch tutorial for anyone to learn from and test. It is a masterful tutorial and I it took myself days to code by hand everything as an exact working copy for the community to learn from! I learn a lot about coding for Godot 4.2.1.NET+.
Does anyone have any free time to look at the code for this RPG Inventory from scratch tutorial and see how it can be translated / implemented with the Blockygame multiplayer demonstration? What should be done? What are your thoughts and suggestions? All feedback is welcome.
https://github.com/WithinAmnesia/ARPG/blob/ARPG-Infinite-Worlds/DevLogLogan%20RPG%20Inventory.zip
Here is the Blockygame demo too it needs the Godot_Voxel engine module to work: https://github.com/WithinAmnesia/ARPG/blob/ARPG-Infinite-Worlds/Infinite_Worlds_V.000.006.1.zip
what i did
Download this project
Enable UPnP on my Router
Run the Game from godot [as host]
Invalid Gateway [freeze]
try to export
run it
player.gd not found
change player.gd to Player.gd
export
run it [.console.exe] as host
debug says
SCRIPT ERROR: Assertion failed: UPNP Invalid Gateway!
at: upnp_setup (res://world.gd:63)
run another .exe anyway [as join]
success [can move shot everything]
as long as i dont join as hosts, the error wont show up
BUT
if i run it in Godot [as host], it will always freeze. anything to fix this ?
The .import files for resources are necessary to commit in the Git repo, for any customization you make to import flags to be saved. Currently opening the project in Godot 4.0 beta 16 (Edit: I lied, this was a Git build :)) generates:
$ git status
On branch main
Your branch is up to date with 'origin/main'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: addons/kenney_particle_pack/circle_01.png.import
modified: addons/kenney_particle_pack/circle_02.png.import
modified: addons/kenney_particle_pack/circle_03.png.import
modified: addons/kenney_particle_pack/circle_04.png.import
modified: addons/kenney_particle_pack/circle_05.png.import
modified: addons/kenney_particle_pack/dirt_01.png.import
modified: addons/kenney_particle_pack/dirt_02.png.import
modified: addons/kenney_particle_pack/dirt_03.png.import
modified: addons/kenney_particle_pack/fire_01.png.import
modified: addons/kenney_particle_pack/fire_02.png.import
modified: addons/kenney_particle_pack/flame_01.png.import
modified: addons/kenney_particle_pack/flame_02.png.import
modified: addons/kenney_particle_pack/flame_03.png.import
modified: addons/kenney_particle_pack/flame_04.png.import
modified: addons/kenney_particle_pack/flame_05.png.import
modified: addons/kenney_particle_pack/flame_06.png.import
modified: addons/kenney_particle_pack/flare_01.png.import
modified: addons/kenney_particle_pack/light_01.png.import
modified: addons/kenney_particle_pack/light_02.png.import
modified: addons/kenney_particle_pack/light_03.png.import
modified: addons/kenney_particle_pack/magic_01.png.import
modified: addons/kenney_particle_pack/magic_02.png.import
modified: addons/kenney_particle_pack/magic_03.png.import
modified: addons/kenney_particle_pack/magic_04.png.import
modified: addons/kenney_particle_pack/magic_05.png.import
modified: addons/kenney_particle_pack/muzzle_01.png.import
modified: addons/kenney_particle_pack/muzzle_02.png.import
modified: addons/kenney_particle_pack/muzzle_03.png.import
modified: addons/kenney_particle_pack/muzzle_04.png.import
modified: addons/kenney_particle_pack/muzzle_05.png.import
modified: addons/kenney_particle_pack/rotated/flame_05_rotated.png.import
modified: addons/kenney_particle_pack/rotated/flame_06_rotated.png.import
modified: addons/kenney_particle_pack/rotated/muzzle_01_rotated.png.import
modified: addons/kenney_particle_pack/rotated/muzzle_02_rotated.png.import
modified: addons/kenney_particle_pack/rotated/muzzle_03_rotated.png.import
modified: addons/kenney_particle_pack/rotated/muzzle_04_rotated.png.import
modified: addons/kenney_particle_pack/rotated/muzzle_05_rotated.png.import
modified: addons/kenney_particle_pack/rotated/spark_05_rotated.png.import
modified: addons/kenney_particle_pack/rotated/spark_06_rotated.png.import
modified: addons/kenney_particle_pack/rotated/trace_01_rotated.png.import
modified: addons/kenney_particle_pack/rotated/trace_02_rotated.png.import
modified: addons/kenney_particle_pack/rotated/trace_03_rotated.png.import
modified: addons/kenney_particle_pack/rotated/trace_04_rotated.png.import
modified: addons/kenney_particle_pack/rotated/trace_05_rotated.png.import
modified: addons/kenney_particle_pack/rotated/trace_06_rotated.png.import
modified: addons/kenney_particle_pack/rotated/trace_07_rotated.png.import
modified: addons/kenney_particle_pack/scorch_01.png.import
modified: addons/kenney_particle_pack/scorch_02.png.import
modified: addons/kenney_particle_pack/scorch_03.png.import
modified: addons/kenney_particle_pack/scratch_01.png.import
modified: addons/kenney_particle_pack/slash_01.png.import
modified: addons/kenney_particle_pack/slash_02.png.import
modified: addons/kenney_particle_pack/slash_03.png.import
modified: addons/kenney_particle_pack/slash_04.png.import
modified: addons/kenney_particle_pack/smoke_01.png.import
modified: addons/kenney_particle_pack/smoke_02.png.import
modified: addons/kenney_particle_pack/smoke_03.png.import
modified: addons/kenney_particle_pack/smoke_04.png.import
modified: addons/kenney_particle_pack/smoke_05.png.import
modified: addons/kenney_particle_pack/smoke_06.png.import
modified: addons/kenney_particle_pack/smoke_07.png.import
modified: addons/kenney_particle_pack/smoke_08.png.import
modified: addons/kenney_particle_pack/smoke_09.png.import
modified: addons/kenney_particle_pack/smoke_10.png.import
modified: addons/kenney_particle_pack/spark_01.png.import
modified: addons/kenney_particle_pack/spark_02.png.import
modified: addons/kenney_particle_pack/spark_03.png.import
modified: addons/kenney_particle_pack/spark_04.png.import
modified: addons/kenney_particle_pack/spark_05.png.import
modified: addons/kenney_particle_pack/spark_06.png.import
modified: addons/kenney_particle_pack/spark_07.png.import
modified: addons/kenney_particle_pack/star_01.png.import
modified: addons/kenney_particle_pack/star_02.png.import
modified: addons/kenney_particle_pack/star_03.png.import
modified: addons/kenney_particle_pack/star_04.png.import
modified: addons/kenney_particle_pack/star_05.png.import
modified: addons/kenney_particle_pack/star_06.png.import
modified: addons/kenney_particle_pack/star_07.png.import
modified: addons/kenney_particle_pack/star_08.png.import
modified: addons/kenney_particle_pack/star_09.png.import
modified: addons/kenney_particle_pack/symbol_01.png.import
modified: addons/kenney_particle_pack/symbol_02.png.import
modified: addons/kenney_particle_pack/trace_01.png.import
modified: addons/kenney_particle_pack/trace_02.png.import
modified: addons/kenney_particle_pack/trace_03.png.import
modified: addons/kenney_particle_pack/trace_04.png.import
modified: addons/kenney_particle_pack/trace_05.png.import
modified: addons/kenney_particle_pack/trace_06.png.import
modified: addons/kenney_particle_pack/trace_07.png.import
modified: addons/kenney_particle_pack/twirl_01.png.import
modified: addons/kenney_particle_pack/twirl_02.png.import
modified: addons/kenney_particle_pack/twirl_03.png.import
modified: addons/kenney_particle_pack/window_01.png.import
modified: addons/kenney_particle_pack/window_02.png.import
modified: addons/kenney_particle_pack/window_03.png.import
modified: addons/kenney_particle_pack/window_04.png.import
modified: addons/kenney_prototype_textures/dark/texture_01.png.import
modified: addons/kenney_prototype_textures/dark/texture_02.png.import
modified: addons/kenney_prototype_textures/dark/texture_03.png.import
modified: addons/kenney_prototype_textures/dark/texture_04.png.import
modified: addons/kenney_prototype_textures/dark/texture_05.png.import
modified: addons/kenney_prototype_textures/dark/texture_06.png.import
modified: addons/kenney_prototype_textures/dark/texture_07.png.import
modified: addons/kenney_prototype_textures/dark/texture_08.png.import
modified: addons/kenney_prototype_textures/dark/texture_09.png.import
modified: addons/kenney_prototype_textures/dark/texture_10.png.import
modified: addons/kenney_prototype_textures/dark/texture_11.png.import
modified: addons/kenney_prototype_textures/dark/texture_12.png.import
modified: addons/kenney_prototype_textures/dark/texture_13.png.import
modified: addons/kenney_prototype_textures/green/texture_01.png.import
modified: addons/kenney_prototype_textures/green/texture_02.png.import
modified: addons/kenney_prototype_textures/green/texture_03.png.import
modified: addons/kenney_prototype_textures/green/texture_04.png.import
modified: addons/kenney_prototype_textures/green/texture_05.png.import
modified: addons/kenney_prototype_textures/green/texture_06.png.import
modified: addons/kenney_prototype_textures/green/texture_07.png.import
modified: addons/kenney_prototype_textures/green/texture_08.png.import
modified: addons/kenney_prototype_textures/green/texture_09.png.import
modified: addons/kenney_prototype_textures/green/texture_10.png.import
modified: addons/kenney_prototype_textures/green/texture_11.png.import
modified: addons/kenney_prototype_textures/green/texture_12.png.import
modified: addons/kenney_prototype_textures/green/texture_13.png.import
modified: addons/kenney_prototype_textures/light/texture_01.png.import
modified: addons/kenney_prototype_textures/light/texture_02.png.import
modified: addons/kenney_prototype_textures/light/texture_03.png.import
modified: addons/kenney_prototype_textures/light/texture_04.png.import
modified: addons/kenney_prototype_textures/light/texture_05.png.import
modified: addons/kenney_prototype_textures/light/texture_06.png.import
modified: addons/kenney_prototype_textures/light/texture_07.png.import
modified: addons/kenney_prototype_textures/light/texture_08.png.import
modified: addons/kenney_prototype_textures/light/texture_09.png.import
modified: addons/kenney_prototype_textures/light/texture_10.png.import
modified: addons/kenney_prototype_textures/light/texture_11.png.import
modified: addons/kenney_prototype_textures/light/texture_12.png.import
modified: addons/kenney_prototype_textures/light/texture_13.png.import
modified: addons/kenney_prototype_textures/orange/texture_01.png.import
modified: addons/kenney_prototype_textures/orange/texture_02.png.import
modified: addons/kenney_prototype_textures/orange/texture_03.png.import
modified: addons/kenney_prototype_textures/orange/texture_04.png.import
modified: addons/kenney_prototype_textures/orange/texture_05.png.import
modified: addons/kenney_prototype_textures/orange/texture_06.png.import
modified: addons/kenney_prototype_textures/orange/texture_07.png.import
modified: addons/kenney_prototype_textures/orange/texture_08.png.import
modified: addons/kenney_prototype_textures/orange/texture_09.png.import
modified: addons/kenney_prototype_textures/orange/texture_10.png.import
modified: addons/kenney_prototype_textures/orange/texture_11.png.import
modified: addons/kenney_prototype_textures/orange/texture_12.png.import
modified: addons/kenney_prototype_textures/orange/texture_13.png.import
modified: addons/kenney_prototype_textures/purple/texture_01.png.import
modified: addons/kenney_prototype_textures/purple/texture_02.png.import
modified: addons/kenney_prototype_textures/purple/texture_03.png.import
modified: addons/kenney_prototype_textures/purple/texture_04.png.import
modified: addons/kenney_prototype_textures/purple/texture_05.png.import
modified: addons/kenney_prototype_textures/purple/texture_06.png.import
modified: addons/kenney_prototype_textures/purple/texture_07.png.import
modified: addons/kenney_prototype_textures/purple/texture_08.png.import
modified: addons/kenney_prototype_textures/purple/texture_09.png.import
modified: addons/kenney_prototype_textures/purple/texture_10.png.import
modified: addons/kenney_prototype_textures/purple/texture_11.png.import
modified: addons/kenney_prototype_textures/purple/texture_12.png.import
modified: addons/kenney_prototype_textures/purple/texture_13.png.import
modified: addons/kenney_prototype_textures/red/texture_01.png.import
modified: addons/kenney_prototype_textures/red/texture_02.png.import
modified: addons/kenney_prototype_textures/red/texture_03.png.import
modified: addons/kenney_prototype_textures/red/texture_04.png.import
modified: addons/kenney_prototype_textures/red/texture_05.png.import
modified: addons/kenney_prototype_textures/red/texture_06.png.import
modified: addons/kenney_prototype_textures/red/texture_07.png.import
modified: addons/kenney_prototype_textures/red/texture_08.png.import
modified: addons/kenney_prototype_textures/red/texture_09.png.import
modified: addons/kenney_prototype_textures/red/texture_10.png.import
modified: addons/kenney_prototype_textures/red/texture_11.png.import
modified: addons/kenney_prototype_textures/red/texture_12.png.import
modified: addons/kenney_prototype_textures/red/texture_13.png.import
modified: icon.svg.import
modified: models/Environment.blend.import
modified: models/Environment.glb.import
modified: models/Pistol.blend.import
modified: models/Pistol.glb.import
no changes added to commit (use "git add" and/or "git commit -a")
First off, thank you for the incredible YouTube video & tutorial. Insanely high quality & very helpful.
I'm having issues joining when providing an address.
To reproduce my issue:
Some additional info:
localhost
. It works great✅, your project and my fork.Maybe there's a simple networking reason for this, but when joining, this isn't resulting in a add_player
either place.
MultiplayerFPSTutorial/world.gd
Line 35 in d858d77
My code is located here.
Thank you for any tips or suggestions you may have. I may need to rollback to an earlier version and set it up to see if it's an issue with the latest version.
Something probably changed between version that was used to write this and Godot 4 beta 16.
But now editor shows errors on lines 73 and 80 in Player.gd.
those being @rpc(call_local)
and @rpc(any_peer)
.
Error being
Identified "call_local" not declared in the current scope
same for any_peer
Or is this a Godot editor issue and should be reported in their issue tracker?
Hello, i already copy your tutorial and when try to debug it keep crashing when i tryna shoot and it keep saying:
E 0:00:03:0929 Player.gd:6 @ _ready(): Node not found: "Camera3D/RayCast3Dnew" (relative to "/root/World/1").
<C++ Error> Method/function failed. Returning: nullptr
<C++ Source> scene/main/node.cpp:1364 @ get_node()
Player.gd:6 @ _ready()
world.gd:32 @ add_player()
world.gd:21 @ _on_host_button_pressed()
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.