-
Notifications
You must be signed in to change notification settings - Fork 258
Champ learner assets #1851
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
base: main
Are you sure you want to change the base?
Champ learner assets #1851
Conversation
… champ_combat.tscn
|
Play this branch at https://play.threadbare.game/branches/endlessm/champ-learner-assets. (This launches the game from the start, not directly at the change(s) in this pull request.) |
|
The latest commit adds sound effects to the rocks submerging. I decided to make each instance of the long rock nodes in the sequence puzzle scene unique, so now each one can be assigned a sound effect. Let me know if it would make more sense to remove the uniqueness, as this would enforce that the learner needs to set all 10 rocks to the same sound effect. (I have a default sound effect, the memory collection sound, which overrides the sound effects for all of them if the last one is left empty when they are not unique). |
|
I am unable to cross the 4th set of rocks, as none of the rocks clicked enable passage. Is this intentional? I think that the whole storyquest should be able to be played through without altering code so that competitors who are replacing certain assets don't have to fix code in order to see their art or music in action. |
There is a bug where I am sometimes knocked back incorrectly but the puzzle can be solved: Screencast.From.2026-01-23.16-02-33.mp4 |
It seems like something is getting out of sync with the submerging and interacting. I wonder if it would also be beneficial to switch the Player.Mode to Player.Mode.DEFEATED when an incorrect rock is interacted with. Then you would not be able to sneak another attempt or move before getting reset. I have been prioritizing the requests for learner input documentation, explicitly graying out/exporting variables to be changed, and working on mini game three, but I can try to troubleshoot this as well. This would also be a good time to add in some of the review suggestions you had made on the initial PR. |
|
The level can be completed - there are bugs but no software is perfect. I think we should track such bugs separately. |
|
|
||
| [node name="Top" parent="OnTheGround/SequencePuzzle/Objects" instance=ExtResource("5_tf43i")] | ||
| position = Vector2(190, -194) | ||
| audio_stream = ExtResource("7_mtlrl") |
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.
This shouldn't be necessary because you've also changed it in the scene that this is instancing!
| [node name="Background Music" type="AudioStreamPlayer2D" parent="."] | ||
| stream = ExtResource("1_m7ukv") | ||
| autoplay = true |
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.
We have a specific node for background music. Please make these instances of scenes/game_elements/props/background_music/background_music.tscn. This node handles cross-fading between levels. It also makes sure that the music is in the correct channel so that it responds to the music volume control in settings.
| collision_mask = 0 | ||
| script = ExtResource("1_flhem") | ||
| sprite_frames = ExtResource("2_as5uj") | ||
| audio_stream = ExtResource("3_2vrsm") |
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.
If you change it here as well, on the root node of champ_sequence_puzzle_object.tscn, then you won't need to re-set it in every scene that uses it.
| [editable path="OnTheGround/Objects/Object1"] | ||
| [editable path="OnTheGround/Objects/Object2"] | ||
| [editable path="OnTheGround/Objects/Object3"] |
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.
Why do you need editable children here? What properties are expected to be modified? Could they be exported from buoy.tscn instead? Or can they be edited in buoy.tscn for all instances?
(These are all just questions.)
| @onready var area_2d: Area2D = $AnimatedSprite2D/Area2D | ||
|
|
||
| ## Audio Stream Player for rock sound effects | ||
| @export var audio_player: AudioStreamPlayer2D |
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.
I think you should add this to the champ_long_rock scene and assign it with $ as with the other nodes above.
| audio_player = AudioStreamPlayer2D.new() | ||
| if not splash_sound: | ||
| print("Defauklt") | ||
| audio_player.stream = preload("res://assets/third_party/sounds/collectibles/MemoryCollectable.ogg") |
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.
You should make this the default value of the splash_sound property, and then unconditionally set it on the audio_player node.
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.
Or alternatively default to no sound. AudioStreamPlayer2D.play() does the right thing if no stream is set (I think).
| [node name="LongRocks" type="Node2D" parent="."] | ||
|
|
||
| [node name="ChampLongRock" parent="LongRocks" instance=ExtResource("3_bvcb0")] | ||
| unique_name_in_owner = true |
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.
Why do these need unique names?
| dialogue = ExtResource("19_27hsp") | ||
| sprite_frames = ExtResource("20_ey61o") | ||
|
|
||
| [node name="Sound Effects" type="AudioStreamPlayer2D" parent="."] |
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.
What is this one for?
When you add new AudioStreamPlayer(2D) nodes please add them to the appropriate bus. In this case, SFX.
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.

This PR addresses some of the additions for learner contributions outlined in the Champy GDD.