Infinite dialog logs, notes, role notify and more...
Ace Attorney
Infinite dialog logs, notes, role notify and more is an Ace Attorney script for Roblox, uploaded to ScriptBlox on Apr 27, 2026.
Does it work?
No reports yetNo reports yet. Tried it? Be the first to say.
Description
Is this script necessary? No, but I felt like making one for this game so here it is. :p FEATURES: • Infinite Dialog Logs: Logs all visible dialog (not chat) to the script, it will log indefinitely so be sure to manually clear when it starts to lag • Copy Messages: You can copy everything (all dialog) by clicking the copy button, if you want to copy individual messages, simply double click on that dialog block in the script's UI • Notes: You can write notes in the script's UI without the need of an external notes app, if you want to quickly transfer a message to your notes, triple click on the dialog block in the dialog history tab and it will be in your notes. You can also copy all of your notes content or if you only want to copy a specific paragraph, click on the "copy para" button, if you press it while its green it will copy the next paragraph and so on • Role Switching: You can quickly switch between roles in the role selection tab (there's a bug where you won't get the role abilities of the role you switched to when you switch via this script, I'm not sure how to fix that yet) • Role Notify: Select the roles you want the script to monitor and it will tell you when that role is unoccupied (if it's occupied) or when that role is occupied (if it's already unoccupied) note that it will only notify you once • Other: You can resize the UI by dragging at the bottom right corner of the UI. You can also minimize the UI by clicking on the button at the top right corner of the UI. You can lock UI dragging and resizing by clicking on the lock button next to the minimize button (prevents you from accidentally dragging the UI)
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local StarterGui = game:GetService("StarterGui")
local LocalPlayer = Players.LocalPlayer
local PlayerGui = LocalPlayer:WaitForChild("PlayerGui")
local Dialogue = PlayerGui:WaitForChild("Dialogue")
local Frame = Dialogue:WaitForChild("Frame")
local SourceLabel = Frame:WaitForChild("Label")
local Holder = Frame:WaitForChild("Holder")
local RoleRemote = ReplicatedStorage:WaitForChild("Remotes"):WaitForChild("RoleRemote")
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "DialogueLogger"
screenGui.ResetOnSpawn = false
screenGui.DisplayOrder = 999999
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
screenGui.Parent = PlayerGui
local isMinimized = false
local savedPosition = nil
local savedSize = nil
local currentTab = "dialogue"
local notesContent = ""
local draggingEnabled = true
local paraCopyIndex = 1
local lastParaCopyTime = 0
local PARA_COPY_TIMEOUT = 2
local markerRestoreId = 0
local isShowingMarker = false
local notifyMode = false
local selectedRoles = {}
local isMonitoring = false

![[ZOMBIES!] BloxStrike](/images/script/114234929420007-1793022762311.webp)

