Skip to content

Command /tictactoe

Command to challenge someone to play Tic-Tac-Toe command tictactoe

By default, the request is for Chinese Tic-Tac-Toe, but to play regular Tic-Tac-Toe, use /tictactoe nickname falsecommand tictactoe default

Rules of Chinese Tic-Tac-Toe

  1. Each player can place only 3 of their marks.
  2. If the game is not finished, the first mark placed by the player is removed and replaced with a new one.
  3. This continues in a cycle until the game ends.

This makes the game more challenging and strategic!

🌍 Localization

📂 Path localizations → язык.yml → command.tictactoe

⚖️ Default

yml
tictactoe:
  null-player: "<color:#ff7171><b>⁉</b> Игрок не найден"
  myself: "<color:#ff7171><b>⁉</b> Ты не можешь играть с самим собой"
  wrong-game: "<color:#ff7171><b>⁉</b> Этой игры не существует"
  wrong-move: "<color:#ff7171><b>⁉</b> Такой ход невозможен"
  wrong-by-player: "<color:#ff7171><b>⁉</b> Игра закончена, потому что один из игроков не в сети"
  symbol:
    empty: "<hover:show_text:\"<fcolor:1>Ход <move>\"><click:run_command:\"/tictactoe %d <move>\">☐</click></hover>"
    first: "<fcolor:2>☑</fcolor:2>"
    first-remove: "<color:#ff7171>☑</color:#ff7171>"
    first-win: "<color:#98FB98>☑</color:#98FB98>"
    second: "<fcolor:2>☒</fcolor:2>"
    second-remove: "<color:#ff7171>☒</color:#ff7171>"
    second-win: "<color:#98FB98>☒</color:#98FB98>"
  field: "<fcolor:1><br>|[#][#][#]| <title> <current_move> <br>|[#][#][#]| <br>|[#][#][#]| <last_move><br>"
  current-move: "<fcolor:2>☐ → <symbol></fcolor:2>"
  last-move: "<fcolor:2>Последний ход (<move>)</fcolor:2>"
  format-move: "<fcolor:2>Ход <player> </fcolor:2>"
  format-win: "<color:#98FB98><player> выйграл</color:#98FB98>"
  format-draw: "<color:#98FB98>Ничья 👬</color:#98FB98>"
  sender: "<fcolor:1>☐ Предложение сыграть в крестики-нолики отправлено для <display_name>"
  format-create: "<click:run_command:\"/tictactoe %d create\"><fcolor:1>☐ Есть предложение сыграть в крестики-нолики от <display_name>, принять? [+]"
yml
tictactoe:
  null-player: "<color:#ff7171><b>⁉</b> This player does not exist"
  myself: "<color:#ff7171><b>⁉</b> You can't play with yourself"
  wrong-game: "<color:#ff7171><b>⁉</b> This game does not exist"
  wrong-move: "<color:#ff7171><b>⁉</b> This step is not possible"
  wrong-by-player: "<color:#ff7171><b>⁉</b> This game ended because player quit"
  symbol:
    empty: "<hover:show_text:\"<fcolor:1>Move <move>\"><click:run_command:\"/tictactoe %d <move>\">☐</click></hover>"
    first: "<fcolor:2>☑</fcolor:2>"
    first-remove: "<color:#ff7171>☑</color:#ff7171>"
    first-win: "<color:#98FB98>☑</color:#98FB98>"
    second: "<fcolor:2>☒</fcolor:2>"
    second-remove: "<color:#ff7171>☒</color:#ff7171>"
    second-win: "<color:#98FB98>☒</color:#98FB98>"
  field: "<fcolor:1><br>|[#][#][#]| <title> <current_move> <br>|[#][#][#]| <br>|[#][#][#]| <last_move><br>"
  current-move: "<fcolor:2>☐ → <symbol></fcolor:2>"
  last-move: "<fcolor:2>Last move (<move>)</fcolor:2>"
  format-move: "<fcolor:2><player>'s move</fcolor:2>"
  format-win: "<color:#98FB98><player> won this game</color:#98FB98>"
  format-draw: "<color:#98FB98>The game ended in a draw 👬</color:#98FB98>"
  sender: "<fcolor:1>☐ An offer to play was sent to <display_name>"
  format-create: "<click:run_command:\"/tictactoe %d create\"><fcolor:1>☐ Received an invite to play tic-tac-toe with <display_name>, accept? [+]"

null-player

Message if the entered player is not found

myself

Message if the entered player tries to play with themselves

wrong-game

Message if the specified game does not exist

wrong-move

Message if the move is not possible

wrong-by-player

Message if one of the players has left the game

symbol

Messages for symbols

empty

Format message for an empty cell

first

Format message for the first player's cell

first-remove

Format message for removing the first player's cell

first-win

Format message for the winning cell of the first player

second

Format message for the second player's cell

second-remove

Format message for removing the second player's cell

second-win

Format message for the winning cell of the second player

field

Format message for the game field

current-move

Format message for the current move information

last-move

Format message for the last move information

format-move

Format message for announcing the move

format-win

Message upon winning

format-draw

Message for a draw

sender

Message for the sender when sending a request

format-create

Message for the recipient when receiving a request

⚙️ Setting

📂 Path command.yml → tictactoe

⚖️ Default

yml
tictactoe:
  enable: true
  aliases:
    - "tictactoe"
    - "ttt"
  cooldown:
    enable: false
  sound:
    enable: false

enable

Enables or disables the functionality of the module

aliases

List of aliases for using the command

ALIASES CAN BE ANYTHING

For example, newcommand, новаякоманда, ban, me, etc.

cooldown

Usage cooldown

FieldTypeExplanation
enablebooleanEnables the cooldown functionality
durationlongHow many ticks must pass between uses

HOW TO USE COOLDOWN?

Replace false with true and restart FlectonePulse using the /flectonepulse reload command. Additional cooldown settings will appear AFTER RELOADING.

The cooldown configuration will look like this:

yaml
cooldown:
  enable: true
  duration: 60

sound

Sound playback

FieldTypeExplanation
enablebooleanEnables sound functionality
volumefloatSound volume from 0 to 1.0
pitchfloatSound pitch from 0 to 1.0
categoryStringCategory from MASTER, MUSIC, RECORD, WEATHER, BLOCK, HOSTILE, NEUTRAL, PLAYER, AMBIENT, VOICE
nameStringSound name, for example minecraft:entity.llama.spit

HOW TO USE SOUND?

Replace false with true and restart FlectonePulse using the /flectonepulse reload command. Additional sound settings will appear AFTER RELOADING.

The sound configuration will look like this:

yaml
sound:
  enable: true
  volume: 1.0
  pitch: 1.0
  category: "HOSTILE"
  name: "minecraft:entity.llama.spit"

🔐 Permissions

📂 Path permission.yml → command.tictactoe

⚖️ Default

yml
tictactoe:
  name: "flectonepulse.module.command.tictactoe"
  type: TRUE
  cooldown-bypass:
    name: "flectonepulse.module.command.tictactoe.cooldown.bypass"
    type: OP
  sound:
    name: "flectonepulse.module.command.tictactoe.sound"
    type: TRUE

name

Permission name

type

Permission type

TypeExplanation
TRUEAvailable for any player
FALSEAvailable if granted separately (e.g., via LuckPerms)
OPAvailable for server operators
NOT_OPAvailable if granted separately (e.g., via LuckPerms)

cooldown-bypass

Permission to bypass the cooldown between uses

sound

Permission to use sound