Commit Graph

481 Commits

Author SHA1 Message Date
Lukas Rieger (Blue) 7895222816
Fix NPE when reading skull-owner uuidInts 2024-06-04 12:48:42 +02:00
Lukas Rieger (Blue) 75b562eeb1
Generalize world-ids 2024-06-03 15:40:45 +02:00
Lukas Rieger (Blue) d43c7c474f
Apply spotless foxes and a comment 2024-06-03 12:26:37 +02:00
Lukas Rieger (Blue) b5e8bf42ae
Fix update-region expanding with force-updates & chunks with broken tile-entity data can now be loaded 2024-06-03 10:17:53 +02:00
Lukas Rieger (Blue) 0cc0247930
Remove apache.commons.io and apache.commons.lang libraries 2024-05-28 21:54:14 +02:00
Lukas Rieger (Blue) e04e46fa5f
Spotless 2024-05-28 01:58:18 +02:00
Lukas Rieger (Blue) b1c75aa44a
Implement a Registry for BlockEntities 2024-05-28 01:57:35 +02:00
Lukas Rieger (Blue) a594a4bed3
comment & formatting 2024-05-22 20:58:02 +02:00
Lukas Rieger (Blue) 8455b50fc3
Fix use of implementation-specific exception 2024-05-22 16:00:54 +02:00
Lukas Rieger (Blue) 3db6833fc6
Move region-file watch service into World interface 2024-05-22 15:45:06 +02:00
Lukas Rieger (Blue) d7dd8931a5
Remove all usages of java.io.File and bad usages of Path.of() 2024-05-21 16:32:28 +02:00
Lukas Rieger (Blue) 93d8876b20
Rework StateDumper 2024-05-15 23:47:25 +02:00
Lukas Rieger (Blue) 3cd3f1d032
Switch to correct lz4 compression type 2024-05-15 01:20:46 +02:00
Lukas Rieger (Blue) 0b111463be
Apply spotless fixes 2024-05-15 00:46:37 +02:00
Lukas Rieger (Blue) b330c5d168
Improve readabillity 2024-05-15 00:45:34 +02:00
Lukas Rieger (Blue) 2029fe0a87
Add support for dimension-type directly stored in level.dat (#517) 2024-05-15 00:41:59 +02:00
Lukas Rieger (Blue) 2777846cf8
Fix max-height calculation (#535) 2024-05-15 00:01:54 +02:00
Lukas Rieger (Blue) 1b26803527
Update Caffeine, use soft values for chunk caches 2024-05-12 20:11:31 +02:00
Lukas Rieger (Blue) 909642d4c3
apply spotless fixes 2024-05-08 19:51:59 +02:00
Lukas Rieger (Blue) 05bbd2b481
Fix some more resource formatting 2024-05-08 19:37:40 +02:00
Lukas Rieger (Blue) 36c1d3f7ac
Restructure resource-extensions, fix some issues and add support for biome grass_color_modifier 2024-05-08 19:31:36 +02:00
TyBraniff a311fc1cef
Devolvement of issues #145 + missing signs (#536)
* Create cherry.json

* Create bamboo.json

* Create wall_cherry.json

* Create wall_bamboo.json

* Merging project

Merging TysFixes resource pack with main Bluemap

* Update blockColors.json

Merging TysFixes Phase3

* Merging projects

Adding everything from TysFixes Resource pack to core bluemap

* Update decorated_pot.json

* Update dragon_head.json

* Update dragon_wall_head.json
2024-05-07 16:48:22 +02:00
Lukas Rieger (Blue) 81fe41fd2b
Renderstate rewrite, and moving biomes to datapacks, mc-version and vanilla-resources and resource-extensions rewrite (wip) 2024-05-07 16:45:24 +02:00
Lukas Rieger (Blue) a6402850c9
Fix delete statements doing a full table scan 2024-04-18 15:46:45 +02:00
Lukas Rieger (Blue) 37dd18190b
Fix sqlite purgepurgeMapTilesStatement 2024-04-17 00:06:03 +02:00
Lukas Rieger (Blue) 240ca6c00e
Fix some issues with the new sql-storage implementations 2024-04-07 12:55:41 +02:00
Lukas Rieger (Blue) f66437ac83
Apply spotless fixes 2024-04-06 01:33:24 +02:00
Lukas Rieger (Blue) fdf242acdf
Rework storages to make them extensible with addons 2024-04-06 01:26:16 +02:00
Lukas Rieger (Blue) 6e8247ae3a
Tentative fix for flickering with some custom animated textures 2024-03-21 14:40:20 +01:00
Gerber Lóránt Viktor a847e247e5
Add mechanism for retrieving BlockEntity data (#524)
* Add mechanism for retrieving BlockEntity data

This commit adds a mechanism for retrieving block entity data.
Block entity data is required to support for example text on signs,
banner patterns, or mods such as Domum Ornamentum.

* Fix the coordinate-packing for block entity-loading

This commit fixes the incorrect shifting of bits when
packing the chunk-local coordinates of a block entity
into a 64-bit long for lookups.

* Change mapping type of BlockEntity lookups

This commit changes the type stored for BlockEntity
mappings from a class of the type associated with the
ID to a method reference to its constructor.

* Tidy BlockEntity mappings

This commit introduces a small functional interface
to make the type less ungodly. Also silences the warning
about referencing subclasses in the superclass, it is
fine in this case, we're just storing a reference to
the constructor.

* Add missing license headers

The license headers were missing. Oops.
2024-03-20 23:23:03 +01:00
Gerber Lóránt Viktor 10fb88df4b
Make TextureVariable references align with game behaviour (#525)
While the current implementation of reference handling in
this class was the correct way to go (only handling
texture names starting with # as references), the game is
happy to accept references without a leading hashtag, since
it just chops it off and continues on the same code path
regardless.

This commit makes the reference handling in BlueMap align
with this behaviour, potentially allowing "broken" models
to render as they do in game.

This method works for reference resolving, since if a string
passed into the texture field contains a ':' then it must be
a namespaced key, and if it contains a '/' it has to be a
resource key, because the 'minecraft' namespace is implied
in these cases. The other way around, if someone were to pass
in a string like 'oak_planks', it is safe to assume it is a
reference, since the implied resource key would be
'minecraft:oak_planks', but textures aren't at the root level
in that namespace.
2024-03-17 14:56:32 +01:00
Lukas Rieger (Blue) e9e7042aed
Fix spotless testing for root-modules 2024-03-04 13:10:00 +01:00
Lukas Rieger (Blue) aecbd23ba7
Implement animated textures 2024-02-26 01:59:28 +01:00
Lukas Rieger (Blue) 2899646adc
Swap chunk-scan direction for future stuff :) 2024-02-25 18:12:27 +01:00
Lukas Rieger (Blue) 5bb7a77fb9
Actually fix NPE when loading chunks sometimes 2024-02-24 23:51:23 +01:00
Lukas Rieger (Blue) 79ea7baba7
Fix biomes-packed array sometimes sized incorrectly 2024-02-24 13:37:02 +01:00
Lukas Rieger (Blue) 122ba83ebb
Correct content-type header and response for empty map tiles 2024-02-24 10:44:25 +01:00
Lukas Rieger (Blue) d1aba560da
Fix possible self-supression 2024-02-23 23:55:17 +01:00
Lukas Rieger (Blue) 9e8dc8e5a8
Tentative fix for heightmap data being null 2024-02-23 23:55:01 +01:00
Lukas Rieger (Blue) 2c341fc894
Apply spotless fixes 2024-02-23 21:51:29 +01:00
Lukas Rieger (Blue) 40119127ee
Pack normals into one byte instead of 4 to save space :) 2024-02-23 18:02:29 +01:00
Lukas Rieger (Blue) 6e68a8f0e0
[breaking] Switch hires tile format to prbm (modified prwm) 2024-02-23 17:32:07 +01:00
Lukas Rieger (Blue) 3a1e723a51
Improve linear region efficiency by caching the whole region-file data 2024-02-23 00:55:11 +01:00
Lukas Rieger (Blue) dbde93c9f5
Reimplement Linear region file format support 2024-02-22 23:23:56 +01:00
Lukas Rieger (Blue) ff1e38a7e1
Fix Map-Updates not working correctly 2024-02-22 12:58:57 +01:00
Lukas Rieger (Blue) cc50e05262
Use floats for model-positions instead of doubles 2024-02-09 15:30:23 +01:00
Lukas Rieger (Blue) 73a77e5e0e
Do light/cave testing before face-culling to improve performance 2024-02-08 15:26:45 +01:00
Lukas Rieger (Blue) 81e8da3b70
Fix storage performance 2024-02-08 13:18:49 +01:00
Lukas Rieger 16981f2797
Refactor World-Management and Region/Chunk-Loading (#496)
* Implement PackedIntArrayAccess

* First working render with BlueNBT

* Progress converting chunkloaders

* Core rewrite done

* WIP - Restructuring configs and world-map mapping

* WIP - Compiling and starting without exceptions :)

* Fix cave detection

* Ensure configuration backwards compatibility (resolve dimension from configured world if missing)

* Implement support for 1.16+ chunks

* Implement support for 1.15+ chunks

* Implement support for 1.13+ chunks and some fixes

* Also find worlds based on their id again in BlueMapAPI

* Improve autogenerated config names

* Implement equals for all ServerWorld implementations

* Get rid of var usage
2024-02-07 20:43:37 +01:00
Lukas Rieger (Blue) efd45658d5
Fix empty blockstates having the wrong block-properties 2024-02-03 00:59:41 +01:00