diff --git a/common/src/main/resources/translations/pt_BR.yml b/common/src/main/resources/translations/pt_br.yml
similarity index 98%
rename from common/src/main/resources/translations/pt_BR.yml
rename to common/src/main/resources/translations/pt_br.yml
index 9f32f315..f97d554a 100644
--- a/common/src/main/resources/translations/pt_BR.yml
+++ b/common/src/main/resources/translations/pt_br.yml
@@ -1,93 +1,93 @@
-# Não altere isso
-# traduzido por https://github.com/goul4rt
-config-version: "33"
-exception.invalid_syntax: "Sintaxe inválida. Sintaxe correta: "
-exception.invalid_argument: "Argumento inválido. Motivo: "
-exception.invalid_sender: " não tem permissão para executar este comando. Deve ser do tipo "
-exception.unexpected: "Ocorreu um erro interno ao tentar executar este comando"
-exception.no_permission: "Desculpe, mas você não tem permissão para executar este comando"
-exception.no_such_command: "Comando desconhecido."
-argument.entity.notfound.player: ""
-argument.entity.notfound.entity: ""
-argument.parse.failure.time: "'' não é um formato de tempo válido"
-argument.parse.failure.material: "'' não é um nome de material válido"
-argument.parse.failure.enchantment: "'' não é um encantamento válido"
-argument.parse.failure.offlineplayer: "Nenhum jogador encontrado para a entrada ''"
-argument.parse.failure.player: "Nenhum jogador encontrado para a entrada ''"
-argument.parse.failure.world: "'' não é um mundo válido do Minecraft"
-argument.parse.failure.location.invalid_format: "'' não é uma localização válida. O formato necessário é ' "
-argument.parse.failure.location.mixed_local_absolute: "Não é possível misturar coordenadas locais e absolutas. (ou todas usam '^' ou nenhuma usa)"
-argument.parse.failure.namespacedkey.namespace: "Namespace inválido ''. Deve ser [a-z0-9._-]"
-argument.parse.failure.namespacedkey.key: "Chave inválida ''. Deve ser [a-z0-9/._-]"
-argument.parse.failure.namespacedkey.need_namespace: "Entrada inválida '', requer um namespace explícito"
-argument.parse.failure.boolean: "Não foi possível interpretar um booleano de ''"
-argument.parse.failure.number: "'' não é um número válido no intervalo a "
-argument.parse.failure.char: "'' não é um caractere válido"
-argument.parse.failure.string: "'' não é uma string válida do tipo "
-argument.parse.failure.uuid: "'' não é um UUID válido"
-argument.parse.failure.enum: "'' não está entre os seguintes: "
-argument.parse.failure.regex: "'' não corresponde a ''"
-argument.parse.failure.flag.unknown: "Flag desconhecida ''"
-argument.parse.failure.flag.duplicate_flag: "Flag duplicada ''"
-argument.parse.failure.flag.no_flag_started: "Nenhuma flag iniciada. Não sei o que fazer com ''"
-argument.parse.failure.flag.missing_argument: "Argumento ausente para ''"
-argument.parse.failure.flag.no_permission: "Você não tem permissão para usar ''"
-argument.parse.failure.color: "'' não é uma cor válida"
-argument.parse.failure.duration: "'' não é um formato de duração"
-argument.parse.failure.aggregate.missing: "Componente ausente ''"
-argument.parse.failure.aggregate.failure: "Componente inválido '': "
-argument.parse.failure.either: "Não foi possível resolver ou de ''"
-argument.parse.failure.namedtextcolor: "'' não é uma cor de texto nomeada"
-command.reload.success: "Recarregado. Levou ms."
-command.item.failure.not_exist: "Item [] não existe."
-command.item.give.success: "Item x concedido com sucesso."
-command.item.get.success: "x obtido com sucesso."
-command.item.import.failure.no_item: "Você não pode importar ar"
-command.item.import.success: "Item [] foi salvo em /plugins/CustomFishing/imported_items.yml"
-command.fish_finder.possible_loots: "Possíveis loots aqui: "
-command.fish_finder.no_loot: "Nenhum loot encontrado aqui"
-command.fish_finder.split_char: ", "
-command.competition.failure.not_exist: "Competição não existe."
-command.competition.failure.no_competition: "Não há competição em andamento."
-command.competition.stop.success: "Competição atual interrompida."
-command.competition.end.success: "Competição encerrada."
-command.competition.start.success: "Competição iniciada."
-command.bag.edit.failure.unsafe: "Não é possível editar a bolsa de pesca de um jogador ativo em outro servidor vinculado."
-command.bag.edit.failure.never_played: "O jogador nunca entrou no servidor. Não é possível modificar uma bolsa de pesca inexistente."
-command.bag.open.success: "Bolsa de pesca de aberta com sucesso"
-command.bag.open.failure.not_loaded: "Falha ao abrir o mercado para porque os dados não estão carregados"
-command.data.failure.not_loaded: "Os dados não foram carregados. Por favor, reentre no servidor. Se o problema persistir, entre em contato com o administrador."
-command.market.open.success: "Interface de mercado para aberta com sucesso"
-command.market.open.failure.not_loaded: "Falha ao abrir o mercado para porque os dados não estão carregados"
-command.data.unlock.success: "Dados desbloqueados com sucesso para "
-command.data.import.failure.not_exists: "Esse arquivo não existe"
-command.data.import.failure.invalid_file: "Esse arquivo é inválido"
-command.data.import.failure.player_online: "Por favor, expulse todos os jogadores online antes de usar este comando"
-command.data.import.start: "Importando..."
-command.data.import.progress: "Progresso: /"
-command.data.import.success: "Dados importados com sucesso"
-command.data.export.failure.player_online: "Por favor, expulse todos os jogadores online antes de usar este comando"
-command.data.export.start: "Exportando..."
-command.data.export.progress: "Progresso: /"
-command.data.export.success: "Dados exportados com sucesso"
-command.statistics.failure.not_loaded: "Os dados não foram carregados para esse jogador"
-command.statistics.failure.unsupported: "Operação não suportada"
-command.statistics.modify.success: "Estatísticas de pesca para modificadas com sucesso"
-command.statistics.reset.success: "Estatísticas de pesca para redefinidas com sucesso"
-command.statistics.query.size: "Tamanhos máximos: "
-command.statistics.query.amount: "Quantidade de peixes capturados: "
-command.debug.loot.failure.rod: "Segure uma vara de pesca antes de usar este comando"
-command.debug.loot.failure.no_loot: "Nenhum loot disponível"
-command.debug.loot.success: "Loots disponíveis: "
-competition.no_score: "Sem pontuação"
-competition.no_player: "Sem jogador"
-competition.no_rank: "Sem classificação"
-competition.goal.catch_amount: "Quantidade de peixes capturados"
-competition.goal.max_size: "Maior peixe capturado"
-competition.goal.min_size: "Menor peixe capturado"
-competition.goal.total_score: "Pontuação total dos peixes capturados"
-competition.goal.total_size: "Tamanho total dos peixes capturados"
-format.day: "d"
-format.hour: "h"
-format.minute: "m"
-format.second: "s"
+# Não altere isso
+# traduzido por https://github.com/goul4rt
+config-version: "33"
+exception.invalid_syntax: "Sintaxe inválida. Sintaxe correta: "
+exception.invalid_argument: "Argumento inválido. Motivo: "
+exception.invalid_sender: " não tem permissão para executar este comando. Deve ser do tipo "
+exception.unexpected: "Ocorreu um erro interno ao tentar executar este comando"
+exception.no_permission: "Desculpe, mas você não tem permissão para executar este comando"
+exception.no_such_command: "Comando desconhecido."
+argument.entity.notfound.player: ""
+argument.entity.notfound.entity: ""
+argument.parse.failure.time: "'' não é um formato de tempo válido"
+argument.parse.failure.material: "'' não é um nome de material válido"
+argument.parse.failure.enchantment: "'' não é um encantamento válido"
+argument.parse.failure.offlineplayer: "Nenhum jogador encontrado para a entrada ''"
+argument.parse.failure.player: "Nenhum jogador encontrado para a entrada ''"
+argument.parse.failure.world: "'' não é um mundo válido do Minecraft"
+argument.parse.failure.location.invalid_format: "'' não é uma localização válida. O formato necessário é ' "
+argument.parse.failure.location.mixed_local_absolute: "Não é possível misturar coordenadas locais e absolutas. (ou todas usam '^' ou nenhuma usa)"
+argument.parse.failure.namespacedkey.namespace: "Namespace inválido ''. Deve ser [a-z0-9._-]"
+argument.parse.failure.namespacedkey.key: "Chave inválida ''. Deve ser [a-z0-9/._-]"
+argument.parse.failure.namespacedkey.need_namespace: "Entrada inválida '', requer um namespace explícito"
+argument.parse.failure.boolean: "Não foi possível interpretar um booleano de ''"
+argument.parse.failure.number: "'' não é um número válido no intervalo a "
+argument.parse.failure.char: "'' não é um caractere válido"
+argument.parse.failure.string: "'' não é uma string válida do tipo "
+argument.parse.failure.uuid: "'' não é um UUID válido"
+argument.parse.failure.enum: "'' não está entre os seguintes: "
+argument.parse.failure.regex: "'' não corresponde a ''"
+argument.parse.failure.flag.unknown: "Flag desconhecida ''"
+argument.parse.failure.flag.duplicate_flag: "Flag duplicada ''"
+argument.parse.failure.flag.no_flag_started: "Nenhuma flag iniciada. Não sei o que fazer com ''"
+argument.parse.failure.flag.missing_argument: "Argumento ausente para ''"
+argument.parse.failure.flag.no_permission: "Você não tem permissão para usar ''"
+argument.parse.failure.color: "'' não é uma cor válida"
+argument.parse.failure.duration: "'' não é um formato de duração"
+argument.parse.failure.aggregate.missing: "Componente ausente ''"
+argument.parse.failure.aggregate.failure: "Componente inválido '': "
+argument.parse.failure.either: "Não foi possível resolver ou de ''"
+argument.parse.failure.namedtextcolor: "'' não é uma cor de texto nomeada"
+command.reload.success: "Recarregado. Levou ms."
+command.item.failure.not_exist: "Item [] não existe."
+command.item.give.success: "Item x concedido com sucesso."
+command.item.get.success: "x obtido com sucesso."
+command.item.import.failure.no_item: "Você não pode importar ar"
+command.item.import.success: "Item [] foi salvo em /plugins/CustomFishing/imported_items.yml"
+command.fish_finder.possible_loots: "Possíveis loots aqui: "
+command.fish_finder.no_loot: "Nenhum loot encontrado aqui"
+command.fish_finder.split_char: ", "
+command.competition.failure.not_exist: "Competição não existe."
+command.competition.failure.no_competition: "Não há competição em andamento."
+command.competition.stop.success: "Competição atual interrompida."
+command.competition.end.success: "Competição encerrada."
+command.competition.start.success: "Competição iniciada."
+command.bag.edit.failure.unsafe: "Não é possível editar a bolsa de pesca de um jogador ativo em outro servidor vinculado."
+command.bag.edit.failure.never_played: "O jogador nunca entrou no servidor. Não é possível modificar uma bolsa de pesca inexistente."
+command.bag.open.success: "Bolsa de pesca de aberta com sucesso"
+command.bag.open.failure.not_loaded: "Falha ao abrir o mercado para porque os dados não estão carregados"
+command.data.failure.not_loaded: "Os dados não foram carregados. Por favor, reentre no servidor. Se o problema persistir, entre em contato com o administrador."
+command.market.open.success: "Interface de mercado para aberta com sucesso"
+command.market.open.failure.not_loaded: "Falha ao abrir o mercado para porque os dados não estão carregados"
+command.data.unlock.success: "Dados desbloqueados com sucesso para "
+command.data.import.failure.not_exists: "Esse arquivo não existe"
+command.data.import.failure.invalid_file: "Esse arquivo é inválido"
+command.data.import.failure.player_online: "Por favor, expulse todos os jogadores online antes de usar este comando"
+command.data.import.start: "Importando..."
+command.data.import.progress: "Progresso: /"
+command.data.import.success: "Dados importados com sucesso"
+command.data.export.failure.player_online: "Por favor, expulse todos os jogadores online antes de usar este comando"
+command.data.export.start: "Exportando..."
+command.data.export.progress: "Progresso: /"
+command.data.export.success: "Dados exportados com sucesso"
+command.statistics.failure.not_loaded: "Os dados não foram carregados para esse jogador"
+command.statistics.failure.unsupported: "Operação não suportada"
+command.statistics.modify.success: "Estatísticas de pesca para modificadas com sucesso"
+command.statistics.reset.success: "Estatísticas de pesca para redefinidas com sucesso"
+command.statistics.query.size: "Tamanhos máximos: "
+command.statistics.query.amount: "Quantidade de peixes capturados: "
+command.debug.loot.failure.rod: "Segure uma vara de pesca antes de usar este comando"
+command.debug.loot.failure.no_loot: "Nenhum loot disponível"
+command.debug.loot.success: "Loots disponíveis: "
+competition.no_score: "Sem pontuação"
+competition.no_player: "Sem jogador"
+competition.no_rank: "Sem classificação"
+competition.goal.catch_amount: "Quantidade de peixes capturados"
+competition.goal.max_size: "Maior peixe capturado"
+competition.goal.min_size: "Menor peixe capturado"
+competition.goal.total_score: "Pontuação total dos peixes capturados"
+competition.goal.total_size: "Tamanho total dos peixes capturados"
+format.day: "d"
+format.hour: "h"
+format.minute: "m"
+format.second: "s"
diff --git a/gradle.properties b/gradle.properties
index dc63f517..d9b583ef 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -5,7 +5,7 @@ config_version=38
project_group=net.momirealms
# Supported languages
-lang=en,zh_cn,uk,ru
+lang=en,zh_cn,uk,ru,pt_br
# Dependency settings
paper_version=1.20.4