400 Commits

Author SHA1 Message Date
IntegratedQuantum
fe687be59f Rename player model to "snale"
fixes #1697
2025-07-20 22:32:53 +02:00
codemob
f2dc3faec2
Place certain blocks on water (#1672)
Fixes #1218

---------

Co-authored-by: IntegratedQuantum <43880493+IntegratedQuantum@users.noreply.github.com>
2025-07-20 11:10:16 +02:00
OneAvargeCoder193
32760169f7
Make the new cactus block craft the cactus arm instead of the old one. (#1694)
fixes #1693
2025-07-20 09:49:38 +02:00
IntegratedQuantum
fc1897de92 Banish those large assets into a separate repository
A first step towards #763 to unblock the addition of large assets.
2025-07-10 20:35:15 +02:00
IntegratedQuantum
a8ffa97ebc Buoyancy, volume friction and volume mobility
fixes #83
fixes #84
first prototype of #85
2025-07-05 16:56:29 +02:00
IntegratedQuantum
24a1fcdc69
Use world-space dithering as well as a better dither matrix to handle transparency in mipmapping/anisotropic filtering (#1641)
- [x] Prototype
- [x] Remove old code
- [x] ~~Apply this form of dithering to other shaders as well (item
drop)~~ → old dither looks better for items and display model
- [x] Can we finally remove the dither seed?
- [x] Check performance impact → it's slightly (insignificantly) faster
even
2025-06-26 20:14:54 +02:00
IntegratedQuantum
ba5711f607 Fix remaining shaders affected by a8b36f3ca450d83e9fd2e903bb998b5f4169b7ad 2025-06-20 22:37:58 +02:00
IntegratedQuantum
a8b36f3ca4 Don't use vector types in the GPU buffer.
I decided to pack the corner positions, everything else would have made it more ugly.

fixes the most relevant part of #1634
2025-06-19 22:04:26 +02:00
Krzysztof Wiśniewski
9c33f8184d
Fix amber ore (#1633)
Amber ore was not adjusted to #1509
2025-06-19 16:46:28 +02:00
Krzysztof Wiśniewski
fe09535244
Add coniferous trees the way I like them (#1377)
I still need more variants of lushy branches, also the average branch
variants seem a bit bare, too bare IMO, tho maybe these are things we
could tweak later?

![Screenshot 2025-06-02
000603](https://github.com/user-attachments/assets/b190ec37-a897-4373-ade2-da4bd53d761c)
![Screenshot 2025-06-02
000620](https://github.com/user-attachments/assets/4c63b49a-6b74-47a5-aabb-f0731a1b8377)
![Screenshot 2025-06-02
000636](https://github.com/user-attachments/assets/2bb1cbc6-8307-4289-aab7-309faae93f25)
2025-06-17 18:23:47 +02:00
OneAvargeCoder193
4898012311
Use comptime modding for rotation loading (#1509)
Related to: #1507
closes #1533 

I'm pretty sure that the rest of the moving into a comptime mod
interface can be done in a future pr

---------

Co-authored-by: Krzysztof Wiśniewski <argmaster.world@gmail.com>
2025-06-17 18:13:48 +02:00
Carrie
ce9e0dc4ef Update tool textures (#1621)
![image](https://github.com/user-attachments/assets/ede1ffc2-dce6-4e09-8c5e-a8d7cb7572cf)
2025-06-08 21:41:16 +02:00
OneAvargeCoder193
dde261750a
Stop erasing the old logs from inventories that already have them (#1616) 2025-06-08 16:05:06 +02:00
IntegratedQuantum
cd4cd8e9b9
Add and allow for more optional slots (#1612)
This checks slots based on texture connectivity. It really is just a
gimmick at this point, but it has potential to be more than that with
the right modifier restrictions.
![Screenshot at 2025-06-07
10-03-05](https://github.com/user-attachments/assets/e2aa96d4-8add-47cf-abc4-97f383c5fe41)
![Screenshot at 2025-06-07
09-59-46](https://github.com/user-attachments/assets/6aa00d24-8a97-4200-8c77-86b9751d2e2d)
![Screenshot at 2025-06-07
09-54-42](https://github.com/user-attachments/assets/247a2fdd-29ce-4467-85ff-3183f0ec36f1)

The big questions I have for you are:
- Is it obvious why some tools don't work while others do or is this too
confusing?
- @careeoki can you improve the texture to look better for these crooked
tools? Many slots do just seem to produce a thin line of diagonally
connected pixels, and this really doesn't look good and the algorithm
doesn't accept those as valid connections.

fixes #1589
2025-06-08 11:32:56 +02:00
IntegratedQuantum
552ddc78c6 Encase amber 2025-06-03 19:15:01 +02:00
Carrie
44e9232dff
Amber ore & blocks (#1585)
part of #1326

![image](https://github.com/user-attachments/assets/702eb90d-3445-40c9-a6cf-8f6161d7b830)
Amber starts generating at -1250. I would still want it to appear in
sandstone caves, beaches, etc. but we don't support that right now.


![image](https://github.com/user-attachments/assets/e3a5acac-75b7-4d70-8e49-85d84c5fd004)
Amber has the `light` modifier at 50%


![image](https://github.com/user-attachments/assets/93dd9ce9-25cb-46a4-a633-1e6af72e5032)
Something unique compared to other gem blocks is that amber is
translucent.
2025-06-03 18:38:18 +02:00
OneAvargeCoder193
a59ac2b011
Change log rotation to be more similar to branches, and also remove log_top (#1496)
Fixes #357 

Stuff left to do

- [x] Make them more like branches
- [x] ~Make them rotate~ Fixed automatically by making them like
branches
- [x] ~Let them be chiseled like stairs?~ This will be a future pr
- [x] Automatic migration between old and new logs

---------

Co-authored-by: Carrie <carriecapp9@gmail.com>
2025-06-01 17:17:33 +02:00
IntegratedQuantum
beed67403e Allow summing tool parameters instead of averaging them.
Currently everything uses average, but it does make some things less intuitive.
2025-06-01 14:32:20 +02:00
Krzysztof Wiśniewski
8f9ebe55fa
Allow direct use of blueprints as SBBs (#1500)
## Descriptions

This pull request adds inline SBBs feature which allows blueprints to be
used directly (without SBB zon file) as child in other SBB files.
Blueprint used this way must not any child blocks on it's own.
To ensure that the feature works correctly some of the now redundant SBB
zon files were removed.
Current implementation generates SBB at runtime for each of the
blueprints that has 0 child blocks and doesn't have an SBB with same ID.
In the future the implementation could be changed to create SBBs on
demand, to avoid wasting memory on blueprints which are not used or use
SBB with different name, that is not critical tho (really small gains)
and requires #1499

## Links

Resolves: #1403

---------

Co-authored-by: IntegratedQuantum <43880493+IntegratedQuantum@users.noreply.github.com>
2025-06-01 12:56:54 +02:00
Carrie
74b0fb4431
Misc texture palette tweaks (#1568)
Some thrilling and game-changing texture edits:
These are a bunch of small tweaks that have been on my to-do list.
Ideally i would have before/afters for these but they are so minor that
I feel its not worth the effort

- Lower contrast of brightest sand colour (this was bothering me all
week when testing logs in the desert)

![image](https://github.com/user-attachments/assets/764933e4-11db-4f68-9081-5ab9f29d7233)

- Lower contrast of duckweed 

![image](https://github.com/user-attachments/assets/73820d80-c17d-4cb4-96d4-52e784d9d2be)

- Reduce hue shifting on red chalk (the darkest colour is now more red
than more pink)

![image](https://github.com/user-attachments/assets/cf56f087-b33b-4250-8877-e56977c87905)

- Darken dead leaves & lower contrast. This is probably the most
noticeable change. (ensuring good contrast when on top of grass blocks)

![image](https://github.com/user-attachments/assets/1fe5c9b1-3f05-45a3-96bc-8550e3a49d60)
2025-06-01 11:28:32 +02:00
MnHs
152e91b6d1
Fix particle UVs (#1564) 2025-06-01 11:17:40 +02:00
IntegratedQuantum
3846cd54d4 Add crafting recipes for signs 2025-05-31 11:09:25 +02:00
IntegratedQuantum
eaaf524f99
Signs (#1446)
- [x] Rotation (already merged)
- [x] basic GUI
- [x] sign models and textures
- [x] sign blocks
- [x] update the text on the client
- [x] Figure out block entity rendering
- [x] Render the text to a texture on update
- [x] Render the texture in the world in the location of the sign
- [x] Use varint instead of u32 for storing the block data lengths,
(now, while we can still change it)
- [x] Sync the text with the server and all clients
- [x] Figure out block entity storage on the server
- [x] Send the entity data of the initial chunk
- [x] Store the text on the server
- [x] Set the chunk as changed whenever a block entity data update
happens, so we actually store it
- [x] Disable or figure out optimized local chunk transmission
- [x] fix memory leak
- [x] Rethink some of the API (do we need onPlace/onBreak, when there is
unload and updateData?)
- [x] Remove the background shadow from text, it produces too much
aliasing
- [x] Figure out if the default should be black or white
- [x] Correctly center the text
- [x] Why are newlines not working?
- [x] Check if a deadlock is possible on deinit --- it would be possible
only if another thread has a reference to it, which should not be the
case when unload is called.
- [x] Set the text margin and sizes reasonably
- [x] Make sure the GUI fits with the sign width
- [x] Create an issue for configurable sign texture size and
configurable default color

fixes #367

---------

Co-authored-by: Carrie <122191047+careeoki@users.noreply.github.com>
Co-authored-by: OneAvargeCoder193 <85588535+OneAvargeCoder193@users.noreply.github.com>
2025-05-31 10:49:50 +02:00
Carrie
b333d22bbc
Add sickle (#1550)
resolves #1547 

The sickle, balanced to the best of my ability. It breaks `.leaf` and
`.cloth` tagged blocks.
A metal sickle lets you get rid of floating leaves or clear a grassy
field super quickly.


![449059994-d2c01e85-3d92-471b-a4e3-e766d7dfb00b](https://github.com/user-attachments/assets/428afbc0-e337-4cb6-9469-e02acdbcadda)

![449060984-db0d1f5d-5f2f-4cd0-b4e1-bffd1046be09](https://github.com/user-attachments/assets/b5d5d517-c3c0-4442-82b4-8dfa07508a19)

![449060868-712ecad3-f6ef-432c-8269-de34c59ba154](https://github.com/user-attachments/assets/3d2528ed-62e5-44ed-a3bf-d19b37877216)

![image](https://github.com/user-attachments/assets/e4d52853-501c-44dc-a933-8855b1b91c79)
2025-05-30 20:40:44 +02:00
MnHs
de304e49d3
Particles (#1367)
https://github.com/user-attachments/assets/de82e298-acfb-431d-973a-2d37b9a707ae

resolves #293

---------

Co-authored-by: Krzysztof Wiśniewski <argmaster.world@gmail.com>
Co-authored-by: IntegratedQuantum <43880493+IntegratedQuantum@users.noreply.github.com>
Co-authored-by: Krzysztof Wiśniewski <Argmaster@users.noreply.github.com>
2025-05-25 20:53:05 +02:00
Krzysztof Wiśniewski
14c7fafce9
Merge sbb and blueprint asset directories (#1498)
## Description

This pull request merges `sbb` and `blueprint` directory trees into
single directory tree as discussed in #1403 searched twice, once to load
blueprint files, once to load sbb zon files.

## Links

Related to: #1403
Related to: #1408
2025-05-24 13:23:51 +02:00
Carrie
bb0289c738
Furnace assets (#1479)
Following suggestions in #1151, this adds the nonfunctional kiln,
furnace, bellows, and chimney blocks.


![image](https://github.com/user-attachments/assets/94e9de34-b1fc-4344-94e2-5cbfbbb7d394)

![image](https://github.com/user-attachments/assets/b9a071c6-5a09-4d09-b954-70a6e4af31a7)
And I even did lit textures.
![Recording 2025-05-18 at 19 10
56](https://github.com/user-attachments/assets/e96fd91b-3ed2-4045-a1c1-f6c9c056222e)

This is what I imagine for recipes:
```
Kiln
- 8 any stone

Furnace
- 8 terracotta

Bellows
- 2 planks
- 2 copper
- 4 leather

Chimney
- 4 terracotta
- 2 iron
```

There is a lot of changes because I had to do some consistency fixes
along the way:
- terracotta grout colour
- copper block palette changes
- change 1 colour of the torch flame
2025-05-23 20:51:37 +02:00
IntegratedQuantum
c52b231983
Make iron more elastic (#1472)
Currently Copper beats iron due to its low swing time.

This makes iron more elastic, giving it the same swing time as copper.
Both a copper-head and an iron-head pickaxe now have a swing time of
0.12s

This makes iron strictly better than copper, reducing it from the best
metal in the game to a step in the progression, it's still required to
mine iron. However the plan is to give it a come-back in the end game
due to its high conductivity.
2025-05-20 18:56:25 +02:00
IntegratedQuantum
a29bb3c3b9
Rename EntityDataClass to BlockEntityType (#1464)
I also removed the legacy (java) blockEntity references.

fixes #1454

@Argmaster since you wrote the original code in #1224, please review and
check if the new names are fine for you.
2025-05-18 19:20:51 +02:00
Krzysztof Wiśniewski
6596835cf3
Tweak coal ore health (#1456) 2025-05-18 12:07:22 +02:00
IntegratedQuantum
4d62da9ae8 Rename solid to replacable
fixes #1358
2025-05-12 18:06:21 +02:00
IntegratedQuantum
48f67e19c2 Why did I test this after merging? 2025-05-12 17:51:37 +02:00
IntegratedQuantum
2f3a25dfb3
Draw a thicker selection box (#1435)
* Draw a thicker bounding box

* Draw an actual 3d model for the selection box.

This is done using a line model with a cubiod offset model.
2025-05-12 17:47:14 +02:00
IntegratedQuantum
c04819c5af
Compile shaders in the CI, to validate that their syntax is correct (#1427)
* Move to glslang's convention for shader file suffix

* Update ci.yml

* Oops, a mistake in the shader, how could that happen?

* Does the command error on its own?

* Update ci.yml

* Revert "Oops, a mistake in the shader, how could that happen?"

This reverts commit 869c3323f3d3b5fa607b40e7847c389a12b01f33.

* Update ci.yml
2025-05-10 12:32:51 +02:00
IntegratedQuantum
a9a907313b Change cloth block tag to cloth
fixes #1095, the breaking speed was already adjusted previously
2025-05-09 17:53:43 +02:00
IntegratedQuantum
c7d938e965 Make tools with encased stone better at that stone type.
fixes #1398
2025-05-09 16:42:46 +02:00
IntegratedQuantum
c8ee037027 Make stones (except sandstone) not fragile
they are already bad enough as it is, and having them fragile too makes them even less likely to be used (and we do want them to be used, see e.g. #1398)
2025-05-08 21:59:17 +02:00
ikabod-kee
2991febe3f
Oak and Birch Tree Generators (#1382)
* Added Blueprints and SBBs for oak and birch trees

* Whoops! Added .zig to .zon

* Format Change (agh)

* Fixes to generators

* Changed nulls and put trees in Tree folder

* Removed Treefixes

* Update leaf_1.zig.zon

* Omitted chances

* 5 years

* Changed the two oak roots I had neglected
2025-05-07 18:37:45 +02:00
Carrie
93d5292338
Make iron darker, tweak copper, tweak gold block (#1411) 2025-05-07 18:20:11 +02:00
IntegratedQuantum
5a1a824e05
Add SPIR-V compilation to ensure our shaders remain SPIR-V compatible (#1404)
* Remove unused `directionalLight` uniform

* Add glslang libraries

* Update to the new Cubyz-libs version

* Dehardcode OS-dependent library file name stuff

* Audio somehow crashes on close, not sure why but I assume it's probably because of the library being compiled with a new zig version.

* Remove irrelevant uniforms from Window uniform list

* Remove unused itemdrop uniform

* Implement SPIR-V compilation code, the actual output is discarded

* Improve linking shader errors by passing a file path

* Fix formatting
2025-05-05 20:20:11 +02:00
Carrie
2cf88669e7
Removed unused block textures (#1402) 2025-05-05 17:21:10 +02:00
Carrie
7fed896a77
Permafrost, cold grass, and osier (+ biome changes) (#1369)
* Permafrost, cold grass, osier, cold taiga, tweaks

* Tweak osier and cold grass item

* formatting

* Move cold_taiga to taiga/cold and migrate taiga/base

* Fix subbiomes
2025-05-04 12:39:44 +02:00
Carrie
900b52a02c
Resin assets (#1383)
* Resin assets

* resin_block = .wood

* Make resin block more frictiony
2025-05-04 12:34:17 +02:00
IntegratedQuantum
1a1a503033 gl_DepthRange is not supported by SPIR-V
progress towards #1376
2025-05-02 17:04:21 +02:00
IntegratedQuantum
73d50720b4 Assign locations to all uniform declarations
progress towards #1376
2025-05-02 16:47:29 +02:00
IntegratedQuantum
3ba4d5fd14 Explicitly specify image bindings for all sampler uniforms.
progress towards #1376
2025-05-02 15:49:01 +02:00
IntegratedQuantum
9898db654b Specify the location of all shader in/out parameters.
also normalized the version and layout formatting
progress towards #1376
2025-05-02 14:53:57 +02:00
OneAvargeCoder193
9181b31a6d
Add stars and a simple skybox (#1043)
* really bad and inefficient star code i think

* add stars that dont work during the day but look cool

* remove galaxy shape and replace it with a simple sphere

* add broken background

* make stars affected by fog

* make the stars additive

* remove commented code in shaders

* remove unused variables in the shader

* make the stars spin

* make stars not have bloom

* fix formatting

* temp changes

* fix formatting (still temp changes)

* switch to cubyz random numbers

* multiply star matrix in cpu instead of gpu

* changed star to be twice as big, not affect by resolution as much, and also be loaded from a texture

* remove trailing whitespaces

* remove unused constants

* simplify the code by removing a log and power

* optimizing the stars

* remove debug code

* make stars triangles instead of points

* simplify the math more

* give star ssbo unique id

* fix formatting issues

* make array multiline

* fix formatting

* remove files i accidentally added

* remove random obj file

* fix some issues

* use square distance

* fix formatting

* small change

* fix some stuff

* fix other things

* comp error

* more stuff

* fix some stuff with the stars

* test

* fix formatting

* fix more formatting

* test 2

* fixes

* changes

* changes

* fix formatting

* fixes

* remove patch
2025-04-27 20:29:19 +02:00
Carrie
a2911710a6
Add ladder assets (#1310) 2025-04-27 17:31:48 +02:00
OneAvargeCoder193
735e99826e
Make the crosshair transparent (#1347)
* make crosshair transparent

* fix styling

* fixes
2025-04-27 15:14:07 +02:00