Edit Beat Saber Noodle Extensions level easily using this library.
Project description
Python Noodle Extensions Editor (PNEE)
Current Version: 2.0.1
Check your installed version by doing pip show NoodleExtensions
. If you are not on 2.0.0, do pip install --ugprade NoodleExtensions
.
PPPPPPPPPPPPPPPPP NNNNNNNN NNNNNNNNEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
P::::::::::::::::P N:::::::N N::::::NE::::::::::::::::::::EE::::::::::::::::::::E
P::::::PPPPPP:::::P N::::::::N N::::::NE::::::::::::::::::::EE::::::::::::::::::::E
PP:::::P P:::::PN:::::::::N N::::::NEE::::::EEEEEEEEE::::EEE::::::EEEEEEEEE::::E
P::::P P:::::PN::::::::::N N::::::N E:::::E EEEEEE E:::::E EEEEEE
P::::P P:::::PN:::::::::::N N::::::N E:::::E E:::::E
P::::PPPPPP:::::P N:::::::N::::N N::::::N E::::::EEEEEEEEEE E::::::EEEEEEEEEE
P:::::::::::::PP N::::::N N::::N N::::::N E:::::::::::::::E E:::::::::::::::E
P::::PPPPPPPPP N::::::N N::::N:::::::N E:::::::::::::::E E:::::::::::::::E
P::::P N::::::N N:::::::::::N E::::::EEEEEEEEEE E::::::EEEEEEEEEE
P::::P N::::::N N::::::::::N E:::::E E:::::E
P::::P N::::::N N:::::::::N E:::::E EEEEEE E:::::E EEEEEE
PP::::::PP N::::::N N::::::::NEE::::::EEEEEEEE:::::EEE::::::EEEEEEEE:::::E
P::::::::P N::::::N N:::::::NE::::::::::::::::::::EE::::::::::::::::::::E
P::::::::P N::::::N N::::::NE::::::::::::::::::::EE::::::::::::::::::::E
PPPPPPPPPP NNNNNNNN NNNNNNNEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
my to-do list
If you want to know what's currently on my to-do list, you can go here! Pull requests, feedback, issues, and more are appreciated. If you'd like to contact me, you can do so on discord at megamaz#1020
What is it?
This is a Python Noodle Extensions Editor for Beat Saber levels. Manually editing a JSON file over a long period of time can get really annoying, so this should speed up the process!\
The docs are still a work in progress. If you have any questions on how to use the script or need help, you can contact me on discord at megamaz#1020
They currently do not document animation, but they can be found here
Sample
import noodleExtensions as NE
editor = NE.NoodleExtensions(r"level.datpath")
# assign to a new track
dropNote = NE.Note(5, 1, 0, 0, 8)
editor.editNote(dropNote, NE.Note(5, 1, 0, 0, 8, _track="FallDownTrack"))
FallDownTrack = NE.AnimateTrack(2, "FallDownTrack", 2, _position=[
[0, 100, 0, 0], # be in the sky before it appears
[0, 0, 0, 0.75, "easeOutBounce"], # fall down in front of player and finish animation just in time for the player to hit it
])
editor.animateTrack(FallDownTrack)
# push events to the level.dat so it can be ready to play
editor.pushChanges()
Pull Request
To make a pull request, please test your code either using pytest or your python testing env. of your choice.
I will not be accepting any form of pull request if the test files have not been modified to fit your modifications.
- Fork this project
- Edit code
- Test your code
- If check 3 is done, move on to step 5
- Make the pull request
Current Issues:
- None
Currently testing features (checked features have been tested and are working)
- updateDependencies
- pushChanges
- getNote
- getWall
- editNote
- editWall
- animateTrack
- assignPathAnimation
- assignTrackParent
- assignPlayerToTrack
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distributions
Hashes for NoodleExtensions-2.0.1-py3.9.egg
Algorithm | Hash digest | |
---|---|---|
SHA256 | 52e564cf2b09fd6e0369381fed65d935fbbe6d60af0dfb78211e55da235c1f95 |
|
MD5 | c0c55752b96c05005e5c87ab8ecf9638 |
|
BLAKE2b-256 | 75f096ebe15daf08c234f4e7211caed9cee701ad604723a11f3c9483343b05c9 |
Hashes for NoodleExtensions-2.0.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 28a30734fa3346fd836dcb4cb0c4d6c6e65a7d347298cf2c4a1cc18b0ebb9ce1 |
|
MD5 | 009d0c1cced6067ba9fb3ac3d2ebd7b5 |
|
BLAKE2b-256 | 6bfd43e9d21a27ac7c5afe49542509b3fd37bbb86fd442550a0d4a993190c5d5 |