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

Specific platform ignoring #1457

Closed

Conversation

arthuro555
Copy link
Contributor

See #1339
Let a specific instance of a Platformer behavior ignore a specific instance of a Platform Behavior.

Only has a JS implementation.

I am not sure about the declaration of the extension, and on my current setup I cannot compile GDevelop.js so I cannot test the modifications. They seem to compile fine on circle ci though.

@4ian
Copy link
Owner

4ian commented Feb 23, 2020

For now I'm not entirely convinced we need to add this extra complexity in the code. :/
This forces us to use IDs, which is almost an anti-pattern that I reluctantly added to objects but that I would like to avoid as much as possible (risks of overflow, risk of IDs reused, if you delete a platform you still have its ID polluting the "ignored platform" array of all the behaviors that used to ignore it, if you create a new platform and for some reason reuse an ID, you now have a bug, etc...).

It's also partially solvable by disabling the behavior - though I agree it's not giving the exact same result because other platformer characters are also implied.

What do you think?

@arthuro555
Copy link
Contributor Author

I do think IDs are not the best way to do it but I don't see any other way of achieving this. But I also think this is important for multiplayer games. I think it's the most optimized way, even if it is not very optimal. Do you have any other ideas on how to implement it?

@4ian
Copy link
Owner

4ian commented Feb 24, 2020

Not really, but it's the goal of this PR to be finding the best solution :) As I said previously, IDs have all the risks that I wrote and I don't think they are addressed.

I don't have a better idea - but we'll always prefer to not have a feature rather than having one that is creating risks/potential bugs/hard to debug behaviors :/

@arthuro555
Copy link
Contributor Author

well, I'm closing this because there are too much potential unsolvable problems.

@arthuro555 arthuro555 closed this Mar 26, 2020
@arthuro555 arthuro555 deleted the feture/specific-platform-ignoring branch February 21, 2021 23:05
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.

None yet

2 participants