{"id":19252188,"url":"https://github.com/provismet/vmc-mc","last_synced_at":"2025-04-21T13:30:42.919Z","repository":{"id":197509147,"uuid":"698336911","full_name":"Provismet/VMC-MC","owner":"Provismet","description":"A fabric mod for vtubers to manipulate their models using Minecraft.","archived":false,"fork":false,"pushed_at":"2024-11-30T03:29:27.000Z","size":578,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"1.21.2","last_synced_at":"2025-04-01T13:38:00.000Z","etag":null,"topics":["fabricmc","minecraft","open-sound-control","osc","virtual-motion-capture","vmc","vtuber"],"latest_commit_sha":null,"homepage":"https://modrinth.com/mod/virtual-motion-capture-for-minecraft","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Provismet.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-29T17:25:26.000Z","updated_at":"2024-11-30T02:53:10.000Z","dependencies_parsed_at":null,"dependency_job_id":"4a032c77-09b5-4db2-a740-78d9e09bf242","html_url":"https://github.com/Provismet/VMC-MC","commit_stats":null,"previous_names":["provismet/vmc-mc"],"tags_count":8,"template":false,"template_full_name":"FabricMC/fabric-example-mod","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Provismet%2FVMC-MC","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Provismet%2FVMC-MC/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Provismet%2FVMC-MC/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Provismet%2FVMC-MC/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Provismet","download_url":"https://codeload.github.com/Provismet/VMC-MC/tar.gz/refs/heads/1.21.2","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250064518,"owners_count":21368920,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["fabricmc","minecraft","open-sound-control","osc","virtual-motion-capture","vmc","vtuber"],"created_at":"2024-11-09T18:25:47.708Z","updated_at":"2025-04-21T13:30:42.401Z","avatar_url":"https://github.com/Provismet.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# Virtual Motion Capture for Minecraft\n[![](https://img.shields.io/jitpack/version/com.github.Provismet/VMC-MC?style=flat-square\u0026logo=jitpack\u0026color=F6F6F6)](https://jitpack.io/#Provismet/VMC-MC) [![](https://img.shields.io/modrinth/dt/ub8B8TcT?style=flat-square\u0026logo=modrinth\u0026color=F6F6F6)](https://modrinth.com/mod/virtual-motion-capture-for-minecraft) [![](https://img.shields.io/curseforge/dt/922189?style=flat-square\u0026logo=curseforge\u0026color=F6F6F6)](https://www.curseforge.com/minecraft/mc-mods/vmc-mc)\n\n\u003c/div\u003e\n\nThis mod uses (and bundles) the JavaOSC library to implement a VMC layer in Minecraft so vtuber models can be manipulated via in-game actions and events.\n\nThis mod is made specifically for use with [Inochi Session](https://github.com/Inochi2D/inochi-session), but has been tested with [VMC Protocol Monitor](https://github.com/gpsnmeajp/VMCProtocolMonitor) and should work universally.  \nThe VMC protocol (and by extension: Open Sound Control) is used almost universally by vtubing applications - this mod *should* in principle be compatible with most standard vtubing software.\n\n## Setup\nBy default the mod will send data over `127.0.0.1:35940` (localhost, port 35940).  \nAfter the first launch, a config file will be created under `config/vmc-mc.json`. If you wish to change the IP or port (for example, if you use multiple PCs to stream/record) then change the IP and port as necessary in this file. The changes will be read on the next launch.  \nYou may also change the port and IP via the mod's setting menu (available only if you have Mod Menu and Cloth Config).\n\n## Default Tracking\nAlmost all blendshapes sent by VMC-MC are bound to the range of 0 - 1. Some blendshapes are also boolean, only outputting 0 or 1, with no in-between.\n\nBy default, the mod sends the following tracking data:\n- time of in-game day\n- light level\n    - block light\n    - sky light\n    - internal light\n        - the actual visual light level that is used for spawn mechanics\n- weather (clear/rain/thunder)\n- health percentage\n- food percentage\n- air percentage\n- water height (uncapped value, experimentation recommended)\n- lava height (uncapped value, experimentation recommended)\n- experience levels (uncapped value)\n- sneaking (boolean)\n- sleeping (boolean)\n- alive/dead (boolean)\n- is wet (boolean)\n- on fire (boolean)\n- water submerged (boolean)\n- lava submerged (boolean)\n- crawling (boolean)\n- climbing (boolean)\n- blocking (boolean)\n- glowing (boolean)\n- frozen (boolean)\n- swimming (boolean)\n- sprinting (boolean)\n- riding living (boolean)\n- riding nonliving (boolean)\n- elytra flying (boolean)\n\n## Dependency Implementation and Addons\n### Adding VMC-MC To Your Workspace\nIf you want to use this mod as a dependency, it is available via [jitpack.io](https://jitpack.io/#Provismet/VMC-MC/).\n\nAdd the following your your repositories (at the top of your build.gradle):\n```gradle\nrepositories {\n    maven { url 'https://jitpack.io' }\n}\n```\n\nThen add the following to your dependencies:\n```gradle\ndependencies {\n    modImplementation 'com.github.Provismet:VMC-MC:0.4.0'\n}\n```\nOptionally, the tag may be replaced with `$(project.vmcmc_version)`, where this value is defined in your gradle.properties.\n\n### Extending VMC-MC\nVMC-MC creates an [entrypoint](https://fabricmc.net/wiki/documentation:entrypoint) that other mods may use for easy extension.  \nCreate a class that implements the `VmcApi` interface. Code within the `onInitializeVMC()` function will be called at the end of VMC-MC's setup. Use this function to register additional BlendShapes or VMC related client events.\n\nIn your `fabric.mod.json` add an entrypoint labeled `vmc-mc` to the entrypoints object, for example:\n```json\n\"entrypoints\": {\n\t\"client\": [\n\t    \"path.to.your.client.initializer\"\n\t],\n    \"vmc-mc\": [\n\t    \"path.to.your.vmc.initializer\"\n    ]\n}\n```\n\nUse `CaptureRegistry.registerBlendShape(...)` and `CaptureRegistry.registerBlendStore(...)` to register additional outputs.  \nSee `CaptureRegistry.registerStandardEvents()` for examples.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprovismet%2Fvmc-mc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprovismet%2Fvmc-mc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprovismet%2Fvmc-mc/lists"}