# Installation

## TaskScheduler Installation Guide

This guide will walk you through the simple steps to install the **TaskScheduler** module in your Roblox game. The TaskScheduler allows you to manage multiple tasks easily, set priorities, handle retries, and much more, making your game's task management smoother and more efficient.

### Option 1: Installing the Module from Roblox Creator Shop

1. **Get the TaskScheduler model from the Roblox Creator Shop:**
   * [TaskScheduler Model](https://create.roblox.com/store/asset/121440418698601/v1-TaskScheduler)
2. **Insert the TaskScheduler model into your game:**
   * Once you have the model, go to **Roblox Studio** and insert it into your game.
   * The model will appear in your game's **Explorer** window under **Workspace** or **StarterPack** depending on where you inserted it.
3. **Move the TaskScheduler to ReplicatedStorage:**
   * To make sure the module is accessible across different scripts, move the **TaskScheduler** module to **ReplicatedStorage**:
     * In the Explorer, drag the **TaskScheduler** model from **Workspace** or **StarterPack** and drop it into **ReplicatedStorage**.
4. **Using the TaskScheduler in your script:**
   * Once the module is in **ReplicatedStorage**, you can access it in your scripts like this:

```lua
local TaskScheduler = require(game.ReplicatedStorage.TaskScheduler) -- Make sure to use the correct path
TaskScheduler:AddLog("TaskScheduler Module Loaded", "require module")
```

#### Important Notes:

* **ReplicatedStorage** is a service in Roblox that allows you to store items that need to be accessed by both the **server** and **clients**.
* If you choose to place the TaskScheduler module inside a folder within ReplicatedStorage, make sure you reference it correctly in your script. For example, if you put the TaskScheduler module in a folder called `Modules`, you would use:

```lua
local TaskScheduler = require(game.ReplicatedStorage.Modules.TaskScheduler) -- Make sure to define the correct path
TaskScheduler:AddLog("TaskScheduler Module Loaded", "require module")
```

### Option 2: Directly Requiring the Module by Asset ID

If you prefer not to insert the model into your game, you can directly use the **TaskScheduler** module via its **Asset ID**. This method is quick and easy.

1. **Add the following line to your script to require the TaskScheduler by its Asset ID:**

```lua
local TaskScheduler = require(121440418698601) -- Directly require the TaskScheduler using its Asset ID
TaskScheduler:AddLog("TaskScheduler Module Loaded", "require module")
```

2. **Done!** You can now use the TaskScheduler module in your game without needing to manually insert the model.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://kno.gitbook.io/ezmodules/task-scheduler/installation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
