From 2056c08b946d7d48659a45ab1e2c863b8a0f7d38 Mon Sep 17 00:00:00 2001 From: Rykita Date: Tue, 18 Mar 2025 19:08:48 +0100 Subject: [PATCH 1/5] Change Submodule Path to fork (Exclude from PR) --- .gitmodules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitmodules b/.gitmodules index 87d5685..cd8427d 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ [submodule "generator"] path = site - url = https://github.com/StrataSource/strata-wiki.git + url = git@github.com:Rykita/strata-wiki-ryki.git From f06ca04773e61b2ad208ae4d8e5ce25098060ef8 Mon Sep 17 00:00:00 2001 From: Rykita Date: Tue, 18 Mar 2025 19:09:40 +0100 Subject: [PATCH 2/5] Change year to 2025 --- LICENSE.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE.md b/LICENSE.md index e55bb6b..be0b2a2 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,6 +1,6 @@ # Licenses for Strata Source Wiki content -Copyright (c) 2021-2024 Strata Source Contributors +Copyright (c) 2021-2025 Strata Source Contributors - All prose content is licensed under ([CC BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/)). - All code examples and snippets are in the public domain under ([CC0](https://creativecommons.org/publicdomain/zero/1.0/)). From 0686b550f318531a2bf3a13a3047d461d77a9da8 Mon Sep 17 00:00:00 2001 From: Rykita Date: Tue, 18 Mar 2025 23:59:27 +0100 Subject: [PATCH 3/5] Fixed typo @ modding/util/vtex2 | Started work on the Community tab. --- docs/community/meta.json | 1 + docs/community/resources/meta.json | 3 + docs/community/resources/res_main.md | 3 + docs/community/tools_util/meta.json | 3 + docs/community/tools_util/tool_main.md | 138 +++++++++++++++++++++++++ docs/modding/util/vtex2.md | 2 +- 6 files changed, 149 insertions(+), 1 deletion(-) create mode 100644 docs/community/meta.json create mode 100644 docs/community/resources/meta.json create mode 100644 docs/community/resources/res_main.md create mode 100644 docs/community/tools_util/meta.json create mode 100644 docs/community/tools_util/tool_main.md diff --git a/docs/community/meta.json b/docs/community/meta.json new file mode 100644 index 0000000..14f008a --- /dev/null +++ b/docs/community/meta.json @@ -0,0 +1 @@ +{ "title": "Community/FOSS" } diff --git a/docs/community/resources/meta.json b/docs/community/resources/meta.json new file mode 100644 index 0000000..d9eab03 --- /dev/null +++ b/docs/community/resources/meta.json @@ -0,0 +1,3 @@ +{ + "title": "Community Resources" +} \ No newline at end of file diff --git a/docs/community/resources/res_main.md b/docs/community/resources/res_main.md new file mode 100644 index 0000000..7269b2f --- /dev/null +++ b/docs/community/resources/res_main.md @@ -0,0 +1,3 @@ +--- +title: Resources Main Page +--- \ No newline at end of file diff --git a/docs/community/tools_util/meta.json b/docs/community/tools_util/meta.json new file mode 100644 index 0000000..c01296f --- /dev/null +++ b/docs/community/tools_util/meta.json @@ -0,0 +1,3 @@ +{ + "title": "Community Tools & Utilities" +} \ No newline at end of file diff --git a/docs/community/tools_util/tool_main.md b/docs/community/tools_util/tool_main.md new file mode 100644 index 0000000..61e05ae --- /dev/null +++ b/docs/community/tools_util/tool_main.md @@ -0,0 +1,138 @@ +--- +title: Tools & Utilities Main Page +--- + +> [!NOTE] +> This page is non-exhaustive. If you have a suggestion for a stable/useful tool that would fit in here, create a PR for it! + +# Open Source Tools & Utilities + +This page serves as a list of open source tools & utilities to work with Strata Source (and Strata Games) with credits to respective authors and potential links to separate pages. +In addition, this is akin to a "guide", specifying when you would want to use the given tool. + + + + +--- +# TEXTURES +--- + +## vtex2 +[vtex2](modding/util/vtex2) - an open-source successor to Valve's vtex tool made by the Strata team, it comes packed with a Qt-based GUI named vtfview. + +**Use Cases:** +* Quick VTF conversion alternative to VTFEdit +* As a replacement for the original vtex. +* Native Linux alternative to VTFEdit/VTFCmd + +**Authors:** +* Strata Source Team & Contributors + +ㅤ +ㅤ +ㅤ + +## VTFEdit Reloaded +[VTFEdit Reloaded](https://developer.valvesoftware.com/wiki/VTFEdit_Reloaded) - a fork of the original VTFEdit, with some QoL and fixes (Dark Mode VMT editor, fixed cubemap previews, etc.) + +**Use Cases:** +* Anytime you want to use VTFEdit. + +**Authors:** +* Neil "Jed" Jedrzejewski +* Ryan "Nemesis" Gregg +* Fork by Skyrym and Joshua Ashton + +ㅤ +ㅤ +ㅤ + +## VTFLib + +**Use Cases:** + +**Authors:** +* Neil "Jed" Jedrzejewski +* Ryan "Nemesis" Gregg +ㅤ +ㅤ +ㅤ + +--- +# FILES +--- + +## VPKEdit + +**Use Cases:** + +**Authors:** + +ㅤ +ㅤ +ㅤ + +--- +# PROGRAMMING +--- + +## sourcepp + +**Use Cases:** + +**Authors:** +* Strata Source Team & Contributors + +ㅤ +ㅤ +ㅤ + +## datamodel-rs + +**Use Cases:** + +**Authors:** + +ㅤ +ㅤ +ㅤ + +## Source Engine VSCode Plugin + +**Use Cases:** + +**Authors:** + +ㅤ +ㅤ +ㅤ + +## MDL Library + +**Use Cases:** + +**Authors:** + +ㅤ +ㅤ +ㅤ + +## SpeedyKeyV + +**Use Cases:** + +**Authors:** + +ㅤ +ㅤ +ㅤ + +--- +# UI +--- +## Panorama Resources + +**Use Cases:** + +**Authors:** +* braem \ No newline at end of file diff --git a/docs/modding/util/vtex2.md b/docs/modding/util/vtex2.md index 0854fe0..5a666cd 100644 --- a/docs/modding/util/vtex2.md +++ b/docs/modding/util/vtex2.md @@ -6,7 +6,7 @@ title: vtex2 vtex2 is a Valve Texture Format conversion and creation tool. It has a CLI and a GUI component for viewing, packing and otherwise converting the files. -The source code is availible [here on GitHub](https://github.com/StrataSource/vtex2). +The source code is available [here on GitHub](https://github.com/StrataSource/vtex2). ## Usage From f8534ea5d581188981cab053e913d5525fc59848 Mon Sep 17 00:00:00 2001 From: Rykita Date: Wed, 19 Mar 2025 00:36:31 +0100 Subject: [PATCH 4/5] Finished up the Tool page (hopefully) --- docs/community/resources/res_main.md | 6 ++- docs/community/tools_util/tool_main.md | 58 ++++++++++++++++++-------- site | 2 +- 3 files changed, 47 insertions(+), 19 deletions(-) diff --git a/docs/community/resources/res_main.md b/docs/community/resources/res_main.md index 7269b2f..d00bb70 100644 --- a/docs/community/resources/res_main.md +++ b/docs/community/resources/res_main.md @@ -1,3 +1,7 @@ --- title: Resources Main Page ---- \ No newline at end of file +--- + + +> [!WARNING] +> # UNDER CONSTRUCTION! \ No newline at end of file diff --git a/docs/community/tools_util/tool_main.md b/docs/community/tools_util/tool_main.md index 61e05ae..b4822f7 100644 --- a/docs/community/tools_util/tool_main.md +++ b/docs/community/tools_util/tool_main.md @@ -47,26 +47,20 @@ In addition, this is akin to a "guide", specifying when you would want to use th ㅤ ㅤ -## VTFLib - -**Use Cases:** - -**Authors:** -* Neil "Jed" Jedrzejewski -* Ryan "Nemesis" Gregg -ㅤ -ㅤ -ㅤ - --- # FILES --- +[VPKEdit](https://github.com/craftablescience/VPKEdit) - CLI/GUI tool to handle multiple pack formats (creation, reading, writing) such as VPK, WAD, BMZ, BEE_PACK. + ## VPKEdit **Use Cases:** +- You want a good tool to handle package formats such as VPK +- Native Linux Support **Authors:** +* craftablescience and contributors ㅤ ㅤ @@ -78,7 +72,12 @@ In addition, this is akin to a "guide", specifying when you would want to use th ## sourcepp +[sourcepp](https://github.com/craftablescience/sourcepp) - modern open-source collection of libraries written in C++20 to parse Valve formats, with Python wrappers included. + **Use Cases:** +* You need a sane parser for most Valve file formats associated with the Source Engine. +* Something more "modern", thanks to its C++20 implementation. +* A swiss-army knife powerhouse of parsers. **Authors:** * Strata Source Team & Contributors @@ -87,41 +86,63 @@ In addition, this is akin to a "guide", specifying when you would want to use th ㅤ ㅤ -## datamodel-rs +## VTFLib -**Use Cases:** +> [!CAUTION] +> VTFLib has some "quirks" from the old days of Source and from its age. One such thing is that VTFLib cannot parse textures which's dimensions aren't power of 2, and has middling error handling. -**Authors:** +[VTFLib](https://github.com/NeilJed/VTFLib) - open-source C/C++ library meant for parsing and working with the Valve Texture Format (VTF). +The original VTFCmd and VTFEdit are part of the same repository. + +**Use Cases:** +* If you want to have a reliable, yet archaic VTF library. +* When sourcepp's vtfpp does not support a feature that VTFLib does. +**Authors:** +* Neil "Jed" Jedrzejewski +* Ryan "Nemesis" Gregg ㅤ ㅤ ㅤ -## Source Engine VSCode Plugin +## datamodel-rs + +[datamodel-rs](https://crates.io/crates/datamodel) - work-in-progress Rust library meant for serialization and deserialization of Valve's DMX format, supporting binary v1-5, KV2 and KV2_flat. **Use Cases:** +* DMX/KV2 are rather commonly used around Source 1/2 (such as the .vmap file format which is DMX binary v4, the DMX model, particle files), sourcepp only supports the Binary version of DMX, but not the ASCII encoded version of DMX (KeyValues2), as a result, if you for some reason need to support the ASCII encoded one aswell, this is the choice. +* Want to write a tool/CLI/app for DMX/KV2 files in Rust rather than C/C++ **Authors:** +* jakobg1215 ㅤ ㅤ ㅤ -## MDL Library +## Source Engine VSCode Plugin + +[Source Engine Support](https://marketplace.visualstudio.com/items?itemName=stefan-h-at.source-engine-support) - plugin for Visual Studio Code that adds support for the Source Engine file types (vmt, KV, fgd, qc, cfg, vpc, vgc, smd, fxc, fxc.h, lights.rad), additionally it can allow you to compile the .qc or subtitles files directly inside the extension. **Use Cases:** +* If you find yourself working a lot with the human-readable text-based Source formats, it is a very good option. **Authors:** - +* Stefan Heinz ㅤ ㅤ ㅤ + ## SpeedyKeyV +[SpeedyKeyV](https://github.com/ozxybox/SpeedyKeyV) - fast C++ parsing library for the KeyValues format. Nothing less, nothing more. + **Use Cases:** +* You want to parse keyvalues at a reasonably fast pace. **Authors:** +* Ozxybox ㅤ ㅤ @@ -131,8 +152,11 @@ In addition, this is akin to a "guide", specifying when you would want to use th # UI --- ## Panorama Resources +[braem's Panorama Languages Support](https://github.com/panorama-languages-support) - a collection of different utilities (such as VSCode support for Panorama's CSS3) for working with Panorama UI + **Use Cases:** +* Whenever you are working with Panorama UI **Authors:** * braem \ No newline at end of file diff --git a/site b/site index ba76ed9..2c03fc1 160000 --- a/site +++ b/site @@ -1 +1 @@ -Subproject commit ba76ed9eaa5d92207ac59bdce991e637cff06b71 +Subproject commit 2c03fc173275b3d4434f8ed728472b292af5f6df From c452eb10ea73c51a2939fd3b7f152a20f57ae244 Mon Sep 17 00:00:00 2001 From: Rykita Date: Wed, 19 Mar 2025 00:39:09 +0100 Subject: [PATCH 5/5] Undo changing submodule path. --- .gitmodules | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitmodules b/.gitmodules index cd8427d..87d5685 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ [submodule "generator"] path = site - url = git@github.com:Rykita/strata-wiki-ryki.git + url = https://github.com/StrataSource/strata-wiki.git