Skip to content
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

feat: Round scoring + map transitions #973

Merged
merged 8 commits into from
Apr 20, 2024

Conversation

MaxCWhitehead
Copy link
Collaborator

This change adds basic components of scoring rounds and map transitions. When 1 or fewer players are alive, round is scored after a few seconds, and transitions to new map.

Round Scoring

Round scoring starts when one or fewer players are left. After a few seconds, winner is chosen. If last player dies before this, it is a draw.

I added a "programmer art" rendition of a +1 sprite that pops up over winners head, and grabbed this sound effect. Definitely can replace / upgrade these but wanted to get something in for now.

Map Transition

There is a new "All Maps" button on map select screen that creates a pool of all maps, otherwise can select single map. Next map is random, though due to fixed seed, I think ordering may be identical each time. Can improve this later on.

Map transition only occurs once all players have confirmed frame it occurred on (for network play). Game session is restarted, and net session runner + ggrs session are re-created with existing socket.

  • There's a bit of delay + black screen on map transition in network play due to ggrs session synchronizing before advancing. Something to improve in the future. In local it is instant.

Attachment Changes

Added a sync_flip and offset_inherits_rotation to give additional control on what is applied to attachment from parent. The win indicator is an attachment with a lerped offset over time to make it rise. Added an AttachmentEase component and some attachment meta types used by win indicator here.

@MaxCWhitehead MaxCWhitehead added this pull request to the merge queue Apr 20, 2024
Merged via the queue into fishfolk:main with commit b732fa4 Apr 20, 2024
8 checks passed
@MaxCWhitehead MaxCWhitehead deleted the tournament-flow branch April 20, 2024 01:38
DRuppFv pushed a commit to DRuppFv/jumpy that referenced this pull request Apr 20, 2024
This change adds basic components of scoring rounds and map transitions.
When 1 or fewer players are alive, round is scored after a few seconds,
and transitions to new map.

### Round Scoring
Round scoring starts when one or fewer players are left. After a few
seconds, winner is chosen. If last player dies before this, it is a
draw.

I added a "programmer art" rendition of a +1 sprite that pops up over
winners head, and grabbed this [sound
effect](https://freesound.org/people/Samuel54tw/sounds/705735/).
Definitely can replace / upgrade these but wanted to get something in
for now.

### Map Transition
There is a new "All Maps" button on map select screen that creates a
pool of all maps, otherwise can select single map. Next map is random,
though due to fixed seed, I think ordering may be identical each time.
Can improve this later on.

Map transition only occurs once all players have confirmed frame it
occurred on (for network play). Game session is restarted, and net
session runner + ggrs session are re-created with existing socket.
- There's a bit of delay + black screen on map transition in network
play due to ggrs session synchronizing before advancing. Something to
improve in the future. In local it is instant.

### Attachment Changes
Added a `sync_flip` and `offset_inherits_rotation` to give additional
control on what is applied to attachment from parent. The win indicator
is an attachment with a lerped offset over time to make it rise. Added
an `AttachmentEase` component and some attachment meta types used by win
indicator here.
DRuppFv pushed a commit to DRuppFv/jumpy that referenced this pull request Apr 20, 2024
This change adds basic components of scoring rounds and map transitions.
When 1 or fewer players are alive, round is scored after a few seconds,
and transitions to new map.

### Round Scoring
Round scoring starts when one or fewer players are left. After a few
seconds, winner is chosen. If last player dies before this, it is a
draw.

I added a "programmer art" rendition of a +1 sprite that pops up over
winners head, and grabbed this [sound
effect](https://freesound.org/people/Samuel54tw/sounds/705735/).
Definitely can replace / upgrade these but wanted to get something in
for now.

### Map Transition
There is a new "All Maps" button on map select screen that creates a
pool of all maps, otherwise can select single map. Next map is random,
though due to fixed seed, I think ordering may be identical each time.
Can improve this later on.

Map transition only occurs once all players have confirmed frame it
occurred on (for network play). Game session is restarted, and net
session runner + ggrs session are re-created with existing socket.
- There's a bit of delay + black screen on map transition in network
play due to ggrs session synchronizing before advancing. Something to
improve in the future. In local it is instant.

### Attachment Changes
Added a `sync_flip` and `offset_inherits_rotation` to give additional
control on what is applied to attachment from parent. The win indicator
is an attachment with a lerped offset over time to make it rise. Added
an `AttachmentEase` component and some attachment meta types used by win
indicator here.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant