Current version of Our Paint uses round/oval shaped brush dabs. You can adjust brush properties in "Paint" mode under "Tool" panel. Enable "Default as eraser" sets the brush as eraser by default, this is for when switching from other brushes into it, you can also manually enable "Erasing" to switch any brush into an eraser.
Some brush properties supports pressure input. Click the "P" button to enable pressure controlling for that specific property.
Click the "☰" button to the right of brush names, you can set brush key binding down below. Set the value to anything form 0~9 and you should be able to switch to that brush with keyboard very quickly.
Enabling the "Use Nodes" switch to enable programmable brush. Click "Edit" will show the program editor of this brush in a new panel. You can also open a "Brush Nodes" panel manually and select the brush to be edited with the drop down menu on the top right.
There's no brush program by default, you need to manually add nodes and etc. Click "Add Rack" to add a rack, then click "Add Node" to add a node into that rack. The "Brush Device" and "Brush Settings" nodes under "Our Paint" category provided all the input you need, the "Brush Output" node under "Driver" category is used to control the final output style of the brush dab. How to transform the input value into the final dab style depends on your creativity.
Right click on any node would show a menu, which allows moving and deleting of the node. To move the node up and down. drag the "☰" symbol; to reorder nodes vertically, drag it with your right mouse button, or click the symbol, when it shows "🡙", drag it with left mouse button.
Read about the arguments for Our Paint brush nodes.
You could refer to brushes that comes with Our Paint to get a better idea on how they work.
Some cautions:It's not recommended to output offset values that varies widely in one stroke, because this makes undo and other operations slow due to a bigger bounding box of the brush stroke. The input "angle" is the angle that the mouse pointer gets dragged across the screen, typically ranging in [-pi,pi] , due to interpolation needs, sometimes a +-2pi can be added onto the input values, it should not cause much problems in trigonometry calculations. The output "angle" is the squeezing direction of the oval brush dabs. Obviously this only works when "Slenderness" is not 0.
Use File→Save As to save brushes. Use the same method as saving the canvas. There's an identifier string to the left of the file selectors, if you want Our Paint to load this brush automatically when start, then you should include OURBRUSH in the identifier string, and keep the identifiers all unique (You should not have brushes with the same identifier where Our Paint is able to locate, as configured in the resource folder). If there are brushes with the same identifier, Our Paint will only load one (undefined as in which one).
After saving brushes, you can share this file directly. Put any brush file inside Our Paint root directory or any folders you configured in the resource section (see Settings chapter).