Giter Site home page Giter Site logo

godotsteam / godotsteam-example-project Goto Github PK

View Code? Open in Web Editor NEW
71.0 3.0 11.0 1.5 MB

An example project for GodotSteam and Godot version 3 / 4.

Home Page: https://godotsteam.com

License: MIT License

GDScript 100.00%
game-development gamedev godot godot-engine godotengine steam-api steamworks

godotsteam-example-project's Introduction

GodotSteam 3.x Example Project

This is a basic example of how GodotSteam can work in your game. It is based on the tutorials from the documentation. This example project is meant for the Godot 3.x module but can be adapted for GDNative.

[Looking for a different version? Godot 4.x GDNative

Current Build

This version covers:

  • Initializing Steamworks
  • Loading and setting achievements and statistics
    • Now utilizes both current and user statistics
  • Firing achievements
  • New networking messages class
  • Loading player avatars
  • Creating a lobby
  • Lobby message chat
  • Getting lobby lists from Steam
  • P2P packet sending / reading
  • Joining a lobby
  • Achievement icons
  • Some input functions
  • Authentication
  • Steam Voice

Work-in-progress:

  • Inputs
  • Networking Messages
  • Music
  • Music Remote

Quick How-To

  • Download this repository and unpack it.
  • Load it into the Godot editor that has been compiled with the GodotSteam module.
  • Make sure the steam_appid.txt is in the same folder as your Godot editor executable.
  • Make sure Steam is running.

Donate

Pull-requests are the best way to help the project out but you can also donate through Github Sponsors, Ko-Fi or Paypal!

License

MIT license

godotsteam-example-project's People

Contributors

deozaan avatar gramps avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

godotsteam-example-project's Issues

Syntax error on voice.gd on godot 4.1.4

Hi,

I tried to run the latest godot 4 example with GodotSteam 4.1.4 pre-compile version.
When trying to make a build, it didn't work because of a syntax error on the voice.gd script.

It happens because it seems that on the 4.1.x versions, the cast in for loops is not possible.

voice.gd (l.142)
for i: int in range(0, mini(local_playback.get_frames_available() * 2, local_voice_buffer.size()), 2):

I tested on 4.2.2 pre-compile version and it works, so I am pretty sure that a little PR is needed.

Lobby server duplicates on the open lobby list pressed event

Hi,

I believe there is a small mistake on the method "_on_open_lobby_list_pressed" in the lobby.gd script in both godot 3 and 4 examples.

Each time the method "_on_open_lobby_list_pressed" is called, servers are added to the "lobbies_list_vbox". But this list is not freed before the "Steam.requestLobbyList()" call, so after few open/close lots of duplicates are added more and more.

The method "_on_refresh_pressed" on the same script just below does actually free the "lobbies_list_vbox" children before the "Steam.requestLobbyList()" call and it works as intended without duplicates.

Please check the screenshot for more informations.

Capture d’écran 2024-06-11 211219

Signal misspelling on lobby send message button

Hi again,

I tried to run the latest godot 4 example with GodotSteam 4.1.4 pre-compile version.
I've found that there is a small misspelling on the signal of the button Send child of "Messaging" on the lobby scene.

The signal is connected to the signal "_on_Send_Chat_pressed" where the actual method name is "_on_send_chat_pressed".

Please check the screenshot for more informations.

Capture d’écran 2024-06-11 190332

Error in code

This is the error that comes up on startup:
res://src/global.gd:23 - Parse Error: The identifier "Steam" isn't declared in the current scope.

Godot 3.5.3

123

Running example with latest GodotSteam release

Hi,

I was trying to run the latest example with GodotSteam latest release.
That didnt work however, the 2nd player that joins (I just run the project twice) never really joins. No debug output either,

Any ideas?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.