openfrontio / openfrontio/OpenFrontIO

Encirclement does not work on map edges

Open
#4,635 7 comments 0 reactions 0 assignees View on GitHub
approved Stale
Dominant language
TypeScript
Stars
2.7k
Forks
1.4k
Avg merge
17h 43m
Merged PRs (30d)
310

Description

**Describe the bug**
So far I am aware of this strategy/feature "encirclement": if player A's land fully surrounds player B's land (NPC or not), then player B instantly loses and the land becomes owned by player A.

However, this does not work on map edges.

**To Reproduce**
Steps to reproduce the behavior:

1. Start near map edge (Player A)
2. Find a player that is at the map edge (Player B)
3. Surround Player B
4. No encirclement is triggered

**Expected behavior**
Encirclement should occur and Player B loses.

**Screenshots**
(Not screenshot, but an illustration of the situation.)

Consider this hypothetical scenario, where the colors are:
- White: unowned/neutral
- Red: Player A
- Blue: Player B
- Black: out-of-bounds area / map edge

Image

Then, Player A should have encircled Player B, and Player B should lose.

**Desktop (please complete the following information):**

- OS: Windows
- Browser: Firefox
- Version 152

**Additional context**

It may be a good idea to also check lake-side / ocean-side encirclement, to ensure encirclement still works as expected.

**Assignment**

- [ ] I'd like to be assigned to this issue and work on it myself

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the edge-of-map scenario described in the issue, then compare it with an encirclement beside a lake or ocean. Trace the encirclement check from the gameplay entry point; done means a player fully surrounded at a map edge loses and ownership changes, while existing non-edge behavior remains correct.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
game-dev
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
62/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.