13 Commits

Author SHA1 Message Date
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
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
OneAvargeCoder193
3d8b4f200e
Change gitignore to ignore all assets that aren't either inside assets/cubyz or assets/backgrounds/default_background.png (#1527) 2025-05-27 21:41:26 +02:00
IntegratedQuantum
5f7ccd0504 Load the settings and gui_layout files from a global directory.
For linux and mac I just use "~/.cubyz"
For windows there seems to be no consensus on where game data should be located.
Out of the commonly used locations, "~/Saved Games/Cubyz" seemed the most sane option to me.

fixes #457
2024-12-01 11:48:31 +01:00
Zachary Hall
e6fa7498c6
Game controller support (#717)
* Refactor getting X positions of buttons in preparation for not moving the window when clicking the buttons

* Initial support for controllers

* Basic controller support

* Allow runtime download of gamecontrollerdb.txt

* Add new gamepad cursor asset, and use it.

* Various improvements
Allow saving and configuring gamepad mappings
Add gamepad sensitivity, for camera only
Adjust multipliers in usage of gamepad axes
Prompt for downloading controller mappings, and allow configuration

* Refactor startup window handling so that controller settings does not duplicate code, or have to detect if startup has finished

* Clamp cursor position to window size when changing via gamepad

* Add deadzone

* Implement changes requested

* Follow more suggestions

* Use atomics

* Use orelse for oldState in Gamepads.update

* Implement requested changes

* Fix accidental removal of whitespace on two empty lines

* Fix incorrect formatting on blank line due to Vim expanding tabs to spaces

* Fix build errors.

* Change unusual orelse usage with better if expression

* Add resettable keys

* Revert "Add resettable keys"

This reverts commit 902f032ec834161dcaac97cbe596788e0110e870.

* Update controller support

* Fix things I forgot about

* Fix more things

* Implement most requested changes and change button text to be more clear

* Update controller support

* Hopefully fix format without breaking it.

* Refactor getting X positions of buttons in preparation for not moving the window when clicking the buttons

* Initial support for controllers

* Basic controller support

* Allow runtime download of gamecontrollerdb.txt

* Add new gamepad cursor asset, and use it.

* Various improvements
Allow saving and configuring gamepad mappings
Add gamepad sensitivity, for camera only
Adjust multipliers in usage of gamepad axes
Prompt for downloading controller mappings, and allow configuration

* Refactor startup window handling so that controller settings does not duplicate code, or have to detect if startup has finished

* Clamp cursor position to window size when changing via gamepad

* Add deadzone

* Implement changes requested

* Follow more suggestions

* Use atomics

* Use orelse for oldState in Gamepads.update

* Implement requested changes

* Fix build errors.

* Change unusual orelse usage with better if expression

* Add resettable keys

* Revert "Add resettable keys"

This reverts commit 902f032ec834161dcaac97cbe596788e0110e870.

* Update controller support

* Fix things I forgot about

* Fix more things

* Implement most requested changes and change button text to be more clear

* Update controller support

* Hopefully fix format without breaking it.

* Implement suggestions

* Update controller mapping downloading to be more automatic

* Fix parameter in Window.Gamepad.ControllerMappingDownloadTask.isStillNeeded

* Revert order of window opening and opening next startup window in openStartupWindow

* Only download controller mappings the first moment a controller is plugged in

* Open controller mapping download UI when actually downloading mappings, or at startup if they have started before GUI initialization but haven't finished yet.

* Don't unnecessarily try to download controller mappings at init when it will be done once the first update happens anyways.

* Implement requested changes

* Remove debugging log output

* Implement changes to download_controller_mappings.zig
2024-10-14 17:31:59 +02:00
IntegratedQuantum
b4f3dfbeca Replace json with zon in the entire game and autoamtically convert all json files when an old version is detected.
progress on #733
2024-09-29 16:28:16 +02:00
Mikael Klages
aa04731efb
Ignore user generated backgrounds in the assets/backgrounds folder. (#682)
* Ignore user generated backgrounds in the assets/backgrounds folder.

* Add back newline at end of file in .gitignore
2024-09-05 21:16:49 +02:00
IntegratedQuantum
5f9d740843 Optimize meshing using bitmasks to reduce the number of blocks that need to be sampled from the chunk.
Improves meshing time from 30s to just 8s at render distance 12
2024-06-09 15:45:00 +02:00
IntegratedQuantum
54337f17fd Add a run.sh file that automatically downloads or updates zig and runs the game.
This is a step towards #103
2023-09-26 22:06:35 +02:00
IntegratedQuantum
64f5b363a4 Rewrite the biome system (there still some smaller things left to do) 2023-06-26 17:33:15 +02:00
IntegratedQuantum
bb904828e8 Save/Load the gui layout. 2023-03-15 22:25:32 +01:00
IntegratedQuantum
055ccf88d3 Add the client-side of the handshake. 2022-09-11 16:45:34 +02:00
IntegratedQuantum
5ad35f4955 Init project and overwrite logging, so it logs to a file. 2022-08-23 23:06:35 +02:00