chrismaltby / gb-studio

A quick and easy to use drag and drop retro game creator for your favourite handheld video game system
https://www.gbstudio.dev
MIT License
8.31k stars 465 forks source link

Player goes through walls in Shoot Em' Up #697

Open spark-slizer opened 3 years ago

spark-slizer commented 3 years ago

Describe the bug In a Shoot Em' Up scene, the player ignores collisions except when they are above or below them.

To Reproduce Steps to reproduce the behavior:

  1. Create a new Shoot Em' Up scene
  2. Add some collisions to block the player's path
  3. Run the game
  4. The player will clip right through the collisions

Expected behavior The player should be stopped by the collisions

Screenshots image

Platform (please complete the following information):

RichardULZ commented 3 years ago

Please expand on your expected behaviour, the autoscrol nature of this mode makes collision difficult, would you expect the whole scene to stop?

Adding background collision tests to this mode may decrease performance on regular gameboy, unsure by how much.

If the performance is lower, we could investigate a toggle to not test bg collision if the collision map is empty, keeping the current performance for existing games.

A work around for this is to use trigger volumes.

spark-slizer commented 3 years ago

Please expand on your expected behaviour, the autoscrol nature of this mode makes collision difficult, would you expect the whole scene to stop?

Adding background collision tests to this mode may decrease performance on regular gameboy, unsure by how much.

If the performance is lower, we could investigate a toggle to not test bg collision if the collision map is empty, keeping the current performance for existing games.

A work around for this is to use trigger volumes.

I'm not sure what others would need the collision to do but maybe there could be a tab in the Player on hit section where you can add events if the player hits a collision so you could set it so the player loses x amount of health or all of it.

I thought about the work around with triggers but it would be difficult if you reached the trigger limit and wanted to use the triggers for something else in the scene.

pblca commented 2 years ago

@RichardULZ Recommend removing bug label, replacing with enhancement, or possibly closing.