# Utilities

## Random values

### random\_int

```lua
utils.random_int(0, 100)
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">min</td><td align="center">number</td><td align="center">minimum number to generate</td></tr><tr><td align="center">max</td><td align="center">number</td><td align="center">maximum number to generate</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">random number</td><td align="center">number</td></tr></tbody></table>

### random\_float

```lua
utils.random_float(0, 100)
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">min</td><td align="center">number</td><td align="center">minimum number to generate</td></tr><tr><td align="center">max</td><td align="center">number</td><td align="center">maximum number to generate</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">random number</td><td align="center">number</td></tr></tbody></table>

## Memory

### find\_interface

```lua
utils.find_interface("client.dll", "VClient018")
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">module_name</td><td align="center">string</td><td align="center">name of module</td></tr><tr><td align="center">interface_name</td><td align="center">string</td><td align="center">name of interface followed by its version number </td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">interface address or nil on failure</td><td align="center">number - nil</td></tr></tbody></table>

### find\_pattern

```lua
utils.find_pattern("client.dll",  "8B 3D ? ? ? ? 85 FF 74 47") + 2
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">module_name</td><td align="center">string</td><td align="center">name of module</td></tr><tr><td align="center">pattern</td><td align="center">string</td><td align="center"><a href="https://hex-rays.com/ida-pro/">IDA</a> style pattern. ? indicates wildcard</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">pattern address or nil on failure</td><td align="center">number - nil</td></tr></tbody></table>

### flags

```lua
utils.flags(render.font_flag_outline, render.font_flag_shadow)
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">flag</td><td align="center">number</td><td align="center">flags to combine with the  <a href="https://www.cprogramming.com/tutorial/bitwise_operators.html">bitwise OR</a> operator</td></tr><tr><td align="center">...</td><td align="center">number</td><td align="center">any other flags</td></tr></tbody></table>

## Timers

### new\_timer

```lua
local timer = utils.new_timer(100, function()
    print("This will be called every 100ms")
end)
timer:start()
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">rate</td><td align="center">number</td><td align="center">the rate in which the function will be called (in milliseconds)</td></tr><tr><td align="center">function_to_call</td><td align="center">function</td><td align="center">function to be called</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">timer object</td><td align="center"><a href="/pages/6FtJd0QUwSLFJEPlXMII">utils.timer</a></td></tr></tbody></table>

### run\_delayed

```lua
utils.run_delayed(100, function()
    print("This will be called after 100ms")
end)
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">delay</td><td align="center">number</td><td align="center">the delay to wait before calling the function (in milliseconds)</td></tr><tr><td align="center">function_to_call</td><td align="center">function</td><td align="center">function to be called</td></tr></tbody></table>

## HTTP

### http\_get

<pre class="language-lua"><code class="lang-lua"><strong>utils.http_get("https://pastebin.com/raw/FT1aRqq8", "Accept: */*", function(response)
</strong><strong>    print(response)
</strong><strong>end)
</strong></code></pre>

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">url</td><td align="center">string</td><td align="center">url to send the request to</td></tr><tr><td align="center">headers</td><td align="center">string</td><td align="center"><a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers">http headers</a></td></tr><tr><td align="center">function_to_call</td><td align="center">function</td><td align="center">callback with response</td></tr></tbody></table>

### http\_post

```lua
utils.http_post("https://reqbin.com/echo/post/json", "Content-Type: application/json", 
[[body: "{"id": 12345,}"]], 
function(response)
  print(response)
end)
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">url</td><td align="center">string</td><td align="center">url to send the request to</td></tr><tr><td align="center">headers</td><td align="center">string</td><td align="center"><a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers">http headers</a></td></tr><tr><td align="center">body</td><td align="center">string</td><td align="center">post body</td></tr><tr><td align="center">function_to_call</td><td align="center">function</td><td align="center">callback with response</td></tr></tbody></table>

## Json

### json\_decode

```lua
local json_data = 
[[
{
  "value": 1,
  "color": "pink"
}
]]
local json_decoded = utils.json_decode(json_data)
```

<table><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">json_data</td><td align="center">string</td><td align="center">string of json data</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">json data as lua table</td><td align="center">table</td></tr></tbody></table>

### json\_encode

```lua
local table = 
{
    value = 1,
    color = "pink"
}
local json_string = utils.json_encode(table)
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">lua_table</td><td align="center">table</td><td align="center">a lua table to be encoded into json</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">lua table as a json string</td><td align="center">string</td></tr></tbody></table>

## Trace ray

### trace

```lua
utils.trace(math.vec3(0, 0, 0), math.vec3(100, 100, 100), -1)
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">from</td><td align="center"><a href="/pages/joeTD4iGeiIQ01Qn4fRP">math.vec3</a></td><td align="center">starting point</td></tr><tr><td align="center">to</td><td align="center"><a href="/pages/joeTD4iGeiIQ01Qn4fRP">math.vec3</a></td><td align="center">ending point</td></tr><tr><td align="center">skip_index</td><td align="center">number</td><td align="center">index to skip or -1 for all players</td></tr></tbody></table>

#### Returns

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">trace info</td><td align="center"><a href="/pages/cKCCQlRZTBkfNCdqgO7n">trace_t</a></td></tr></tbody></table>

### trace\_bullet

```lua
utils.trace_bullet(7, math.vec3(0, 0, 0), math.vec3(100, 100, 100))
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">item_definition_index</td><td align="center">number</td><td align="center">weapon's item definition index to use for tracing</td></tr><tr><td align="center">from</td><td align="center"><a href="/pages/joeTD4iGeiIQ01Qn4fRP">math.vec3</a></td><td align="center">starting point</td></tr><tr><td align="center">to</td><td align="center"><a href="/pages/joeTD4iGeiIQ01Qn4fRP">math.vec3</a></td><td align="center">ending point</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">damage</td><td align="center">number</td></tr><tr><td align="center">trace info</td><td align="center"><a href="/pages/cKCCQlRZTBkfNCdqgO7n">trace_t</a></td></tr></tbody></table>

### scale\_damage

```lua
utils.scale_damage(30, 7, 0, player:get_prop("m_ArmorValue"), player:get_prop("m_bHasHeavyArmor"), player:get_prop("m_bHasHelmet"))
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">damage</td><td align="center">number</td><td align="center">damage to scale</td></tr><tr><td align="center">item_definition_index</td><td align="center">number</td><td align="center">weapon's item definition index to use for calculating damage</td></tr><tr><td align="center">hit_group</td><td align="center">number</td><td align="center">hit group to scale with</td></tr><tr><td align="center">armor</td><td align="center">number</td><td align="center">their armor level</td></tr><tr><td align="center">heavy_armor</td><td align="center">boolean</td><td align="center">do they have heavy armor</td></tr><tr><td align="center">helmet</td><td align="center">boolean</td><td align="center">do they have a helmet</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="373.9484491005951" align="center"> </th><th width="358.7336083542556" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">damage</td><td align="center">number</td></tr></tbody></table>

## Console

### print\_console

```lua
utils.print_console("red text", render.color("#FF0000"))
```

<table data-header-hidden><thead><tr><th width="211.54296253646072" align="center"> </th><th width="151.73360835425558" align="center"> </th><th align="center"></th><th align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Default value</a></td></tr><tr><td align="center">text</td><td align="center">string</td><td align="center">text to print</td><td align="center">❌</td></tr><tr><td align="center">color</td><td align="center"><a href="/pages/McV9CTPvTSQx89z8iuxi#color">render.color</a></td><td align="center">color</td><td align="center">white</td></tr></tbody></table>

### print\_dev\_console

```lua
utils.print_dev_console("text")
```

<table data-header-hidden><thead><tr><th width="264.5429625364607" align="center"> </th><th width="216.73360835425558" align="center"> </th><th align="center"></th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">text</td><td align="center">string</td><td align="center">text to print</td></tr></tbody></table>

### error\_print

```lua
utils.error_print("error")
```

<table data-header-hidden><thead><tr><th width="264.5429625364607" align="center"> </th><th width="216.73360835425558" align="center"> </th><th align="center"></th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">text</td><td align="center">string</td><td align="center">text to print</td></tr></tbody></table>

## Encryption

### aes256\_encrypt

```lua
local encryption = utils.aes256_encrypt("abcdefg", "we woo we woo")
```

<table data-header-hidden><thead><tr><th width="264.5429625364607" align="center"> </th><th width="216.73360835425558" align="center"> </th><th align="center"></th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">key</td><td align="center">string</td><td align="center">key to also used for decryption</td></tr><tr><td align="center">data</td><td align="center">string</td><td align="center">string to encrypt</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="373.9484491005951" align="center"> </th><th width="358.7336083542556" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">encrypted data</td><td align="center">string</td></tr></tbody></table>

### aes256\_decrypt

```lua
local encryption = utils.aes256_encrypt("abcdefg", "we woo we woo")
local data = utils.aes256_decrypt("abcdefg", encryption)
```

<table data-header-hidden><thead><tr><th width="264.5429625364607" align="center"> </th><th width="216.73360835425558" align="center"> </th><th align="center"></th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">key</td><td align="center">string</td><td align="center">key to also used for encryption</td></tr><tr><td align="center">data</td><td align="center">string</td><td align="center">encrypted string</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="373.9484491005951" align="center"> </th><th width="358.7336083542556" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">data</td><td align="center">string</td></tr></tbody></table>

### base64\_encode

```lua
local encoded = utils.base64_encode("AAAAAAA")
```

<table data-header-hidden><thead><tr><th width="264.5429625364607" align="center"> </th><th width="216.73360835425558" align="center"> </th><th align="center"></th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">data</td><td align="center">string</td><td align="center">data to encode</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="373.9484491005951" align="center"> </th><th width="358.7336083542556" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">encoded data</td><td align="center">string</td></tr></tbody></table>

### base64\_decode

```lua
local encoded = utils.base64_encode("AAAAAAA")
local data = utils.base64_decode(encoded)
```

<table data-header-hidden><thead><tr><th width="264.5429625364607" align="center"> </th><th width="216.73360835425558" align="center"> </th><th align="center"></th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">encoded data</td><td align="center">string</td><td align="center">data from base64_encode</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="373.9484491005951" align="center"> </th><th width="358.7336083542556" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">data</td><td align="center">string</td></tr></tbody></table>

## Miscellaneous

### load\_file

```lua
utils.load_file("path")
```

<table data-header-hidden><thead><tr><th width="264.5429625364607" align="center"> </th><th width="216.73360835425558" align="center"> </th><th align="center"></th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">path</td><td align="center">string</td><td align="center">path to file</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="373.9484491005951" align="center"> </th><th width="358.7336083542556" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">file_contents</td><td align="center">binary string</td></tr></tbody></table>

#### Note:

Path starts at csgo.exe's file location.

### get\_weapon\_info

```lua
utils.get_weapon_info(1)
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">item_definition_index</td><td align="center">number</td><td align="center">weapons <a href="/pages/frGBxLNu68EVFp6rIHz3#item-definition-indexes">item definition index</a></td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">table with the weapons info</td><td align="center"><a href="/pages/frGBxLNu68EVFp6rIHz3">utils.weapon_info</a></td></tr></tbody></table>

### get\_rtt

```lua
utils.get_rtt()
```

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">round trip time to server</td><td align="center">number</td></tr></tbody></table>

### world\_to\_screen

```lua
local x, y = utils.world_to_screen(0, 0, 100)
if x then
    render.rect_filled(x, y, 1, 1, render.color("#FFFFFF"))
end
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">x</td><td align="center">number</td><td align="center">3D x world position</td></tr><tr><td align="center">y</td><td align="center">number</td><td align="center">3D y world position</td></tr><tr><td align="center">z</td><td align="center">number</td><td align="center">3D z world position</td></tr></tbody></table>

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">x screen pos or nil on failure</td><td align="center">number - nil</td></tr><tr><td align="center">y screen pos or nil on failure</td><td align="center">number - nil</td></tr></tbody></table>

#### Usage:

Converts world coordinates to screen coordinates.

### set\_clan\_tag

```lua
utils.set_clan_tag("fatal")
```

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th width="211.87390915351415" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Parameter</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">new_tag</td><td align="center">string</td><td align="center">string to set clantag to</td></tr></tbody></table>

### get\_time

```lua
utils.get_time()
```

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center">time information</td><td align="center">table</td></tr></tbody></table>

#### Table structure:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th><th align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Description</a></td></tr><tr><td align="center">year</td><td align="center">number</td><td align="center">current year</td></tr><tr><td align="center">month</td><td align="center">number</td><td align="center">month (1 - 12)</td></tr><tr><td align="center">year_day</td><td align="center">number</td><td align="center">day (1 - 366)</td></tr><tr><td align="center">month_day</td><td align="center">number</td><td align="center">day (1 - 31)</td></tr><tr><td align="center">week_day</td><td align="center">number</td><td align="center">day (1 - 7)</td></tr><tr><td align="center">hour</td><td align="center">number</td><td align="center">hour (1 - 23)</td></tr><tr><td align="center">min</td><td align="center">number</td><td align="center">minute (1 - 59)</td></tr><tr><td align="center">sec</td><td align="center">number</td><td align="center">second (0 - 60)<br>including leap second</td></tr></tbody></table>

### get\_unix\_time

```lua
utils.get_unix_time()
```

#### Returns:

<table data-header-hidden><thead><tr><th width="173.4239185397946" align="center"> </th><th width="151.73360835425558" align="center"> </th></tr></thead><tbody><tr><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Value</a></td><td align="center"><a href="/pages/fETd1oqEbXdSk9RmYkpd">Datatype</a></td></tr><tr><td align="center"><a href="https://www.unixtimestamp.com/">unix timestamp</a></td><td align="center">number</td></tr></tbody></table>


---

# 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://golua.fatality.win/documentation/namespaces/utilities.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.
