
Tarso is a library datapack containing general mathematical utilities for score calculations without using macro functions.
Usage
Calculation
To calculation, put the score in math.target and (maybe) math.source, then call operations, the score returned will be presented in math.target.
| Operation | Function | General Expression | Desciption |
|---|---|---|---|
| Left Shift | math:ls |
math.target = math.target >> math.source |
|
| Right Shift | math:rs |
math.target = math.target << math.source |
|
| Addition | math:add |
math.target = math.target + math.source |
|
| Multiplication | math:mul |
math.target = math.target * math.source |
|
| Power | math:pow |
math.target = math.target ^ math.source |
|
| Subtraction | math:sub |
math.target = math.target - math.source |
|
| Division | math:div |
math.target = math.target / math.source |
|
| Logarithm | math:log |
math.target = log math.source (math.target) |
|
| Common Logarithm | math:lg |
math.target = log 10 (math.target) |
|
| Natural Logarithm | math:ln |
math.target = log 2 (math.target) |
|
| Square Root | math:sqrt |
math.target = sqrt(math.target) |
|
| Modulus | math:mod |
math.target = math.target % math.source |
|
| Remainder | math:rem |
math.target = math.target % math.source |
|
| Negativity | math:neg |
math.target = -math.target |
|
| Absolutation | math:abs |
math.target = (math.target < 0) ? -math.target : math.target |
|
| Sign | math:sig |
math.target = math.target / (math.target < 0) ? -math.target : math.target |
|
| Factorial | math:fact |
math.target = math.target! |
|
| Permutation | math:perm |
math.target = P(math.target, math.source) |
|
| Combination | math:comb |
math.target = C(math.target, math.source) |
|
| Hypot | math:hyp |
math.target = sqrt(**math.target + **math.source) |
|
| Vector | math:vec |
math.x = CORDIC(math.target).x math.y = CORDIC(math.target).y |
Precision is controled by math.source. |
| Tangent | math:tan |
math.target = tan(math.target) |
Precision is controled by math.source. |
| Cotangent | math:cot |
math.target = cot(math.target) |
Precision is controled by math.source. |
| Sine | math:sin |
math.target = sin(math.target) |
Precision is controled by math.source. |
| Cosine | math:cos |
math.target = cos(math.target) |
Precision is controled by math.source. |
The Stack
Tarso comes with a stack of 16 sorts. To transfer scores, put the score in math.buffer before pushing and the score poped out will be presented in math.buffer.
| Operation | Function |
|---|---|
| Push | math:push |
| Pop | math:pop |
| Seek | math:seek |
Notes
Objectives other than those belong to the stack can be overwritten during calculations.
Pushing a score into the stack while it's full make no sense.
FAQ
1. Why is the natural logarithm inaccurate?
It cannot be fixed except using large-number calculation, which is extremely slow. Currently it has a base of 2.
- Edition: Minecraft Java
- File type: .jar
- Minecraft versions listed: 1.20.3, 1.20.4, 1.20.5
- How to install: Install the matching mod loader (Forge, Fabric or NeoForge) for your Minecraft version. → Download the .jar. → Put it in the .minecraft/mods folder and launch that loader profile.
- Where to get it: Opens on Modrinth — not every file is mirrored on our own servers.
Install steps are the general flow for this file type — see the MC Java Mods guides for the full walkthrough.
- Downloads as Tarso-0.1.3.zip
- Download size: 79 KB
- Download link checked 20 Aug 2026 — working
These come from our own check of the pack file, not from the source page.