Description Classic multiplayer board/card games, Chess, Uno, and Skip-Bo in Minecraft! This plugin comes with a resource pack that allows 3D models of the pieces and cards, so it feels like you're actually in the game!
For Uno and Skip-Bo, if
ProtocolLib is active in the server (and the showCardDetail setting is false in ChessAndMore config), players will not be able to see each other's cards.
NOTE: If you are using 1.19+, make sure you follow the instructions on the ProtocolLib page to use their proper 1.19 version. (You get spammed with errors if you don't)
If you create any videos showcasing this plugin and want it to be featured here, join my
Discord and let me know!!
Resource Pack The resource pack you see in all of the example images/gifs is included in this plugin
The link to the pack is in the config once you load the plugin. You can either use that link in the "resource-pack" option in your server.properties to have it automatically apply to all of your players, or you can download it and apply it client-side.
If for some reason the link does not work anymore, check for an update on this page or join my
Discord server
Features
Chess
Basic Details: 2 Players
Setup To set a board up, simply type /chess create <BoardName>. You will start the board wizard and will be prompted to right-click on the northwest corner of the board, and then the southeast. And you're done! Simply stand on the side you want to play and you will see the pieces pop up!
NOTE: Please excuse any terrible moves in any of my gifs/photos, they're just trying to show off features lol (also
gif framerate does not reflect in-game framerate)
Selection Options When you select a piece, the options for where you can move it are highlighted. Like this:
Chess Notation With what applies to added features in this plugin, there are notations for each move you make.. if you actually know how to read them lol (I coded it and still don't understand them). The notation was sourced from
these conventions. This is what it looks like in-game:
Timer All boards now come with a timer on the side. You can set 1 minute, 2 minutes, 5 minutes, 10 minutes, 30 minutes, and no limit. The timers show up on the side of the board like normal chess matches like this:
Players set the timer before the game starts by right-clicking this clock that shows up on the side of the board when they join
Castling
En Passant
I've never been able to use this move in a game
Must get out of check If you are in check, only moves that will get you out of it are available.
Unable to put yourself IN check You are not able to move a piece if the destination would put you in check
Pawn Promotion
(please ignore that GIF artifact)
Checkmate If you put your opponent in check and they have no valid moves to get out of it, that's checkmate and you win.
Stalemate (draw)
Though there are 3 official ways to draw (insufficient material, no legal moves, and three-fold repetition), the only method in this plugin is when someone has no legal moves (but are not in check). This plugin was made with casual players in mind, so I didn't deem it necessary to add the other two. If you disagree with me, let me know in my Discord server!
Rotate Board You can also rotate the pieces by crouching before you click the southeast corner during setup.
The normal board will put white in the east, and black in the west:
The rotated board will put white in the south, and black in the north:
(don't ask me why I took these pictures not facing north...)
Board Size The requirements for the physical board are simply:
1. Must be a square
2. Must be a multiple of 8x8
Therefore, you can make LARGE boards, though the pieces do not scale:
Uno
Basic Details: - 2-9 Players
- Throw card to play it
- Type 'Uno' in chat to call uno before playing second to last card
- Right click the draw pile to draw cards (Or type "draw" in chat)
Game Options
Before starting the game, the host (first player to join the board) will be able to set the game options.
These are the options available:
Jump-In: If a player has exactly the same card (both number and color) as the top card of the pile, they will be given a chance to play it immediately, even if it's not their turn
(Look at the stacking gif for a visual example, they look the exact same. Sorry, playing until I find two identical cards for an example is too much work lol)
Swap 7 and 0: - Playing a 7 allows a player to choose another player to swap hands with
- Playing a 0 causes everyone to swap hands in the play order
(Item count represents card count for that hand)
(Yes, I'm playing against myself, what about it lol)
Stacking: Allows a player to stack +2 and +4 cards (You can't stack a +4 on a +2 or vice versa)
Force Play: If a player draws a card that can be played during their turn, it is automatically played
Draw To Match: If a player must draw a card, they must keep drawing until they get a card that can be played
Call Bluff: If a player plays a +4 when they could have played something else, the opposing player can call their bluff.
-If the attacker could have played another card, they get +4 and the opposing player does not have to draw.
-If the attacker could NOT have played another card, the opposing player must now draw +6 instead of +4.
The opposing player is shown the attacker's hand during this play
Card Privacy
If
ProtocolLib is active in the server (and the showCardDetail setting is false in ChessAndMore config), players will not be able to see each other's cards:
NOTE: If you are using 1.19+, make sure you follow the instructions on the ProtocolLib page to use their proper 1.19 version. (You get spammed with errors if you don't)
9+ Cards Menu System
Since the Minecraft hotbar is only 9 slots, when a player has more than 9 cards a menu system will activate. It has a steep learning curve, but once you get used to it, its very useful
This is an example of what it might look like:
In slot order:
1 - Red Cards Submenu
2 - Green Cards Submenu
3 - Yellow Cards Submenu
4 - Blue Cards Submenu
5 - Skip Cards Submenu
6 - Reverse Cards Submenu
7 - +2 Cards Submenu
8 - Wild Cards Submenu
9 - +4 Cards (Not a submenu, since there's only one version)
The item count represents how many cards are in the submenu.
Navigating Menus: If you right-click a menu, you will open the submenu. If you were to right-click the 3rd slot, this is what you would see:
\/
You can then play any of those yellow cards
Hold crouch to return to the main menu
Main Menu Shortcuts: The main menu will dynamically update depending on what the top card currently is.
Example:
Since the top card is a Blue 9:
- The blue submenu is highlighted to indicate any of the cards within could be played. (It displays a generic number card)
- The red submenu displays a red 9 to indicate you have a 9 that can be played. You can either enter the submenu and play it, or throw the card directly from the main menu and play it
- All other cards or submenus that cannot be played for that turn are grayed out
Skip-Bo
Basic Details: - 2-6 Players
- Right-click stack with card to play it
Since the cards are fairly large, the game does get crowded with more than 3 people, but 6 is possible. I recommend giving players room so they don't get confused about where their piles are, and where the game's build piles are. You can set where each player section is during setup
Right-click your discard/stock pile to select the top card in order to play it. It will show up in your 7th slot:
Game Options
Before starting the game, the host (first player to join the board) will be able to set the game options.
These are the options available:
Clear Discard: Players must also clear their entire discard pile to win
Card Start Count: The amount of cards each player will start with in their pile. (5-20 for games with 4+ players, 5-30 otherwise)
Card Privacy
If
ProtocolLib is active in the server (and the showCardDetail setting is false in ChessAndMore config), players will not be able to see each other's cards:
NOTE: If you are using 1.19+, make sure you follow the instructions on the ProtocolLib page to use their proper 1.19 version. (You get spammed with errors if you don't)
Commands Commands that require OP or the permission "chessandmore.admin":
/<chess/uno/skipbo> create <BoardName> - Starts the board creation wizard
/<chess/uno/skipbo> delete <BoardName> - Removes the board
/<chess/uno/skipbo> list - Lists all of the game's boards
No permission needed:
/<chess/uno/skipbo> leave - Leaves the current game you're in
If you "/chess leave" while in the middle of a game, the entire game will end and the board will restart.
However, if you disconnect from the server while in a game, you have 6 minutes to return before the game ends and the board resets
For the other two games, if you disconnect you have 2 turns to return before you are kicked from the board
Configs
Code (Text):
# Makes it so you can see the card a player is holding. False will censor it. (Applies to Uno and SkipBo)
showCardDetails: false
# Makes it so that any player can create and destroy boards. False requires the permission chessandmore.admin
anyoneCanCreate: false
# Uno Turn Speed
turnSpeed: 15
# Chess
# oooo secrets.... there's no way this name gives it away..
allPawnsChance: 0.01
# Sets whether valid moves are highlighted
hideValidMoves: false
Every word that is outputted by this plugin can be edited in this yml.
Code (Text):
Text:
alreadyCreating: You are already creating a board!
boardNotFound: That board does not exist
boardAlready: That board already exists
boardDeleted: The board has been successfully deleted
boardCreated: The board has been successfully created
startedWizard: Started the creation of a new board
list: 'List of Boards:'
listEmpty: There are no boards created!
notEnoughPlayers: There are not players to continue playing!
startingIn: '&7Starting in <seconds>...'
playerHost: ' - Host'
won: '&6&l<player> won!'
yesWord: '&2&lYes'
noWord: '&4&lNo'
leftGame: You left the game!
joinedGame: You joined the game!
# ----- CHESS TEXT -----
chessCommand: /chess leave
chessCommandOP: /chess (leave/create/delete/list) <boardName>
selectNW: Please select the North-West corner of the board
selectSE: Please select the South-East corner of the board (Sneak to rotate board)
sameY: The board must be on the same Y level!
southEastRequired: This corner must be SOUTH EAST of the last one
minimumSize: The board must be a MULTIPLE of 8 (8x8, 16x16, etc.)
squareRequired: The board must be a SQUARE
waiting: Waiting for other player ...
gameStarted: The game has started!
useLeave: Use "/chess leave" to leave at any time
oops: Oops! All Pawns!
turn: <color>s turn
resettingIn: resetting in <seconds>...
checkmate: CHECKMATE
stalemate: STALEMATE
pawnPromotion: Pawn Promotion
pawn: Pawn
rook: Rook
bishop: Bishop
knight: Knight
king: King
queen: Queen
# ----- SKIPBO TEXT -----
skipBoCommand: /skipbo leave
skipBoCommandOP: /skipbo (leave/create/delete/list) <boardName>
leftToConfirm: Right click again to change selection - Left click to confirm
selectBuildPile: Please select where the <state> of the building/draw pile should
be
selectPlayerPile: Please select where the <state> of the discard/stock pile should
be for player <playerNum>
stateStart: start
stateEnd: end
skipboTurnInfo: '&7Turn: &f<player>'
playerDisplayName: '&c<player>'
cardCountDisplay: '&9Cards Left: <cardCount>'
# ----- UNO TEXT -----
unoCommand: /uno leave
unoCommandOP: /uno (leave/create/delete/list) <boardName>
selectDrawPile: Please select where the draw pile should be
selectDiscardPile: Please select where the discard pile should be
unoTurnInfo: '&7Top Card: <card> &7Turn: &f<player>'
jumpInAlert: '&6Jump In!'
stackAlert: '&6Stack!'
skipped: '&c&lSkipped!'
reversed: Reversed!
swapped: Swapped Hands!
handsRotated: Hands Rotated!
callBluff: Call Bluff?
calledBluff: <decisionColor>&lCalled Bluff
correct: '&2&lCorrect!'
incorrect: '&4&lIncorrect!'
unoAnnouncement: '&c&lUNO'
noUno: '&8&lNo Uno..'
swappedHands: You now have <player>s hand!
# Do not add color - These are what the player types
uno: uno
draw: draw
SettingsMenu:
info: Info
startGame: Start Game
joinedPlayers: 'Joined players (<playerCount>):'
playerListColor: '&5<player>'
# Use '/' for a newline in any description option
# ----- SKIPBO SETTINGS MENU -----
skipboSettingsInventory: Skip-Bo Settings
clearDiscard: Clear Discard
clearDiscardDescription: Players must also clear their entire discard pile to
win
cardStartCount: Starting Card Count
cardStartCountDescription: The amount of cards each player will start with
skipboInfoDescription: Get rid of all your cards by/playing them in order!//Use
"skipbo leave" to leave at any time
# ----- UNO SETTINGS MENU -----
unoSettingsInventory: Uno Settings
jumpIn: Jump-In
jumpInDescription: If a player has exactly the same card /(both number and color)
as the top card of the pile, /they will be given a chance to play it immediately,
/even if its not their turn
swap70: Swap 7-0
swap70Description: -Playing a 7 allows a player to choose /another player to swap
hands with. /-Playing a 0 causes everyone to swap hands /in order of play
stacking: Stacking
stackingDescription: Allows a player to stack +2 and +4 cards
forcePlay: Force Play
forcePlayDescription: If a player draws a /card that can be played /during their
turn, they must play it
drawToMatch: Draw to Match
drawToMatchDescription: If a player draws a /card, they must /keep drawing until
they get a /card that can be played
bluffCall: Call Bluff
bluffCallDescription: If a player plays a +4 when they /could have played something
else, /the opposing player can call their bluff. /-If the attacker could /have
played another card, /they get +4 and the opposing player /does not have to
draw. /-If the attacker could NOT /have played another card, /the opposing player
must now /draw +6 instead of +4. /-The opposing player is shown the /attackers
hand during this play
unoInfoDescription: 'Hotbar Menus: /-Throw card to play it /-Right click menu
card /(after 9+) to enter submenu /-Crouch to return to main menu /-Main menu
automatically adjusts /for easy access to playable cards / /Call Outs: /-Use
chat and say "Uno" before /throwing your second to last card /-You can also
type "Draw" /instead of clicking the draw pile / /-Use "uno leave" to leave
at any time'
chooseColor: Choose Color
chooseHand: Choose Hand
CardNames:
# ----- SKIPBO CARDNAMES -----
joker: Joker
# ----- UNO CARDNAMES -----
red: Red
green: Green
yellow: Yellow
blue: Blue
skip: Skip
reverse: Reverse
plustwo: Plus Two
wild: Wild
plusfour: Plus Four
Contact
Because of the time-void that is University, I don't have time to actively develop plugins, which is actually why I thought I should just give these cool games out for free
However, if you find a game-breaking bug (which is likely since these plugins were developed separately, and have not been extensively tested as one plugin), or you just have questions on how the mechanics work, feel free to contact me in my
Discord server