Nettoyer les Scripts de la Bibliothèque — Organisateur de Livres

  • 14:31, 23.06.2026

Nettoyer les Scripts de la Bibliothèque — Organisateur de Livres

Le script Clean The Library est conçu autour de l'objectif principal du jeu : trier les livres et les remettre à leur place correcte. Sa fonction Organize Book supprime une grande partie de la routine monotone, rendant le placement des livres plus fluide afin que les joueurs n'aient pas à contrôler manuellement chaque déplacement entre les étagères.

Avec cet outil, nettoyer la bibliothèque devient beaucoup moins chronophage. Au lieu de passer la majeure partie du jeu à déplacer les livres un par un, vous pouvez accomplir les tâches plus rapidement, débloquer des améliorations plus tôt et progresser vers des capacités plus puissantes et de meilleurs résultats au classement. C'est une option pratique pour ceux qui souhaitent collecter des récompenses plus efficacement ou nettoyer de grandes zones de la bibliothèque en moins de temps.

SOMMAIRE

Comment télécharger le script Clean The Library

Sur notre site, vous pouvez accéder librement aux scripts pour Clean The Library sans aucune condition supplémentaire : pas besoin de regarder des publicités, de s'abonner ou de passer par des étapes supplémentaires. Les téléchargements de fichiers ne sont pas non plus requis : il suffit de copier le code prêt à l'emploi et de le coller dans un exécuteur Roblox de votre choix.

Pour ceux qui n'ont pas encore travaillé avec des scripts dans Roblox, il est important de savoir qu'un outil séparé, un exécuteur, est nécessaire pour les exécuter. C'est un programme à travers lequel des commandes externes et diverses fonctions de triche sont ajoutées au jeu.

Il existe de nombreuses solutions de ce type, et bien que leur objectif soit généralement similaire, il existe des différences notables entre elles. Certaines fonctionnent mieux avec des scripts complexes, d'autres sont plus stables pendant le jeu, certaines sont disponibles gratuitement, tandis que d'autres ont des fonctionnalités payantes. Il est également important de considérer la plateforme : certains exécuteurs conviennent aux ordinateurs, tandis que d'autres sont conçus exclusivement pour les appareils mobiles.

EXÉCUTEUR
PLATEFORME SUPPORTÉE
INCONVÉNIENTS
LIEN
PC Windows
Pas de versions pour Android et iOS. Faible, peut ne pas supporter certains scripts
https://xeno-executor.com
Android, iOS et PC
Nécessite des mises à jour manuelles après les correctifs Roblox
https://delta-executor.com/
KRNL Executor
Android et iOS
Ne supporte pas PC Windows
https://krnlexecutor.com/
Arceus X Neo
Android et iOS
Ne supporte pas PC Windows
https://arceusx.com/
Scripts Merge a Nuke — Fusion Automatique, Amélioration Automatique et Plus !
Scripts Merge a Nuke — Fusion Automatique, Amélioration Automatique et Plus !   1
Article

Liste de tous les scripts Clean The Library

Script Clean The Library Script (No Key) – Auto Organize Books
-- Organisateur de livres simple avec un seul interrupteur local Players = game:GetService("Players") local ReplicatedStorage = game:GetService("ReplicatedStorage") local Workspace = game:GetService("Workspace") local CollectionService = game:GetService("CollectionService") local UserInputService = game:GetService("UserInputService") -- Réglages local Settings = { Enabled = false, FastMode = false -- Optionnel : peut être ajouté comme sous-interrupteur } -- Création de l'interface utilisateur local function CreateUI() local screenGui = Instance.new("ScreenGui") screenGui.Name = "BookOrganizerGUI" screenGui.Parent = Players.LocalPlayer:WaitForChild("PlayerGui") -- Cadre principal local mainFrame = Instance.new("Frame") mainFrame.Size = UDim2.new(0, 300, 0, 120) mainFrame.Position = UDim2.new(0.5, -150, 0.5, -60) mainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 35) mainFrame.BackgroundTransparency = 0.05 mainFrame.BorderSizePixel = 0 mainFrame.ClipsDescendants = true mainFrame.Parent = screenGui -- Titre local title = Instance.new("TextLabel") title.Size = UDim2.new(1, 0, 0, 35) title.Position = UDim2.new(0, 0, 0, 0) title.BackgroundColor3 = Color3.fromRGB(50, 50, 70) title.BackgroundTransparency = 0.3 title.Text = "📚 Organisateur de livres" title.TextColor3 = Color3.fromRGB(255, 255, 255) title.TextSize = 16 title.Font = Enum.Font.GothamBold title.BorderSizePixel = 0 title.Parent = mainFrame -- Bouton de fermeture local closeBtn = Instance.new("TextButton") closeBtn.Size = UDim2.new(0, 25, 0, 25) closeBtn.Position = UDim2.new(1, -30, 0, 5) closeBtn.BackgroundColor3 = Color3.fromRGB(200, 50, 50) closeBtn.BackgroundTransparency = 0.5 closeBtn.Text = "✕" closeBtn.TextColor3 = Color3.fromRGB(255, 255, 255) closeBtn.TextSize = 14 closeBtn.Font = Enum.Font.GothamBold closeBtn.BorderSizePixel = 0 closeBtn.Parent = mainFrame -- Étiquette de statut local statusLabel = Instance.new("TextLabel") statusLabel.Size = UDim2.new(1, -20, 0, 25) statusLabel.Position = UDim2.new(0, 10, 0, 40) statusLabel.BackgroundTransparency = 1 statusLabel.Text = "🔴 Désactivé" statusLabel.TextColor3 = Color3.fromRGB(255, 100, 100) statusLabel.TextSize = 14 statusLabel.Font = Enum.Font.Gotham statusLabel.TextXAlignment = Enum.TextXAlignment.Left statusLabel.Parent = mainFrame -- Bouton d'activation local toggleBtn = Instance.new("TextButton") toggleBtn.Size = UDim2.new(0, 80, 0, 35) toggleBtn.Position = UDim2.new(1, -90, 0, 70) toggleBtn.BackgroundColor3 = Color3.fromRGB(200, 60, 60) toggleBtn.BackgroundTransparency = 0.2 toggleBtn.Text = "DÉMARRER" toggleBtn.TextColor3 = Color3.fromRGB(255, 255, 255) toggleBtn.TextSize = 14 toggleBtn.Font = Enum.Font.GothamBold toggleBtn.BorderSizePixel = 0 toggleBtn.Parent = mainFrame -- Glissement local dragging = false local dragStart, startPos mainFrame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true dragStart = input.Position startPos = mainFrame.Position end end) mainFrame.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end end) UserInputService.InputChanged:Connect(function(input) if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then local delta = input.Position - dragStart mainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end end) closeBtn.MouseButton1Click:Connect(function() Settings.Enabled = false screenGui:Destroy() end) return screenGui, toggleBtn, statusLabel end -- Logique principale du script local gui, toggleBtn, statusLabel = CreateUI() local isRunning = false local currentCoroutine = nil local Loader = require(ReplicatedStorage.Packages.Loader) local ReplicaController = require(Loader.Shared.Utility.ReplicaController) local BooksData = require(Loader.Shared.Data.Books) local LibraryReplica = nil for _, r in pairs(ReplicaController._replicas) do if r.Class == "Library" then LibraryReplica = r break end end if not LibraryReplica then ReplicaController.ReplicaOfClassCreated("Library", function(replica) LibraryReplica = replica end) while not LibraryReplica do task.wait() end end local Library = Workspace.Library local BooksFolder = Library.Books local player = Players.LocalPlayer -- Configuration de la caméra player.CameraMode = Enum.CameraMode.Classic player.CameraMinZoomDistance = 20 task.spawn(function() task.wait(0.1) player.CameraMinZoomDistance = 0.5 end) local shelfModels = {} for _, shelfModel in ipairs(CollectionService:GetTagged("Shelf")) do shelfModels[shelfModel.Name] = shelfModel end local function getShelfAssignedSeries(shelfId) local shelfData = LibraryReplica.Data.Shelves[shelfId] if not shelfData then return nil end for _, placedBook in pairs(shelfData.Books) do local bookName = typeof(placedBook) == "Instance" and placedBook.Name or placedBook local seriesName = bookName:match("^(.-)_(.+)$") if seriesName then return seriesName end end end local function findShelfForSeries(seriesName, genreName, volumeCount) for shelfId, shelfData in pairs(LibraryReplica.Data.Shelves) do if not shelfData.Completed and shelfData.Category == genreName then local shelfModel = shelfModels[shelfId] if shelfModel and shelfModel:GetAttribute("Width") == volumeCount then if getShelfAssignedSeries(shelfId) == seriesName then return shelfModel end end end end for shelfId, shelfData in pairs(LibraryReplica.Data.Shelves) do if not shelfData.Completed and shelfData.Category == genreName then local shelfModel = shelfModels[shelfId] if shelfModel and shelfModel:GetAttribute("Width") == volumeCount then if not getShelfAssignedSeries(shelfId) and next(shelfData.Books) == nil then return shelfModel end end end end end local function teleportTo(obj) local char = player.Character local root = char and char:FindFirstChild("HumanoidRootPart") local part = obj:IsA("Model") and (obj.PrimaryPart or obj:FindFirstChildOfClass("BasePart")) or obj if root and part then root.CFrame = CFrame.new(part.Position + Vector3.new(0, 2, 0)) task.wait(0.05) end end local function organizeBooks() for _, book in ipairs(BooksFolder:GetChildren()) do if not isRunning then break end task.wait(0.02) local seriesName, volumeStr = book.Name:match("^(.-)_(.+)$") local volumeNum = tonumber(volumeStr) if seriesName and volumeNum then local genreName, bookInfo = BooksData.GetCategory(seriesName) if genreName and bookInfo then local shelfModel = findShelfForSeries(seriesName, genreName, bookInfo.VolumeCount) if shelfModel then local shelfData = LibraryReplica.Data.Shelves[shelfModel.Name] if not (shelfData and shelfData.Books[tostring(volumeNum)]) then teleportTo(book) LibraryReplica:FireServer("Grab", book) task.wait(0.1) teleportTo(shelfModel) LibraryReplica:FireServer("Place", shelfModel, volumeNum - 1) task.wait(0.4) end end end end end end -- Fonctionnalité de basculement local function toggleScript() isRunning = not isRunning if isRunning then toggleBtn.Text = "ARRÊTER" toggleBtn.BackgroundColor3 = Color3.fromRGB(60, 200, 60) statusLabel.Text = "🟢 En cours..." statusLabel.TextColor3 = Color3.fromRGB(100, 255, 100) Settings.Enabled = true if currentCoroutine then task.cancel(currentCoroutine) end currentCoroutine = task.spawn(function() while isRunning do local success, err = pcall(organizeBooks) if not success then warn("Erreur : " .. err) statusLabel.Text = "❌ Erreur : " .. err statusLabel.TextColor3 = Color3.fromRGB(255, 100, 100) task.wait(2) end task.wait(5) -- Attendre avant le prochain cycle end end) else toggleBtn.Text = "DÉMARRER" toggleBtn.BackgroundColor3 = Color3.fromRGB(200, 60, 60) statusLabel.Text = "🔴 Désactivé" statusLabel.TextColor3 = Color3.fromRGB(255, 100, 100) Settings.Enabled = false if currentCoroutine then task.cancel(currentCoroutine) currentCoroutine = nil end end end toggleBtn.MouseButton1Click:Connect(toggleScript) -- Nettoyage game:GetService("Players").LocalPlayer:WaitForChild("PlayerGui").ChildRemoved:Connect(function(child) if child.Name == "BookOrganizerGUI" and isRunning then isRunning = false if currentCoroutine then task.cancel(currentCoroutine) end end end) print("✅ Organisateur de livres chargé ! Cliquez sur DÉMARRER pour commencer à organiser.")
Script d'organisation de livres Clean The Library
getgenv().Running = true local Players = game:GetService("Players") local ReplicatedStorage = game:GetService("ReplicatedStorage") local Workspace = game:GetService("Workspace") local CollectionService = game:GetService("CollectionService") local Loader = require(ReplicatedStorage.Packages.Loader) local ReplicaController = require(Loader.Shared.Utility.ReplicaController) local BooksData = require(Loader.Shared.Data.Books) local LibraryReplica = nil for _, r in pairs(ReplicaController._replicas) do if r.Class == "Library" then LibraryReplica = r break end end if not LibraryReplica then ReplicaController.ReplicaOfClassCreated("Library", function(replica) LibraryReplica = replica end) while not LibraryReplica do task.wait() end end local Library = Workspace.Library local BooksFolder = Library.Books local player = Players.LocalPlayer player.CameraMode = Enum.CameraMode.Classic player.CameraMinZoomDistance = 20 task.spawn(function() task.wait(0.1) player.CameraMinZoomDistance = 0.5 end) local shelfModels = {} for _, shelfModel in ipairs(CollectionService:GetTagged("Shelf")) do shelfModels[shelfModel.Name] = shelfModel end local function getShelfAssignedSeries(shelfId) local shelfData = LibraryReplica.Data.Shelves[shelfId] if not shelfData then return nil end for _, placedBook in pairs(shelfData.Books) do local bookName = typeof(placedBook) == "Instance" and placedBook.Name or placedBook local seriesName = bookName:match("^(.-)_(.+)$") if seriesName then return seriesName end end end local function findShelfForSeries(seriesName, genreName, volumeCount) for shelfId, shelfData in pairs(LibraryReplica.Data.Shelves) do if not shelfData.Completed et shelfData.Category == genreName then local shelfModel = shelfModels[shelfId] if shelfModel et shelfModel:GetAttribute("Width") == volumeCount then if getShelfAssignedSeries(shelfId) == seriesName then return shelfModel end end end end for shelfId, shelfData in pairs(LibraryReplica.Data.Shelves) do if not shelfData.Completed et shelfData.Category == genreName then local shelfModel = shelfModels[shelfId] if shelfModel et shelfModel:GetAttribute("Width") == volumeCount then if not getShelfAssignedSeries(shelfId) et next(shelfData.Books) == nil then return shelfModel end end end end end local function teleportTo(obj) local char = player.Character local root = char et char:FindFirstChild("HumanoidRootPart") local part = obj:IsA("Model") et (obj.PrimaryPart ou obj:FindFirstChildOfClass("BasePart")) ou obj if root et part then root.CFrame = CFrame.new(part.Position + Vector3.new(0, 2, 0)) task.wait(0.05) end end task.spawn(function() for _, book in ipairs(BooksFolder:GetChildren()) do if not getgenv().Running then break end task.wait(0.02) local seriesName, volumeStr = book.Name:match("^(.-)_(.+)$") local volumeNum = tonumber(volumeStr) if seriesName et volumeNum then local genreName, bookInfo = BooksData.GetCategory(seriesName) if genreName et bookInfo then local shelfModel = findShelfForSeries(seriesName, genreName, bookInfo.VolumeCount) if shelfModel then local shelfData = LibraryReplica.Data.Shelves[shelfModel.Name] if not (shelfData et shelfData.Books[tostring(volumeNum)]) then teleportTo(book) LibraryReplica:FireServer("Grab", book) task.wait(0.1) teleportTo(shelfModel) LibraryReplica:FireServer("Place", shelfModel, volumeNum - 1) task.wait(0.4) end end end end end getgenv().Running = false end)
Script Clean The Library pour finir le jeu et plus
loadstring(game:HttpGet("https://raw.githubusercontent.com/2desp/flya/refs/heads/main/loader.lua"))()

Comment exécuter un script dans Clean The Library

Étape 1

Tout d'abord, préparez l'exécuteur à travers lequel le script sera exécuté. Si vous n'avez pas un tel programme sur votre appareil, vous pouvez utiliser Xeno Executor. Ouvrez le site indiqué, cliquez sur Télécharger et téléchargez l'archive du programme sur votre ordinateur.

  • https://www.xeno.now/
Site pour télécharger Xeno Executor
Site pour télécharger Xeno Executor
Grow a Garden : Quand commence l'abus d'admin ?
Grow a Garden : Quand commence l'abus d'admin ?   23
Article

Étape 2

Une fois le fichier téléchargé, extrayez l'archive dans n'importe quel dossier pratique, comme votre bureau, puis ouvrez Xeno.exe. Si vous avez choisi un autre exécuteur Roblox, exécutez le fichier principal de ce programme.

Lors du premier lancement, l'outil peut vous informer que des composants Windows supplémentaires sont nécessaires, tels que .NET SDK ou Visual C++ Runtime. Ceux-ci doivent être installés ou mis à jour, sinon l'exécuteur peut ne pas se lancer ou fonctionner correctement.

Fichier de lancement Xeno.exe
Fichier de lancement Xeno.exe

Étape 3

Ensuite, ouvrez Clean The Library et laissez le jeu fonctionner avec l'exécuteur. Après cela, retournez à la fenêtre du programme et utilisez le bouton Attach pour connecter l'exécuteur à Roblox. Si tout est fait correctement, le statut Attached Ingame! apparaîtra en bas de l'interface.

Exécution de l'exécuteur dans Clean The Library
Exécution de l'exécuteur dans Clean The Library

Étape 4

Maintenant, sélectionnez le script souhaité dans la liste des options disponibles, copiez-le et collez-le dans le champ de code à l'intérieur de l'exécuteur. Pour l'exécuter, cliquez sur Execute—après cela, le script devrait s'activer dans Clean The Library.

Exécution du script dans Clean The Library
Exécution du script dans Clean The Library
Scripts Paint And SEEK — ESP, Auto Win, Auto Paint
Scripts Paint And SEEK — ESP, Auto Win, Auto Paint   
Article
hier

Étape 5

Parfois, le menu du script n'apparaît pas immédiatement mais après quelques secondes—cela dépend du code lui-même et de l'exécuteur que vous utilisez. Une fois l'interface graphique apparue, vous pourrez gérer les fonctions disponibles, activer les fonctionnalités souhaitées et ajuster les paramètres pour convenir à votre style de jeu.

Fonctionnalités clés des scripts Clean The Library

FONCTION
CE QU'ELLE FAIT
Auto Organize Books
Trie et organise automatiquement les livres
Menu GUI du script Clean The Library
Menu GUI du script Clean The Library

Pourquoi les scripts Clean The Library ne fonctionnent pas

Comment obtenir la Libellule Clubtail dans Adopt Me!
Comment obtenir la Libellule Clubtail dans Adopt Me!   
Guides
hier

Scripts Clean The Library obsolètes

L'une des raisons les plus courantes pour lesquelles les scripts Clean The Library cessent de fonctionner correctement est leur incompatibilité avec la dernière version du jeu. Après les mises à jour, les développeurs peuvent changer la logique interne, les noms des éléments, les systèmes d'interaction ou les mécaniques de jeu individuelles, ce qui fait que l'ancien code perd sa compatibilité.

En conséquence, le script peut se comporter de manière imprévisible : certaines fonctions fonctionnent, d'autres ne répondent pas, certains boutons se bloquent, et certaines fonctionnalités provoquent des erreurs. Si le script n'a pas été mis à jour depuis longtemps, il ne vaut généralement pas la peine de perdre du temps à l'exécuter. Il est préférable de choisir une alternative plus récente dans la liste des options vérifiées.

Problèmes avec les exécuteurs

Parfois, le problème ne vient pas du script lui-même, mais du programme à travers lequel il est exécuté. Les exécuteurs ont différents niveaux de compatibilité, traitent le code différemment et ne supportent pas toujours les mêmes commandes, bibliothèques ou fonctionnalités supplémentaires.

C'est pourquoi le même script peut fonctionner de manière stable dans un outil mais provoquer des erreurs ou ne s'exécuter que partiellement dans un autre. Certains exécuteurs plus simples, comme Xeno ou SOLAR, peuvent avoir des limitations sur le support des scripts plus complexes. Par exemple, Xeno est souvent choisi pour sa commodité et son lancement facile, mais si des problèmes surviennent, il vaut la peine de vérifier les performances du script dans un autre exécuteur.

Déconnexion du serveur ou du jeu

Une autre situation à laquelle les joueurs peuvent être confrontés est une déconnexion instantanée du serveur après l'activation d'un script. Cela se produit en raison de l'incompatibilité du code avec la version actuelle de Clean The Library, d'un conflit avec les systèmes internes du jeu ou de l'activation de mécanismes de protection.

Vous pouvez essayer de rentrer sur le serveur et de répéter le lancement, mais si le problème se reproduit, c'est un signe clair que le script fonctionne incorrectement ou n'est pas adapté à la mise à jour actuelle. Dans un tel cas, il est plus sûr de cesser de l'utiliser pour éviter des erreurs constantes, des performances de jeu instables et le risque de restrictions de compte.

Additional content available
Go to Twitter bo3.gg
Commentaires
Par date