Figura
## A Minecraft Java client mod that allows you to extensively customize your player model and have other players see your Avatar without requiring any server mods!

## Utilizing the full potential of [Blockbench](https://www.blockbench.net/).


## Not only can you customize your model but Figura also has an optional [Lua](https://www.lua.org/) API to make your own scripts!

## What if someone is invisible, or very small? Take advantage of Figura's robust permission system!

## We also have some extras, like:


Meet us on the [FiguraMC Discord Server](https://discord.figuramc.org/) for more info and help!\
Help translate Figura to your native language on [Weblate](https://translate.figuramc.org/projects/figuramc/figura/)!\
![translate]
[translate]: https://translate.figuramc.org/widget/figuramc/figura/horizontal-auto.svg
# Links
[discord]: https://discord.com/api/guilds/1129805506354085959/widget.png
[modrinth]: https://img.shields.io/badge/Modrinth-1bd96a?logo=modrinth&logoColor=ffffff
[curseforge]: https://img.shields.io/badge/CurseForge-f16436?logo=curseforge&logoColor=ffffff
[github]: https://img.shields.io/badge/GitHub-181717?logo=github
[github-contrib]: https://img.shields.io/badge/GitHub-Contributing-grey?logo=github&labelColor=181717
[kofi]: https://img.shields.io/badge/Ko--fi-00b9fe?logo=kofi&logoColor=ffffff
[collective]: https://img.shields.io/badge/Open%20Collective-83b3fb?logo=opencollective&logoColor=ffffff
[wiki]: https://img.shields.io/badge/Figura-Wiki-black?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAAAXNSR0IArs4c6QAAAM5JREFUaIHtmbENAjEMRRPECIiSmvrYAZobggXoGIMhGOIa2IHUNDTU7HAsYBeWgh6W/isTx7knS5Z1qaUTwzTPkfg21trj3kWPJCQSoJEATbgTeN2mbYJ53vZ6tDulr4AEaCRAIwEaCdBIgMadO4aLM/PsnfjxELq4TTc7z92JP9szUvoKSIBGAjQSoJEAjQRoqjfzlK194HPc/fBzSlldH/bG015OXwEJ0EiAZhk94HWJXn+no6SvgARoJEBT16dX6IX930hfAQnQSIDmC5x4H/qkICDcAAAAAElFTkSuQmCC&labelColor=166ddd&color=5ea5ff
[weblate]: https://img.shields.io/badge/Weblate-Translating-125252?logo=Weblate&logoColor=ffffff&labelColor=2ECCAA
[website]: https://img.shields.io/badge/FiguraMC-Website-purple?logo=data:image/png;base64,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&labelColor=01090E
## Social: [ ![discord] ](https://discord.figuramc.org/) [ ![website] ](https://figuramc.org/)
## Download: [ ![modrinth] ](https://modrinth.com/mod/figura) [ ![curseforge] ](https://curseforge.com/minecraft/mc-mods/figura) [ ![github] ](https://github.com/FiguraMC/Figura/releases/latest)
## Donate: [ ![collective] ](https://opencollective.com/figura) [ ![kofi] ](https://ko-fi.com/skyrina)
## Resources: [ ![wiki] ](https://wiki.figuramc.org/) [ ![weblate] ](https://translate.figuramc.org/projects/figuramc/figura/) [ ![github-contrib] ](https://github.com/FiguraMC/Figura/blob/HEAD/CONTRIBUTING.md)
# FAQ
### • My avatars don't appear in the Figura list, even though they're in the correct folder?
> Check if your avatar has a file called "avatar.json" (don't forget to check file extensions)
>
> This file can be completely empty, it just needs to be present for Figura to recognise it as an avatar
### • How do I hide the vanilla model?
> At the top of your script, put:
>
> • To hide literally everything (player, armor, elytra, held items):
> ```lua
> vanilla_model.ALL:setVisible(false)
> ```
>
> • To hide only the player:
> ```lua
> vanilla_model.PLAYER:setVisible(false)
> ```
>
> • To hide only armor:
> ```lua
> vanilla_model.ARMOR:setVisible(false)
> ```
>
> • To hide other, or specific parts, you can check the in-game docs
### • How do I play a Blockbench Animation?
> Simply put this code in your script:
> ```lua
> animations.modelName.animationName:play()
> ```
> Where:
>
> "`animations`" is the global table which contains all animations
>
> "`modelName`" is the name of the model you are accessing the animation from
>
> "`animationName`" is, as the name says, the animation name
### • What are Pings and how do I use them?
> Pings are Lua functions that are executed for everyone running your avatar's script
>
> Pings are sent from the host player, and can be used to sync things like keypresses or action wheel actions
>
> To create a ping:
> ```lua
> function pings.myPing(arg1, arg2)
> -- code to run once the ping is called
> end
> ```
> And to execute the ping, it's as simple as calling a lua function:
> ```lua
> pings.myPing("Hello", "World")
> ```
> Note that pings are limited in their content and size, and are rate-limited
### • How can I add an emissive texture?
> Name the texture the same as the non-emissive counterpart, then add `_e` to the end
>
> And don't forget to set the places you don't want to glow to **transparent black** (#00000000), to also ensure compatibility with shader mods
### • My emissives doesn't glow, nor have bloom with Iris/OptiFine shaders?
> Since some shaders do not support emissives, a compatibility setting (default on) will change the render type of emissive textures to render them at it were fullbright, however that can lead to some unintended results
>
> You can force your avatar to use the correct emissive render type by using the render type `EYES` on your model
### • How can I use Figura with OptiFine?
> Figura will work with OptiFine but due to its closed source nature issues might arise, therefore we still recommend you try using Sodium+Iris (Fabric) or Rubidium+Oculus (Forge) instead
>
> Check out the full list of [alternatives](https://lambdaurora.dev/optifine_alternatives/)
### • Where can I find Avatars to download?
> For now, you can find Avatars in the showcase channel in the official Discord server (A Web Based and In-Game browser is in the works!)
### • My Minecraft is cracked (non-premium/non-original) or I'm trying to join a cracked offline mode server, why can't I use Figura?
> Figura uses your account's UUID and your Mojang authentication as a way to prove you own that account, avoiding unwanted / malicious uploads
>
> Non-premium Minecraft accounts don't authenticate with Mojang, and Offline mode servers don't report working UUID's, as such can neither upload nor download Figura avatars
## Community Resources
* Want to learn / get into Lua scripting?
check out this [Lua quickstart](https://manuel-3.github.io/lua-quickstart) made by Manuel.
* If you are tired of having to be in-game to look in the wiki, applejuice hosts the wiki as a [website.](https://applejuiceyy.github.io/figs/)
* Are you new to Figura and are looking for a video tutorial about how everything works? You should probably watch Chloe's [Figura tutorial series](https://www.youtube.com/playlist?list=PLNz7v2g2SFA8lOQUDS4z4-gIDLi_dWAhl) on YouTube.
* Do you use VSCode and wish Figura's documentation autocompleted in the editor? GrandpaScout saves the day with their [VSDocs.](https://github.com/GrandpaScout/FiguraRewriteVSDocs/wiki)
* Katt has created a Blockbench extention which adds a special model format for Figura! Read more [here.](https://github.com/KitCat962/figura-format-bbplugin) - Note. This plugin is available on the Blockbench plugin browser and should be installed from there.
* By searching "Figura" in the VSCode extention browser you can install Manuel's Figura [extension](https://marketplace.visualstudio.com/items?itemName=Manuel-Underscore.figura)! It adds multiple useful features including autocomplete for your model paths.
Figura may be included in modpacks only when using builds obtained from official channels (Modrinth, GitHub Releases, Discord Releases)