finepointcgi / finepointcgi-suggestions Goto Github PK
View Code? Open in Web Editor NEWLicense: MIT License
License: MIT License
Small but very handy two tutorials for those who want to learn some patterns, It can be as short as 6-10 mins. One video with C# and one with GDScript.
on_
prefix for connected functions.EventBus.item_spawned.connect(on_item_spawned)
and EventBus.item_spawned.emit()
.This is more good practise tutorial, but still can be helpful for viewers. The video can elaborate about memory leaks, how to find them, how to fix them and how they can impact the game and gameplay if not treated properly. It could also include information about using Memory Profiler in Godot 4.
As followup to suggestions with Epic Online Services, I found this repo.
It's maybe a good idea to investigate since Playfab has something like Free to Start tier. Playfab looks more "friendly" to use than EOS.
That suggestion can be a part of whole Multiplayer series, including said EOS suggestion and LAN suggestion. It's can be for example creating same project with different approaches - LAN, P2P, client-server.
That can show differences in multiplayer topologies, Also as a conclusion it could show developers how to create more non provider-locked game. By seeing changes you have to do to switch between for example transforming LAN game into p2p game not experienced devs can take into consideration that to do and that not to do having possible future switch in their games in mind.
This suggestion is all about using the viewport texture with hooked camera and simple pc monitor or tv screen to show camera feed. It's interesting feature for some games like e.g. horror game when player discovers the hidden security room with the feed from cameras in all of the rooms, that shows there is a real person behind all odd events.
The other example of using this feature is for more strategic games in which player needs to has control over rooms simultaneously.
I want to add another suggestion what can be helpful and handy while developing games.
Tutorial could show, how to create simple and universal console. Console can be based on Singleton / Custom Node / Scene with something like pseudo-code below:
signal help()
var functions_dict : Dictionary = {
"help": {
"number_of_args": 0,
"context": self,
"signal": "help"
}
}
func register_function(name : String, number_of_args : int, context : Node2D, signal : String) -> bool:
if name in functions_dict: return false
functions_dict[name] = {number_of_args, context, signal}
retrun true
func unregister_function(name : String) -> bool:
if name not in functions_dict: return false
functions.dict.erase(name)
return true
func _on_command_submitted(cmd_line : String):
var args : Array = cmd_line.split(" ")
var cmd = args.pop_front()
if cmd not in functions_dict:
output_line("Command "+str(cmd)+" not found.")
return
if args.size() < functions_dict[cmd].number_of_args:
output_line("Not enough arguments for "+str(cmd)+" ("+str(args.size())+" instead of "+str(functions_dict[cmd].number_of_args)+").")
return
if args.size() > functions_dict[cmd].number_of_args:
output_line("Too many arguments for "+str(cmd)+" ("+str(args.size())+" instead of "+str(functions_dict[cmd].number_of_args)+").")
functions_dict[cmd].context.emit_signal(functions_dict[cmd].signal)
func get_commands():
output_line("List of the commands:")
for cmd in functions_dict:
output_line(str(cmd) + " (number of args "+str*functions_dict[cmd].number_of_args+")")
func output_line():
# add text line at the bottom of the rich text / add label to vboxcontainer and scroll down in scrollcontainer
help
command.DebugConsole.register_function
and remove it by DebugConsole.unregister_function
, e.g.:# Player.gd
var health = 100
signal heal
func _ready():
DebugConsole.register_function("heal", 0, self, "heal")
heal.connect(_on_heal_called)
func _on_heal_called():
health = 100
func _exit_tree():
DebugConsole.unregister_function("heal")
.text
content is passed into _on_command_submitted()
.We can also use functions instead of signals for simplicity.
Now that Godots support for C++ modules work a tutorial on how to use it would be useful.
I've some small ideas to expand your mobile series. These are loose suggestions, as content on mobile topics is probably the least available. My suggestions are targeting Godot 4 / 4.1 as 4.1 will be released soon.
Beginners:
Advanced:
Some suggestions are based on problems that I encounter in my way to publish game, some not. ๐
If something is already added - I'm sorry. ๐
Your tutorial about Nakama with WebRTC plugin by dsnopek was very great. WebRTC is a good middle-point between p2p with NAT-punch (which can be hard to setup) and autoritative server.
Here we have Minimal WebRTC example in Godot. The example shows two players (Chat instances) in one game communicating via WebRTC through local signaling (also in-game).
Herer we have more real life example for WebRTC with Signaling Server. The example covers separated signaling server. In the example we have two implementations of the signaling server - one in GDScript and one in Node.js.
The server part of that multiplayer topology if fairly simple:
{
"id": 0,
"type": 0,
"data": ""
}
so we have basic validation in place.
4. Then the connection is open the peer is added to players list and server starts to listen for the messages.
5. All incoming messages are parsed and then treated accordingly to the type
.
6. Peer is disconnected if invalid message was sent.
7. Additionaly to keep connections established Node.js implementation sends ping to every connected client every 10s.
As there is server variant in GDScript you can just skip Node.js part. If you want to cover it then you can use for example Glitch to host server for free without need to setup whole Node.js env on PC (easier to follow along).
WebRTC is technology created with browsers in mind, so webrtc-native plugin is needed.
This suggestion is for overview of alternatives to Blender.
Blender is a great and powerful tool, but it could be helpful to show alternatives, because Blender can be hard to pick up in short time for example for people that are working on their games 2-4 h per week.
My suggestions are:
It's also a good idea to tell in this context about Godot's CGS and prototyping with them.
This suggestion is about await
keyword, as yield
is replaced in Godot 4. Bite-sized video can be created with length between 3-5 minutes.
Things to cover:
yield
and await
Simple suggestion for Horror Series. To add some anxiety and confuse player it'll be great to utilize is_visible_in_tree()
/ is_position_in_frustum()
to move or remove certain, small object from the surroundings.
It can be done with for example 5% of chance to some object to dissapear or move or maybe rotate while player is looking in different direction. ๐
compile godot and export templates explicitly for 2d games and the apk size optimisation?
Creating a good fps character controller can be hard that should be on the list
As in the title - tutorial about creating Godot 4 plugin. For example it can be plugin for something reusable from your Horror Game series, like Flexible Level Loading Plugin. Optionally would be great if the process of submitting to Assets Store can be included or just described. ๐
With this whole tutorial some devs (maybe) would be more willing to create more encapsulated code and add their own plugins to the Godot Assets Library.
openai api in pretty good but.. it's not updated to godot 4 and gdscript 2.0, so isn't google bard api would be a better choice?
it's still learning, it's updated to gdscript 2.0 and personally i prefer it
so if it's possible to integrate in in godot can u please make a tutorial about it?, would be pretty useful
Godot 4 multiplayer is important. We should look at Server and Client code
We should learn the basics of how to build game ready buildings in Blender
Looking at your Survival Game Framework I'm assuming that you're planning to create Survival tutorial series. My suggestion can be a little addition to it.
Creating simple character Creator / Configurator system with for example:
Tutorial can show:
< Body Type >
.< Hair >
.< Clothes >
.{
"characterCustomization": {
"bodyId": 0,
"hairId": 1,
"clothesId": 0
}
}
As a 3D tutorial it can connect your Godot tutorials with Blender tutorials. If it's too much for 3D it will also be useful as 2D tutorial.
There are some solutions and ways to create destructible terrain in Godot. It would be great to have one up to date tutorial about this topic.
Some hits:
I'm thinking about destructible terrain like in Soldat or Worms. If you aren't interested in this topic it's ok for me to close suggestion. If you want to go with it, then this suggestion can become a part of Algorithms in Games Suggestion.
Tutorial about creating GDExtension. It can be created like tutorial for Android Plugins:
This tutorial can be linked with submitting to Assets Library from that suggestion.
projects like zero-shot tortoise-tts and bark.
If you like ML/AI, it can be interesting to create small tutorial about creating voice lines for game character with just own voice and for example said tortoise-tts.
By using a few short audio clips of yourself talking, you can create massive number of voice lines for your character with different intonations. For example it can be used for the blacksmith npc, by generating 5, 10, 15 or even more greetings like:
Hey hero, what do you need?
Do you want to buy something? I don't have nerves of steel.
Take this junk and get out.
Steel, steel, steel, beautiful steel. If you have gold, I'll give it to you.
I'll make you a sword! I give you my word!
PGSGP doesn't show Leaderboard when TranslationServer.set_locale is set to any other language. It only displays the Leaderboard when the locale is set to "en"
I found something like all in one Firebase Godot Repo that can be a good thing to refresh Godot Firebase series.
Repository includes:
Repo is cross-platform, so you can include tutorials like:
The last one can be also a part of Multiplayer Series.
Please do a tuitorial on offline LAN Multiplayer game connection.Thanks
This suggestion is about adding fog of war effect for 2D games. Fog of war is ofter used in top down strategy/rts/roguelike games.
Fog of war examples:
It's maybe an idea for one long video, but it would be better (and easier to find by searchers) to create new series if you're interested in making tutorials on this topic.
Some of them can be included in maybe turn-based project, or point and click as part of that suggestion.
I don't know why, but it seems like some people like Gappling gun mechanic in 3D games for fast moving or effective traveling with the First Person Controler. In 3D it can be as simple as:
is_action_just_pressed
.Tutorial can be also combined with enabling grappling to another point while the player is in air or offseting y of collision point a little to give player the ability to get on the edge of block/element that is grappling to.
As an additional tip you can add that if colliding with ray cast object is for example rigidbody, then the object will be pulled to the player, not the player to the object.
In 2D it can be more challenging because of differences in implementing controls, but it also can be covered as a separated tutorial.
Overview of Tween in Godot 4. Maybe short introducction to changes between 3.x and 4.x approach for animation with Tween and then some examples of it (tweening different properties, tweening to position, etc.).
This idea covers the in-game 3d space screens or something similar that enables player to interact with. For example we can have a touchscreen with numpad to insert the code. Also we can have for example some vitals / stats / health / map / radar shown on the in-game screen (or any kind of surface).
The idea of suggestion is to show how to properly bring the UI elements or interactive UI elements into 3D space.
Tutorial on Composition Design Pattern. This could be a good introduction for a series of texts or videos on design patterns.
@export
, etc.Tutorials like this can be useful for developers who want to improve their skills, or for solo developers who want to start working with teams.
Composition in Godot can also be related to [Creating Godot 4 Plugin}(https://github.com//issues/20) suggestion.
Investigate and create a C# and GD version of the A* navigation system
I absolutely love series, especially short ones.
Would you make a very simple and easy pnc game - including saving, menu, loading, exporting.
Many of those topics were covered but integrating all of them is a bit different.
It would be lovely to see 6 videos, 10min each taking you from nothing to an exported 3d game ready to be played, at least first level.
Why point and click 3D? In my opinion this would be the easiest thing to make in under 1 hour.
Why series? I believe that series attract many people. You can check out other youtubers. Moreover, this could be a standard goto for beginners just starting out with Godot 4, for people that just want to make something quick and easy while also being challenging (making the whole game).
Thanks.
Next suggestion is a day / night cycle in four variants as two or four tutorials, also short and straight to the point.
One option:
or maybe:
Include how to rotate pan and zoom both c# GD Script
This suggestion is for future, not now. For now it will be too much work to do.
Epic Online Services are free and are very powerful. Maybe in the near future we will get some good plugins or wrappers aroud EOS SDK for Godot 4. It's a good (and hot) topic to have in mind.
At this moment I found only Epic Online Services Godot by 3ddelano, but I think that more projects like this, or GDExtensions or maybe something from Epic Games can be created.
Epic Online Services used in Godot can overcome popularity of PUN / Photon Fusion for Unity.
Examples or projects created with EOS and Godot 4 can be smaller and easier to explain than for example Nakama, where more aspects of network topology, server code and more hassle is needed.
EOS have very long list of interfaces that could be introduced:
This could be easy divided into series of tutorials or maybe multiplayer expansion for Horror Game Series.
For example:
It can be created on top of Horror Game Series, or as a separated project prototype, for example recreations of something very easy, barebones, like Haxballl, Pong. It can be also created on top of Local Area Network from this suggestion. Just to work with EOS and don't have to create game from scratch, but use your existing tutorial / series and link things with each other. ๐
Cross-platform aspect of EOS is also good alternative for Steamworks.
This suggestion can be a small series for recreating game like chrome://dino
- endless runner with simple controls (e.x. dodge and jump) and with random generated obstacles.
If suggestion will better fit in standalone video, then it can cover just random gen aspect and spawning->moving->freeing obstacles. If it'll better fit as a series then:
As of number of needed assets is minimal you can just grab for example:
And we can have simple and fun example of Halloween game for the future. ๐
You can also export HTML version and host it on your website, because it should be small.
I think it will be worth to keep an eye on W4 Cloud. You for sure heard about it, but I want to add it here as a suggestion for future reference or videos.
I can see it as low entry level between Nakama and custom backend. As stated in this post early access is starting in July and all multiplayer features should (or will) be ready in Q4 of 2023.
If you're interested, it could be good to join the early access and maybe be ready with tutorials for official launch. ๐
I have read different opinions about this project (mostly on reddit), but the thing about opinions is that everyone has their own. ๐
Some survival games are giving ability for player to place some objects like a tent or a campfire. It'll be great to see tutorial that implements feature like this.
How can it be implemented:
y = -1
then we can show the shadow of object as the indicator of possible placement.I think that this suggestion is simple, but covering topics like vector math and ray casting on real world example can be helpful.
As said in other suggestions, all multiplayer ideas can be packed into one series. The easiest way to go would be creating one, simple project and then convert it to different multiplayer suggestions or to have one starting project and starting from it.
and so on. ๐
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.