GodotModulesCSharp-Old
Unity-Lua
GodotModulesCSharp-Old | Unity-Lua | |
---|---|---|
18 | 1 | |
57 | 143 | |
- | 2.1% | |
0.0 | 0.0 | |
over 1 year ago | over 3 years ago | |
C# | C# | |
MIT License | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
GodotModulesCSharp-Old
- Server-Side Simulated Player Transforms
-
Godot Modules - Dev Blog #1 (My journey with multiplayer so far)
You can find the Godot Modules project on GitHub here with the MIT license.
Another cool thing I learned while working on this project is a great use of the virtual keyword. It allows me to separate the game netcode from the core netcode very nicely as seen here.
For sending data over the network I used System.IO.BinaryWriter and System.IO.BinaryReader. I created some classes to help automate my life with this. Have a look at [CPacketPlayerPosition.cs](https://github.com/GodotModules/GodotModules/blob/main/Scripts/Netcode/Common/CPacketPlayerPosition.cs), [SPacketPlayerTransforms.cs](https://github.com/GodotModules/GodotModules/blob/main/Scripts/Netcode/Common/SPacketPlayerTransforms.cs), [CPacketLobby.cs](https://github.com/GodotModules/GodotModules/blob/main/Scripts/Netcode/Common/CPacketLobby.cs), [SPacketLobby.cs](https://github.com/GodotModules/GodotModules/blob/main/Scripts/Netcode/Common/SPacketLobby.cs) just to see how nice everything is grouped together. Before I had it so a lot of this code was dispersed across several files (for e.g. CWPacketLobbyJoin.cs, CRPacketLobbyJoin.cs, SWPacketLobbyJoin.cs, SRPacketLobbyJoin.cs) S stands for Server, C stands for Client, W stands for Write, R stands for Read.
- I Created a ModLoader with MoonSharp for C# Godot Games
- Godot Modules - ModLoader, Cooperative Netcode, Options Preset, Utility Scripts to Kick Start your C# Godot Games
- Netcode to Create Lobbies for Cooperative Godot C# Games (Wip)
- Netcode to Create Lobbies for Cooperative Godot C# Games (wip)
Unity-Lua
-
How would you go about exposing a modding api?
We use MoonSharp for our Lua integration, and it provides easy ways to bind methods and read & write data between C# and Lua sides. It also allows oyu to easily manage the LuaVMs themselves, of course, but we've also created our own wrapper for it that adds some helpful features and also allows us easily write Lua APIs and then choose which ones to use for each LuaVM when we start them.
What are some alternatives?
GodotMono-InfiniteTerrain
Unity-game-hacking - A guide for hacking unity games
ENet-CSharp - A improved fork of ENet, a tried and true networking library. C, C++, C# compatible.
ThunderKit - Mod Project Development Environment for Unity and Unity Games
ediabaslib - .NET BMW and VAG Ediabas interpreter library
modding-wiki - A wiki repository for Sekiro modding.
Captain-of-industry-modding - Official modding resource for video game Captain of Industry.
UnityLibrary - :books: Library of all kind of scripts, snippets & shaders for Unity
client-godot - A long term progressive resource management text based MMORPG being developed in Godot.
Harmony - A library for patching, replacing and decorating .NET and Mono methods during runtime
MasterServer-Old - NodeJS server to list Godot lobbies for Godot Modules project.
Oxide.Rust - Rust game extension for the Oxide modding framework