Joca
1bcc5eae64
tools: Add ZLIBUTIL
...
Add zlibutil.cpp and zlib to the project's dependencies.
2024-03-12 22:37:09 -03:00
BodgeMaster
97b844c6d1
build system: add support for building shaders to SPIRV binaries
...
This adds the following to the project:
- glslc from Google’s shaderc
- src/shaders directory
- shaders are now built as part of the `build` command
- forcefully remove some files during the setup process and when cleaning
2024-01-07 20:07:33 +01:00
BodgeMaster
20857cb8c5
build system (setup_project): Comment out seemingly useless workarounds
2023-06-18 07:53:35 +02:00
BodgeMaster
abc5491192
Update sockpp to version 0.8.1
...
This supposedly fixes a bunch of things, we’ll see...
2023-06-18 07:01:10 +02:00
BodgeMaster
ad54f0a012
test/dumpnbt: Move expected output out of the script, also add another test
...
What was I thinking!?
2023-06-18 03:37:19 +02:00
BodgeMaster
ae71322ba1
lib/nbt: Fix #80
2023-06-18 03:17:20 +02:00
BodgeMaster
01e5f5eaac
lib/region: Start working on region file parser
...
Something is fishy with dumpnbt or lib/nbt.
Attempting to dump the extracted chunk fails, but external tools
do manage to parse it.
2023-05-29 14:47:19 +02:00
BodgeMaster
6112da2e6f
lib/game: Start working on game internals
...
Btw: I lost the game.
2023-01-27 03:32:43 +01:00
BodgeMaster
b07d6e2ff6
fossvg (client): Clean up GLFW-related code
...
- add some Vulkan-specific things to deal with GLFW
- get rid of useless warnings
- allow to set window size from the command line
The Window size is fixed for now because that will hopefully make
things easier in the strt. I intend to have a resizable window
in the future but getting things going is more important.
2023-01-27 01:20:29 +01:00
BodgeMaster
4247bd295a
fossvg (client): Commit to using Vulkan
...
I have decided that we are going to use Vulkan for this. Hopefully, it works out.
This commit removes some OpenGL-specific things and adds Vulkan to the build command line.
2023-01-27 01:20:29 +01:00
BodgeMaster
4c651d1b6f
Merge branch 'master' into cygwin
2023-01-09 21:54:23 +01:00
BodgeMaster
e152c72a04
fossvg (client): Create window
2023-01-09 20:43:49 +01:00
BodgeMaster
5d80ca801e
scripts/clean: Recreate lib/net
2023-01-09 20:38:13 +01:00
BodgeMaster
c245e8a5ca
lib/{file,javacompat,net/conversion/position,net/conversion/varint,net/packet}: pragma once
2022-12-30 15:38:33 +01:00
BodgeMaster
10d8cdae22
lib/net/{client,server,packet}: Prepare for networking
2022-12-29 03:31:56 +01:00
BodgeMaster
b08a86f0b8
resources: Add network capture of a server list ping
2022-12-29 03:28:18 +01:00
BodgeMaster
c6ec0f6850
lib/net/conversion/position: Remove misattributed author
...
Yeah, I just copied the header from somewhere else...
2022-12-27 17:34:16 +01:00
BodgeMaster
85fc73e015
lib/net/conversion/position.hpp: Add library
...
Unit tests tbd
2022-12-27 17:28:11 +01:00
BodgeMaster
d2861b79ac
lib/net/conversion/varint: move lib/varint here
2022-12-27 16:24:59 +01:00
BodgeMaster
9403da4ca0
lib/varint: Fix error handling for out of bounds access
2022-12-27 15:44:05 +01:00
BodgeMaster
ad5bf1c41a
lib/cli: Remove completely useless TODO
2022-12-20 17:06:22 +01:00
BodgeMaster
7108e71b96
lib/varint: Add toVarN() functions
2022-12-20 04:41:09 +01:00
Shwoomple
26df433dc5
lib/file: Implement cutString function
2022-12-04 09:59:28 +05:30
BodgeMaster
44716a55bb
lib/varint: Fix fromVar64 function
...
The problem was that I let the compiler assume data type widths.
`1 << 63` is a 32 bit integer on x86_64-pc-linux-gnu.
2022-11-26 14:50:02 +01:00
BodgeMaster
fe7c763d06
lib/varint: Add VarInt library
...
Minecraft uses 32-bit and 64-bit VarInt types to cut down on network usage.
This library currently contains read functions for conversion to normal integers.
Something seems to be wrong with the converter for 64-bit varints,
can’t figure out what rn.
2022-11-25 22:19:49 +01:00
BodgeMaster
d392e080ca
test/nbt_tags: Add tests for constructing invalid lists/compounds
2022-11-25 17:07:35 +01:00
BodgeMaster
60a8ac9788
lib/nbt: Make constructor NBT::Tag::Compound::Compound(name, data) private
...
The constructor has been made private and replaced with a static wrapper
function to make constructing from invalid data impossible.
If there is more than one end tag or an end tag isn’t at the end,
an error will be returned.
2022-11-25 15:52:24 +01:00
Shwoomple
bc2255de6b
lib/file: Fix issue #71 - Electric Boogaloo (Out of bounds access)
...
Add size constraint to make sure string terminates at the correct
length. Cygwin appears to not put null bytes to terminate string when
reading from a file stream.
2022-11-12 11:51:43 +05:30
Shwoomple
e627714b44
lib/file: Implement cut function.
2022-11-12 06:36:04 +01:00
Shwoomple
42b7e40f9d
lib/file:Fix issue #71 (Out of Bounds access)
2022-11-12 06:36:04 +01:00
Shwoomple
9bda607649
lib/file: Implement cut function.
2022-11-12 10:59:08 +05:30
Shwoomple
76dd30c45a
lib/file:Fix issue #71 (Out of Bounds access)
2022-11-12 10:58:27 +05:30
BodgeMaster
78880e1c20
setupenv: Fix spelling
...
Yeah, really important commit, I know.
2022-10-31 17:56:11 +01:00
BodgeMaster
1d899db889
scripts/clean: Add a link with the original file name of cygsockpp-0.dll
...
Otherwise, the dynamic linker complains that it can’t find the file.
2022-10-31 17:56:11 +01:00
BodgeMaster
3cc91ae33d
Build system: Get sockpp to build on Cygwin
...
This is probably not the last time this issue needs attention
as it *builds* on Cygwin with these workarounds, but it doesn’t *work*
on Cygwin...
2022-10-31 17:56:11 +01:00
Shwoomple
63e1749ad1
lib/file: fix cutByte filesize bug
2022-10-31 17:23:02 +01:00
Shwoomple
ea8e806366
lib/file.cpp: Implement cutByte function
2022-10-31 17:23:02 +01:00
BodgeMaster
18a9517370
Build system: Start working on Cygwin support
2022-10-30 19:39:46 +01:00
BodgeMaster
cd93f4c4c6
gitignore: Ignore endianness check on Cygwin
2022-10-30 17:19:55 +01:00
Shwoomple
f784948c3e
lib/file: fix cutByte filesize bug
2022-10-30 16:10:33 +00:00
Shwoomple
d794bce288
lib/file.cpp: Implement cutByte function
2022-10-30 16:10:33 +00:00
BodgeMaster
99c8f562d6
setupenv: Fix wrong path
2022-10-30 06:10:04 +01:00
BodgeMaster
57a86cba47
setupenv: Add workaround for LD_LIBRARY_PATH on Cygwin
2022-10-30 05:56:34 +01:00
BodgeMaster
5ff8a871ad
lib/javacompat: Make this a header library
...
Cygwin build issues were caused by lib/nbt impleicitly linking against this
2022-10-30 04:55:58 +01:00
BodgeMaster
e0994e5db8
resources/java/netty-tests: Add maven project
...
This is going to be used for figuring out how Netty operates
and whether we should just make our own version or port the
existing Netty to C++ and use it as a dependency or whether
we even need it at all.
2022-10-30 03:17:25 +01:00
BodgeMaster
80c8a46ab2
Documentation and resources: Updates and minor clean-up
2022-10-30 02:53:56 +02:00
BodgeMaster
4abb1f223c
lib/nbt: Lists can no longer be constructed from invalid sets of data
...
The constructor `NBT::Tag::List::List(tiny_utf8::string, std::vector<NBT::Tag::Generic*>)`
is now private and has a wrapper function `NBT::Tag::List::constructWithData(tiny_utf8::string, std::vector<NBT::Tag::Generic*>)`
that performs a sanity check on the data it is given.
2022-10-28 04:08:06 +02:00
BodgeMaster
4da50d3c6b
test/dumpnbt: Add unit test (fixing #63 )
2022-10-28 02:45:52 +02:00
BodgeMaster
c9b56d4d7f
tools/dumpnbt: Remove unused CLI flag
2022-10-28 02:45:25 +02:00
BodgeMaster
7bccaca7b9
fossvg and fossvgd: Add stub programs for client and server
2022-10-28 01:53:20 +02:00