This commit is contained in:
Louis Mazin 2025-12-09 13:32:25 +01:00
parent c1ed5c0db1
commit 366657de52

View File

@ -14,11 +14,6 @@ const parseLogMessage = (log) => {
// Format réel de log Palworld:
// [2025-12-08 21:47:17] [CHAT] <LouisMazin> !lier ABC123
// Afficher tous les logs de chat pour déboguer
if (log.includes('[CHAT]')) {
console.log('💬 Message de chat détecté:', log);
}
const linkRegex = /\[.*?\]\s*\[CHAT\]\s*<(.+?)>\s*!lier\s+([A-Z0-9]{6})/i;
const match = log.match(linkRegex);
@ -52,22 +47,17 @@ const getSteamIdFromPlayerName = async (playerName) => {
const players = response.data.players || {};
console.log(`🔍 Recherche du Steam ID pour le joueur: ${playerName}`);
console.log('👥 Joueurs connectés:', Object.keys(players).map(id => players[id].name).join(', '));
// Chercher le joueur par nom
for (const [steamId, player] of Object.entries(players)) {
console.log(` - Comparaison: "${player.name}" vs "${playerName}"`);
if (player.name === playerName) {
console.log(`✅ Joueur trouvé!`);
return {
steamId: player.userId.replace('steam_', ''),
steamId: player.userId,
playerId: player.playerId,
name: player.name
};
}
}
console.log(`❌ Joueur "${playerName}" non trouvé dans la liste`);
return null;
} catch (error) {
console.error('Erreur lors de la récupération du Steam ID:', error.message);
@ -203,22 +193,18 @@ const connectWebSocket = async (pterodactylToken, serverId) => {
if (message.event === 'console output') {
const log = message.args[0];
// Afficher le log brut pour debug
if (log.includes('!lier') || log.includes('[CHAT]')) {
console.log('📝 Log brut:', log);
}
const linkData = parseLogMessage(log);
console.log('🔍 Données extraites du log:', linkData);
if (linkData) {
const playerData = await getSteamIdFromPlayerName(linkData.playerName);
if (playerData) {
await handleLinkCommand(linkData.playerName, playerData, linkData.code);
// Vérifier immédiatement après la liaison
setTimeout(() => checkAndManageWebSocket(), 2000);
} else {
console.log(`❌ Impossible de trouver le Steam ID pour ${linkData.playerName}`);
console.log(`💡 Le joueur doit être connecté sur le serveur`);
}
}
}