> ## Documentation Index
> Fetch the complete documentation index at: https://docs.projectreal.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# getscriptbytecode

> Renvoie le decompressed bytecode string pour un Roblox script object. getscriptbytecode est enregistre sur la meme C++ function que dumpstring, donc son comportement est identique. L argument doit etre object. Le bytecode reader partage accepte les valeurs ClassName ModuleScript, LocalScript, CoreScript et Script. Pour Script, RunContext doit etre Client. Si ClassName manque, la function leve "Invalid Instance". Si ClassName n est pas une script class prise en charge, elle leve "Script expected". Si la valeur est un Script avec un autre RunContext, elle leve "Expected a Script with RunContext set to Client". Si le embedded bytecode reference est invalide ou si la longueur du stored bytecode est de 8 bytes ou moins, la function renvoie nil. Sinon, elle decompresse le stored bytecode avec DecompressBytecode et renvoie les resulting bytes comme Luau string. Hash mismatch, too-short compressed data ou ZSTD decompression errors sont renvoyes comme error text bytes par DecompressBytecode au lieu d etre leves ici.

<div className="real-function-page">
  ```lua theme={null}
  getscriptbytecode(script: userdata): string | nil
  ```

  ## Arguments

  <ParamField path={"script"} type={"userdata"} required>
    Script object a lire. Les valeurs ClassName prises en charge sont ModuleScript, LocalScript, CoreScript et Script avec RunContext Client.
  </ParamField>

  ## Retours

  <ResponseField name={"bytecode"} type={"string | nil"}>
    Decompressed bytecode bytes comme Luau string, DecompressBytecode error text bytes, ou nil si aucun embedded bytecode utilisable n est disponible.
  </ResponseField>

  ## Exemple

  Read decompressed bytecode from a supported Roblox script Instance.

  ```lua theme={null}
  local targetScript

  for _, descendant in ipairs(game:GetDescendants()) do
      if descendant:IsA("LuaSourceContainer") then
          targetScript = descendant
          break
      end
  end

  if targetScript then
      local bytecode = getscriptbytecode(targetScript)
      print(bytecode)
  end
  ```
</div>
