-
Notifications
You must be signed in to change notification settings - Fork 0
"Demo Refresh" Updates #2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
cstavitsky
wants to merge
6
commits into
godot-4.5
Choose a base branch
from
demo_refresh_updates
base: godot-4.5
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
6 commits
Select commit
Hold shift + click to select a range
ce27044
minor demo updates
cstavitsky d4c49d3
Update README.md
cstavitsky 125d4f4
Update README.md
cstavitsky 08a2bb3
update readme per code review
cstavitsky efc92a1
Merge branch 'demo_refresh_updates' of https://github.com/sentry-demo…
cstavitsky ec14df1
fix header
cstavitsky File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,6 +4,95 @@ A sample Godot game called "Sentry Jump". The updated demo project lives in the | |
|
||
 | ||
|
||
## Getting Started (No Godot Experience Required) | ||
|
||
If you're new to Godot, follow these simple steps to run the demo: | ||
|
||
### Prerequisites | ||
|
||
- Download and install [Godot 4.5-dev4](https://godotengine.org/article/dev-snapshot-godot-4-5-dev-4/#downloads) or newer for your operating system | ||
- Extract the Godot executable (Godot.app) to a location on your computer | ||
- Clone this demo repo locally (`git clone [email protected]:sentry-demos/godot.git`) | ||
|
||
### Step 1: Open Godot | ||
|
||
1. Launch Godot from your downloaded location | ||
|
||
### Step 2: Import the Project | ||
|
||
1. In the Project Manager, click the **"Scan"** button (highlighted in the left panel) | ||
2. In the file browser dialog that appears, navigate to the folder containing this project | ||
3. Select/double-click the folder that contains `project.godot`, `README.md`, and the `src` folder | ||
4. Click **"Select Current Folder"** to import the project | ||
|
||
 | ||
|
||
 | ||
|
||
### Step 3: Open the Project | ||
|
||
1. Once imported, you'll see "Sentry Jump" appear in your project list | ||
2. Select the "Sentry Jump" project (it will be highlighted) | ||
3. Click **"Edit"** to open the project in the Godot editor | ||
|
||
 | ||
|
||
### Step 4: Run the Game | ||
|
||
1. In the Godot editor, you'll see various panels and a 3D viewport | ||
2. Look for the **Play button** (▶️) in the top-right corner of the editor | ||
3. Click the **Play button** to start the game | ||
|
||
 | ||
|
||
### Step 5: Play the Demo And Trigger a Runtime Error | ||
|
||
**Game Controls:** | ||
|
||
- **Arrow keys**: Move the character left/right | ||
- **Spacebar**: Jump | ||
- **F key**: Toggle fullscreen mode | ||
- **R key**: Reset the scene | ||
|
||
**Objective:** Jump to the red flag on the right. When you reach it, the demo will intentionally cause a runtime error (not crash) to showcase Sentry's error reporting capabilities! | ||
|
||
**Note:** Most errors developers deal with in Godot are runtime non-crash errors. This is because the game logic is usually implemented in a scripting language, and 99% of the time errors don’t cause a crash. | ||
|
||
 | ||
|
||
### (Optional) Step 6: Jump Into the Crash Zone to trigger a crash | ||
|
||
When the player jumps into the "Crash Zone," the game triggers a crash in the `C++` gamelogic library. This is meant to illustrate a crash connected to some native code. | ||
|
||
 | ||
|
||
### (Extremely Optional) Step 7: Fall off the platform to trigger another runtime error | ||
|
||
If the player goes off the platform and falls down, they reach the limits of the level, resulting in another runtime error. | ||
|
||
**Note:** (I'd skip this during a live demo. It's redundant since you already jumped to the flag to generate a runtime error, but you can do it if you want an additional runtime error for any reason) | ||
|
||
 | ||
|
||
### Troubleshooting | ||
|
||
- If you get import errors, ensure you're using Godot 4.5-dev4 or newer | ||
- Make sure you're selecting the folder that contains `project.godot`, not a subfolder | ||
- The game window may appear behind the editor - check your taskbar/dock | ||
|
||
## Advanced Usage | ||
|
||
### Automate the game without opening Godot Studio | ||
|
||
You can also run the game (and make the character jump to the flag) from the command line. This is used to generate bulk demo data, I recommend against running this in a live demo context. | ||
|
||
```bash | ||
# On macOS | ||
$ /Users/yourname/Downloads/Godot.app/Contents/MacOS/Godot --path /path/to/sentry-demos/godot/directory/you/cloned --automate | ||
``` | ||
|
||
 | ||
|
||
## Talk slides | ||
|
||
https://docs.google.com/presentation/d/1mU0HEeOpR0whLYLtfTzlbiIXN4wYUssLNChutvJAeJQ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,14 +3,14 @@ extends Area2D | |
|
||
|
||
@export var animation_player: AnimationPlayer | ||
@export var victory_animation: StringName = "Dance" | ||
@export var dance_victory_animation: StringName = "Dance" | ||
|
||
|
||
func _play_victory_animation(): | ||
# Results in error since "victory" animation doesn't exist. | ||
var goal_name: String = self.name | ||
SentrySDK.add_breadcrumb("Reached: " + goal_name, "Milestone") | ||
animation_player.play(victory_animation) | ||
animation_player.play(dance_victory_animation) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. (this is only updated because we want the suspect commit to show something as recent as possible) |
||
|
||
|
||
func _on_body_entered(_player: CharacterBody2D): | ||
|
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No such thing as "Godot Studio". We usually refer to editor as "Godot editor" or just "Godot Engine". You can pick whichever you like :)