15 Commits
1.1 ... 1.2

Author SHA1 Message Date
Yannik
c663977ccb Update README.md 2023-04-28 23:53:23 +02:00
Yannik
966da0d522 Merge branch 'fix-build-system' 2023-04-28 23:51:01 +02:00
Yannik
5f682cc9aa bumped to version 1.2 2023-04-28 23:50:06 +02:00
Yannik
8f46244a65 added version.txt to distinguish builds 2023-04-28 23:49:03 +02:00
Yannik
b2b712f24d added example.gd 2023-04-28 23:48:05 +02:00
Yannik
572debfc24 added macos build 2023-04-28 23:46:49 +02:00
Yannik
e85c671522 Update README.md 2023-04-28 18:00:45 +02:00
Yannik
d5edb10eb1 Update README.md 2023-04-28 18:00:24 +02:00
Yannik
b2fb432a21 linux builded 2023-04-27 19:23:54 +02:00
Yannik
f2f1092b2a should fix crosscompiling 2023-04-27 18:31:30 +02:00
Yannik
3006747b44 Update README.md 2023-04-27 12:38:25 +02:00
Yannik
2642a49a49 Update README.md 2023-04-27 09:07:15 +02:00
Yannik
7a029105f6 didnt merge the readme correctly 2023-04-25 22:33:49 +02:00
Yannik
921329f837 removed whitespace 2023-04-25 22:28:19 +02:00
Yannik
0ea5de351e Update README.md 2023-04-25 22:26:23 +02:00
17 changed files with 53 additions and 40 deletions

7
.gitignore vendored
View File

@@ -14,7 +14,6 @@
build/ build/
#Cleanup unused build files #Cleanup unused build files
*obj *.obj
*obj *.exp
*exp *.lib
*lib

View File

@@ -1,16 +1,17 @@
<img src="https://github.com/vaporvee/discord-sdk-godot/blob/main/project/assets/Banner_v1.png?raw=true"> <img src="https://github.com/vaporvee/discord-sdk-godot/blob/main/project/assets/Banner_v1.png?raw=true">
### This is an early version! In future versions there will be lobbies, invites, linux builds etc. very soon! ### This is an early version! In future versions there will be invites, user info etc. very soon!
Don't forget to run the following command **if you clone this project** or the godot-cpp folder will be empty Don't forget to run the following command **if you clone this project** or the godot-cpp folder will be empty
```sh ```sh
git submodule update --init git submodule update --init
``` ```
# Addon Usage :rocket: # Addon Usage :rocket:
1. [Download the addon](https://github.com/vaporvee/discord-sdk-godot/releases/latest/download/ADDON-Discord-SDK-Godot.zip/) 1. [Download the addon](https://github.com/vaporvee/discord-sdk-godot/releases/latest/download/ADDON-Discord-SDK-Godot.zip/)
2. Put the `discord-sdk-gd/` folder in a `addons/` folder in your Godot project 2. Put the `addons/` folder in your Godot project
3. Enable the addon in your Project Settings under "Plugins" and "DiscordSDK". (if it doesn't show up reopen the project) 3. Enable the addon in your Project Settings under "Plugins" and "DiscordSDK". (if it doesn't show up restart your project and try again)
4. Create an Application under https://discord.com/developers/applications and get the Application ID 4. Restart your project
5. (optional) Set images under "Rich Presence" and "Art Assets" and remember the keys 5. Create an Application under https://discord.com/developers/applications and get the Application ID
6. (optional) Set images under "Rich Presence" and "Art Assets" and remember the keys
```gdscript ```gdscript
extends Node extends Node
@@ -26,7 +27,7 @@ func _ready():
Discord_Activity.small_image_text = "Fighting the end boss! D:" Discord_Activity.small_image_text = "Fighting the end boss! D:"
Discord_Activity.start_timestamp = int(Time.get_unix_time_from_system()) # "02:41 elapsed" Discord_Activity.start_timestamp = int(Time.get_unix_time_from_system()) # "02:41 elapsed"
#Discord_Activity.end_timestamp = 2492978400 # "15:41 left" (but currently 31. 12. 2048 in unix time) # Discord_Activity.end_timestamp = int(Time.get_unix_time_from_system()) + 3600 # +1 hour in unix time
Discord_Activity.refresh() # Always refresh after changing the values! Discord_Activity.refresh() # Always refresh after changing the values!
@@ -37,12 +38,6 @@ func _ready():
### [Try a built demo](https://github.com/vaporvee/discord-sdk-godot/releases/latest/download/Demo-Export.zip) ### [Try a built demo](https://github.com/vaporvee/discord-sdk-godot/releases/latest/download/Demo-Export.zip)
:incoming_envelope: Still questions? write an [issue](https://github.com/vaporvee/discord-sdk-godot/issues)! I'll answer very fast :) :incoming_envelope: Still questions? write an [issue](https://github.com/vaporvee/discord-sdk-godot/issues)! I'll answer very fast :)
<br />
## Extra Info
- The Discord SDK itself doesn't build under Linux for some reason (I don't have a Mac so i don't even know if it's builds under OSX) its not well documented but I try as hard as i can to get it working crossplatform but at the time its only working under Windows... (But feel free to make pull requests btw)
- Its an early release some features aren't implemented only because i need a small amount of time not because it's not possible
<br /> <br />
<br /> <br />

View File

@@ -6,11 +6,11 @@ env = SConscript("godot-cpp/SConstruct")
# Check our platform specifics # Check our platform specifics
if env['platform'] == "macos": if env['platform'] == "macos":
discord_library = 'discord_game_sdk.dylib' discord_library = 'libdiscord_game_sdk.dylib'
libexportfolder = "/macos/" libexportfolder = "/macos/"
elif env['platform'] in ('linuxbsd', 'linux'): elif env['platform'] in ('linuxbsd', 'linux'):
discord_library = 'discord_game_sdk.so' discord_library = 'libdiscord_game_sdk.so'
libexportfolder = "/linux/" libexportfolder = "/linux/"
elif env['platform'] == "windows": elif env['platform'] == "windows":
@@ -27,7 +27,7 @@ else:
env.Append(LIBPATH=["lib/discord-game-sdk/"]) env.Append(LIBPATH=["lib/discord-game-sdk/"])
sources = Glob('src/discord-game-sdk-cpp/*.cpp') sources = Glob('src/discord-game-sdk-cpp/*.cpp')
env.Append(CPPPATH=['src/discord-game-sdk-cpp']) env.Append(CPPPATH=['src/discord-game-sdk-cpp'])
env.Append(LIBS=[discord_library.replace(".dll", "")]) env.Append(LIBS=["discord_game_sdk"])
# tweak this if you want to use different folders, or more folders, to store your source code in. # tweak this if you want to use different folders, or more folders, to store your source code in.
env.Append(CPPPATH=['src/']) env.Append(CPPPATH=['src/'])

View File

@@ -0,0 +1,4 @@
Version: 1.2
Windows: build-1
Linux: build-1
MacOS: build-1

View File

@@ -4,26 +4,26 @@ entry_symbol = "discordsdkgd_library_init"
[libraries] [libraries]
macos.debug = "bin/macos/discord_game_sdk_binding_debug.framework" macos.debug = "bin/macos/libdiscord_game_sdk_binding_debug.dylib"
macos.release = "bin/macos/discord_game_sdk_binding.framework" macos.release = "bin/macos/libdiscord_game_sdk_binding.dylib"
windows.debug.x86_64 = "bin/windows/discord_game_sdk_binding_debug.dll" windows.debug.x86_64 = "bin/windows/discord_game_sdk_binding_debug.dll"
windows.release.x86_64 = "bin/windows/discord_game_sdk_binding.dll" windows.release.x86_64 = "bin/windows/discord_game_sdk_binding.dll"
linux.debug.x86_64 = "bin/linux/discord_game_sdk_binding_debug.so" linux.debug.x86_64 = "bin/linux/libdiscord_game_sdk_binding_debug.so"
linux.release.x86_64 = "bin/linux/discord_game_sdk_binding.so" linux.release.x86_64 = "bin/linux/libdiscord_game_sdk_binding.so"
linux.debug.arm64 = "bin/linux/discord_game_sdk_binding_debug.so" linux.debug.arm64 = "bin/linux/libdiscord_game_sdk_binding_debug.so"
linux.release.arm64 = "bin/linux/discord_game_sdk_binding.so" linux.release.arm64 = "bin/linux/libdiscord_game_sdk_binding.so"
linux.debug.rv64 = "bin/linux/discord_game_sdk_binding_debug.so" linux.debug.rv64 = "bin/linux/libdiscord_game_sdk_binding_debug.so"
linux.release.rv64 = "bin/linux/discord_game_sdk_binding.so" linux.release.rv64 = "bin/linux/libdiscord_game_sdk_binding.so"
[dependencies] [dependencies]
macos.debug = "bin/macos/discord_game_sdk.framework" macos.debug = "bin/macos/libdiscord_game_sdk.dylib"
macos.release = "bin/macos/discord_game_sdk.framework" macos.release = "bin/macos/libdiscord_game_sdk.dylib"
windows.debug.x86_64 = "bin/windows/discord_game_sdk.dll" windows.debug.x86_64 = "bin/windows/discord_game_sdk.dll"
windows.release.x86_64 = "bin/windows/discord_game_sdk.dll" windows.release.x86_64 = "bin/windows/discord_game_sdk.dll"
linux.debug.x86_64 = "bin/linux/discord_game_sdk.so" linux.debug.x86_64 = "bin/linux/libdiscord_game_sdk.so"
linux.release.x86_64 = "bin/linux/discord_game_sdk.so" linux.release.x86_64 = "bin/linux/libdiscord_game_sdk.so"
linux.debug.arm64 = "bin/linux/discord_game_sdk.so" linux.debug.arm64 = "bin/linux/libdiscord_game_sdk.so"
linux.release.arm64 = "bin/linux/discord_game_sdk.so" linux.release.arm64 = "bin/linux/libdiscord_game_sdk.so"
linux.debug.rv64 = "bin/linux/ldiscord_game_sdk.so" linux.debug.rv64 = "bin/linux/libdiscord_game_sdk.so"
linux.release.rv64 = "bin/linux/discord_game_sdk.so" linux.release.rv64 = "bin/linux/libdiscord_game_sdk.so"

View File

@@ -0,0 +1,17 @@
extends Node
func _ready():
Discord_Activity.app_id = 1099618430065324082 # Application ID
print("Discord working: " + str(Discord_Activity.get_is_discord_working())) # A boolean if everything worked
Discord_Activity.details = "A demo activity by vaporvee#1231"
Discord_Activity.state = "Checkpoint 23/23"
Discord_Activity.large_image = "game" # Image key from "Art Assets"
Discord_Activity.large_image_text = "Try it now!"
Discord_Activity.small_image = "boss" # Image key from "Art Assets"
Discord_Activity.small_image_text = "Fighting the end boss! D:"
Discord_Activity.start_timestamp = int(Time.get_unix_time_from_system()) # "02:41 elapsed"
# Discord_Activity.end_timestamp = int(Time.get_unix_time_from_system()) + 3600 # +1 hour in unix time
Discord_Activity.refresh() # Always refresh after changing the values!

View File

@@ -5,6 +5,6 @@ func _export_file(path, type, features):
if features[2] == "windows": if features[2] == "windows":
add_shared_object("res://addons/discord-sdk-gd/bin/windows/discord_game_sdk.dll",[],"/") add_shared_object("res://addons/discord-sdk-gd/bin/windows/discord_game_sdk.dll",[],"/")
elif features[2] == "linux": elif features[2] == "linux":
add_shared_object("res://addons/discord-sdk-gd/bin/linux/discord_game_sdk.so",[],"/") add_shared_object("res://addons/discord-sdk-gd/bin/linux/libdiscord_game_sdk.so",[],"/")
elif features[2] == "macos": elif features[2] == "macos":
add_shared_object("res://addons/discord-sdk-gd/bin/macos/discord_game_sdk.dylib",[],"/") add_shared_object("res://addons/discord-sdk-gd/bin/macos/libdiscord_game_sdk.dylib",[],"/")

View File

@@ -3,5 +3,5 @@
name="DiscordSDK" name="DiscordSDK"
description="Discord Game SDK support for GDScript in Godot" description="Discord Game SDK support for GDScript in Godot"
author="vaporvee" author="vaporvee"
version="1.1" version="1.2"
script="plugin.gd" script="plugin.gd"

View File

@@ -8,8 +8,6 @@ func _enter_tree():
add_autoload_singleton("discord_coreupdater", "res://addons/discord-sdk-gd/discord_coreupdater.gd") add_autoload_singleton("discord_coreupdater", "res://addons/discord-sdk-gd/discord_coreupdater.gd")
add_export_plugin(loaded_exportplugin) add_export_plugin(loaded_exportplugin)
func disable_plugin(): func disable_plugin():
remove_autoload_singleton("discord_coreupdater") remove_autoload_singleton("discord_coreupdater")
remove_export_plugin(loaded_exportplugin) remove_export_plugin(loaded_exportplugin)