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

Preparing for a siege #402

Closed
NeotenySS opened this issue Oct 31, 2021 · 2 comments · Fixed by #404
Closed

Preparing for a siege #402

NeotenySS opened this issue Oct 31, 2021 · 2 comments · Fixed by #404
Labels
enhancement New feature or request

Comments

@NeotenySS
Copy link

The allies simply break the alliance.
Then they declare each other as enemies and begin a siege between themselves and lead it for 3 days.
After that, they score points so that the attacker loses at the end of the siege.
This avoids a siege every 3 days.
I think this exploit.

Solve:

Make an event.

  1. The attacker places a flag to attack the city.
  2. A message appears in the chat that the attackers have placed a siege camp near the city (also add a function for the discord hook to display information).
  3. A bonfire appears (instead of a flag), everyone can enter the territory where this camp is located (even those who are not involved in the siege).
  4. The attacker must score 50 points (configurable).
  5. The attacker is given 7 points once a minute for the player who is in the camp zone (you can adjust the number of points).
  6. The duration of the camp is 10 minutes (you can adjust the minutes).
  7. If the attacker did not score points, then the preparation failed and the siege was not confirmed (the attacker lost).
  8. If the attacker scores enough points when the timer expires, the siege is confirmed and the siege flag appears instead of the costa.

P.S .: In the case of point 7, if the attacker loses, then he cannot re-place the camp to confirm the real siege within 12 hours (can be configured from 1 hour to 24 hours).

I hope you understand what I mean, it helps to fix exploit where allies use immunity to other sieges while waging war among themselves.
Maybe you will have a better solution or an alternative, I will be very happy.

@NeotenySS NeotenySS added the enhancement New feature or request label Oct 31, 2021
@LlmDl
Copy link
Member

LlmDl commented Oct 31, 2021

Sounds like you want a period of time where an attacker could be prevented from making a Siege at all, which would prevent two friendly nations from doing a mock siege, by allowing a third party to shut down the siege.

@NeotenySS
Copy link
Author

Sounds like you want a period of time where an attacker could be prevented from making a Siege at all, which would prevent two friendly nations from doing a mock siege, by allowing a third party to shut down the siege.


Yes, because the allies found a way to simulate a siege so that the real enemy could not capture the city. This is bad.

LlmDl added a commit that referenced this issue Nov 17, 2021
Object collects all the information required for the
PreSiegeWarStartEvent and starting the actual Siege.

Upon creation, a SiegeCamp begins a 10 minute period where on each
minute if the attackers are present within the TimedPointZone, the
attackers gain 7 points. After the 10 minute period, if the Attackers
have 50 points the Siege will begin.

Closes #402.

TODO:
- [ ] Language strings.
- [ ] Configuration section for points, times.
- [ ] Basic testing.
LlmDl added a commit that referenced this issue Nov 18, 2021
* Add SiegeCamp object, created when a Siege is about to start.

Object collects all the information required for the
PreSiegeWarStartEvent and starting the actual Siege.

Upon creation, a SiegeCamp begins a 10 minute period where on each
minute if the attackers are present within the TimedPointZone, the
attackers gain 7 points. After the 10 minute period, if the Attackers
have 50 points the Siege will begin.

Closes #402.

* Add failedSiegeCamp cooldown feature.

* Add comments and javadocs.

* Translate new strings.

* Make SiegeCamps optional, add configurable SiegeCamp settings. Add
broadcasts informing server of SiegeCamp session.

* Fixes for issues found in testing.

* Re-test that the nation still has money at the end of the SiegeCamp
session.

* Protect the banner block during a SiegeCamp session.

* Add PreSiegeCampEvent.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants