Battle Mode and all gestures are built in, enabling and setting can be done through defines and/or Edit Mode functionality. But if you want certain features to be “default” to the saber you’d need to use the respective defines. Also, functionality like using preons during gestures or not entering Battle Mode with gestures can only be done the first time you upload based on the defines. After uploaded you can only turn the gestures on or off, the preon or no BM behavior cannot be changed. All info on defines is at top of prop or on this page in Defines section.
I am using this script to “upgrade” by ProffieOS each time now automagically:
#!/bin/sh
# A Simple Shell Script to first back up your current Saber directory, and then pull the latest
# ProffieOS from GitHub and merge it into an existing folder.
# Then replace the default #define CONFIG_FILE "config\YOUR_CONFIG_FILE_NAME_HERE.h"
# with whatever config file you specify.
# Jeremy Laurenson - Jan 10, 2022
#
# Expects directory layout like this:
# AnyDirectoryHere
# |-- thisscript.sh
# |-- YourSaber_Backupdate.zip
# |-- ProffieOS (dir) <— This will be created and cloned from GitHub
# |-- YourSaber (dir) <- This should be your primary Saber directory you work from
# | |-- ProffieOS
# | | +- config
# | | |
SABER_DIRECTORY="KorbanthSK2"
SABER_CONFIG="korbanth_starkiller_v2_doubleCC.h"
clear
cd "$(dirname "$(echo "$0")")"
rm -Rf ProffieOS
zip -vr "Backup_$(date +"%Y%m%d_%H%M%S").zip" $SABER_DIRECTORY -x "*.DS_Store"
gh repo clone profezzorn/ProffieOS
cp -Rf ProffieOS ./$SABER_DIRECTORY/
rm -Rf ProffieOS
sed -i '' "s/\/\/ \#define CONFIG_FILE \"config\/YOUR_CONFIG_FILE_NAME_HERE.h\"/\#define CONFIG_FILE \"config\/$SABER_CONFIG\"/g" ./$SABER_DIRECTORY/ProffieOS/ProffieOS.ino
echo Done.
Video to help explain:
You’re better off using actual git for this this.
Basically all you need to do is something like:
- pick a directory
- cd to it
git clone https://github.com/profezzorn/ProffieOS.git
git checkout -b 'pick_a_branch_name'
git branch --set-upstream-to=master
- do stuff
- if you want to keep it, do
git commit
, if not dogit stash
- to create a new branch, goto step 4
- to go back to an existing branch, do
git checkout 'branch_name'
where “branch_name” is some branch that already exists. - To list available branches, do
git branch
- To update from github do
git checkout master
thengit pull
then go to a branch and dogit pull
there too. (Step 5 makes it so thatgit pull
on each branch will pull from the master branch, but to get the latest you must first update the master branch.)
There are GUI-based git clients which can do all of this too, but I use the command-line based ones, so my explanations are based on command-line tools.
When you do a git pull
, git will automatically keep your changes, and if there are conflicts it will notify you. At that point you need to either fix the conflicts and then commit them to your branch, or abort the merge with “git merge --abort”.
The nice thing about doing it this way is that it generically handles ALL changes, not just the CONFIG_FILE
ones, and if you ever want to contribute any changes back to ProffieOS, you’re already set up to do it.
Git’s superpower is swithching between different versions (including versions with your changes in them) in the same directory REALLY fast. It’s a little weird and intimidating at first, but it’s very powerful once you learn it.
EDIT:
I for that if you add files (like new config files) you should use git add
on those files, otherwise git will ignore them, which is probably not what you want. The git add
would go before step 7 in the list above.
What’s the difference between battle mode start and battle mode always on?
You can’t toggle Battle Mode off if you use Always On. It’s described in top of prop.
Battle mode start on means that any time you ignite your saber, it will ignite in Battle Mode. You can turn off Battle Mode with a button combination.
Battle Mode Always On works the same way, except you can’t turn Battle Mode off. It’s “always on”
the video is not playing.
This is very cool. And I’m running Linux as well. I may do this just to pull any fixes that are being worked. Thanks @profezzorn love ya work.
Filed an issue for TrRandom freezing the board.
i get this output when I run the step number 4
[maxb@max-laptop ProffieOS]$ git checkout -b 'master'
fatal: not a git repository (or any of the parent directories): .git
[maxb@max-laptop ProffieOS]$ git checkout -b 'v6.x'
fatal: not a git repository (or any of the parent directories): .git
[maxb@max-laptop ProffieOS]$ git checkout -b 'pick_a_branch_name'
fatal: not a git repository (or any of the parent directories): .git
I guess I forgot cd ProffieOS
after step 3: git clone
.
just to confirm like above? I tried that and I’m still getting the same error.
OH YOU MEANT THE proffieos directory that was cloned by git.
let me try that again.
Here’s an actual example:
hubbe@gem:~/hack/ProffieOS$ cd /tmp
hubbe@gem:/tmp$ git clone https://github.com/profezzorn/ProffieOS.git
Cloning into 'ProffieOS'...
remote: Enumerating objects: 9266, done.
remote: Counting objects: 100% (2447/2447), done.
remote: Compressing objects: 100% (1090/1090), done.
remote: Total 9266 (delta 1650), reused 2069 (delta 1357), pack-reused 6819
Receiving objects: 100% (9266/9266), 6.97 MiB | 5.86 MiB/s, done.
Resolving deltas: 100% (6479/6479), done.
hubbe@gem:/tmp$ cd ProffieOS/
hubbe@gem:/tmp/ProffieOS$ git checkout -b 'baseball_bat_prop'
Switched to a new branch 'baseball_bat_prop'
hubbe@gem:/tmp/ProffieOS$ git branch --set-upstream-to=master
Branch 'baseball_bat_prop' set up to track local branch 'master'.
hubbe@gem:/tmp/ProffieOS$ cp props/saber.h props/baseball_bat.h
hubbe@gem:/tmp/ProffieOS$ git add props/baseball_bat.h
hubbe@gem:/tmp/ProffieOS$ git commit -a -m 'keep the baseball bat prop'
[baseball_bat_prop 9e556f7] keep the baseball bat prop
1 file changed, 250 insertions(+)
create mode 100644 props/baseball_bat.h
hubbe@gem:/tmp/ProffieOS$ ls -al props/baseball_bat.h
-rw-rw-r-- 1 hubbe hubbe 8410 Jan 10 21:30 props/baseball_bat.h
hubbe@gem:/tmp/ProffieOS$ git checkout master
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
hubbe@gem:/tmp/ProffieOS$ ls -al props/baseball_bat.h
ls: cannot access 'props/baseball_bat.h': No such file or directory
hubbe@gem:/tmp/ProffieOS$ git checkout baseball_bat_prop
Switched to branch 'baseball_bat_prop'
Your branch is ahead of 'master' by 1 commit.
(use "git push" to publish your local commits)
hubbe@gem:/tmp/ProffieOS$ ls -al props/baseball_bat.h
-rw-rw-r-- 1 hubbe hubbe 8410 Jan 10 21:31 props/baseball_bat.h
hubbe@gem:/tmp/ProffieOS$
What is the new of your blast file card for multi blast? Cause don’t see it on the prop file. Does it have a different name?
It’s under Battle Mode controls, if you do a blast with the button and then swing within 2 seconds you will automatically enter Multi-Blast Mode.
For STAB_ON when the saber’s on, does it give a stab affect at the tip of the blade once gestured?
it shouldn’t, it just should turn on.
Stab On ignition only runs while blade is off, if the blade is on then its a Stab effect (because the blade is already ignited).
How does stab work if you don’t mind me asking?