4 releases, newest first.
/fourinline preview board now cancels the game. The close guard reopened the board of every live seat - the rule that keeps a real game alive when one of its two players closes their window - so a preview session outlived the window it was played in. The next /fourinline preview was then refused with "you are already in a game" until the turn countdown surrendered the admin against themselves./fourinline top over a preview and closing it again returns to the game.Two new keys are merged into lang/messages_en.yml on boot, values preserved:
messages.preview.cancelledstatus.result-cancelledmessages.preview.started now says the board can be closed to end a preview; an existing server keeps its current text (the merge never overwrites a value you have).
/fourinline preview (admin)Starts a real game with you in both seats, so you can look at the menus - and play a whole
game through them - on a server with nobody else online. Made for editing guis/board.yml:
drop animation, turn countdown and its warning, surrender button, winning-line highlight and
end-of-game delay all behave exactly as in a normal game. Because both seats are yours, it is
your turn every time.
snfourinline.admin.preview (op), child of snfourinline.admin.messages.preview.started, messages.preview.ended and
messages.preview.ended-draw, merged into your lang/messages_en.yml on boot.The paths that walked "the two seats" assumed two different people. They now run once when both seats are one player, which is what stopped a preview from opening the board twice in a tick, playing the landing cue twice per move and the falling cue twice per animation frame.
skull-owner in guis/leaderboard.yml used %player_uuid%, a PlaceholderAPI token that resolves to the viewer, so the per-entry placeholder never ran. It now uses the {player_uuid} local form, which PlaceholderAPI cannot touch.board.yml and lobby.yml head bindings to the same {curly} convention.The gui files are value-preserving on update, so a server that already generated plugins/SnFourInLine/guis/leaderboard.yml keeps the old line. Either edit both skull-owner entries to "{player_uuid}" or delete the file to reseed it.
Connect Four played inside chest GUIs: invite a friend or list a public game in the lobby, bet in any server currency, let others spectate, and climb the leaderboard.
/fourinline invite, accept, reject) or public listings anyone can join from the lobby/fourinline spectate <player>)%snfourinline_wins% and friends)guis/*.yml), messages (lang/messages_en.yml), sounds, broadcasts, world restrictions, currencies and timers/fourinline reload, runtime debug toggle and automatic update notifications