All Projects → Blancworks → Figura

Blancworks / Figura

Licence: LGPL-2.1 license
Primary repo for the Figura Project

Programming Languages

java
68154 projects - #9 most used programming language

Projects that are alternatives of or similar to Figura

pax
📦 The MC modpack manager for professionals.
Stars: ✭ 83 (-61.75%)
Mutual labels:  modding, fabric
inmis
I need more inventory space! A Fabric backpack mod.
Stars: ✭ 29 (-86.64%)
Mutual labels:  modding, fabric
vanilla-hammers
Introduces 3x3 mining tools for fast digging! Available on 1.14, 1.15, 1.16, and 1.17.
Stars: ✭ 22 (-89.86%)
Mutual labels:  modding, fabric
old-animations
Client-side modification for Fabric that allows users to restore animations from older versions.
Stars: ✭ 19 (-91.24%)
Mutual labels:  fabric
godothub client
GodotHub Client Class, Multiplayer and network messaging for Godot
Stars: ✭ 16 (-92.63%)
Mutual labels:  client-side
AndroidFlask
Image Upload from Android to Python-Based Flask Server
Stars: ✭ 45 (-79.26%)
Mutual labels:  client-side
taskit
A Task Runner in Bash
Stars: ✭ 35 (-83.87%)
Mutual labels:  fabric
Oxide.GettingOverItMP
A multiplayer mod for the game Getting Over It with Bennett Foddy, powered by the Oxide modding framework
Stars: ✭ 33 (-84.79%)
Mutual labels:  modding
Fabric-Bedrock-Miner
A fabric client mod to mine bedrock!
Stars: ✭ 350 (+61.29%)
Mutual labels:  fabric
Presence-Footsteps
An overly complicated footstep sound enhancement mod for Minecraft
Stars: ✭ 79 (-63.59%)
Mutual labels:  fabric
django-boilerplate-3.6.1
Django served by Gunicorn running behind Nginx reverse proxy. Deploy to AWS Elastic Beanstalk with Fabric3!
Stars: ✭ 13 (-94.01%)
Mutual labels:  fabric
ashfall
Ashfall is a survival, camping and needs mod for Morrowind. It uses the latest in MWSE Lua scripting functionality to implement a wide range of mechanics that integrate seamlessly into the game and provide a truly immersive experience.
Stars: ✭ 16 (-92.63%)
Mutual labels:  modding
user command web
这是管理需要vpn登陆的linux平台,来管理用户和推送任务
Stars: ✭ 41 (-81.11%)
Mutual labels:  fabric
NaturesCompass
A Minecraft mod that allows you to search for a biome's location anywhere in the world and view information about it.
Stars: ✭ 42 (-80.65%)
Mutual labels:  fabric
ambi
Ambi lets you execute any function ambidextrously; providing you the ability to execute any function (be it synchronous, asynchronous, returns, callbacks, promises) as if it returned a promise.
Stars: ✭ 13 (-94.01%)
Mutual labels:  client-side
3d-Skin-Layers
Renders the player skin layer in 3d
Stars: ✭ 63 (-70.97%)
Mutual labels:  fabric
prototyped.js
Some common Typescript prototypes
Stars: ✭ 22 (-89.86%)
Mutual labels:  client-side
FFNx
Next generation modding platform for Final Fantasy VII and Final Fantasy VIII ( with native Steam 2013 release support! )
Stars: ✭ 200 (-7.83%)
Mutual labels:  modding
EMF
Extended Mechanics & Flavor
Stars: ✭ 33 (-84.79%)
Mutual labels:  modding
DockRotate
Kerbal Space Program lightweight robotics with docking ports
Stars: ✭ 12 (-94.47%)
Mutual labels:  modding

Downloads

Modrinth

Curseforge

Join the Discord!

Figura REQUIRES the Fabric API to run. You can find the Fabric API here.

Figura

The Figura Project is dedicated to re-imagining the way avatars in minecraft work, as a way to allow players to more creatively express themselves.

The goal is to achieve this in a purely client-side mod, using an external server to store and serve avatars, and to create a mod that enables users to create custom, interesting avatars that do not risk the safety or performance of other users.

Figura is specifically built to allow creators as much creative freedom as possible. This comes in the form of an extremely easy to use creation pipeline, and a verbose, extensive lua API for reading data from Minecraft. The file size limit is 100kb, which doesn't sound like much, but goes a long way when it comes to creating a minecraft avatar.

Features

Notable features for the mod include

Figura is Client-Side Only

  • Figura is indented to be a fully client-side mod. User Avatars are retrieved from and uploaded to a server run by the Moonlight development team. This means a Minecraft server does not need the mod installed for users to see your avatar.
  • Other users are required to have the mod installed to see your avatar, and you must have it installed to see theirs. It's physically impossible to change this, so DO NOT ask for it.

Creative Freedom

  • The goal of Figura is to allow creators to create freely without worry of limitations like rendering or scripts. The file size limit is the only real limit on creations, everything else is determined by a user's personal settings, which can always be turned off, or on. This allows for full creative freedom for creators, and safe viewing for everyone else.

Client-Side Performance limitations.

  • Each user can decide on the performance settings for everyone they see individually. This means that someone with a lower-end PC can set avatars to render at less detail, while someone with a beast PC can set things to have practically no detail limit.
  • Model Complexity is limited on the fly. Model parts are rendered according to the hierarchy, allowing creators to prioritize specific details over others. Quads/Tris on mesh models are limited using the same system.
  • Lua Script Execution is limited. Scripts run by non-trusted users are limited to a specific instruction count, ensuring that it is impossible for random users to destroy framerate using just "while true do end". Similarly, Lua Scripts are incredibly sandboxed, not allowing for any systems beyond basic math libraries and executing very safely guarded Java code. This ensures users cannot write malicious scripts. On top of both of these factors, lua scripting is multi-threaded, ensuring that the main game's FPS will never drop due to a script executing slowly (though framerate can still drop due to rendering)

Easy Creation

  • Models are simply blockbench projects. They work 1:1 with Blockbench, enabling easy comparison and creation. Animations/Particles are not yet supported.
  • Texture mapping with Models/OBJ Models match exactly as you'd expect. There's no difficult setup. If your texture maps correctly in Blockbench or whatever software you use for OBJ files, it will match in-game.
  • All files hotswap once initially loaded, enabling extremely fast iteration time. In layman's terms: Once you load an avatar from local files, any changes to those local files will show in-game immedaitely, without even re-starting the game. However, other people will NOT see your new until you press the upload button. Once you've pressed it, it takes 10~ seconds for the model to update for them.

Creation

Model Creation is primarily achived through five steps:

  1. Blockbench Projects imported into the game while using the mod. Special names are used to assign model parts to specific vanilla body parts for animation syncing, as well as rending some parts with/without certain armor or held items, during certain animations, etc. This enables a lot of customization with little to no scripting.
  2. Texture files created as one would normally create a .png file. No limit on size for the image itself, though it is included under the maximum 100kb file size limit for any avatar.
  3. [OPTIONAL] .Obj files created through Blender or similar programs. These allow for non-cube models to be added to your avatar, for more creativity. Note that importing these is typically significantly more expensive than using Blockbench parts.
  4. [OPTIONAL] Creating a .lua script file to indicate any custom behaviour your avatar may have.
  5. Import all above asset files with a single click, and upload the entire avatar with another click.

Plans

Plans for the future of Figura (sorted more or less by priority) include

  1. Karma System
  • A system for managing player behaviour. Getting reported hurts your karma, while not getting reported rewards you karma. Users will be able to limit avatars based on someone's karma, allowing for a sort of "crowd moderation" system.
  1. Functional Shaders
  • Allowing users to write their own shaders for avatars/parts of avatars. This will be done in 1.17 with the rendering system updates.
  1. Network API
  • Allow the scripting API the ability to send small amounts of information to anyone viewing someone's avatar using a messaging system. Severely rate & data limited, but it will be routed through the Figura server, keeping Figura's "client-only" design in place.
  1. Player Worlds
  • Allow players to upload a structure file generated using structure blocks to the Figura server, and allow other players to "visit" those structures in an empty world. These worlds could be used for showing off avatars, or just builds, or anything else.
  1. Part Browser/Avatar Stitching
  • The final planned feature for moving Figura out of alpha/beta will be the ability for players to use an in-game browser to pick "parts" from publicly avaliable sets, and automatically use those parts together, merging them into a single avatar.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].