sync rules

This commit is contained in:
Joe 2026-03-01 08:50:26 -06:00
parent 99b0af36fd
commit a26b3123b5
901 changed files with 215240 additions and 4077 deletions

View file

@ -30,14 +30,14 @@ Route all output there: `--stats-file=$LUAU_TMP\stats.json`, write benchmark fil
Check in this order:
1. **Filename suffix** (highest priority):
- `*.server.luau` / `*.server.lua` -> **server** (`--!native` is high-value)
- `*.client.luau` / `*.client.lua` -> **client** (`--!native` less beneficial due to device diversity)
- `*.server.luau` / `*.server.lua` -> **server** (native codegen budget is server-side; benefit depends on code content)
- `*.client.luau` / `*.client.lua` -> **client** (native codegen less effective due to device architecture diversity)
- `*.legacy.luau` / `*.legacy.lua` -> **ambiguous** (could be cloned/moved at runtime). Ask the user.
- `*.luau` / `*.lua` (no suffix) -> ModuleScript, fall through to path check.
2. **Path-based inference** (for ModuleScripts and ambiguous cases):
- `ServerScriptService`/`ServerStorage` in path -> server-side module
- `StarterPlayer`/`StarterGui`/`StarterCharacterScripts`/`ReplicatedFirst` in path -> client-side module
- `ReplicatedStorage`/`shared` in path -> shared module (conservative `--!native`)
- `ReplicatedStorage`/`shared` in path -> shared module
- Ambiguous or outside Roblox project -> ask the user
### Quiz the user
@ -45,7 +45,7 @@ Check in this order:
Use the AskQuestion tool with these three questions:
**Question 1: "Compilation optimization intensity"**
- `minimal` -- Headers (`--!strict`/`--!native`/`--!optimize 2`), type annotations on all function signatures, deprecated pattern replacements only
- `minimal` -- Headers (`--!strict`/`--!optimize 2`), type annotations on all function signatures, deprecated pattern replacements, native codegen analysis
- `moderate` -- + function restructuring for inlining, import hoisting, compound operators, fastcall enablement, allocation reduction
- `insane` -- + every micro-optimization from the pattern catalog, full bytecode analysis, register pressure optimization, closure caching analysis
@ -70,7 +70,7 @@ Use the AskQuestion tool with these three questions:
| Function restructuring | No | Yes (Priority 3) | Aggressive splitting |
| Bytecode verification | After all changes | After each priority | After each change |
| Algorithmic changes | Per algo quiz | Per algo quiz | Per algo quiz |
| `@native` vs `--!native` | `--!native` unless big file | Selective `@native` on hot functions | Full per-function analysis |
| Native codegen strategy | Per-function analysis; `@native` on beneficial functions; `--!native` only if most are native-worthy | Selective `@native` on hot computational functions | Full per-function cost/benefit with budget tracking |
**Restructuring scope** scales with compilation intensity:
- **minimal**: No restructuring. Only additive changes (headers, annotations, pattern swaps).
@ -236,10 +236,11 @@ Using both the source (already read in Phase 1) and tool output from Phase 2, id
Apply changes in priority order. Re-run `luau-compile --remarks -O2 --vector-lib=Vector3 --vector-ctor=new --vector-type=Vector3 <file>` after structural changes to verify the compiler benefits.
### Priority 1 -- Headers and type safety (always apply)
### Priority 1 -- Headers, type safety, and native codegen (always apply)
**Add headers:**
- `--!strict` / `--!native` / `--!optimize 2`. (`--!optimize 2` is default in live but not Studio testing.)
- `--!strict` / `--!optimize 2`. (`--!optimize 2` is default in live but not Studio testing.)
- **Do NOT blindly add `--!native`.** Native codegen is analyzed separately (see "Native codegen strategy" below).
**Remove deoptimizers:**
- Replace `getfenv`/`setfenv` -- disables builtins, imports, and optimizations globally.
@ -260,6 +261,27 @@ Getting the file to pass `--!strict` cleanly is the single most impactful compil
- For generic code: use proper generics (`<T>`) instead of `any`. If the function truly accepts anything, use `unknown` and narrow explicitly.
- Track type coverage: count `any` in `--annotate` output. The goal is zero (or as close as practical).
**Native codegen strategy -- `--!native` vs `@native` vs neither:**
Native codegen has two limits: a 1M instruction cap per module and a per-experience memory ceiling shared across all native scripts. Applying `--!native` indiscriminately wastes both budgets on functions that don't benefit, crowding out functions that would.
1. **Classify every function** in the file by its dominant work:
- **Native-worthy**: Tight computational loops, math-heavy logic (`Vector3`/`CFrame` arithmetic, `buffer` ops, `bit32` ops, numerical algorithms, physics calculations). These get genuine speedups from JIT compilation.
- **Not native-worthy**: Roblox API calls (`Instance:Clone()`, `:FindFirstChild()`, `:GetChildren()`, event connections), table construction without computation (allocation-bound), heavy Luau library calls (`string.format`, pattern matching -- C implementations native codegen can't speed up), one-shot initialization, coroutine/task scheduling. The dominant cost is the API/library call or GC, not Luau instruction dispatch.
2. **Decision matrix**:
- **All/most functions are native-worthy** (math utility modules, physics solvers, buffer serializers): Use `--!native` on the whole file.
- **Some functions are native-worthy** (mixed scripts with hot computational loops alongside API-heavy code): Use `@native` on individual functions that benefit. **This is the common case for real game scripts.**
- **No functions are native-worthy** (typical game scripts: event handlers, UI logic, Roblox API orchestration): Skip native codegen entirely. Don't waste the budget.
3. **`@native` placement rules**:
- Place `@native` directly above the function declaration.
- Inner/nested functions do NOT inherit `@native` -- annotate them individually if needed.
- Top-level module code runs once at `require()` time; `@native` has no meaningful benefit there.
- Prioritize functions identified as hot paths in Phase 1 (RunService handlers, loop bodies, recursive functions) -- but only if their work is computational, not API-bound.
4. **Budget awareness**: Check native codegen stats from `--record-stats`. If the module's native instruction count is high, be more selective with `@native` to leave budget for other scripts in the experience.
### Priority 2 -- Low-hanging structural wins
- Hoist library functions: `local floor = math.floor` enables GETIMPORT fastcall. Fastcall builtins: `assert`, `type`, `typeof`, `rawget`/`rawset`/`rawequal`, `getmetatable`/`setmetatable`, `tonumber`/`tostring`, most `math.*` (not `noise`, `random`/`randomseed`), `bit32.*`, some `string.*`/`table.*`. Partial specializations: `assert` (unused return + truthy), `bit32.extract` (constant field/width), `select(n, ...)` O(1).
@ -392,6 +414,7 @@ These principles govern every optimization decision:
- **Local functions for inlining** -- even at the cost of duplicating imported behavior in high-traffic code.
- **Quantify everything** -- before/after metrics for every optimization pass. No "I think this is faster" -- prove it.
- **Type annotations drive native codegen quality** -- every `any` type is a missed specialization opportunity. The JIT uses annotations directly with no runtime analysis.
- **Native codegen is a budget, not a checkbox** -- `--!native` on every file wastes the per-experience native code memory limit on functions that don't benefit. Apply `@native` selectively to computational hot functions; reserve `--!native` for genuinely math-heavy modules.
- **Event-driven over polling** -- avoid per-frame calculations when events suffice.
---
@ -484,15 +507,37 @@ The compiler narrows types after certain checks, improving both type safety and
## Reference: Native Codegen
**`@native` vs `--!native`:**
- `--!native`: entire script. Good for math-heavy utility modules.
- `@native`: per-function. Better for selective hot functions or near the 1M instruction limit.
- Inner functions do NOT inherit `@native`.
- Top-level code runs once; `@native` has minimal benefit there.
**`--!native` (whole-file) -- use sparingly:**
- Compiles every function in the file to native code, consuming the per-module 1M instruction limit and the per-experience memory budget.
- Only appropriate for files where most/all functions are computational: math utilities, physics solvers, buffer serializers, numerical algorithms.
- Wasteful on typical game scripts where most functions are Roblox API calls, table construction, or string operations -- these don't benefit from native codegen but still eat the budget.
**`@native` (per-function) -- preferred for most files:**
- Annotate only functions that perform computational work benefiting from JIT: tight loops, `Vector3`/`CFrame` arithmetic, `buffer` ops, `bit32` ops, numerical math.
- Place directly above the function declaration. Inner functions do NOT inherit it.
- Top-level code runs once at `require()` time; `@native` provides no meaningful benefit there.
- This is the correct default strategy for mixed scripts with both hot computational code and API-heavy orchestration.
**Functions that do NOT benefit from `@native`:**
- Roblox API calls (`Instance:Clone()`, `:FindFirstChild()`, `:GetChildren()`, `:WaitForChild()`, event connections) -- execution time is in C++/engine, not Luau bytecode
- Table construction without computation (allocation-bound; the allocator is C code native codegen can't speed up)
- Heavy Luau library calls (`string.format`, `string.match`, `string.gmatch` -- C implementations that native codegen can't accelerate)
- One-shot initialization code
- Event handler registration and wiring
- `require()` calls and module setup
- Coroutine/task scheduling (`task.spawn`, `task.defer`, `task.wait`)
**Functions that benefit from `@native`:**
- Tight numerical loops (physics, interpolation, noise generation)
- Mathematical operations on table data (reading values, computing, writing back -- the Roblox docs explicitly cite this)
- `Vector3`/`CFrame` arithmetic (native generates specialized vector code with proper type annotations)
- `buffer` read/write operations (efficient native lowering)
- `bit32` operations (maps to CPU instructions)
- Hot paths called every frame (RunService handlers with computational work, not API orchestration)
**Hurts native:** `getfenv`/`setfenv`, wrong types to typed functions, non-numeric math args, breakpoints, size limits (64K instructions/block, 32K blocks/function, 1M/module).
**Helps native:** Type annotations (especially `Vector3`), small functions, consistent table shapes, `buffer` ops, `bit32` ops.
**Budget management:** The 1M instruction limit is per-module; the memory budget for native code is per-experience, shared across ALL native scripts. Use `--record-stats=function` to check each function's native instruction count and `debug.dumpcodesize()` in Studio to see per-experience usage. A few well-chosen `@native` functions outperform blanket `--!native` across many files.
## Reference: CLI Tools

View file

@ -0,0 +1,152 @@
# Const Keyword
## Summary
Introduce a `const` keyword for local variable bindings that prevents reassignment after initialization. A const declaration makes the binding immutable, not the value, so tables and other mutable objects remain mutable through the binding.
## Motivation
When introducing the [`export`](https://github.com/luau-lang/rfcs/pull/42) keyword we will need to introduce the concept of `const`-ness to the language. Modules with exports return a frozen table of values; however, the variables used to declare those exports are not themselves immutable. This makes it possible to write code such as the following:
```luau
export foo = 5
export function increment()
foo += 1
end
```
This results in different values for `foo` depending on where it is accessed from:
```luau
-- Inside the module
print(foo) --> 5
increment()
print(foo) --> 6
-- Outside the module
print(module.foo) --> 5
module.increment()
print(module.foo) --> 5
```
To address this, we propose that all exported values are `const` by default, preventing reassignment within the module and ensuring that exported bindings represent stable values.
However, this is not the only use-case for `const`. A `const` binding provides a clear guarantee that a name will always refer to the same value for the lifetime of its scope. This property is useful beyond module exports: it makes code easier to reason about, avoids accidental rebinding in closures or long-lived scopes, and allows tools and the typechecker to treat such bindings as stable references rather than values that may change over time. Since `export` already requires this guarantee to behave correctly, exposing `const` as a general language feature avoids introducing special-case rules and provides a simple, consistent way to express immutability of bindings where it is desired.
## Design
### Syntax
Allow `const` in declarations anywhere `local` is allowed:
```luau
const x = 5
const f = function() end
const t = { a = 1 }
```
Typed declarations remain valid:
```luau
const x: number = 5
const t: { a: number } = { a = 1 }
```
Multi-assignment is also supported:
```luau
const a, b = 1, 2
```
A `function` can be declared as `const`:
```luau
const function f()
-- do something
end
```
### Semantics
A `const` variable is equivalent to a variable declared with `local` however `const` variables cannot be reassigned after they are initialized:
```luau
const x = 1
x = 2 -- error
```
This includes any assignment form that writes to the binding, such as compound assignment:
```luau
const x = 1
x += 1 -- error
```
It applies to the variable's binding, not to the value it refers to. If a const variable refers to a mutable value such as a table, that value can still be modified:
```luau
const t = { count = 0 }
t.count += 1 -- ok (mutating the table)
t = {} -- error (reassigning the binding)
```
`const` is not a replacement for `table.freeze` which should be used to prohibit mutation of table contents. The two features address different problems and can be used together:
```luau
const t = table.freeze({
count = 0,
})
t.count += 1 -- error (mutating a frozen table)
t = {} -- error (reassigning the binding)
```
#### Initialization
A `const` binding must be initialized at the point of declaration:
```
const x -- error: const variable must be initialized
```
This keeps the feature simple, avoids "definite assignment" rules, and makes the "never reassigned" intent explicit.
#### Scope and Shadowing
`const` follows normal lexical scoping rules. Shadowing creates a new binding and is allowed:
```luau
const x = 1
do
const x = 2 -- ok: new binding in inner scope
end
const y = 1
const y = 2 -- also ok: rebinding as const in same scope
```
#### Captures / Up-Values
If a `const` variable is captured by an inner function, it remains non-reassignable from within that function as well:
```luau
const x = 1
const function f()
x = 2 -- error
end
```
### Grammar / Parsing
`const` is a contextual keyword that is only valid in positions where `local` is valid. This makes the introduction fully backwards compatible with existing code.
## Drawbacks
- Potential false sense of immutability: developers may misread const as implying deep immutability. This is mitigated by clear documentation and examples, but the risk remains.
- Lua introduced `const` in the form `local foo <const> = 5` which is inconsistent with this syntax. However, we've already decided we won't adopt Lua const syntax, therefore consider this an acceptable change.
## Alternatives
- Lint-only "never reassigned" rule: A linter can infer locals that are never reassigned and warn on future changes. This avoids new syntax, but loses the ability to declare intent directly in code (e.g., a new assignment becomes a warning rather than a clear violation of an explicit constraint).
- Deep immutability / freezing: Enforcing immutability of tables (recursively) would address mutation bugs but introduces complexity, runtime overhead, questions around metatables/userdata, and awkward interactions with existing patterns. This is explicitly out of scope for this proposal.
- Annotations instead of a keyword: An attribute-like syntax (comment directive or type-level modifier) could avoid reserving a keyword, but is less readable, less discoverable, and harder to standardize across tooling.
- Do nothing: Continue relying on convention and review. This keeps the language smaller but preserves a common footgun and prevents tooling from enforcing a widely useful invariant.

File diff suppressed because it is too large Load diff

View file

@ -59,3 +59,165 @@ Standalone files in `roblox/en-us/`:
Use glob and grep to search `.cursor/rules/roblox/` for Roblox-specific documentation files.
**Tip:** Check `roblox/common/navigation/` for YAML files that organize documentation by category (analytics, avatar, cloud, engine, monetization, etc.). These navigation files help locate relevant docs quickly.
## Roblox Full API Dump
The file `.cursor/rules/roblox-api/Full-API-Dump.json` is the authoritative source for every Roblox API class, member, and enum. It is pulled directly from the [RobloxAPI/build-archive](https://github.com/RobloxAPI/build-archive) on each sync and reflects the current production build.
**File facts:**
- ~206,000 lines, ~7.5 MB
- `"Classes"` section: lines 1–189,995 (863 classes, 7,690 members)
- `"Enums"` section: starts at line 189,996 (552 enums)
### Field order in the file
The JSON fields within each object appear in alphabetical order on disk. This is critical for understanding grep results:
```
Class object (fields in file order):
"Members": [...] ← member array comes FIRST
"MemoryCategory": "Instances"
"Name": "ClassName" ← ALWAYS immediately after MemoryCategory
"Superclass": "ParentClass" ← ALWAYS immediately after Name
"Tags": [...]
Property member (fields in file order):
"Category": "Part"
"Default": "value"
"MemberType": "Property"
"Name": "MemberName" ← ALWAYS immediately after MemberType
"Security": "None" | { "Read": "...", "Write": "..." }
"Serialization": { "CanLoad": bool, "CanSave": bool }
"ThreadSafety": "ReadSafe"
"ValueType": { "Category": "Primitive|DataType|Enum|Class", "Name": "typeName" }
"Tags": [...] (optional)
Function / Event / Callback member (fields in file order):
"MemberType": "Function" (or "Event" or "Callback")
"Name": "MethodName" ← ALWAYS immediately after MemberType
"Parameters": [ { "Name": "param", "Type": { "Category": "...", "Name": "..." } } ]
"ReturnType": { "Category": "...", "Name": "..." } (Function/Callback only)
"Security": "None"
"ThreadSafety": "..."
Enum object (fields in file order):
"Items": [ { "Name": "ItemName", "Value": N }, ... ] ← items come FIRST
"Name": "EnumName" ← enum name comes LAST, after all items
```
### Disambiguating "Name" entries
The line directly **before** a `"Name":` entry tells you what kind of entry it is:
- `"MemoryCategory": "...",` before `"Name":` → **class definition**
- `"MemberType": "...",` before `"Name":` → **member definition** (Property/Function/Event/Callback)
- `"Value": N` after `"Name":` → **enum item**
- Everything else → a type reference inside `"Type":`, `"ValueType":`, or `"ReturnType":` — not a top-level entity
### Grep patterns
**1. Look up a class definition**
```
rg -n '"Name": "BasePart"' .cursor/rules/roblox-api/Full-API-Dump.json
```
Find the result where the line above contains `"MemoryCategory":`. Read forward 6 lines to get `Superclass` and `Tags`. Note: the class's `Members` array begins thousands of lines above that line — large classes like `BasePart` span 2,500+ lines of members.
**2. Look up a specific member by name**
```
rg -n '"Name": "Anchored"' .cursor/rules/roblox-api/Full-API-Dump.json
```
Find results where the line 1–3 lines above contains `"MemberType":` — those are member definitions. Use Read at that line ±15 lines to capture the full member object (Security, ThreadSafety, ValueType or Parameters/ReturnType, and Tags).
**3. Identify which class owns a member**
From the member's line number N, search backward through the file for the nearest `"MemoryCategory":` line. The `"Name":` on the very next line is the owning class name. Many common members (like `Anchored`) appear in multiple classes — check the owning class to confirm you have the right one.
**4. Check whether a member is defined on a class vs inherited**
Grep for the class Name to get its definition line number L (where `"MemoryCategory":` is on the line above). Then grep for the member Name and find the match whose line number is closest to and **below** L — that is the member as defined directly on that class.
**5. List all Functions available on a class**
```
rg -n '"MemberType": "Function"' .cursor/rules/roblox-api/Full-API-Dump.json -A 1
```
Each `-A 1` line is the function name. To scope to a specific class, find the class's definition line L from pattern 1, then find the previous class's definition line P. Members for the target class fall between lines P and L. Filter the `rg` output to that line range. Alternatively, use Read on the class's member block directly.
**6. List all Events available on a class**
```
rg -n '"MemberType": "Event"' .cursor/rules/roblox-api/Full-API-Dump.json -A 1
```
Same scoping approach as functions above.
**7. List all Properties available on a class**
```
rg -n '"MemberType": "Property"' .cursor/rules/roblox-api/Full-API-Dump.json -A 1
```
Same scoping approach. The `-A 1` line is always the property name since `"MemberType"` is always the line directly before `"Name"` in a member object.
**8. Look up an enum and all its values**
Enum names appear **after** their items in the file, so use `-B` to read upward:
```
rg -n -B 150 '"Name": "Material"' .cursor/rules/roblox-api/Full-API-Dump.json
```
Use the result in the Enums section (line 189,996+). Increase to `-B 300` for large enums.
**9. Find all direct subclasses of a class**
```
rg -n '"Superclass": "BasePart"' .cursor/rules/roblox-api/Full-API-Dump.json -A 1
```
The `-A 1` line after each match is the subclass `Name`.
### Cross-referencing the dump with the docs
The dump and the docs in `.cursor/rules/roblox/` are complementary — use either as the entry point:
- **Dump → Docs:** You confirmed a class or member exists in the dump (name, types, security level). Now search the docs to understand correct usage patterns, recommended approaches, and gotchas the API signature alone does not convey.
- **Docs → Dump:** The docs mention a class, function, or concept. Look it up in the dump to get the exact parameter types, return type, thread safety, security level, and deprecation status — detail the docs often omit or leave vague.
To find relevant docs after identifying a class or member:
- `Glob` into the relevant subdirectory: e.g. `roblox/en-us/physics/**` for physics, `roblox/en-us/scripting/**` for scripting patterns
- `Grep` across all docs: e.g. `rg "TweenService" .cursor/rules/roblox/` to find every file that discusses a class
- `roblox/en-us/reference/` contains YAML-format API reference files with additional context
- `roblox/common/navigation/` YAML files map topics to doc files — a fast way to find which doc covers a given system
The docs explain intent and usage; the dump is the ground truth for the API contract. Consult both before writing code against an unfamiliar API.
### Security levels
| Value | Accessible from |
|---|---|
| `"None"` | Any script |
| `"LocalUserSecurity"` | LocalScript only |
| `"PluginSecurity"` | Plugin scripts only |
| `"RobloxScriptSecurity"` | CoreScript / internal — **not accessible** from user scripts |
Security can be split per operation: `{ "Read": "None", "Write": "RobloxScriptSecurity" }` means readable but not writable from user scripts.
### Tags to check before using a member
| Tag | Meaning |
|---|---|
| `"Deprecated"` | Avoid — check for `"PreferredDescriptorName"` in the same Tags array for the replacement |
| `"NotCreatable"` | Cannot use `Instance.new()` — must obtain from the DataModel |
| `"Service"` | Obtain via `game:GetService("ServiceName")` |
| `"ReadOnly"` | Property cannot be set |
| `"NotReplicated"` | Changes do not sync across the client/server boundary |
### Large class warning
Classes like `BasePart`, `Instance`, and `Humanoid` have 500–2,500 lines of members. Never attempt to read an entire class block. Always grep for the specific member, function, or event you need.

View file

@ -16,6 +16,8 @@ navigation:
path: /cloud/guides/data-stores/throttling
- title: Assets
path: /cloud/guides/usage-assets
- title: Configs
path: /cloud/guides/configs
- title: Secrets stores
path: /cloud/guides/secrets-store
- title: User inventories

View file

@ -130,6 +130,11 @@ navigation:
type: engineapi
source: /reference/engine/classes/AnimationFromVideoCreatorService.yaml
ignoreTranslation: true
- title: AnimationNodeDefinition
path: /reference/engine/classes/AnimationNodeDefinition
type: engineapi
source: /reference/engine/classes/AnimationNodeDefinition.yaml
ignoreTranslation: true
- title: AnimationRigData
path: /reference/engine/classes/AnimationRigData
type: engineapi
@ -332,6 +337,27 @@ navigation:
type: engineapi
source: /reference/engine/classes/BadgeService.yaml
ignoreTranslation: true
- title: BaseCoreGuiConfiguration
path: /reference/engine/classes/BaseCoreGuiConfiguration
type: engineapi
source: /reference/engine/classes/BaseCoreGuiConfiguration.yaml
ignoreTranslation: true
section:
- title: CapturesViewConfiguration
path: /reference/engine/classes/CapturesViewConfiguration
type: engineapi
source: /reference/engine/classes/CapturesViewConfiguration.yaml
ignoreTranslation: true
- title: PlayerListConfiguration
path: /reference/engine/classes/PlayerListConfiguration
type: engineapi
source: /reference/engine/classes/PlayerListConfiguration.yaml
ignoreTranslation: true
- title: SelfViewConfiguration
path: /reference/engine/classes/SelfViewConfiguration
type: engineapi
source: /reference/engine/classes/SelfViewConfiguration.yaml
ignoreTranslation: true
- title: BasePlayerGui
path: /reference/engine/classes/BasePlayerGui
type: engineapi
@ -775,6 +801,11 @@ navigation:
type: engineapi
source: /reference/engine/classes/CookiesService.yaml
ignoreTranslation: true
- title: CoreGuiConfiguration
path: /reference/engine/classes/CoreGuiConfiguration
type: engineapi
source: /reference/engine/classes/CoreGuiConfiguration.yaml
ignoreTranslation: true
- title: CoreScriptDebuggingManagerHelper
path: /reference/engine/classes/CoreScriptDebuggingManagerHelper
type: engineapi
@ -1363,11 +1394,6 @@ navigation:
type: engineapi
source: /reference/engine/classes/GuidRegistryService.yaml
ignoreTranslation: true
- title: HandRigDescription
path: /reference/engine/classes/HandRigDescription
type: engineapi
source: /reference/engine/classes/HandRigDescription.yaml
ignoreTranslation: true
- title: HapticEffect
path: /reference/engine/classes/HapticEffect
type: engineapi
@ -1661,6 +1687,11 @@ navigation:
type: engineapi
source: /reference/engine/classes/MLService.yaml
ignoreTranslation: true
- title: MakeupDescription
path: /reference/engine/classes/MakeupDescription
type: engineapi
source: /reference/engine/classes/MakeupDescription.yaml
ignoreTranslation: true
- title: MarkerCurve
path: /reference/engine/classes/MarkerCurve
type: engineapi
@ -2385,6 +2416,11 @@ navigation:
type: engineapi
source: /reference/engine/classes/ReflectionService.yaml
ignoreTranslation: true
- title: RemoteCommandService
path: /reference/engine/classes/RemoteCommandService
type: engineapi
source: /reference/engine/classes/RemoteCommandService.yaml
ignoreTranslation: true
- title: RemoteDebuggerServer
path: /reference/engine/classes/RemoteDebuggerServer
type: engineapi
@ -3077,6 +3113,11 @@ navigation:
type: engineapi
source: /reference/engine/classes/UIStroke.yaml
ignoreTranslation: true
- title: UniqueIdLookupService
path: /reference/engine/classes/UniqueIdLookupService
type: engineapi
source: /reference/engine/classes/UniqueIdLookupService.yaml
ignoreTranslation: true
- title: UserGameSettings
path: /reference/engine/classes/UserGameSettings
type: engineapi
@ -3467,6 +3508,11 @@ navigation:
type: engineapi
source: /reference/engine/datatypes/Secret.yaml
ignoreTranslation: true
- title: SecurityCapabilities
path: /reference/engine/datatypes/SecurityCapabilities
type: engineapi
source: /reference/engine/datatypes/SecurityCapabilities.yaml
ignoreTranslation: true
- title: SharedTable
path: /reference/engine/datatypes/SharedTable
type: engineapi
@ -3571,6 +3617,11 @@ navigation:
type: engineapi
source: /reference/engine/enums/AdornCullingMode.yaml
ignoreTranslation: true
- title: AdornShading
path: /reference/engine/enums/AdornShading
type: engineapi
source: /reference/engine/enums/AdornShading.yaml
ignoreTranslation: true
- title: AdShape
path: /reference/engine/enums/AdShape
type: engineapi
@ -3646,6 +3697,11 @@ navigation:
type: engineapi
source: /reference/engine/enums/AnimationClipFromVideoStatus.yaml
ignoreTranslation: true
- title: AnimationNodeType
path: /reference/engine/enums/AnimationNodeType
type: engineapi
source: /reference/engine/enums/AnimationNodeType.yaml
ignoreTranslation: true
- title: AnimationPriority
path: /reference/engine/enums/AnimationPriority
type: engineapi
@ -3956,6 +4012,11 @@ navigation:
type: engineapi
source: /reference/engine/enums/CameraMode.yaml
ignoreTranslation: true
- title: CameraNavigationModel
path: /reference/engine/enums/CameraNavigationModel
type: engineapi
source: /reference/engine/enums/CameraNavigationModel.yaml
ignoreTranslation: true
- title: CameraPanMode
path: /reference/engine/enums/CameraPanMode
type: engineapi
@ -4226,6 +4287,11 @@ navigation:
type: engineapi
source: /reference/engine/enums/DebuggerStatus.yaml
ignoreTranslation: true
- title: DefaultScriptSyncFileType
path: /reference/engine/enums/DefaultScriptSyncFileType
type: engineapi
source: /reference/engine/enums/DefaultScriptSyncFileType.yaml
ignoreTranslation: true
- title: DevCameraOcclusionMode
path: /reference/engine/enums/DevCameraOcclusionMode
type: engineapi
@ -4291,6 +4357,11 @@ navigation:
type: engineapi
source: /reference/engine/enums/DialogTone.yaml
ignoreTranslation: true
- title: DigitsRigDescriptionSide
path: /reference/engine/enums/DigitsRigDescriptionSide
type: engineapi
source: /reference/engine/enums/DigitsRigDescriptionSide.yaml
ignoreTranslation: true
- title: DisplaySize
path: /reference/engine/enums/DisplaySize
type: engineapi
@ -4396,6 +4467,16 @@ navigation:
type: engineapi
source: /reference/engine/enums/FieldOfViewMode.yaml
ignoreTranslation: true
- title: FileMode
path: /reference/engine/enums/FileMode
type: engineapi
source: /reference/engine/enums/FileMode.yaml
ignoreTranslation: true
- title: FileSystemWalkMode
path: /reference/engine/enums/FileSystemWalkMode
type: engineapi
source: /reference/engine/enums/FileSystemWalkMode.yaml
ignoreTranslation: true
- title: FillDirection
path: /reference/engine/enums/FillDirection
type: engineapi
@ -4536,11 +4617,6 @@ navigation:
type: engineapi
source: /reference/engine/enums/HandlesStyle.yaml
ignoreTranslation: true
- title: HandRigDescriptionSide
path: /reference/engine/enums/HandRigDescriptionSide
type: engineapi
source: /reference/engine/enums/HandRigDescriptionSide.yaml
ignoreTranslation: true
- title: HapticEffectType
path: /reference/engine/enums/HapticEffectType
type: engineapi
@ -4796,6 +4872,11 @@ navigation:
type: engineapi
source: /reference/engine/enums/LuauTypeCheckMode.yaml
ignoreTranslation: true
- title: MakeupType
path: /reference/engine/enums/MakeupType
type: engineapi
source: /reference/engine/enums/MakeupType.yaml
ignoreTranslation: true
- title: MarketplaceBulkPurchasePromptStatus
path: /reference/engine/enums/MarketplaceBulkPurchasePromptStatus
type: engineapi
@ -5031,6 +5112,11 @@ navigation:
type: engineapi
source: /reference/engine/enums/PathWaypointAction.yaml
ignoreTranslation: true
- title: PeoplePageLayout
path: /reference/engine/enums/PeoplePageLayout
type: engineapi
source: /reference/engine/enums/PeoplePageLayout.yaml
ignoreTranslation: true
- title: PermissionLevelShown
path: /reference/engine/enums/PermissionLevelShown
type: engineapi
@ -5161,6 +5247,11 @@ navigation:
type: engineapi
source: /reference/engine/enums/PromptCreateAvatarResult.yaml
ignoreTranslation: true
- title: PromptExperienceDetailsResult
path: /reference/engine/enums/PromptExperienceDetailsResult
type: engineapi
source: /reference/engine/enums/PromptExperienceDetailsResult.yaml
ignoreTranslation: true
- title: PromptPublishAssetResult
path: /reference/engine/enums/PromptPublishAssetResult
type: engineapi

View file

@ -11,7 +11,7 @@ navigation:
path: /assistant/guide
section:
- title: Overview
path: /assistant/guide
path: /assistant/guide
- title: Prompt guide and examples
path: /assistant/prompt-engineering
- heading: Building tools

View file

@ -91,6 +91,7 @@ If you wish to upload an accessory using these joints as a UGC item, there are a
- Vertices cannot be partially weighted to these joints. If you want to use them you must skin the vertex to the joint with a weight of `1.0`.
- If these joints are present in the mesh, then the accessory must be set to `WrapLayerAutoSkin.EnabledOverride`.
- Body part meshes containing these joints will be rejected by validation.
- Eyebrow and Eyelash accessory types are required to have the special skinning joints and be set to `WrapLayerAutoSkin.EnabledOverride`.
### Modify character cages

View file

@ -58,8 +58,8 @@ To create a custom Roblox accessory for your own experience or to sell on the Ma
- [Clothing creation tutorial](../../art/accessories/creating/index.md) - a step-by-step process of creating your own avatar-ready clothing from scratch in Blender.
- [Additional tools, resources, and guides](#resources) provided by Roblox to standardize and expedite the creation process.
<Alert severity = 'info'>
If you are a developer and are looking for information on manually equipping or configuring layered clothing accessories within an experience, including implementing layered clothing on a non-standard character model, see [Character appearance](../../characters/appearance.md).
<Alert severity = 'warning'>
If you are a developer and are looking for information on manually equipping or configuring layered clothing accessories within an experience, including [implementing layered clothing on a non-standard character model](../../characters/appearance.md#layered-clothing-on-non-r15), see [Character appearance](../../characters/appearance.md).
</Alert>
Roblox also supports [classic clothing](#classic-clothing), 2D images that can be applied to your character's surface.

View file

@ -16,297 +16,557 @@ The references below are not final and are subject to change. We encourage you t
<th style="text-align: center;"><b>Dynamic</b></th>
</tr></thead>
<tbody>
<tr><td>**\$.\$**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dollar_Dot_Dollar_10831558.png" /></td></tr>
<tr><td>**-_-**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dash_Underscore_Dash_15637848.png" /></td></tr>
<tr><td>**8-Bit Heart Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/8bit_Heart_Face_2568799765.png" /></td></tr>
<tr><td>**:-/**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Colon_Dash_Slash_7075469.png" /></td></tr>
<tr><td>**:-[**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Colon_Open_Bracket_15470193.png" /></td></tr>
<tr><td>**:-o**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Colon_Dash_O_7317773.png" /></td></tr>
<tr><td>**:/**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Colon_Dash_Backslash_15471035.png" /></td></tr>
<tr><td>**:3**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/3_15432080.png" /></td></tr>
<tr><td>**:]**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hehe_18151826.png" /></td></tr>
<tr><td>**\$.\$**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DollarDotDollar_10831558.png" /></td></tr>
<tr><td>**-_-**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DashUnderscoreDash_15637848.png" /></td></tr>
<tr><td>**8-Bit Heart Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/8bitHeartFace_2568799765.png" /></td></tr>
<tr><td>**:&#x27;(**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ColonApostropheCloseParenthesis_15133453.png" /></td></tr>
<tr><td>**:-/**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ColonDashSlash_7075469.png" /></td></tr>
<tr><td>**:-?**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ColonDashQuestionMark_15858152.png" /></td></tr>
<tr><td>**:-[**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ColonOpenBracket_15470193.png" /></td></tr>
<tr><td>**:-o**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ColonDashO_7317773.png" /></td></tr>
<tr><td>**:/**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ColonDashBackslash_15471035.png" /></td></tr>
<tr><td>**:D**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/D1_16132514.png" /></td></tr>
<tr><td>**:P**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/P_14861743.png" /></td></tr>
<tr><td>**=)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Equal_Close_Parenthesis_14817393.png" /></td></tr>
<tr><td>**&gt;:3**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Three_One_15177601.png" /></td></tr>
<tr><td>**&gt;_&lt;**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Greater_Than_Underscore_Less_Than_15324577.png" /></td></tr>
<tr><td>**^_^**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Caret_Underscore_Caret_15366173.png" /></td></tr>
<tr><td>**Adorable Puppy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Adorable_Puppy_11389372.png" /></td></tr>
<tr><td>**=)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EqualCloseParenthesis_14817393.png" /></td></tr>
<tr><td>**&gt;_&lt;**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreaterThanUnderScoreLessThan_15324577.png" /></td></tr>
<tr><td>**&gt;_&gt;**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreaterThanUnderscoreGreaterThan_16387711.png" /></td></tr>
<tr><td>**^_^**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CaretUnderscoreCaret_15366173.png" /></td></tr>
<tr><td>**Adorable Puppy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AdorablePuppy_11389372.png" /></td></tr>
<tr><td>**Adoration**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Adoration_28878297.png" /></td></tr>
<tr><td>**Aghast**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Aghast_9250633.png" /></td></tr>
<tr><td>**Alexandra Ninniflip - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AlexandraNinniflipFace_2553655919.png" /></td></tr>
<tr><td>**Alien**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Alien_31317701.png" /></td></tr>
<tr><td>**Alien Ambassador**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Alien_Ambassador_11913700.png" /></td></tr>
<tr><td>**Alien Ambassador**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AlienAmbassador_11913700.png" /></td></tr>
<tr><td>**Alright**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Alright_7131541.png" /></td></tr>
<tr><td>**Amelia Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Amelia_Face_293302465.png" /></td></tr>
<tr><td>**And then we&#x27;ll take over the world!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/And_Then_Well_Take_Over_The_World_12732366.png" /></td></tr>
<tr><td>**Angry Zombie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Angry_Zombie_173789114.png" /></td></tr>
<tr><td>**Amelia Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AmeliaFace_293302465.png" /></td></tr>
<tr><td>**And then we&#x27;ll take over the world!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AndThenWellTakeOverTheWorld_12732366.png" /></td></tr>
<tr><td>**Angelic**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Angelic_45084008.png" /></td></tr>
<tr><td>**Angry Zombie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AngryZombie_173789114.png" /></td></tr>
<tr><td>**Anguished**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Anguished_8560975.png" /></td></tr>
<tr><td>**Anime Surprise**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Anime_Surprise_416846300.png" /></td></tr>
<tr><td>**Award-Winning Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Award_Winning_Smile_6531983163.png" /></td></tr>
<tr><td>**Awesome Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Awesome_Face_30394850.png" /></td></tr>
<tr><td>**Awkward Eyeroll**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Awkward_Eyeroll_150182378.png" /></td></tr>
<tr><td>**Awkward Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Awkward_Grin_150182501.png" /></td></tr>
<tr><td>**Awkward....**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Awkward_23932048.png" /></td></tr>
<tr><td>**Bad Dog**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bad_Dog_10678423.png" /></td></tr>
<tr><td>**Beaming with Pride**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Beaming_With_Pride_3267567501.png" /></td></tr>
<tr><td>**Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Beast_Mode_128992838.png" /></td></tr>
<tr><td>**Big Grin - Tai Verdes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Big_Grin_Tai_Verdes_7987180607.png" /></td></tr>
<tr><td>**Big Sad Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Big_Sad_Eyes_391496223.png" /></td></tr>
<tr><td>**Anime Surprise**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AnimeSurprise_416846300.png" /></td></tr>
<tr><td>**Astral Isle Clan: Windsor the Blue - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AstralIsleClanWindsorTheBlueFace_2627730985.png" /></td></tr>
<tr><td>**Atlantean Warrior Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AtlanteanWarriorFace_3241221587.png" /></td></tr>
<tr><td>**Aurora Spark - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AuroraSparkFace_2979703241.png" /></td></tr>
<tr><td>**Awesome Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AwesomeFace_30394850.png" /></td></tr>
<tr><td>**Awkward Eyeroll**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AwkwardEyeroll_150182378.png" /></td></tr>
<tr><td>**Awkward Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/AwkwardGrin_150182501.png" /></td></tr>
<tr><td>**Bad Dog**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BadDog_10678423.png" /></td></tr>
<tr><td>**Bad News Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BadNewsFace_268603331.png" /></td></tr>
<tr><td>**Bakonette**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bakonette_7243836687.png" /></td></tr>
<tr><td>**Ballerina Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BallerinaFace_2571850406.png" /></td></tr>
<tr><td>**Bandage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bandage_20418682.png" /></td></tr>
<tr><td>**Battle Ready Kenji Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BattleReadyKenjiFace_3116216863.png" /></td></tr>
<tr><td>**Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BeastMode_128992838.png" /></td></tr>
<tr><td>**Beekeeper - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BeekeeperFace_2553407112.png" /></td></tr>
<tr><td>**Beekeeper - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FestiveBeekeeperFace_2553407112.png" /></td></tr>
<tr><td>**Big Grin - Tai Verdes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BigGrinTaiVerdes_7987180607.png" /></td></tr>
<tr><td>**Big Sad Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BigSadEyes_391496223.png" /></td></tr>
<tr><td>**Biohazard First Responder - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BiohazardFirstResponderFace_4927805902.png" /></td></tr>
<tr><td>**Bird of Prey**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BirdOfPrey_10907547.png" /></td></tr>
<tr><td>**BiteyMcFace**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Biteymcface_743690770.png" /></td></tr>
<tr><td>**Blerg!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blerg_12777646.png" /></td></tr>
<tr><td>**Bling**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bling_25975243.png" /></td></tr>
<tr><td>**Blinky**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blinky_7506135.png" /></td></tr>
<tr><td>**Blizzard Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blizzard_Beast_Mode_209995252.png" /></td></tr>
<tr><td>**Blue Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Amazeface_835095003.png" /></td></tr>
<tr><td>**Blue Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Bubble_Trouble_330296924.png" /></td></tr>
<tr><td>**Blue Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Goof_1191162013.png" /></td></tr>
<tr><td>**Blue Rock Star Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Rock_Star_Smile_1428409936.png" /></td></tr>
<tr><td>**Blue Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Starface_119812715.png" /></td></tr>
<tr><td>**Blue Starry Sight**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Starry_Sight_2222775067.png" /></td></tr>
<tr><td>**Blue Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Blue_Ultimate_Dragon_Face_1772529256.png" /></td></tr>
<tr><td>**Blizzard Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlizzardBeastMode_209995252.png" /></td></tr>
<tr><td>**Blue Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueAmazeface_835095003.png" /></td></tr>
<tr><td>**Blue Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueBubbleTrouble_330296924.png" /></td></tr>
<tr><td>**Blue Eyeroll**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueEyeroll_323191979.png" /></td></tr>
<tr><td>**Blue Galaxy Gaze**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueGalaxyGaze_440739518.png" /></td></tr>
<tr><td>**Blue Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueGoof_1191162013.png" /></td></tr>
<tr><td>**Blue Moonstruck**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueMoonstruck_878941449.png" /></td></tr>
<tr><td>**Blue Rock Star Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueRockStarSmile_1428409936.png" /></td></tr>
<tr><td>**Blue Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueStarface_119812715.png" /></td></tr>
<tr><td>**Blue Starry Sight**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueStarrySight_2222775067.png" /></td></tr>
<tr><td>**Blue Trance**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueTrance_244160970.png" /></td></tr>
<tr><td>**Blue Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueUltimateDragonFace_1772529256.png" /></td></tr>
<tr><td>**Blue Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueWistfulWink_583721561.png" /></td></tr>
<tr><td>**Blue-eyed Awesome Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BlueeyedAwesomeFace_386188363.png" /></td></tr>
<tr><td>**Bluffing**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bluffing_147144673.png" /></td></tr>
<tr><td>**Bombo Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bombo_Face_121947053.png" /></td></tr>
<tr><td>**Bored**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bored_66330106.png" /></td></tr>
<tr><td>**Braces**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Braces_30394484.png" /></td></tr>
<tr><td>**Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Bubble_Trouble_19264845.png" /></td></tr>
<tr><td>**Butterfly Wink - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Butterfly_Wink_Lil_Nas_XLNX_7657646351.png" /></td></tr>
<tr><td>**Cat Eye - Zara Larsson**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cat_Eye_Zara_Larsson_7893455671.png" /></td></tr>
<tr><td>**Check It**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Check_It_7074786.png" /></td></tr>
<tr><td>**Cheerful Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cheerful_Grin_33321848.png" /></td></tr>
<tr><td>**Cheerful Hello**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cheerful_Hello_362051644.png" /></td></tr>
<tr><td>**Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/BubbleTrouble_19264845.png" /></td></tr>
<tr><td>**Butterfly**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Butterfly_24727929.png" /></td></tr>
<tr><td>**C.Y.N.D.I - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CyndiFace_2535415411.png" /></td></tr>
<tr><td>**Camoface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Camoface_24441888.png" /></td></tr>
<tr><td>**Casey&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CaseysFace_301827157.png" /></td></tr>
<tr><td>**Cat Eye - Zara Larsson**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CatEyeZaraLarsson_7893455671.png" /></td></tr>
<tr><td>**Catching Snowflakes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CatchingSnowflakes_1213472762.png" /></td></tr>
<tr><td>**Champion Of The Tide Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ChampionOfTheTideFace_3381167752.png" /></td></tr>
<tr><td>**Cheerful Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CheerfulGrin_33321848.png" /></td></tr>
<tr><td>**Cheerful Hello**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CheerfulHello_362051644.png" /></td></tr>
<tr><td>**Chester Finkleton - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ChesterFinkletonFace_2648884861.png" /></td></tr>
<tr><td>**Chichiri the Wise Youkai Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ChichiriTheWiseYoukaiFace_3210252812.png" /></td></tr>
<tr><td>**Chill**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Chill_7074764.png" /></td></tr>
<tr><td>**Chill McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Chill_Mccool_376813144.png" /></td></tr>
<tr><td>**Chill McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ChillMccool_376813144.png" /></td></tr>
<tr><td>**Chippy McTooth**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ChippyMctooth_7317769.png" /></td></tr>
<tr><td>**Chubs**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Chubs_7076110.png" /></td></tr>
<tr><td>**City Life Man - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/City_Life_Man_Face_2490662812.png" /></td></tr>
<tr><td>**City Life Woman - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/City_Life_Woman_Face_2492678267.png" /></td></tr>
<tr><td>**Claire&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Claires_Face_301827089.png" /></td></tr>
<tr><td>**Classic Alien Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Alien_Face_159199178.png" /></td></tr>
<tr><td>**Classic Female - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Female_Face_4018627046.png" /></td></tr>
<tr><td>**Classic Female v2 - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Female_V2_Face_4637266368.png" /></td></tr>
<tr><td>**Classic Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Goof_7074661.png" /></td></tr>
<tr><td>**Classic Male - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Male_Face_4018617474.png" /></td></tr>
<tr><td>**Classic Male v2 - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Male_V2_Face_4637244809.png" /></td></tr>
<tr><td>**Classic Vampire**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Classic_Vampire_7074836.png" /></td></tr>
<tr><td>**City Life Man - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CityLifeManFace_2490662812.png" /></td></tr>
<tr><td>**City Life Woman - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CityLifeWomanFace_2492678267.png" /></td></tr>
<tr><td>**Claire&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ClairesFace_301827089.png" /></td></tr>
<tr><td>**Classic Alien Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ClassicAlienFace_159199178.png" /></td></tr>
<tr><td>**Classic Female - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ClassicFemaleFace_4018627046.png" /></td></tr>
<tr><td>**Classic Female v2 - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ClassicFemaleV2Face_4637266368.png" /></td></tr>
<tr><td>**Classic Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ClassicGoof_7074661.png" /></td></tr>
<tr><td>**Classic Male - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ClassicMaleFace_4018617474.png" /></td></tr>
<tr><td>**Classic Vampire**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ClassicVampire_7074836.png" /></td></tr>
<tr><td>**Clown Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ClownFace_23644960.png" /></td></tr>
<tr><td>**Clown School Dropout**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ClownSchoolDropout_21392863.png" /></td></tr>
<tr><td>**Commando**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Commando_10527010.png" /></td></tr>
<tr><td>**Concerned**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Concerned_9250660.png" /></td></tr>
<tr><td>**Crazy Happy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Crazy_Happy_45515121.png" /></td></tr>
<tr><td>**Country Morning**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CountryMorning_51241522.png" /></td></tr>
<tr><td>**Crank and Zap Mech - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CrankAndZapMechFace_5885801791.png" /></td></tr>
<tr><td>**Crazy Abstract Artist**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CrazyAbstractArtist_10907546.png" /></td></tr>
<tr><td>**Crazy Happy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CrazyHappy_45515121.png" /></td></tr>
<tr><td>**Crazybot 10000**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Crazybot10000_554650579.png" /></td></tr>
<tr><td>**Crimson Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Crimson_Evil_Eye_1016184756.png" /></td></tr>
<tr><td>**Crimson Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CrimsonEvilEye_1016184756.png" /></td></tr>
<tr><td>**Crimson Laser Vision**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CrimsonLaserVision_45514606.png" /></td></tr>
<tr><td>**Crimson Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CrimsonStarface_162200633.png" /></td></tr>
<tr><td>**Crybaby**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Crybaby_2620506513.png" /></td></tr>
<tr><td>**Cuckookrazybot 10000**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cuckookrazybot10000_554663025.png" /></td></tr>
<tr><td>**Cute Kitty**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cute_Kitty_11389441.png" /></td></tr>
<tr><td>**Cute Kitty**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/CuteKitty_11389441.png" /></td></tr>
<tr><td>**Cutiemouse**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cutiemouse_15885121.png" /></td></tr>
<tr><td>**Cyanskeleface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Cyanskeleface_2845815452.png" /></td></tr>
<tr><td>**D:**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/D_14812981.png" /></td></tr>
<tr><td>**D=**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dequal_17138027.png" /></td></tr>
<tr><td>**Daring**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Daring_8329690.png" /></td></tr>
<tr><td>**Daring Beard**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Daring_Beard_110288809.png" /></td></tr>
<tr><td>**Demented Mouse**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Demented_Mouse_12188176.png" /></td></tr>
<tr><td>**Desert Commando**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Desert_Commando_323191683.png" /></td></tr>
<tr><td>**Devil Nas X - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Devil_Nas_X_Lil_Nas_XLNX_7657657626.png" /></td></tr>
<tr><td>**Devilish Smile - 24kGoldn**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Devilish_Smile24k_Goldn_9156271739.png" /></td></tr>
<tr><td>**Dex&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dexs_Face_807335973.png" /></td></tr>
<tr><td>**Diamond Grill - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Diamond_Grill_Lil_Nas_XLNX_7657627637.png" /></td></tr>
<tr><td>**Daring Beard**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DaringBeard_110288809.png" /></td></tr>
<tr><td>**Daring Blonde Beard Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DaringBlondeBeardFace_323191430.png" /></td></tr>
<tr><td>**Dark Age Apprentice - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DarkAgeApprenticeFace_2510119972.png" /></td></tr>
<tr><td>**Daydreaming**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Daydreaming_29296146.png" /></td></tr>
<tr><td>**DDotty Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DdottySmile_667681953.png" /></td></tr>
<tr><td>**Death&#x27;s Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DeathsGrin_880471415.png" /></td></tr>
<tr><td>**Demented Mouse**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DementedMouse_12188176.png" /></td></tr>
<tr><td>**Desert Commando**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DesertCommando_323191683.png" /></td></tr>
<tr><td>**Devil Nas X - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DevilNasXLilNasXLNX_7657657626.png" /></td></tr>
<tr><td>**Devilish Smile - 24kGoldn**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DevilishSmile24kGoldn_9156271739.png" /></td></tr>
<tr><td>**Dex&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DexsFace_807335973.png" /></td></tr>
<tr><td>**Diamond Grill - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DiamondGrillLilNasXLNX_7657627637.png" /></td></tr>
<tr><td>**Digital Artist - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DigitalArtistFace_2936946480.png" /></td></tr>
<tr><td>**Digital Artist - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DigitalShockArtistFace_2936946480.png" /></td></tr>
<tr><td>**Disapproving Unibrow**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DisapprovingUnibrow_66330360.png" /></td></tr>
<tr><td>**Disbelief**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Disbelief_20337343.png" /></td></tr>
<tr><td>**Dizzy Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dizzy_Face_10907551.png" /></td></tr>
<tr><td>**Disbelief Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DisbeliefFace_34186804.png" /></td></tr>
<tr><td>**Distaught Alien Invader**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DistaughtAlienInvader_11913668.png" /></td></tr>
<tr><td>**DIY Cardboard Knight - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DiyCardboardKnightFace_2517411290.png" /></td></tr>
<tr><td>**Dizzy Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DizzyFace_10907551.png" /></td></tr>
<tr><td>**DJ Databaze - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DjDatabazeFace_3091071034.png" /></td></tr>
<tr><td>**Domino Deckard - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DominoDeckardFace_6653133806.png" /></td></tr>
<tr><td>**Don&#x27;t Wake Me Up**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DontWakeMeUp_343619993.png" /></td></tr>
<tr><td>**Downcast**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Downcast_21352013.png" /></td></tr>
<tr><td>**Drill Sergeant**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Drill_Sergeant_141728899.png" /></td></tr>
<tr><td>**Drool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Drool_7074893.png" /></td></tr>
<tr><td>**Drooling Noob**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Drooling_Noob_24067718.png" /></td></tr>
<tr><td>**Emerald Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Emerald_Evil_Eye_1016185535.png" /></td></tr>
<tr><td>**Dr. Bunton Madmind - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DrBuntonMadmindFace_2807218396.png" /></td></tr>
<tr><td>**Dr. Fia Tyfoid - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dr.FiaTyfoidFace_3410486318.png" /></td></tr>
<tr><td>**Dr. Lauren, Artifact Excavator - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DrLaurenArtifactExcavatorFace_2510140104.png" /></td></tr>
<tr><td>**Dragonface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Dragonface_12908359.png" /></td></tr>
<tr><td>**Drill Sergeant**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DrillSergeant_141728899.png" /></td></tr>
<tr><td>**Drooling Noob**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DroolingNoob_24067718.png" /></td></tr>
<tr><td>**Druid of the Stag Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/DruidOfTheStagFace_3131093524.png" /></td></tr>
<tr><td>**Egg Crazed**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EggCrazed_233616117.png" /></td></tr>
<tr><td>**Egg on your Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EggOnYourFace_110207471.png" /></td></tr>
<tr><td>**Eita the Envious Youkai Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EitaTheEnviousYoukaiFace_3210252000.png" /></td></tr>
<tr><td>**Elegant Evening Dress - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ElegantEveningDressFace_4916129740.png" /></td></tr>
<tr><td>**Elf Guardian of the Northern Border - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ElfGuardianOfTheNorthernBorderFace_2510329394.png" /></td></tr>
<tr><td>**Embarrassed**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Embarrassed_21272995.png" /></td></tr>
<tr><td>**Emerald Ambassador**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EmeraldAmbassador_66330060.png" /></td></tr>
<tr><td>**Emerald Archfey Visage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EmeraldArchfeyVisage_2830499980.png" /></td></tr>
<tr><td>**Emerald Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EmeraldEvilEye_1016185535.png" /></td></tr>
<tr><td>**Emerald Laser Vision**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EmeraldLaserVision_66330165.png" /></td></tr>
<tr><td>**Emotionally Distressed Zombie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EmotionallyDistressedZombie_7506136.png" /></td></tr>
<tr><td>**Emperor**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Emperor_25267538.png" /></td></tr>
<tr><td>**Epic Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EpicFace_42070576.png" /></td></tr>
<tr><td>**Epic Vampire Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EpicVampireFace_181651981.png" /></td></tr>
<tr><td>**Erisyphia - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ErisyphiaFace_3141356565.png" /></td></tr>
<tr><td>**Err...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Err_20418658.png" /></td></tr>
<tr><td>**Exclamation Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Exclamation_Face_35168581.png" /></td></tr>
<tr><td>**Evil Skeptic**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EvilSkeptic_110336757.png" /></td></tr>
<tr><td>**Exclamation Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ExclamationFace_35168581.png" /></td></tr>
<tr><td>**Existential Angst**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ExistentialAngst_7074814.png" /></td></tr>
<tr><td>**eXtreme**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Extreme_10831454.png" /></td></tr>
<tr><td>**Eyes of Everflame**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Eyes_Of_Everflame_362051773.png" /></td></tr>
<tr><td>**Eyes of Everfrost**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Eyes_Of_Everfrost_22972723.png" /></td></tr>
<tr><td>**Eyes of Everflame**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EyesOfEverflame_362051773.png" /></td></tr>
<tr><td>**Eyes of Everfrost**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EyesOfEverfrost_22972723.png" /></td></tr>
<tr><td>**Ezebel Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/EzebelFace_293303927.png" /></td></tr>
<tr><td>**Facepalm**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Facepalm_30394594.png" /></td></tr>
<tr><td>**Fanciful Leprechaun Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FancifulLeprechaunFace_2907641479.png" /></td></tr>
<tr><td>**Fang**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Fang_7075142.png" /></td></tr>
<tr><td>**Fast Car**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Fast_Car_22587894.png" /></td></tr>
<tr><td>**Fashion Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FashionFace_2274764091.png" /></td></tr>
<tr><td>**Fast Car**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FastCar_22587894.png" /></td></tr>
<tr><td>**Fawkes Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FawkesFace_134522901.png" /></td></tr>
<tr><td>**Fearless**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Fearless_7074991.png" /></td></tr>
<tr><td>**Finn McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Finn_Mc_Cool_10907549.png" /></td></tr>
<tr><td>**Finn McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FinnMcCool_10907549.png" /></td></tr>
<tr><td>**Football Player - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FootballPlayerFace_2773409880.png" /></td></tr>
<tr><td>**Freckled Cheeks**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FreckledCheeks_25556219.png" /></td></tr>
<tr><td>**Freckles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Freckles_12145366.png" /></td></tr>
<tr><td>**Friendly Cyclops**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Friendly_Cyclops_30394438.png" /></td></tr>
<tr><td>**Friendly Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Friendly_Grin_25321961.png" /></td></tr>
<tr><td>**Friendly Pirate**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Friendly_Pirate_19366445.png" /></td></tr>
<tr><td>**Friendly Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Friendly_Smile_616381207.png" /></td></tr>
<tr><td>**Friendly Cyclops**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FriendlyCyclops_30394438.png" /></td></tr>
<tr><td>**Friendly Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FriendlyGrin_25321961.png" /></td></tr>
<tr><td>**Friendly Pirate**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FriendlyPirate_19366445.png" /></td></tr>
<tr><td>**Friendly Puppy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FriendlyPuppy_27725434.png" /></td></tr>
<tr><td>**Friendly Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FriendlySmile_616381207.png" /></td></tr>
<tr><td>**Friendly Trusting Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FriendlyTrustingSmile_402304145.png" /></td></tr>
<tr><td>**Frightening Unibrow**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FrighteningUnibrow_8560985.png" /></td></tr>
<tr><td>**Frightful**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Frightful_7699193.png" /></td></tr>
<tr><td>**Furious Finn Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FuriousFinnFace_295492723.png" /></td></tr>
<tr><td>**Furious George**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FuriousGeorge_277950647.png" /></td></tr>
<tr><td>**Futureglam Bounty Hunter Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FutureglamBountyHunterFace_3013806177.png" /></td></tr>
<tr><td>**Genni the Snail Knight-Errant - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GenniTheSnailKnighterrantFace_2628039027.png" /></td></tr>
<tr><td>**Ghostface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Ghostface_12467159.png" /></td></tr>
<tr><td>**Gigglypuff**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Gigglypuff_35397243.png" /></td></tr>
<tr><td>**Glee**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Glee_7074729.png" /></td></tr>
<tr><td>**Glittering Eye - Zara Larsson**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Glittering_Eye_Zara_Larsson_7893460486.png" /></td></tr>
<tr><td>**Glory on the Gridiron**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Glory_On_The_Gridiron_21802396.png" /></td></tr>
<tr><td>**Gold Mermaid Visage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Gold_Mermaid_Visage_5122245866.png" /></td></tr>
<tr><td>**Golden Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Golden_Evil_Eye_1016185809.png" /></td></tr>
<tr><td>**Golden Eyes - 24kGoldn**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Golden_Eyes24k_Goldn_9156275069.png" /></td></tr>
<tr><td>**Golden Shiny Teeth**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Golden_Shiny_Teeth_66319941.png" /></td></tr>
<tr><td>**Good Intentioned**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Good_Intentioned_7317793.png" /></td></tr>
<tr><td>**Glided Diver - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/FearlessOceanDiverFace_5238862364.png" /></td></tr>
<tr><td>**Glided Diver - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GlidedDiverFace_5238862364.png" /></td></tr>
<tr><td>**Glory on the Gridiron**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GloryOnTheGridiron_21802396.png" /></td></tr>
<tr><td>**Golden Bling Braces**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GoldenBlingBraces_1191136166.png" /></td></tr>
<tr><td>**Golden Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GoldenEvilEye_1016185809.png" /></td></tr>
<tr><td>**Golden Eyes - 24kGoldn**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GoldenEyes24kGoldn_9156275069.png" /></td></tr>
<tr><td>**Golden Lightning Speaker**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GoldenLightningSpeaker_66330231.png" /></td></tr>
<tr><td>**Golden Shiny Teeth**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GoldenShinyTeeth_66319941.png" /></td></tr>
<tr><td>**Good Intentioned**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GoodIntentioned_7317793.png" /></td></tr>
<tr><td>**Goofball**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Goofball_27134344.png" /></td></tr>
<tr><td>**Green Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Amazeface_835094544.png" /></td></tr>
<tr><td>**Green Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Bubble_Trouble_380754227.png" /></td></tr>
<tr><td>**Green Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Goof_1191162539.png" /></td></tr>
<tr><td>**Green Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Starface_119812738.png" /></td></tr>
<tr><td>**Green Starry Sight**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Starry_Sight_2222774106.png" /></td></tr>
<tr><td>**Green Trance**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Trance_260303894.png" /></td></tr>
<tr><td>**Green Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Ultimate_Dragon_Face_1772531407.png" /></td></tr>
<tr><td>**Green Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Green_Wistful_Wink_583722932.png" /></td></tr>
<tr><td>**Green-eyed Awesome Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Greeneyed_Awesome_Face_66330144.png" /></td></tr>
<tr><td>**Gritty Bombo**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Gritty_Bombo_406000562.png" /></td></tr>
<tr><td>**Grr!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Grr_19398554.png" /></td></tr>
<tr><td>**Happy :D**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Happy_D_406000730.png" /></td></tr>
<tr><td>**Happy Girl Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Happy_Girl_Face_293226229.png" /></td></tr>
<tr><td>**Happy Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Happy_Wink_236399287.png" /></td></tr>
<tr><td>**Grandma&#x27;s Lipstick**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GrandmasLipstick_51241480.png" /></td></tr>
<tr><td>**Green Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenAmazeface_835094544.png" /></td></tr>
<tr><td>**Green Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenBubbleTrouble_380754227.png" /></td></tr>
<tr><td>**Green Drool Angry Zombie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenDroolAngryZombie_406001532.png" /></td></tr>
<tr><td>**Green Galaxy Gaze**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenGalaxyGaze_440739783.png" /></td></tr>
<tr><td>**Green Glowing Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenGlowingEyes_398676450.png" /></td></tr>
<tr><td>**Green Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenGoof_1191162539.png" /></td></tr>
<tr><td>**Green Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenStarface_119812738.png" /></td></tr>
<tr><td>**Green Super Happy Joy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenSuperHappyJoy_323191596.png" /></td></tr>
<tr><td>**Green Trance**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenTrance_260303894.png" /></td></tr>
<tr><td>**Green Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenUltimateDragonFace_1772531407.png" /></td></tr>
<tr><td>**Green Whatchoo Talkin&#x27; Bout**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenWhatchooTalkinBout_323191787.png" /></td></tr>
<tr><td>**Green Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreenWistfulWink_583722932.png" /></td></tr>
<tr><td>**Green-eyed Awesome Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GreeneyedAwesomeFace_66330144.png" /></td></tr>
<tr><td>**Gritty Bombo**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GrittyBombo_406000562.png" /></td></tr>
<tr><td>**Grumpy Blox**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GrumpyBlox_173789498.png" /></td></tr>
<tr><td>**Gwen &quot;Axe Angel&quot; Rosewood - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/GwenAxeAngelRosewoodFace_2859557339.png" /></td></tr>
<tr><td>**Happy Girl Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/HappyGirlFace_293226229.png" /></td></tr>
<tr><td>**Happy Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/HappyWink_236399287.png" /></td></tr>
<tr><td>**Heart Gaze - Zara Larsson**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/HeartGazeZaraLarsson_7893468574.png" /></td></tr>
<tr><td>**Heeeeeey...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Heeeeeey_21635565.png" /></td></tr>
<tr><td>**Hilarious**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hilarious_27861352.png" /></td></tr>
<tr><td>**Hmmm...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hmmm_7076076.png" /></td></tr>
<tr><td>**Hold It In**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hold_It_In_2222771916.png" /></td></tr>
<tr><td>**Hockey Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/HockeyFace_142464206.png" /></td></tr>
<tr><td>**Hold It In**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/HoldItIn_2222771916.png" /></td></tr>
<tr><td>**Huh?**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Huh_150182466.png" /></td></tr>
<tr><td>**Hut Hut Hike!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hut_Hut_Hike_15470849.png" /></td></tr>
<tr><td>**Hut Hut Hike!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/HutHutHike_15470849.png" /></td></tr>
<tr><td>**Hypnoface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Hypnoface_10770436.png" /></td></tr>
<tr><td>**I &lt;3 New Site Theme**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I3_New_Site_Theme_32723404.png" /></td></tr>
<tr><td>**I Am Not Amused**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I_Am_Not_Amused_7131886.png" /></td></tr>
<tr><td>**I Didn&#x27;t Eat That Cookie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I_Didnt_Eat_That_Cookie_116042990.png" /></td></tr>
<tr><td>**I Hate Noobs**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I_Hate_Noobs_14030577.png" /></td></tr>
<tr><td>**I wuv u**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I_Wuv_U_10907545.png" /></td></tr>
<tr><td>**It&#x27;s Go Time!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Its_Go_Time_7506141.png" /></td></tr>
<tr><td>**Jack Frost Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Jack_Frost_Face_19396123.png" /></td></tr>
<tr><td>**Joyful Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Joyful_Smile_209995366.png" /></td></tr>
<tr><td>**Joyous Surprise**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Joyous_Surprise_28999228.png" /></td></tr>
<tr><td>**Just Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Just_Trouble_244160766.png" /></td></tr>
<tr><td>**Know-It-All Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Knowitall_Grin_26424808.png" /></td></tr>
<tr><td>**Krezak - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Krezak_Face_293309580.png" /></td></tr>
<tr><td>**Lady Lashes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lady_Lashes_29348122.png" /></td></tr>
<tr><td>**Laughing Fun**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Laughing_Fun_226217449.png" /></td></tr>
<tr><td>**Lavender Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lavender_Amazeface_835095306.png" /></td></tr>
<tr><td>**Lazy Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lazy_Eye_7075502.png" /></td></tr>
<tr><td>**Lightning Speaker**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lightning_Speaker_22588801.png" /></td></tr>
<tr><td>**Lin&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lins_Face_301826803.png" /></td></tr>
<tr><td>**Look At My Nose**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Look_At_My_Nose_23311761.png" /></td></tr>
<tr><td>**Love**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/love_11611321.png" /></td></tr>
<tr><td>**I &lt;3 New Site Theme**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/I3NewSiteTheme_32723404.png" /></td></tr>
<tr><td>**I Am Not Amused**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/IAmNotAmused_7131886.png" /></td></tr>
<tr><td>**I Didn&#x27;t Eat That Cookie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/IDidntEatThatCookie_116042990.png" /></td></tr>
<tr><td>**I Hate Noobs**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/IHateNoobs_14030577.png" /></td></tr>
<tr><td>**I Lack Personal Confidence**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ILackPersonalConfidence_7506144.png" /></td></tr>
<tr><td>**I wuv u**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/IWuvU_10907545.png" /></td></tr>
<tr><td>**iFace**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Iface_100290429.png" /></td></tr>
<tr><td>**ILOVEFOOTBOLL!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Ilovefootboll_15470861.png" /></td></tr>
<tr><td>**Imagine**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Imagine_30394316.png" /></td></tr>
<tr><td>**Isabella**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Isabella_7243933492.png" /></td></tr>
<tr><td>**It&#x27;s Go Time!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ItsGoTime_7506141.png" /></td></tr>
<tr><td>**It&#x27;s so beautiful!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ItsSoBeautiful_26674400.png" /></td></tr>
<tr><td>**Jack Frost Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/JackFrostFace_19396123.png" /></td></tr>
<tr><td>**Jacob: The Storm Breaker Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/JacobTheStormBreakerFace_599913343.png" /></td></tr>
<tr><td>**Jester Equinox - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/JesterEquinoxFace_2962660233.png" /></td></tr>
<tr><td>**John&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/JohnsFace_301827199.png" /></td></tr>
<tr><td>**Joyful Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/JoyfulSmile_209995366.png" /></td></tr>
<tr><td>**Joyous Surprise**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/JoyousSurprise_28999228.png" /></td></tr>
<tr><td>**Jungle Commando**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/JungleCommando_16678138.png" /></td></tr>
<tr><td>**Just Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/JustTrouble_244160766.png" /></td></tr>
<tr><td>**Kandi&#x27;s Sprinkle Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/KandisSprinkleFace_8666865667.png" /></td></tr>
<tr><td>**Knight of Chivalry - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/KnightOfChivalryFace_2510299324.png" /></td></tr>
<tr><td>**Knight of Courage - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/KnightofCourageFace_2535711033.png" /></td></tr>
<tr><td>**Knight of Splintered Skies Ascendant - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/KnightOfSplinteredSkiesAscendantFace_2506721000.png" /></td></tr>
<tr><td>**Know-It-All Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/KnowitallGrin_26424808.png" /></td></tr>
<tr><td>**Krezak - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/KrezakFace_293309580.png" /></td></tr>
<tr><td>**Kroma Blitz - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/KromaBlitzFace_2979689790.png" /></td></tr>
<tr><td>**Lady Darkshade - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/LadyDarkshadeFace_2807183388.png" /></td></tr>
<tr><td>**Lady Lashes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/LadyLashes_29348122.png" /></td></tr>
<tr><td>**Laughing Fun**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/LaughingFun_226217449.png" /></td></tr>
<tr><td>**Lavender Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/LavenderAmazeface_835095306.png" /></td></tr>
<tr><td>**Lazy Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/LazyEye_7075502.png" /></td></tr>
<tr><td>**Lightning Speaker**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/LightningSpeaker_22588801.png" /></td></tr>
<tr><td>**Lin&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/LinsFace_301826803.png" /></td></tr>
<tr><td>**Lion**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Lion_11956548.png" /></td></tr>
<tr><td>**Look At My Nose**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/LookAtMyNose_23311761.png" /></td></tr>
<tr><td>**Lynn - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/LynnFace_2610492664.png" /></td></tr>
<tr><td>**Madbot 10000**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Madbot10000_554658475.png" /></td></tr>
<tr><td>**Magical Dragon**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MagicalDragon_34871168.png" /></td></tr>
<tr><td>**Man Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ManFace_86487700.png" /></td></tr>
<tr><td>**Manicbot 10000**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Manicbot10000_554663566.png" /></td></tr>
<tr><td>**Manlier Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Manlier_Face_76383151.png" /></td></tr>
<tr><td>**McLaren Big Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Mclaren_Big_Grin_9062637857.png" /></td></tr>
<tr><td>**Manlier Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ManlierFace_76383151.png" /></td></tr>
<tr><td>**Masque**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Masque_22432782.png" /></td></tr>
<tr><td>**McLaren Big Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MclarenBigGrin_9062637857.png" /></td></tr>
<tr><td>**McLaren Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MclarenSmile_9062620353.png" /></td></tr>
<tr><td>**Meanie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Meanie_9250643.png" /></td></tr>
<tr><td>**Meow?**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Meow_10907529.png" /></td></tr>
<tr><td>**Monarch Butterfly Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Monarch_Butterfly_Smile_383607653.png" /></td></tr>
<tr><td>**Monster Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Monster_Face_49045351.png" /></td></tr>
<tr><td>**Monster Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Monster_Smile_398675917.png" /></td></tr>
<tr><td>**Mr. Toilet - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Mr_Toilet_Face_4416933495.png" /></td></tr>
<tr><td>**Merciless Ninja - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MercilessNinjaFace_6652985701.png" /></td></tr>
<tr><td>**Mermaid Mystique**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MermaidMystique_8664096393.png" /></td></tr>
<tr><td>**Mick McCann**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MickMccann_23264604.png" /></td></tr>
<tr><td>**Mildly Irritated Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MildlyIrritatedFace_280988393.png" /></td></tr>
<tr><td>**Minerva Bright - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MinervaBrightFace_2608317303.png" /></td></tr>
<tr><td>**Mischievous**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Mischievous_9250654.png" /></td></tr>
<tr><td>**Miss Scarlet**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MissScarlet_334656210.png" /></td></tr>
<tr><td>**Mixologist&#x27;s Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MixologistsSmile_4645966393.png" /></td></tr>
<tr><td>**Mon Cheri Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MonCheriFace_7243931574.png" /></td></tr>
<tr><td>**Monarch Butterfly Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MonarchButterflySmile_383607653.png" /></td></tr>
<tr><td>**Monster Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MonsterFace_49045351.png" /></td></tr>
<tr><td>**Monster Grumpy Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MonsterGrumpyFace_7243924005.png" /></td></tr>
<tr><td>**Monster Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MonsterSmile_398675917.png" /></td></tr>
<tr><td>**Mr. Bubbles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MrBubbles_31616411.png" /></td></tr>
<tr><td>**Mr. Chuckles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MrChuckles_10907541.png" /></td></tr>
<tr><td>**Mr. Oinkers**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MrOinkers_11123827.png" /></td></tr>
<tr><td>**Mr. Toilet - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/MrToiletFace_4416933495.png" /></td></tr>
<tr><td>**Muttdawg**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Muttdawg_11647324.png" /></td></tr>
<tr><td>**Mysterious**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Mysterious_7132035.png" /></td></tr>
<tr><td>**Neoclassic Male v2 - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Neoclassic_Malev2_Face_4637291815.png" /></td></tr>
<tr><td>**NeoClassic Female v2 - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/NeoclassicFemaleV2Face_4637166178.png" /></td></tr>
<tr><td>**Nervous**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Nervous_23219981.png" /></td></tr>
<tr><td>**NetHack Addict**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Nethack_Addict_16357383.png" /></td></tr>
<tr><td>**NetHack Addict**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/NethackAddict_16357383.png" /></td></tr>
<tr><td>**Nibbles, Devourer of Worlds**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/NibblesDevourerOfWorlds_11913734.png" /></td></tr>
<tr><td>**Ninja**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Ninja_11453609.png" /></td></tr>
<tr><td>**No Z**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/NoZ_14405720.png" /></td></tr>
<tr><td>**Noriko the Gentle Youkai Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/NorikoTheGentleYoukaiFace_3210253450.png" /></td></tr>
<tr><td>**Not Again!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/NotAgain_28119051.png" /></td></tr>
<tr><td>**Not So Friendly Eviscerator**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/NotSoFriendlyEviscerator_66330204.png" /></td></tr>
<tr><td>**Not sure if...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Notsureif_173789324.png" /></td></tr>
<tr><td>**Nouveau George**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Nouveau_George_398675764.png" /></td></tr>
<tr><td>**NOWAI!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Nowai_51241862.png" /></td></tr>
<tr><td>**O.o**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Oo1_7074595.png" /></td></tr>
<tr><td>**O_o**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Oo_66330265.png" /></td></tr>
<tr><td>**Oakley&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OakleysFace_301827237.png" /></td></tr>
<tr><td>**Obvious Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Obvious_Wink_51241537.png" /></td></tr>
<tr><td>**Oh Deer**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Oh_Deer_12145328.png" /></td></tr>
<tr><td>**Old Timer**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Old_Timer_27003636.png" /></td></tr>
<tr><td>**Orange Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Orange_Starface_162200666.png" /></td></tr>
<tr><td>**Overjoyed Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Overjoyed_Smile_1428416217.png" /></td></tr>
<tr><td>**Pink Galaxy Gaze**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pink_Galaxy_Gaze_440738448.png" /></td></tr>
<tr><td>**Pink Mermaid Princess**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pink_Mermaid_Princess_1428418448.png" /></td></tr>
<tr><td>**Pink Shades McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pink_Shades_Mccool_323192138.png" /></td></tr>
<tr><td>**Pink Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pink_Wistful_Wink_583721990.png" /></td></tr>
<tr><td>**Poisonous Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Poisonous_Beast_Mode_2606177838.png" /></td></tr>
<tr><td>**Prideful Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Prideful_Smile_3267564334.png" /></td></tr>
<tr><td>**Ochre Ogre**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OchreOgre_16723499.png" /></td></tr>
<tr><td>**Octavia, The Ivory Spider Girl - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OctaviaTheIvorySpiderGirlFace_2986536321.png" /></td></tr>
<tr><td>**Ogre Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OgreFace_391495894.png" /></td></tr>
<tr><td>**Oh Deer**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OhDeer_12145328.png" /></td></tr>
<tr><td>**Oh Noes Another Dog**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OhNoesAnotherDog_13038397.png" /></td></tr>
<tr><td>**Old Man Jenkins**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OldManJenkins_13335647.png" /></td></tr>
<tr><td>**Old Timer**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OldTimer_27003636.png" /></td></tr>
<tr><td>**Oli Zigzag - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OliZigzagFace_2979331491.png" /></td></tr>
<tr><td>**Optimist**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Optimist_21024661.png" /></td></tr>
<tr><td>**Orange Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OrangeStarface_162200666.png" /></td></tr>
<tr><td>**Orange Trance**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OrangeTrance_260303960.png" /></td></tr>
<tr><td>**Otakufaic**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Otakufaic_1665638148.png" /></td></tr>
<tr><td>**Overjoyed Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OverjoyedSmile_1428416217.png" /></td></tr>
<tr><td>**Overseer: Assassin - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OverseerAssassinFace_2761366151.png" /></td></tr>
<tr><td>**Overseer: Prophet Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/OverseerProphetFace_3040321462.png" /></td></tr>
<tr><td>**Owl**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Owl_11123805.png" /></td></tr>
<tr><td>**Paintball Enthusiast**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PaintballEnthusiast_23310997.png" /></td></tr>
<tr><td>**Performing Mime**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PerformingMime_5122343618.png" /></td></tr>
<tr><td>**Persephone&#x27;s Girl Glam**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PersephonesGirlGlam_7243865988.png" /></td></tr>
<tr><td>**Pieface Jellyfreckles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PiefaceJellyfreckles_19381787.png" /></td></tr>
<tr><td>**Pink Galaxy Gaze**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PinkGalaxyGaze_440738448.png" /></td></tr>
<tr><td>**Pink Mermaid Princess**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PinkMermaidPrincess_1428418448.png" /></td></tr>
<tr><td>**Pink Moonstruck**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PinkMoonstruck_878940145.png" /></td></tr>
<tr><td>**Pink Shades McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PinkShadesMccool_323192138.png" /></td></tr>
<tr><td>**Pink Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PinkWistfulWink_583721990.png" /></td></tr>
<tr><td>**Pizza Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PizzaFace_2845812591.png" /></td></tr>
<tr><td>**Playful Vampire**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PlayfulVampire_2409285794.png" /></td></tr>
<tr><td>**Poisonous Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PoisonousBeastMode_2606177838.png" /></td></tr>
<tr><td>**Police Officer Nash - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PoliceOfficerNashFace_2506787960.png" /></td></tr>
<tr><td>**Pony Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PonyFace_13656095.png" /></td></tr>
<tr><td>**Poor Man**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PoorMan_7699183.png" /></td></tr>
<tr><td>**Pop Queen Smilestar Spectacusmile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PopQueenSmilestarSpectacusmile_2274754557.png" /></td></tr>
<tr><td>**Prankster**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Prankster_20052135.png" /></td></tr>
<tr><td>**Prideful Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PridefulSmile_3267564334.png" /></td></tr>
<tr><td>**Princess Alexis**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PrincessAlexis_6590375198.png" /></td></tr>
<tr><td>**Puck**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Puck_20298988.png" /></td></tr>
<tr><td>**Pumpkin Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pumpkin_Face_313549781_313549781.png" /></td></tr>
<tr><td>**Punk Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Punk_Face_119812659.png" /></td></tr>
<tr><td>**Purple Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Bubble_Trouble_362051999.png" /></td></tr>
<tr><td>**Purple Butterfly Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Butterfly_Smile_238983270.png" /></td></tr>
<tr><td>**Purple Mermaid Princess**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Mermaid_Princess_1428424821.png" /></td></tr>
<tr><td>**Purple Moonstruck**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Moonstruck_878942257.png" /></td></tr>
<tr><td>**Purple Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Purple_Wistful_Wink_583722710.png" /></td></tr>
<tr><td>**Pwnda Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Pwnda_Face_28281786.png" /></td></tr>
<tr><td>**Radioactive Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Radioactive_Beast_Mode_2225761296.png" /></td></tr>
<tr><td>**Raig Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Raig_Face_209994783.png" /></td></tr>
<tr><td>**Punk Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PunkFace_119812659.png" /></td></tr>
<tr><td>**Purple Alien**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleAlien_323192193.png" /></td></tr>
<tr><td>**Purple Bubble Trouble**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleBubbleTrouble_362051999.png" /></td></tr>
<tr><td>**Purple Butterfly Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleButterflySmile_238983270.png" /></td></tr>
<tr><td>**Purple Galaxy Gaze**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleGalaxyGaze_440739240.png" /></td></tr>
<tr><td>**Purple Mermaid Princess**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleMermaidPrincess_1428424821.png" /></td></tr>
<tr><td>**Purple Moonstruck**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleMoonstruck_878942257.png" /></td></tr>
<tr><td>**Purple Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleStarface_119812765.png" /></td></tr>
<tr><td>**Purple Super Happy Joy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleSuperHappyJoy_376812961.png" /></td></tr>
<tr><td>**Purple Trance**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleTrance_260304187.png" /></td></tr>
<tr><td>**Purple Wistful Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PurpleWistfulWink_583722710.png" /></td></tr>
<tr><td>**Pwnda Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/PwndaFace_28281786.png" /></td></tr>
<tr><td>**Quackface McGraw**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/QuackfaceMcgraw_11647296.png" /></td></tr>
<tr><td>**Quijibo**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Quijibo_10907532.png" /></td></tr>
<tr><td>**Raccoon**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Raccoon_27052537.png" /></td></tr>
<tr><td>**Rach - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RachFace_2608325060.png" /></td></tr>
<tr><td>**Radioactive Beast Mode**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RadioactiveBeastMode_2225761296.png" /></td></tr>
<tr><td>**Raig Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RaigFace_209994783.png" /></td></tr>
<tr><td>**Rainbow Barf Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RainbowBarfFace_1665629400.png" /></td></tr>
<tr><td>**Rainbow Spirit Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RainbowSpiritFace_8666744565.png" /></td></tr>
<tr><td>**RAWR!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rawr_7076224.png" /></td></tr>
<tr><td>**Red Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_Goof_1191125008.png" /></td></tr>
<tr><td>**Red Lip - Tate McRae**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_Lip_Tate_Mc_Rae_9650713776.png" /></td></tr>
<tr><td>**Red Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_Ultimate_Dragon_Face_1772530315.png" /></td></tr>
<tr><td>**Red White and Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Red_White_And_Starface_445117183.png" /></td></tr>
<tr><td>**Retro Smiley**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Retro_Smiley_10770432.png" /></td></tr>
<tr><td>**Really Embarrassed**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ReallyEmbarrassed_376812736.png" /></td></tr>
<tr><td>**Red Fang**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedFang_16722419.png" /></td></tr>
<tr><td>**Red Glowing Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedGlowingEyes_180660043.png" /></td></tr>
<tr><td>**Red Goof**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedGoof_1191125008.png" /></td></tr>
<tr><td>**Red Lip - Tate McRae**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedLipTateMcRae_9650713776.png" /></td></tr>
<tr><td>**Red RAWR**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedRawr_66330295.png" /></td></tr>
<tr><td>**Red Rock Star Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedRockStarSmile_376809691.png" /></td></tr>
<tr><td>**Red Serious Scar Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedSeriousScarFace_406000421.png" /></td></tr>
<tr><td>**Red Tango**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedTango_16652251.png" /></td></tr>
<tr><td>**Red Ultimate Dragon Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedUltimateDragonFace_1772530315.png" /></td></tr>
<tr><td>**Red White and Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RedWhiteAndStarface_445117183.png" /></td></tr>
<tr><td>**Redonkulous**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Redonkulous_10907534.png" /></td></tr>
<tr><td>**Retro Smiley**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RetroSmiley_10770432.png" /></td></tr>
<tr><td>**ROAR!!!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ROAR_406001167.png" /></td></tr>
<tr><td>**Robot Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Robot_Smile_30265169.png" /></td></tr>
<tr><td>**Rodeo Vampire - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rodeo_Vampire_Lil_Nas_Xlnx_5917448278.png" /></td></tr>
<tr><td>**Rogueish Good Looks**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rogueish_Good_Looks_1665511048.png" /></td></tr>
<tr><td>**Rose Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rose_Amazeface_835095880.png" /></td></tr>
<tr><td>**Ruby Archfey Visage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Ruby_Archfey_Visage_2830505884.png" /></td></tr>
<tr><td>**ROBLOX Madness Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RobloxMadnessFace_130213380.png" /></td></tr>
<tr><td>**Rock Star Singer - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RockStarSingerFace_2517188619.png" /></td></tr>
<tr><td>**Rodeo Vampire - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RodeoVampireLilNasXlnx_5917448278.png" /></td></tr>
<tr><td>**Rogue Era Magus - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RogueEraMagusFace_2499710871.png" /></td></tr>
<tr><td>**Rogueish Good Looks**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RogueishGoodLooks_1665511048.png" /></td></tr>
<tr><td>**Rose Amazeface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RoseAmazeface_835095880.png" /></td></tr>
<tr><td>**Rosey Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RoseySmile_116043052.png" /></td></tr>
<tr><td>**Royal Eye of Horus Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RoyalEyeOfHorusFace_2803774919.png" /></td></tr>
<tr><td>**Ruby Archfey Visage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/RubyArchfeyVisage_2830505884.png" /></td></tr>
<tr><td>**Rudolph**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Rudolph_19397594.png" /></td></tr>
<tr><td>**Sad**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sad_7699177.png" /></td></tr>
<tr><td>**Sad Clown**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SadClown_250654457.png" /></td></tr>
<tr><td>**Sad Zombie**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SadZombie_7131361.png" /></td></tr>
<tr><td>**Sadfaic**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sadfaic_117522793.png" /></td></tr>
<tr><td>**Sapphire Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sapphire_Evil_Eye_1016184964.png" /></td></tr>
<tr><td>**Sai-eye Tyler Joseph - Twenty One Pilots**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SaieyeTylerJosephTwentyOnePilots_7389910081.png" /></td></tr>
<tr><td>**Samantha - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SamanthaFace_2535487974.png" /></td></tr>
<tr><td>**Sammy &quot;Slick&quot; Witter - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SammySlickWitterFace_2907754927.png" /></td></tr>
<tr><td>**Sapphire Archfey Visage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SapphireArchfeyVisage_2830502330.png" /></td></tr>
<tr><td>**Sapphire Evil Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SapphireEvilEye_1016184964.png" /></td></tr>
<tr><td>**Sapphire Laser Vision**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SapphireLaserVision_209994074.png" /></td></tr>
<tr><td>**Scarecrow**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Scarecrow_26260927.png" /></td></tr>
<tr><td>**Scarecrow Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Scarecrow_Face_14721869.png" /></td></tr>
<tr><td>**Secret Service**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Secret_Service_20612949.png" /></td></tr>
<tr><td>**Semi Colon Open Paren**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Semi_Colon_Open_Paren_16179646.png" /></td></tr>
<tr><td>**Serena’s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Serenas_Face_301826957.png" /></td></tr>
<tr><td>**Serious Scar Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Serious_Scar_Face_255827175.png" /></td></tr>
<tr><td>**Sharpnine&#x27;s Face of Disappointment**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sharpnines_Face_Of_Disappointment_209994270.png" /></td></tr>
<tr><td>**Scarecrow Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ScarecrowFace_14721869.png" /></td></tr>
<tr><td>**Secret Service**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SecretService_20612949.png" /></td></tr>
<tr><td>**Seeing Stars**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SeeingStars_27599954.png" /></td></tr>
<tr><td>**Semi Colon Open Paren**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SemiColonOpenParen_16179646.png" /></td></tr>
<tr><td>**Serena’s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SerenasFace_301826957.png" /></td></tr>
<tr><td>**Serious Cat**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SeriousCat_10678414.png" /></td></tr>
<tr><td>**Serious Dog**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SeriousDog_10678418.png" /></td></tr>
<tr><td>**Serious Red Eye Scar**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SeriousRedEyeScar_494299198.png" /></td></tr>
<tr><td>**Serious Scar Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SeriousScarFace_255827175.png" /></td></tr>
<tr><td>**Sharkbait - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SharkbaitFace_3258567315.png" /></td></tr>
<tr><td>**Sharpnine&#x27;s Face of Disappointment**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SharpninesFaceOfDisappointment_209994270.png" /></td></tr>
<tr><td>**Sharpnine&#x27;s Face of Joy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SharpninesFaceOfJoy_406002032.png" /></td></tr>
<tr><td>**Sheriff Buffington - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SheriffBuffingtonFace_2761348544.png" /></td></tr>
<tr><td>**Shhh...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Shhh_7076159.png" /></td></tr>
<tr><td>**Shiny Teeth**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ShinyTeeth_20722130.png" /></td></tr>
<tr><td>**Shocked**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Shocked_147144644.png" /></td></tr>
<tr><td>**Sick Day**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sick_Day_26619096.png" /></td></tr>
<tr><td>**Sigmund**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sigmund_21311601.png" /></td></tr>
<tr><td>**Shutter Shades: The Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ShutterShadesTheFace_34673712.png" /></td></tr>
<tr><td>**Shy Lady**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ShyLady_10831438.png" /></td></tr>
<tr><td>**Sick Day**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SickDay_26619096.png" /></td></tr>
<tr><td>**Silence**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Silence_10860397.png" /></td></tr>
<tr><td>**Silly Fun**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Silly_Fun_7699174.png" /></td></tr>
<tr><td>**Silver Punk Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Silver_Punk_Face_387256603.png" /></td></tr>
<tr><td>**Silly Fun**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SillyFun_7699174.png" /></td></tr>
<tr><td>**Silver Punk Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SilverPunkFace_387256603.png" /></td></tr>
<tr><td>**Singing**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Singing_66330310.png" /></td></tr>
<tr><td>**Sinister**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sinister_8329686.png" /></td></tr>
<tr><td>**Sir Rich McMoneyston, III**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SirRichMcmoneystonIII_10831390.png" /></td></tr>
<tr><td>**Skater Boi - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SkaterBoiFace_2739812348.png" /></td></tr>
<tr><td>**Skater Gurl - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SkaterGurlFace_2739787309.png" /></td></tr>
<tr><td>**Skeletar**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Skeletar_10770395.png" /></td></tr>
<tr><td>**Skeptic**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Skeptic_31117267.png" /></td></tr>
<tr><td>**Slickfang**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Slickfang_7317765.png" /></td></tr>
<tr><td>**Slithering Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Slithering_Smile_2830646491.png" /></td></tr>
<tr><td>**Sly Guy Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sly_Guy_Face_238983378.png" /></td></tr>
<tr><td>**Smil Nas X - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Smil_Nas_X_Lil_Nas_XLNX_5917459717.png" /></td></tr>
<tr><td>**Smiling Girl**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Smiling_Girl_209994875.png" /></td></tr>
<tr><td>**Smith McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Smith_Mccool_27412825.png" /></td></tr>
<tr><td>**Smug**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Smug_406001308.png" /></td></tr>
<tr><td>**Sneaky Steve**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sneaky_Steve_823012694.png" /></td></tr>
<tr><td>**Slobbery Villain**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SlobberyVillain_10907536.png" /></td></tr>
<tr><td>**Sly Cat**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SlyCat_10678407.png" /></td></tr>
<tr><td>**Sly Guy Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SlyGuyFace_238983378.png" /></td></tr>
<tr><td>**Smil Nas X - Lil Nas X (LNX)**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SmilNasXLilNasXLNX_5917459717.png" /></td></tr>
<tr><td>**Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Smile_144075659.png" /></td></tr>
<tr><td>**Smiling Girl**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SmilingGirl_209994875.png" /></td></tr>
<tr><td>**Smith McCool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SmithMccool_27412825.png" /></td></tr>
<tr><td>**Sneaky Green-Eyed Snake**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SneakyGreeneyedSnake_334656353.png" /></td></tr>
<tr><td>**Sneaky Steve**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SneakySteve_823012694.png" /></td></tr>
<tr><td>**Sniffles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sniffles_14516578.png" /></td></tr>
<tr><td>**So Funny**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/So_Funny_32058239.png" /></td></tr>
<tr><td>**So Super Excited - Blue**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/So_Super_Excited_Blue_2569001052.png" /></td></tr>
<tr><td>**So Super Excited - Pink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/So_Super_Excited_Pink_2568801198.png" /></td></tr>
<tr><td>**Sparkle Time Sparkle Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sparkle_Time_Sparkle_Eyes_2620507161.png" /></td></tr>
<tr><td>**Spring Bunny**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Spring_Bunny_110207437.png" /></td></tr>
<tr><td>**Square Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Square_Eyes_22119034.png" /></td></tr>
<tr><td>**Squiggle Mouth**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Squiggle_Mouth_25166274.png" /></td></tr>
<tr><td>**Squinty Assassin Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Squinty_Assassin_Face_880474146.png" /></td></tr>
<tr><td>**Snow Queen Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SnowQueenSmile_2569005011.png" /></td></tr>
<tr><td>**Snowflake Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SnowflakeEyes_76233968067050.png" /></td></tr>
<tr><td>**Snowman Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SnowmanFace_19396550.png" /></td></tr>
<tr><td>**So Funny**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SoFunny_32058239.png" /></td></tr>
<tr><td>**So Super Excited - Blue**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SoSuperExcitedBlue_2569001052.png" /></td></tr>
<tr><td>**So Super Excited - Pink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SoSuperExcitedPink_2568801198.png" /></td></tr>
<tr><td>**So Super Excited - Purple**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SoSuperExcitedPurple_2568804274.png" /></td></tr>
<tr><td>**Sophisticated Spectacles**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SophisticatedSpectacles_25930613.png" /></td></tr>
<tr><td>**Sorority Star Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SororityStarFace_3690515434.png" /></td></tr>
<tr><td>**Sparkle Time Sparkle Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SparkleTimeSparkleEyes_2620507161.png" /></td></tr>
<tr><td>**Sparkling&#x27;s Friendly Wink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SparklingsFriendlyWink_6532619915.png" /></td></tr>
<tr><td>**Specter Informant - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SpecterInformantFace_2608277633.png" /></td></tr>
<tr><td>**Spring Bunny**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SpringBunny_110207437.png" /></td></tr>
<tr><td>**Squad Ghouls: Zoe Saberhagen - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SquadGhoulsZoeSaberhagenFace_2517100778.png" /></td></tr>
<tr><td>**Square Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SquareEyes_22119034.png" /></td></tr>
<tr><td>**Squiggle Mouth**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SquiggleMouth_25166274.png" /></td></tr>
<tr><td>**Squinty Assassin Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SquintyAssassinFace_880474146.png" /></td></tr>
<tr><td>**Stare**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Stare_8560971.png" /></td></tr>
<tr><td>**Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Starface_32873408.png" /></td></tr>
<tr><td>**Stink Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Stink_Eye_416846143.png" /></td></tr>
<tr><td>**Starry Eyed**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/StarryEyed_19959140.png" /></td></tr>
<tr><td>**Starry Eyes Sparkling**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/StarryEyesSparkling_7243903012.png" /></td></tr>
<tr><td>**Steampunk Inventor - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SnowSamuraiFace_5762596362.png" /></td></tr>
<tr><td>**Steampunk Inventor - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SteampunkInventorFace_5762596362.png" /></td></tr>
<tr><td>**Stink Eye**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/StinkEye_416846143.png" /></td></tr>
<tr><td>**Stitchface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Stitchface_8329679.png" /></td></tr>
<tr><td>**Sunny Fun**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sunny_Fun_51241171.png" /></td></tr>
<tr><td>**Sunrise Eyes - Tai Verdes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sunrise_Eyes_Tai_Verdes_7987201392.png" /></td></tr>
<tr><td>**Super Happy Joy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Super_Happy_Joy_280988698.png" /></td></tr>
<tr><td>**Sunny Fun**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SunnyFun_51241171.png" /></td></tr>
<tr><td>**Sunrise Eyes - Tai Verdes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SunriseEyesTaiVerdes_7987201392.png" /></td></tr>
<tr><td>**Sunstar - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SunstarFace_2506403983.png" /></td></tr>
<tr><td>**Super Happy Joy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SuperHappyJoy_280988698.png" /></td></tr>
<tr><td>**Super Pink Heart Makeup**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SuperPinkHeartMakeup_6590371677.png" /></td></tr>
<tr><td>**Super Super Happy Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SuperSuperHappyFace_494291269.png" /></td></tr>
<tr><td>**Surprise!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Surprise_23261769.png" /></td></tr>
<tr><td>**Suspicious**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Suspicious_209994929.png" /></td></tr>
<tr><td>**Sweat It Out**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Sweat_It_Out_20909103.png" /></td></tr>
<tr><td>**Sweat It Out**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/SweatItOut_20909103.png" /></td></tr>
<tr><td>**Tango**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Tango_16101765.png" /></td></tr>
<tr><td>**The Big Dog**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/The_Big_Dog_10860384.png" /></td></tr>
<tr><td>**The Friendly Eviscerator**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/The_Friendly_Eviscerator_22500129.png" /></td></tr>
<tr><td>**The Winning Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/The_Winning_Smile_616380929.png" /></td></tr>
<tr><td>**Thinking**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Thinking_29716262.png" /></td></tr>
<tr><td>**Tiger Chase Fear Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Tiger_Chase_Fear_Face_258198928.png" /></td></tr>
<tr><td>**Tired Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Tired_Face_141728790.png" /></td></tr>
<tr><td>**Tohru: The Phantom Claw&#x27;s Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Tohru_The_Phantom_Claws_Face_1384270693.png" /></td></tr>
<tr><td>**Too Much Candy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Too_Much_Candy_295763789.png" /></td></tr>
<tr><td>**Tattletale**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Tattletale_26343188.png" /></td></tr>
<tr><td>**Teal Mermaid Queen**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TealMermaidQueen_1428417334.png" /></td></tr>
<tr><td>**Teal Rock Star Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TealRockStarSmile_334656546.png" /></td></tr>
<tr><td>**Tears of Sorrow**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TearsOfSorrow_5122309127.png" /></td></tr>
<tr><td>**Terrain Assault Specialist - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TerrainAssaultSpecialistFace_2573925976.png" /></td></tr>
<tr><td>**The Big Dog**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TheBigDog_10860384.png" /></td></tr>
<tr><td>**The Birdcaller - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TheBirdcallerFace_2884418268.png" /></td></tr>
<tr><td>**The Dog Whisperer**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TheDogWhisperer_34764447.png" /></td></tr>
<tr><td>**The First Time I Ever Played ROBLOX...**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TheFirstTimeIEverPlayedRoblox_22070623.png" /></td></tr>
<tr><td>**The Friendly Eviscerator**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TheFriendlyEviscerator_22500129.png" /></td></tr>
<tr><td>**The Phantom Phalanx: Cygnus-34 - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ThePhantomPhalanxCygnus34Face_2628025496.png" /></td></tr>
<tr><td>**THE SOUP IS DRY**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TheSoupIsDry_2845990750.png" /></td></tr>
<tr><td>**The Winning Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TheWinningSmile_616380929.png" /></td></tr>
<tr><td>**Tiger Chase Fear Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TigerChaseFearFace_258198928.png" /></td></tr>
<tr><td>**Timmy McPwnage**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TimmyMcpwnage_22023062.png" /></td></tr>
<tr><td>**Tired Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TiredFace_141728790.png" /></td></tr>
<tr><td>**Tix Vision**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TixVision_385889916.png" /></td></tr>
<tr><td>**Too Much Candy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TooMuchCandy_295763789.png" /></td></tr>
<tr><td>**Toothless**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Toothless_19399752.png" /></td></tr>
<tr><td>**Toothy Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Toothy_Grin_7075434.png" /></td></tr>
<tr><td>**Torque the Blue Orc**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Torque_The_Blue_Orc_2830496106.png" /></td></tr>
<tr><td>**Torque the Green Orc**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Torque_The_Green_Orc_2830497827.png" /></td></tr>
<tr><td>**Uh Oh**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Uh_Oh_7074944.png" /></td></tr>
<tr><td>**Up To Something**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Up_To_Something_1016186364.png" /></td></tr>
<tr><td>**Toothy Drool**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ToothyDrool_8560980.png" /></td></tr>
<tr><td>**Toothy Grin**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ToothyGrin_7075434.png" /></td></tr>
<tr><td>**Torque the Blue Orc**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TorqueTheBlueOrc_2830496106.png" /></td></tr>
<tr><td>**Torque the Green Orc**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TorqueTheGreenOrc_2830497827.png" /></td></tr>
<tr><td>**Torque the Red Orc**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TorqueTheRedOrc_2830493868.png" /></td></tr>
<tr><td>**Trance**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Trance_29109681.png" /></td></tr>
<tr><td>**Troublemaker**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Troublemaker_22920501.png" /></td></tr>
<tr><td>**True Love Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TrueLoveSmile_362051405.png" /></td></tr>
<tr><td>**Tsundere Expression**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TsundereExpression_4645952767.png" /></td></tr>
<tr><td>**Two Guys on a Boat**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/TwoGuysOnABoat_14127171.png" /></td></tr>
<tr><td>**Uh Oh**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/UhOh_7074944.png" /></td></tr>
<tr><td>**Up To Something**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/UpToSomething_1016186364.png" /></td></tr>
<tr><td>**Upside Down Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/UpsideDownFace_1772578399.png" /></td></tr>
<tr><td>**Valkyrie of the Splintered Skies - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ValkyrieOfTheSplinteredSkiesFace_2907632781.png" /></td></tr>
<tr><td>**Valorous Knight - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ValorousKnightFace_3258576172.png" /></td></tr>
<tr><td>**Vampire**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Vampire_29532363.png" /></td></tr>
<tr><td>**Vans Checkerboard Blue Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Vans_Checkerboard_Blue_Eyes_8247356154.png" /></td></tr>
<tr><td>**Violet Fang**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Violet_Fang_362051899.png" /></td></tr>
<tr><td>**Violet Starry Sight**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Violet_Starry_Sight_2222775930.png" /></td></tr>
<tr><td>**Visual Studio Seized Up For 45 Seconds... Again**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Visual_Studio_Seized_Up_For45_Seconds_Again_14083380.png" /></td></tr>
<tr><td>**Walk the Plank You Scurvy Dogs!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Walk_The_Plank_You_Scurvy_Dogs_13478124.png" /></td></tr>
<tr><td>**Vans Checkerboard Blue Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/VansCheckerboardBlueEyes_8247356154.png" /></td></tr>
<tr><td>**Violet Fang**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/VioletFang_362051899.png" /></td></tr>
<tr><td>**Violet Starry Sight**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/VioletStarrySight_2222775930.png" /></td></tr>
<tr><td>**Visual Studio Seized Up For 45 Seconds... Again**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/VisualStudioSeizedUpFor45SecondsAgain_14083380.png" /></td></tr>
<tr><td>**Walk the Plank You Scurvy Dogs!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WalkThePlankYouScurvyDogs_13478124.png" /></td></tr>
<tr><td>**Warpaint Josh Dun - Twenty One Pilots**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WarpaintJoshDunTwentyOnePilots_7389923463.png" /></td></tr>
<tr><td>**WHAAAaaa!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Whaaaaaa_14127194.png" /></td></tr>
<tr><td>**Whatchoo Talkin Bout**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WhatchooTalkinBout_7075089.png" /></td></tr>
<tr><td>**Where are the eggs?**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WhereAreTheEggs_24975496.png" /></td></tr>
<tr><td>**Whistle**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Whistle_22877700.png" /></td></tr>
<tr><td>**Whuut?**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Whuut_274338458.png" /></td></tr>
<tr><td>**Wicked Webbed Berserker Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WickedWebbedBerserkerFace_3993282075.png" /></td></tr>
<tr><td>**William &quot;Big Bill&quot; Conner - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WilliamBigBillConnerFace_2833509821.png" /></td></tr>
<tr><td>**Wink-Blink**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Winkblink_22828351.png" /></td></tr>
<tr><td>**Winky**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Winky_7074864.png" /></td></tr>
<tr><td>**Winning Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Winning_Smile_880469676.png" /></td></tr>
<tr><td>**Woman Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Woman_Face_86487766.png" /></td></tr>
<tr><td>**Winning Smile**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WinningSmile_880469676.png" /></td></tr>
<tr><td>**Winter**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Winter_22587828.png" /></td></tr>
<tr><td>**Woebegone**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Woebegone_21755022.png" /></td></tr>
<tr><td>**Woman Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WomanFace_86487766.png" /></td></tr>
<tr><td>**Wonder Woman&#x27;s Golden Armor - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Wonder_Womans_Golden_Armor_Face_6029816756.png" /></td></tr>
<tr><td>**WWE - Seth Rollins Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WweSethRollinsFace_3016138770.png" /></td></tr>
<tr><td>**Wyldfire Fairy - Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/WyldfireFairyFace_2517242922.png" /></td></tr>
<tr><td>**x_x**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Xx_15395327.png" /></td></tr>
<tr><td>**XD**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Xd_15054426.png" /></td></tr>
<tr><td>**XD 2.0**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Xd20_406001052.png" /></td></tr>
<tr><td>**Xtreme Happy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Xtreme_Happy_20644021.png" /></td></tr>
<tr><td>**Xtreme Happy**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/XtremeHappy_20644021.png" /></td></tr>
<tr><td>**YAAAWWN.**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Yaaawwn_162068415.png" /></td></tr>
<tr><td>**Yawn**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Yawn_20010377.png" /></td></tr>
<tr><td>**Yellow Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Yellow_Starface_162200696.png" /></td></tr>
<tr><td>**You ated my caik!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/You_Ated_My_Caik_21635583.png" /></td></tr>
<tr><td>**Zoey Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Zoey_Face_807339121.png" /></td></tr>
<tr><td>**Zombie Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Zombie_Face_133360789.png" /></td></tr>
<tr><td>**¬_¬**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Negation_Underscore_Negation_13038375.png" /></td></tr>
<tr><td>**Yellow Glowing Eyes**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/YellowGlowingEyes_416846000.png" /></td></tr>
<tr><td>**Yellow Starface**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/YellowStarface_162200696.png" /></td></tr>
<tr><td>**You ated my caik!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/YouAtedMyCaik_21635583.png" /></td></tr>
<tr><td>**Yuck!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Yuck_10907531.png" /></td></tr>
<tr><td>**Zed Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ZedFace_5122355742.png" /></td></tr>
<tr><td>**Zip It!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ZipIt_24126147.png" /></td></tr>
<tr><td>**Zoey Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ZoeyFace_807339121.png" /></td></tr>
<tr><td>**Zombie Face**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ZombieFace_133360789.png" /></td></tr>
<tr><td>**ZOMG**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/Zomg_8329682.png" /></td></tr>
<tr><td>**zOMG Hat Selling!**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/ZomgHatSelling_16413496.png" /></td></tr>
<tr><td>**¬_¬**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/NegationUnderscoreNegation_13038375.png" /></td></tr>
<tr><td>**¬_¬ 2.0**</td><td colspan="2"><img src="../../assets/art/avatar/classic-head/20_406000958.png" /></td></tr>
</tbody></table>

View file

@ -7,6 +7,9 @@ description: In-depth details on how Roblox validates head assets
This content is for creators who intend to create character heads designated for the Marketplace, or any character heads that support assets from the Marketplace.
</Alert>
<iframe width="800" height="450" src="https://www.youtube-nocookie.com/embed/OwhkWzSBnf0" title="YouTube video player" frameborder="0" allow="accelerometer; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen></iframe>
<br /><br />
Roblox runs a rigorous validation to ensure the asset being uploaded to the Marketplace is compatible with all other assets on the Marketplace. For heads, validation primarily ensures that the head asset includes:
- A correctly **configured cage** — to wear clothing and accessories.

View file

@ -0,0 +1,157 @@
---
title: Manually Update Catalog Heads
description: Instructions for creators who need to re-upload their head for validation.
---
<Alert severity = 'warning'>
The following content applies to **creators with head assets on the Marketplace** who received a notice that their head assets **no longer pass dynamic head validation.**
</Alert>
<Alert severity = 'info'>
This document is intended to be updated frequently to include the latest information to help guide you through the head update process.
</Alert>
If your head asset no longer passes the dynamic head validation, you need to fix and reupload your head asset to the Marketplace. **You do not need to update the body when the head was published as part of a body bundle**. You just need to update the head asset.
This guide provides detailed information on how to perform a manual fix by re-caging your asset using a provided cage template using the following 5 main steps:
1. [Re-validate](#1-verify-the-catalog-head-asset-fails-validation) your catalog head asset to confirm issues.
2. [Export your head](#2-export-your-head-from-roblox) (or body bundle) from Roblox as a glTF.
3. [Fix your Head](#3-fix-your-head-asset-in-blender) asset in Blender.
4. [Import](#4-import-your-fixed-head-back-into-studio) your fixed head back into Studio.
5. [Provide the asset ID](#5-provide-the-assetid-of-your-updated-head) of your updated head to Roblox.
<Alert severity = 'info'>
While these instructions are provided for Blender, it's possible to perform equivalent steps in your preferred 3D modeling software. It's recommended to familiarize yourself with Roblox's head validation process before making changes to your head assets.
</Alert>
## 1. Verify the catalog head asset fails validation
Roblox recently updated the dynamic head validation parameters to allow more existing catalog heads to pass validation while still enforcing that all heads in the catalog are dynamic. It's important to double check that your head still fails validation before proceeding with the rest of the steps.
1. Open a new Roblox Studio and verify you have the beta feature **glTF Export** enabled (you might need to restart Studio to pick up the new setting)
1. Verify your beta settings in **File** > **Beta Features**.
2. Run the following script in the command bar.
1. You have the option to provide either the head id (asset ID) or the bundle id (for a full body bundle) . Just replace `my_asset_id` with the correct ID and remove the leading `--` to run
2. Uncomment `createExportFromHeadAssetId(your_asset_id)` to retrieve only the head asset
3. Uncomment `createExportFromBodyBundleId(your_bundle_id)` to retrieve the full body as a bundle (includes the head)
```lua
local AssetService = game:GetService("AssetService")
local Players = game:GetService("Players")
local function createExportFromHeadAssetId(assetId: number)
local hd = Instance.new("HumanoidDescription")
hd.Head = assetId
local char = Players:CreateHumanoidModelFromDescriptionAsync(hd, Enum.HumanoidRigType.R15)
local headMesh = char.Head :: MeshPart
headMesh.Size = headMesh.MeshSize
headMesh.CFrame = CFrame.identity
headMesh.Locked = false
local exportModel = Instance.new("Model", workspace)
exportModel.Name = "ExportThisAsGLTF"
headMesh.Parent = exportModel
end
local function getOutfitId(bundleInfo)
for _, item in pairs(bundleInfo.Items) do
if item.Type == "UserOutfit" then
return item.Id
end
end
error("Could not find outfit ID")
end
local function createExportFromBodyBundleId(bundleId: number)
local bundleInfo = AssetService:GetBundleDetailsAsync(bundleId)
local outfitId = getOutfitId(bundleInfo)
local hd = Players:GetHumanoidDescriptionFromOutfitIdAsync(outfitId)
local char = Players:CreateHumanoidModelFromDescriptionAsync(hd, Enum.HumanoidRigType.R15)
char:PivotTo(CFrame.identity)
char.Name = "ExportThisAsGLTF"
char.Parent = workspace
end
-- createExportFromHeadAssetId(your_asset_id)
-- createExportFromBodyBundleId(your_bundle_id)
```
3. Once the script runs, you will see a "ExportThisAsGLTF" model in workspace. Right-click and select **Save To Roblox**. This will popup the publish window:
1. In Content type, select **Avatar Item**.
2. In Asset Category, select **Head or Body** (if you used a body bundle).
1. Wait for the validation result.
3. If the dynamic head validation passes then you don't have to update this asset.
4. **Cancel** the publish operation (so you don't incur fees).
If your asset failed the dynamic head validation then you need to continue with the following steps.
## 2. Export Your Head from Roblox
Export your head or entire body from Blender as a glTF file:
1. In the explorer, right-click on the "ExportThisAsGLTF" model and select **Save/Export** > **Save as glTF**.
## 3. Fix your Head asset in Blender
Fix your asset in Blender, or preferred 3D modeling software. In many cases, you may save time using a brand new head cage and fitting the cage over your character head. You may also see other validation issues that need to be addressed from the first step.
1. In Blender, open a new empty scene and import the glTF file.
2. Ensure everything you need for the head is present, including the cage, attachment points, facial joints and facial animations.
3. Roblox Studio flips avatars by 180 degrees on import, so you need to rotate your asset back by 180 in Blender (Hotkeys: <kbd>R</kbd>+<kbd>Z</kbd> then type `180`).
4. Most often heads fail validation due to cage issues. For example, the cage may be completely inside the head, has incorrect UVs or looks completely misplaced in the model. In most cases we recommend you do not spend time editing the original cage and instead:
1. Delete it from the asset.
2. Select the cage from the head template in this folder that best matches the shape of your head asset. These are [Roblox provided templates for cages with the correct UV settings](../../assets/art/reference-files/HeadCages.zip).
<img src="../../assets/art/avatar/Cage-Template-Lineup.png"/>
5. Ensure the Blender animation start value is set to 0.
6. Remove vertex colors. In Blender this can be done by clicking on the mesh and then under the data tab selecting color attributes and removing any that exist.
<img src="../../assets/art/avatar/Delete-Vertex-Colors.png"/>
7. Modify your head asset to pass validation:
1. Align cage eyes and mouth regions to the head.
2. Ensure your head includes a rig, with poses keyframed and mapped to the FACs standard so that:
1. Eyes must blink.
2. Mouth must open and close.
3. Face must express happy and sad.
8. Export your updated head asset to FBX file format using the correct settings explained here (If you have PBR, you may want to use glTF).
1. Setup textures for FBX export (if needed). Blender will import the glTF textures in such a way that they won't be able to be exported in an FBX file by default.
1. To fix this go through each image and save it to your disk locally.
<img src="../../assets/art/avatar/Blender-Save-Image-Workaround.png"/>
## 4. Import your fixed head back into Studio
Import your head back into Studio and verify that it passes validation. If validation fails, check the error messages and address the issues in your 3D modeling software again. If validation passes, use the following steps to upload as a **Development Item** (not Avatar item).
1. Import the FBX/glTF file with your (fixed) head asset back into Studio.
2. Make sure your head asset passes validation.
1. The easiest way to accomplish this is:
1. Select **Save to Roblox** on your asset.
2. Select **Avatar Item**.
3. Set its **Asset Category** to Head.
4. Wait for the Dynamic Head validation result (pass or fail).
5. **Cancel** the save operation so you don't incur publishing fees at this time.
2. If your head doesn't pass validation then you need to go back to Blender, Maya and make the appropriate fixes to pass validation.
3. If your head passes validation, publish your asset as a Development Item.
1. Select **Save to Roblox** on your asset.
2. Select **Development Item**.
3. Set its **Asset Category** to Model.
4. Save the model to Roblox (no publishing fees are incurred).
1. Get the asset ID of the head asset (not the body bundle).
## 5. Provide the assetID of your updated head
Use the following steps to provide Roblox the updated asset ID to replace your head with:
1. Use the link to the web form in the email notification corresponding to your asset to communicate back the asset ID of your updated head.
1. You will be asked to enter your date of birth for each update. This is a legal requirement we can't bypass.
2. You can submit multiple times. We will use your last submission as the "final" version to the update.
2. Roblox will complete the update of your catalog asset with the modifications you provided.
## Additional Resources
Roblox has published a series of documentation and video tutorials on best practices for creating dynamic head assets.
- [Dynamic head overview](./facial-animation/)
- [Head validation process](./head-validation.md)
- [Avatar Auto-Setup](../../avatar-setup/auto-setup.md)
- [Caging Best Practices](../accessories/caging-best-practices.md)

View file

@ -3,6 +3,10 @@ title: Blender validation tool
description: The Avatar Validation Tool checks for common character model issues in Blender.
---
<Alert severity = 'warning'>
This tool is no longer in active development. You are free to use the tool for any purpose. The tool may be out of date or incompatible with modern Roblox assets.
</Alert>
The **Avatar Validation Tool** is a supplemental Blender add-on you can use to quickly identify common issues with your character model. This tool checks that your model meets most of Roblox's avatar [technical specifications](../../art/characters/specifications.md) and, when possible, attempts to automatically resolve them.
<img src="../../assets/art/avatar/Validation-Tool-Preview.png" width="100%" />
@ -17,7 +21,7 @@ The Validation Tool plugin is compatible with Blender 3.5.1+. You may experience
To install the Validation Tool in Blender:
1. Download [ValidationTool_Blender.zip](../../assets/art/ValidationTool_V2.zip) and save the .zip file locally. Do not open the .zip file.
1. Download [ValidationTool_Blender.zip](https://github.com/Roblox/avatar/tree/main/Tools/ClothingValidationTool) and save the .zip file locally. Do not open the .zip file.
2. In Blender, navigate to **Edit** > **Preferences**.
3. In Preferences, go to the **Add-Ons** section on the left sidebar.

View file

@ -3,6 +3,10 @@ title: Calisthenics Tool
description: Calisthenics Tool is a Blender plugin that you can use to verify skinning quality of an asset.
---
<Alert severity = 'warning'>
This tool is no longer in active development. You are free to use the tool for any purpose. The tool may be out of date or incompatible with modern Roblox assets.
</Alert>
The **Calisthenics Tool** is a supplemental [Blender](https://www.blender.org/) add-on that allows you to quickly test your asset through a set of animation cycles to verify your skinning data. At any point during the animation testing, you can pause and use Blender's skinning Tools, such as [Weight Painting brushes](https://docs.blender.org/manual/en/latest/sculpt_paint/weight_paint/introduction.html), to resolve any skinning imperfections.
Skinning your clothing and characters is a critical and often time-intensive process to create high quality assets that move and fit with different character bodies. Similar to the [Layered Clothing Validation Tool](../../art/accessories/validation-tool.md), the Calisthenics Tool can save you time when testing your character models after rigging and skinning.
@ -34,7 +38,7 @@ The Calisthenics Tool plugin is designed for [Blender 3.0+](https://www.blender.
To install the Calisthenics Tool in Blender:
1. Download the [CalisthenicsTool.zip](../../assets/modeling/skinned-meshes/calisthenic-tool/CalisthenicsTool.zip) and save the `.zip` file locally.
1. Download the [CalisthenicsTool.zip](https://github.com/Roblox/avatar/tree/main/Tools/CalisthenicsTool) and save the `.zip` file locally.
2. In Blender, navigate to **Edit** > **Preferences**.
<img src="../../assets/modeling/skinned-meshes/calisthenic-tool/Blender-Preferences.png" width="70%" />

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:794c957f274192d7a86de81b44078355cec2fa33c5f18a41dcbaf17f411d5d65
size 1247607

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a4154ccc380b20b6565317ae4a9eb0995e7a2dd77a5bc73ae64704308583e03a
size 359258

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:808428d68b558ac1478fdc4c5bc58abd7e026879a547c307307c25bd0ac21251
size 795629

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e15538acb4fe2bdab9818152b00e5489213d4c8da549c65c7a0e7effa54aca56
size 36286
oid sha256:5a68c4f5faeada99662c2d3645eaf67a23509be909f507416f4b084a6c1094c6
size 90224

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:79b980f6daa0a82408c9a5e840215e342bd4d80ac6c484d89e802514a117e100
size 50093

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e48247ddb1eb1713581aca7604ce6a671fd03de16b7ed9a2fff2d0998faac456
size 101256

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:dc255008da4cdb8fbda00a05a6492c361b668875c6ef183724c0a40d8f0070be
size 54306

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d8f8fa749b7a43756c49752cbc18b113b6c9ba08386afffd00380f77d673b732
size 103297

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c96e778ef21e786b4246af38d51d7235c08f858be1c09ae7a372491ebc769ad8
size 54567

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:95b6556a8791cd9a1195379c9a9197498082d78248971093845b41a635d61fe2
size 107308

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:211078b4d7ff49ad01c3a91af147d12f3904d821cee8ffdd14762561476c5134
size 105281

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:33573ebc5a49998cec9da74f916e87b4d5c90bb6503c4dc24ceda96669789c78
size 93848

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:01963f70a9014b5995dedbe139988b9df113139d338569e623dc25b8ceccab9c
size 101408

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a9bb83af002a298c856f9c4b48ed211bb96c7bdbc834402a9c5cf8ea459b16b8
size 47316
oid sha256:31920af1bc1f0829b73bba681e8db5c061258cd1bc61e48de8715b34d36632ba
size 97733

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:13111576730b9ea431a7eb0b27b6a8b51ccf999701151e8a5698d1f2f16d959e
size 49924

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b32d2037813551bf199ed0711fbc2d0305e3fa296a0544e1a265bcc70f16fd27
size 57930
oid sha256:65fb795636715a40a2edd7392fcd049b410edc930cb292a13fd94e1342f752d9
size 108409

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6b53c7d2c91b2c3026dac7e2e70c16ee430488702f9fe120eb10b045213385f8
size 106904

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:83fe874cf88414282e63135000b7499e5dac8fdf6cb5badaf2ef9a51cdb23e39
size 62894

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:96e1497e75cb417edfdef2f221fafcc7c3f8e9114c30240d1e4a7ef9d80dfb7a
size 101119

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6ae4db14ba11dcedec5992825f78c67f40fcedff2b39fb9638c42fcc1875285c
size 51437

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a2d3d08ae7187e33163ca95b9c9355fad617c6615ca9d66d5c7ad6b92210a1e9
size 105770

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fbbe63dc0a53c0b9f5fca7c76f839aaa6012fc30e667dbbac111c1ff21c84ce3
size 112513

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:396ebf835e937b8f9ecc8e42f297e1cca5404dcdb9965a4eea7b9d12745dcecd
size 63164

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b449d96482d364509e3e5a1ca615dab42e7c8e88c6b01a888619aa9044732eda
size 56226
oid sha256:12c45f8ebc6224121c96a12d6b4274f3226be479f741b1daf0021d7dfd2ba1fa
size 106841

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1c2a5a901c1d6bb5769c86734bf6356c3369f61cd1d920a2aa381af62bde8657
size 111138

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:84ca49a5b7610e939f2289ca5fa7317ad3b58b25b7a1fe4e77d3335c26b5aae3
size 65443

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a87f0072d9e113a960a0a81b3de623c34417179fe13c233379fcdc85d6e797f9
size 119048

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a35bd6d8b546ca2c280bf3ca5a95be39a29e7248f56b5b9655d49f83629d573e
size 117858

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6938a7bb069306d1b57bee1ff2104027443c4b095aab7732185f3f135e63879a
size 135952

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4e98c0c1f9dcdb71e9f3ee82e2fe018c0122e8659f1df8260ea30d13d69548a0
size 79636

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3925f6539f74e4b3784d29f0bf7fd59dee7329846c0b2fbff89d43da91b64d28
size 108022

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:14ad7dce8575adb963d4962b49bc22048e9657e796eaa424cec49e3241661724
size 60986

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ea44c5787df800ff1d5fabf41dbb1be83083ca947854f86638a84f6a02b12545
size 102519

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:f5086f872830040fb500bee0db0166deff24945595e8153d1617cd8f0dc9a8be
size 107875

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b1600c402e1df6716a502a3a095aa3c9ed4faa5423c6f02b77eae1c32ca817f1
size 56324

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8216b81a372a1a9e5f80ec1a93bd5ecd5de3dcc15f9ffdc350d8400d7588774b
size 51328

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:81bca79374de004430e19fc1c2d51f626d9f235754c24dd77b34a2d1f220eddd
size 60315

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:deb8be12d4282780dab64781e3d3684dd9661b925f071d47baa8f734d2771276
size 108218

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5290cd3e652c0d06608f6e04103e9504eae7943d1b41151e57cca6e853105231
size 104654

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:18ffea32e8ae232e0d2237f1d53a96f1a975172e4cffc3cf5a1896baf6f8ceb2
size 57386

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:53f7a4e93a7743db6720d020bd5e8809f34d68a21c14e2b22929a58db19e621c
size 113511

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2e6a014eb5380e94df54128e0dc6f1f8ef1d923e63d10dc41a62de0b3c86ab98
size 121859

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9a1e2ab70598eb7a0a9b07273864142b22138a2bcadf3d795993c7b623bf7d66
size 111178

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ccaaa914bb43c087406c1abd89fd9a066bf423a7ff54bdbb297b7f4407366ba5
size 120483

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:91591f87d0e7f27d8f97364db23ece7cae762437cdf97bff78c986a4fef54cfd
size 105609

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1758f2251c96654d3e3e7b031e3e2d2aa0ab88c408f089ce133b1940421f1bde
size 114118

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:83484ed9f4a37cf610ee3d80b579a9ea019b03cdca39219d0de380391bc3e601
size 71163

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:33e693ef895dbf5111aec5083e4823f9999919f01f4f2230e16b0177e48f5056
size 119148

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:354eb9538301b399ea79a67831ae2aba461f790c5a41cf851701f7d68602eac1
size 128067

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:68f8b621a8cfe55a6e7873dc8156a9d136792cc4f46da6cd1e47d2d67d30318b
size 100222

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:158636ed3788f981a214235c8b80c789260dafb329b489dd43b8d6959080362f
size 96799

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:449b9d909d85dd96d396809844e5dbd145c33f08022aec1077c4335f927a7473
size 49477

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:985443b07c7c533085ca4358aed74e1f72d8b3f396d1051a308085d158dba3ce
size 115004

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:aa5eaf03460dea44c1d761f38e1ff29b40c83133512af1f418ff0c54cee07e22
size 105782

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:20286a44f83eba192eb45dcd3cd3a1fc2cd33e80382ac4b1c4fe310891974e89
size 57840
oid sha256:d82fa342125feaa830b6dc538b0126b87f9fc342cddc1eb6e42b7d6f552511bb
size 104428

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c533115109ed33894c336cf2bf94d74e3b84154cc69242797c4a4e71e2375e99
size 48641
oid sha256:804ca75f21ed6374c30b8556b4d943928f6847e1e1bc554df2548442a4eff3d2
size 99284

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bc33faf19dc81e2c82a3bc04f457b4ddb5d227e34b6181d944331cf25490693f
size 113799

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3d84b02aca8cfa1825ff3d76d33af7d292774e30ee7d35605ec3f5aff4f45721
size 52745
oid sha256:baf47478fefcd49b815fc9e9921f15dba2d8ef1d1b918edc31d03690b2e21829
size 103246

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:adfe294d2bcfc71e1468e6418a15d539ad8c03c32b5f7b2ef354df7430ea3070
size 113947

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c98f948e9f470166a25fd213066b1e09854618c50c7ba00b4624074a4ec0c677
size 70749

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d26bb6f26e80a72f9b9d062147ed6f4b1bf0eeabb246f6815a5ec81c1ba9ec04
size 107140

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1110459445f87d00cb736ab868c3a4dea0f8fb273164ac35bf8e46fdcd2f805b
size 108068

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d7da185547d7e6698362ef0e0c8939d0226447e7632d0d7d852743096ce7eabf
size 103154

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:36cb2fdd92e98278309615c15a50725cf2b132fdfa72720f36319bab33611331
size 107715

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3fc4751830a50762f7291e2ae3f4b7d27402568fb2fbaab49335ba8904d66fd0
size 111989

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a609fa32efd46062b169f0df1076f49cbf06814cc567470c5694dac11d66dc90
size 108305

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d3ccbe3484cf708b4f3d60537736d6022b2683f64a8de613ae514446c6457aa0
size 108283

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e0db44c8d303e127e7e2979d2f43415cfb178bb7b9934c9cb9d9aff4fbe81700
size 111480

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:fe933b0b7eca3c5a68b3a912654efddc7233e32a6893a61258a6d0c75c7e2075
size 109917

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:62b7cd375040e46ee923c0d628e6515e944ff36441f9b85fee0fb47956e964a9
size 111708

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8312147d1626123dfc6502463b536d18729197e53ed16d5e3327c7eb4cbef1b1
size 120030

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:11dbc70babd88653934c584c1b53c722bdce8c2e809282c855d77f856c83b81b
size 106853

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:eaf1243c0831678a4c2e3c31cae0d2af6be1b9d141cd025639c9fff96f793cfd
size 62016

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:9f2b26ba9d956f2f6ae8b876388cee960b4258112a4edd1eef01864b15bb6475
size 61960

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:00c95002b9b6599e00c664def1819a2debff2fac6b0e60711e3793262ee74525
size 68688

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b962e80e88b306f31794f96d84a790021806822ac782114ec13f7852cb2830eb
size 61796

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3447987b5d3c705516409d6fc8261754dbb741c1e7c8ea6ec8792a4ee8d663aa
size 67348

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e9ced971531f5b4a067c12cd40ab0fba977ebb95b96acc65bf1fb185194df4f0
size 64626

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4a974c1b8be21ebdbe801f6e35f9f235b9fbe7b8be9b536b13cd1b2ec79d6f8e
size 108351

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:ff8e5cd91a6993cfceed2598fb93f048a9dadce27c90cc281166011f61b9a983
size 49417
oid sha256:002e51a7debb49fe23044272d9227eac7717227288473ad6dc9468afcc433724
size 99353

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:66dbe6b823cac5953c9236b338dcd84c44763a0b51624e1115586551ce8a846d
size 79493

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:24c060fc935e0c8cf471895b8e6965bad7b33e2672ed66283bb5465ad87b7b6d
size 45417
oid sha256:7e080d6499146cf34bc1d6d89305c1569e5c98e07d0c72f1e79850515d7678a4
size 97346

View file

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4f489c91a9b333a6bb07c28873bd1ed763a4a231dba87f31b537e26ef6e7d005
size 55841
oid sha256:820e4c702c5712171cb99cefab0ec4380cc15fc7e796c8930dc40c1824eda1a9
size 104710

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b1dc58ea66b04e18c84a5f9b09110d4c45d98e9c1d28f584b343a9efcbc03b9c
size 107936

View file

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:09a12ab9b4b039a51987e2856d237b4fc93c4d52abb3435acc67cabb4b8e2b67
size 61013

View file

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:91951cc42eedb2907f0e3b88076d181a681881f9180f6d2cd0560105c9c244b3
size 114778

Some files were not shown because too many files have changed in this diff Show more