Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ToniMacaroni/SaberFactory
A highly customizable custom saber mod for Beat Saber
https://github.com/ToniMacaroni/SaberFactory
beatsaber custom customsaber mod sabers sf
Last synced: about 2 months ago
JSON representation
A highly customizable custom saber mod for Beat Saber
- Host: GitHub
- URL: https://github.com/ToniMacaroni/SaberFactory
- Owner: ToniMacaroni
- License: gpl-3.0
- Created: 2020-12-22T15:29:21.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2024-02-15T18:50:46.000Z (11 months ago)
- Last Synced: 2024-08-03T11:08:55.628Z (5 months ago)
- Topics: beatsaber, custom, customsaber, mod, sabers, sf
- Language: C#
- Homepage:
- Size: 56.3 MB
- Stars: 242
- Watchers: 10
- Forks: 25
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- Changelog: changelog.md
- License: LICENSE
Awesome Lists containing this project
README
Saber Factory 2(v3 is in the making)
A highly customizable saber mod for Beat Saber
| | |
| ------------- | ------------- |
| Mod Download | **[Latest Version](https://github.com/ToniMacaroni/SaberFactory/releases)** |
| Website | **[SaberFactory.com](https://saberfactory.com)** |To get more content and help with the mod or creation of content
join the the **[Saber Factory Discord](https://discord.gg/PjD7WcChH3)** server.Or if you want to help the project grow:
| [:heart: Donate](https://ko-fi.com/tonimacaroni) |
| ------------- |## What is Saber Factory?
Simply said: An all-rounder when it comes to sabers.Combine different saber parts like lego pieces.
Everything is built around customization.
Change the shape, shaders, material properties, textures and more of parts and sabers.**You can use and customize both parts and custom sabers in saber factory**
## How do I install it
1) Download the first zip from [Here](https://github.com/ToniMacaroni/SaberFactoryV2/releases)
2) Unpack it in your Beat Saber directory## I want to create a saber
I highly recommend watching [this tutorial](https://www.youtube.com/watch?v=YqpcNTpzW4A).
The unity project can be found [here](https://github.com/ToniMacaroni/AssetCreationProject)## I have made a map and want it to use a specific saber
You can add a "_customSaber" prop to your beatmap data
that tells Saber Factory to use a specific saber for this map like this:
```
"_customData": {
"_customSaber": "Plasma Katana"
}
```
Make sure to use the actual name of the saber not the file name.
Best is to look in-game at the saber to see what the actual name is.## I have made a noodle map where the player moves and I want the trails to not stretch
By default if the player moves in a noodle map the trail behaves like a real trail and becomes longer the faster the player moves.
Sometimes you might have a different vission for your map or the map is less playable with such a long trail.
If you don't know what I'm talking about, take a look at this comparison: https://www.youtube.com/watch?v=UP0SqtMcr1g
You can enable "relative movement of the trail to the player" by using a settable settings in your map like this:
```
"_difficultyBeatmaps": [
{
"_difficulty": "Expert",
...
"_customData": {
"_requirements": [
"Chroma",
"Noodle Extensions"
],
"_settings": {
"_saberFactory": {
"_relativeTrailMode": true
}
},
}
}
]
```
The settings group is `_saberFactory` and the field is `_relativeTrailMode` (which can be either `true` or `false`)## I made a mod that needs to create some sabers in a song
If you want to create sabers in a song see https://github.com/Auros/SiraUtil#sabers## I made a mod that needs to create some sabers in the menu (or other place after the menu)
If you want to create sabers in the menu (like [Custom Menu Pointers](https://github.com/dawnvt/CustomMenuPointers/) does)
you can request the `MenuSaberProvider` and create sabers with it like this:```csharp
public class MyMenuManager : IInitializable
{
private readonly MenuSaberProvider _menuSaberProvider;public MyMenuManager(MenuSaberProvider menuSaberProvider)
{
_menuSaberProvider = menuSaberProvider;
}public async void Initialize()
{
var myLeftSaber = await _menuSaberProvider.CreateSaber(parent:null, saberType:SaberType.SaberA, color:Color.red, createTrail:true);
}
}
```