1303 Commits

Author SHA1 Message Date
IntegratedQuantum
cb2c7f07c3 Add a fast-path for sunlight propagation in uniform air chunks.
fixes #320, terrain generation in single-player is now ~30% faster.
2024-06-04 14:20:25 +02:00
IntegratedQuantum
9cacd64c4d Allow downscaling the resolution of the framebuffer.
fixes #99
2024-06-03 21:45:18 +02:00
IntegratedQuantum
6293db0ff8 Add mouse sensitivity setting (Till++ will be happy)
fixes #376
2024-06-03 19:53:06 +02:00
IntegratedQuantum
638de5e1df Regenerate all LODs whenever a biome was changed.
fixes #360
2024-06-03 19:18:50 +02:00
IntegratedQuantum
35f8060fd2 The StructureGenerator now generates structures in LOD2 more precisely and it also now considers structures from the chunk above it. 2024-06-02 20:40:11 +02:00
IntegratedQuantum
3a74300a43 JsonElement.get and .put can now handle Vector attributes.
fixes #430
2024-06-02 20:09:34 +02:00
OneAvargeCoder193
f339db4e69
Add ability to add stripes to biomes in the .json format (#432)
* terrain stripes

* fix

* Fixing up the code
2024-06-02 17:37:38 +02:00
IntegratedQuantum
13340d2956 Only show the invite button on the local client.
fixes #423
2024-06-02 12:24:47 +02:00
IntegratedQuantum
e8ad0a55db Transition to glMultiDrawElementsIndirect for chunk and transparent rendering.
Progress towards #429
2024-06-02 12:18:40 +02:00
IntegratedQuantum
c721169e31 Fix deadlock between server update and receive function 2024-06-01 20:42:32 +02:00
IntegratedQuantum
46fce9bd35 Fix maxImportantPacketSize to account for parts of the Ethernet header.
It was too high, causing fragmented packets and subsequent problems.

Fixes #405
2024-05-31 23:18:44 +02:00
IntegratedQuantum
8e94291f04 Add information about the client connection to the F7 menu. 2024-05-29 21:07:38 +02:00
IntegratedQuantum
ae0972c587 Prevent inviting an IP address twice, which may cause some issues.
Also fixes a memory leak of unconnected connections.
2024-05-28 19:57:13 +02:00
IntegratedQuantum
9d432fbb7b Add the invite command and allow starting/stopping time.
fixes #327
2024-05-28 16:34:31 +02:00
IntegratedQuantum
647cd924c5 Make the hotbar item slots transparent.
fixes #414
2024-05-28 15:59:51 +02:00
careeoki
b7f701caca
UI Texture Update (#406)
* Update UI textures

* Update Inventory UI textures

* Update heart textures

* New X texture

* Make Scrollbar thicker

* Revert previous commit

* Thicken creative inventory scrollbar again

* Change X again

---------

Co-authored-by: Archbirdplus <archbirdplus@gmail.com>
2024-05-28 11:21:59 +02:00
IntegratedQuantum
e696ce1185 Add time and tp command.
More progress for #327
2024-05-28 11:10:12 +02:00
IntegratedQuantum
e084709d9b Add the Command system with a simple help command.
Progress towards #327
2024-05-28 10:38:55 +02:00
IntegratedQuantum
36be82b7e8 fixes #337 2024-05-27 16:31:01 +02:00
IntegratedQuantum
a6bcab4268 Fix freeing of undefined pointer.
fixes #410
2024-05-27 16:19:27 +02:00
IntegratedQuantum
8ea482fb09 Fix some data races. 2024-05-26 20:55:00 +02:00
IntegratedQuantum
3a5b5ecdd3 Fix Ctrl+C/Ctrl+V 2024-05-26 15:14:00 +02:00
IntegratedQuantum
268b87f8b0 Use a square image for the logo, so it doesn't get squished on windows.
fixes #397
2024-05-26 14:49:41 +02:00
IntegratedQuantum
d99c9ede01 Don't open windows when typing into a text field.
fixes #392
2024-05-26 14:39:35 +02:00
IntegratedQuantum
ca37eb97d7 Use press/release actions for the break/place buttons
Fixes #391
2024-05-26 13:31:52 +02:00
IntegratedQuantum
6013b579d9 Avoid sending empty entityPosition packets. 2024-05-26 12:45:51 +02:00
IntegratedQuantum
62a5642f9c Add F7 and improve congestion control so it prioritizes resending unconfirmed packets even more.
Should fix #390
2024-05-26 12:05:55 +02:00
Weltspear
342393c408
Made deinitLogging create a copy of latest.log which is named after a calendar timestamp (#398)
* Made deinitLogging create a copy of latest.log which is named after a calendar timestamp

* Now logToFile simultaneously logs to both logFile and logFileTs

* Implement suggested changes

* Implement suggested change

---------

Co-authored-by: Weltspear <>
2024-05-26 11:54:03 +02:00
Archbirdplus
a71c4c5f16 build.zig: make release deps default on Mac 2024-05-26 09:22:28 +02:00
Archbirdplus
a851de9ed2 renderer: measure meshing time on its own 2024-05-26 09:22:07 +02:00
tillpp
82a127db1c
Qol shortcuts (#382)
* better shortcuts: no more arthritis simulator

* remove auto-format

* better shortcuts + back to menue option (without world exit tho)

* WIP exiting the world

* Requested changes

* no crash and better exit message.

* Localizers have fun translating this!
2024-05-26 09:10:28 +02:00
archbirdplus
662cbdc77a
Mac: fix goofy mouse motion (#394)
* Mac: fix goofy mouse motion

* Window.zig: indent

* Window.zig: use tabs
2024-05-26 08:36:52 +02:00
IntegratedQuantum
bd54310841 Make user disconnects more thread safe.
fixes #389
2024-05-25 15:15:32 +02:00
IntegratedQuantum
373795fa29 Properly disconnect users on timeout.
Makes #389 worse
2024-05-25 12:01:53 +02:00
IntegratedQuantum
ab8ac4e7f2 Remove the arthritis simulator game mode.
Till++ will be happy.

fixes #377
2024-05-25 10:26:49 +02:00
IntegratedQuantum
f5544a4fee Add the logo. 2024-05-24 20:54:08 +02:00
careeoki
8db5c00857
Texture Update 3 (#387)
* Update many block textures

* Update material items

* Update Chisel item
2024-05-24 20:39:32 +02:00
IntegratedQuantum
f64ba68231 Allow making stairs from more blocks.
Also removed reference to the multi_texture rotation, this should not be implemented as a rotation mode anyways.
2024-05-24 20:19:58 +02:00
IntegratedQuantum
e552a9a34a Change size of all window icons to 9×9 2024-05-24 20:08:23 +02:00
IntegratedQuantum
448f2b0f1f Use a 9-slice texture to draw a button outline.
fixes #379

Also using separate texture for the selection/pressed state of buttons and checkboxes to allow more artistic freedom.
2024-05-24 14:53:43 +02:00
IntegratedQuantum
a9c21ed93f Change the window outline to a simple border and change icons as requested in #380
fixes #380
2024-05-24 13:36:30 +02:00
IntegratedQuantum
5495c3732f Fix the chat window and hide its scrollbar when in the game.
Fixes #383
2024-05-24 13:21:45 +02:00
IntegratedQuantum
1487d7046a Flush during the handshake to reduce latency by a bit (maybe ~150 ms on average). 2024-05-24 11:20:37 +02:00
IntegratedQuantum
843512eae6 Add Congestion control to the network protocol.
Packets are now sent more evenly spaces to avoid congestion on the send buffer of the operating system.

Expensive protocols, like the chunkTransmission protocol, are now executed in parallel to avoid congestion from unpacking large chunks of data in the network thread.

And finally the base protocol now tries to estimate the available bandwidth of the connection based on data of last 1.6 seconds (sorry to the people who live on the moon, your bandwidth cannot be estimated and is set to 100000 kB/s, so you will have trouble playing with your friends on earth).

fixes #216
fixes #212
2024-05-23 18:00:17 +02:00
IntegratedQuantum
6109b117e7 Increase contrast of the game and items.
Addresses some of things discussed in #372

Also changes the resolution of the crafting button icon in the inventory. (remainder of #378)
2024-05-22 13:47:58 +02:00
IntegratedQuantum
0941e46b71 Change ItemSlot size to 32×32 instead of 24×24. Adjusted default window scale for inventories to ensure that the window has the same size on most screen resolutions.
fixes #378
2024-05-21 20:59:16 +02:00
IntegratedQuantum
f2e750ff4d Fix #375 2024-05-20 17:31:49 +02:00
IntegratedQuantum
78ed38dae0 Reduce size of player name labels 2024-05-20 16:45:29 +02:00
IntegratedQuantum
37a43db06d A couple of things:
Increase minimum render distance to 4 (3 still commonly had rendering artifacts).
Lock infinite loop detection behind a developer setting. fixes #374
Fix day night cycle. fixes #368
Properly disconnect users. fixes #370
Fix chat history. fixes #366
2024-05-20 13:33:12 +02:00
IntegratedQuantum
d1e47241aa Send player positions to the clients and fix some small bugs.
fixes #365
2024-05-19 17:46:32 +02:00