diff --git a/.gitignore b/.gitignore
index 00ad69ef..34512f4a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -56,6 +56,7 @@ ssqccore.txt
# Ideally you would add
# your project here as well
+action/
AbsoluteZero/
base_pbr/
baseq2/
@@ -93,6 +94,9 @@ ship/
tf/
tf2/
tfc/
+dk/
+basedk/
+mainkp/
ts/
valve/
wastes/
diff --git a/Documentation/About.md b/Documentation/About.md
new file mode 100644
index 00000000..7da77973
--- /dev/null
+++ b/Documentation/About.md
@@ -0,0 +1,57 @@
+
+# About The Project {#about}
+
+The Nuclide project produces a freely available game-logic component and
+development platform on top of [FTEQW](https://www.fteqw.org); which is a featureful QuakeWorld-based engine.
+
+**The general idea is that Nuclide takes care of ~90% of the code you shouldn't have to worry about.**
+
+It is targetted towards developers with a background/interest in id Technology.
+
+It comes with a simple example game (simply referred to as 'Base') and some test maps. There's also some other, third-party example projects.
+
+General feature overview:
+
+- The 'missing' SDK for engines like FTEQW
+- Support for client-side predicted movement, weaponry and vehicles
+- Documented APIs for everything you need to interface with the engine
+- APIs and Frameworks for managing updates, mods, servers, and platform specific features
+- Complete re-implementations of hundreds of entities, from GoldSrc/Source engine games
+- Entity communication via traditional one-way triggers, or our Source Engine I/O compatible system
+- Includes BotLib, a framework for multiplayer-AI that can receive game-specific overrides
+- Includes VGUILib, a re-imagining of Valve's GUI library, which can also be used for in-game surface based interfaces
+- Designed to be familar to developers coming from GoldSrc/Source
+- VR/XR aware codebase
+- All permissively licensed
+
+
+# Frequently Asked Questions
+
+## 1. Why might I want to use it? {#why}
+
+You might be migrating from an engine that is no longer being licensed and don't want to learn a new engine and toolchain.
+
+You might want to develop a game using a lot of complex and well-tested objects
+which might be tedious to implement on your own.
+
+You might want to run or make modifications for a game using Nuclide and need full
+control over what you can do.
+
+## 2. How free is Nuclide? {#license}
+
+Everything in Nuclide is **free software**. The copyright terms for the game-logic are
+very permitting. Nuclide *does not use the GPL* as a point of reference in terms of license, it instead uses a **ISC-like license**. This means you can use, copy, modify and
+distribute the code and work resulting from it for any purpose.
+
+**Please read the very short 'LICENSE' document for details.**
+
+## 3. What are the alternatives? {#alternatives}
+
+Implementing systems such as prediction, complex map objects and entities on
+your own, from scratch - or licensing another engine such as [Source](https://partner.steamgames.com/doc/sdk/uploading/distributing_source_engine) that ships with its own **Source SDK Base**.
+
+## 4. Any example projects? {#examples}
+
+- [The Wastes](https://store.steampowered.com/app/793670) is a commerical game built using Nuclide.
+- [Rad-Therapy](https://www.github.com/eukara/freehl) is a clone of 'Half-Life: Deathmatch' on Nuclide.
+- [Tactical Retreat](https://www.github.com/eukara/freecs) is a clone of 'Counter-Strike', for Rad-Therapy.
diff --git a/Documentation/Decl.md b/Documentation/Decl.md
deleted file mode 100644
index ee64654b..00000000
--- a/Documentation/Decl.md
+++ /dev/null
@@ -1,6 +0,0 @@
-# Defs/Declarations {#scripting}
-
-Explanation of declaration-based subsystems within Nuclide.
-
-These usually contain key/value pair type parameters (and more, depending on the type)
-within the game. They help a great deal in managing complexity between reusable components. That way the game code can focus on everything that's not unique.
diff --git a/Documentation/DoxygenLayout.xml b/Documentation/DoxygenLayout.xml
new file mode 100644
index 00000000..268a5992
--- /dev/null
+++ b/Documentation/DoxygenLayout.xml
@@ -0,0 +1,238 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Documentation/Footer.html b/Documentation/Footer.html
new file mode 100644
index 00000000..dd08fe30
--- /dev/null
+++ b/Documentation/Footer.html
@@ -0,0 +1 @@
+Nuclide is a project by [Vera Visions, L.L.C.](https://www.vera-visions.com/)
diff --git a/Documentation/GettingStarted.md b/Documentation/GettingStarted.md
new file mode 100644
index 00000000..9b69a818
--- /dev/null
+++ b/Documentation/GettingStarted.md
@@ -0,0 +1,12 @@
+# Getting started
+
+## How to get the latest version {#how}
+
+You clone the Nuclide git repository first. There's multiple places to get it, one such place may be GitHub:
+
+`git clone https://github.com/veravisions/nuclide`
+
+You can then update the git repository as you normally would. Using `git pull` for example.
+
+And then you can [get started on building the engine and the rest of the toolchain](Building.md). Alternatively, you can also move in the official FTEQW binaries into the Nuclide directory to get started without bootstrapping your own engine + QuakeC compiler.
+C programming knowledge is not required to use Nuclide itself.
diff --git a/Documentation/History.md b/Documentation/History.md
index 7380234c..a547949b 100644
--- a/Documentation/History.md
+++ b/Documentation/History.md
@@ -29,7 +29,7 @@ A lot had been learned about prediction and taking full advantage of the
custom networking available in **FTEQW**, but new features have also been
added to the engine to take full advantage of what the content had to offer:
-Features like interacting with [OpenAL's EAX extension](EFX.md), [model-events](VVM.md), support
+Features like interacting with [OpenAL's EAX extension](@ref efx), [model-events](VVM.md), support
for WAD3 decal parsing and countless QuakeC extensions were all added by
either Spike (FTEQW Author) or eukara himself to make everything possible.
diff --git a/Documentation/ReadMe.md b/Documentation/ReadMe.md
index 45ed366f..4cd181c6 100644
--- a/Documentation/ReadMe.md
+++ b/Documentation/ReadMe.md
@@ -4,89 +4,23 @@
Welcome to the manual for **Nuclide**!
-This is a game development kit (GDK) and development environment created by [Vera Visions, L.L.C.](https://www.vera-visions.com/). We want to share it with everyone to avoid duplicate effort and in the hopes that it is useful to someone else.
+ This is a game development kit (GDK) and development environment for id Tech, using GPL QuakeWorld technology. We are sharing it in the hopes that it is useful!
-### What this project is {#what}
+[You can read more in-depth information, such as features here](About.md).
-The Nuclide project produces a freely available game-logic component and
-development platform on top of [FTEQW](https://www.fteqw.org); which is the engine we happen to use.
+## Learning Resources
-**The general idea is that Nuclide takes care of ~90% of the code you shouldn't have to worry about.**
+ [Getting Started](GettingStarted.md)
-The goal is to create a modern research base for new advancements, as well
-as to have a stable base with a decent API for making games.
+ [Guide To Decl Files](@ref decl)
-It is targetted towards developers with a background/interest in id Technology.
+ [Creating Weapons](@ref NSWeapon)
-It comes with a simple example game (simply referred to as 'Base') and some test maps. There's also some other, third-party example projects.
+ [Creating Items](@ref NSItem)
-General feature overview:
+ [Writing Game Rules](@ref NSGameRules)
-- The 'missing' SDK for engines like FTEQW
-- Support for client-side predicted movement, weaponry and vehicles
-- Documented APIs for everything you need to interface with the engine
-- APIs and Frameworks for managing updates, mods, servers, and platform specific features
-- Complete re-implementations of hundreds of entities, from GoldSrc/Source engine games
-- Entity communication via traditional one-way triggers, or our Source Engine I/O compatible system
-- Includes BotLib, a framework for multiplayer-AI that can receive game-specific overrides
-- Includes VGUILib, a re-imagining of Valve's GUI library, which can also be used for in-game surface based interfaces
-- Designed to be familar to developers coming from GoldSrc/Source
-- VR/XR aware codebase
-- All permissively licensed
-### 1. Why might I want to use it? {#why}
+## Contributing
-You might be migrating from an engine that is no longer being licensed and don't want to learn a new engine and toolchain.
-
-You might want to develop a game using a lot of complex and well-tested objects
-which might be tedious to implement on your own.
-
-You might want to run or make modifications for a game using Nuclide and need full
-control over what you can do.
-
-### 2. How free is Nuclide? {#license}
-
-Everything in Nuclide is **free software**. The copyright terms for the game-logic are
-very permitting. Nuclide *does not use the GPL* as a point of reference in terms of license, it instead uses a **ISC-like license**. This means you can use, copy, modify and
-distribute the code and work resulting from it for any purpose.
-
-**Please read the very short 'LICENSE' document for details.**
-
-### 3. What are the alternatives? {#alternatives}
-
-Implementing systems such as prediction, complex map objects and entities on
-your own, from scratch - or licensing another engine such as [Source](https://partner.steamgames.com/doc/sdk/uploading/distributing_source_engine) that ships with its own **Source SDK Base**.
-
-### 4. Any example projects? {#examples}
-
-- [The Wastes](https://store.steampowered.com/app/793670) is a commerical game built using Nuclide.
-- [FreeHL](https://www.github.com/eukara/freehl) is a free-software, clean-room clone of Half-Life: Deathmatch also built using Nuclide.
-- [FreeCS](https://www.github.com/eukara/freecs) exists in the same vein as FreeHL, but targetting a recreation of Counter-Strike v1.5 (mod version) specifically.
-
-## Getting started {#prerequisites}
-
-First of all, you want to be sure this is what you want to get into.
-If you do posess a basic knowledge of the following:
-
-- The C programming language
-- Debugging a native application
-- Makefiles
-- Compiling your own binaries
-- Concept of public and private APIs
-- QuakeC
-
-Then you will have a good time.
-We strive to keep the codebase portable and conform to open standards wherever possible.
-This means that if you develop on Windows, you probably want to install something like WSL or even [Cygwin](https://www.cygwin.com/) to make this bearable.
-
-Please don't ask us how to use WSL or Cygwin. We do not provide support for either. We do not develop on Windows! Sorry.
-
-**This is a development kit and a development environment. This is not a game.**
-
-## Actually getting started {#how}
-
-You clone the Nuclide git repository first. There's multiple places to get it, one such place may be GitHub:
-
-`git clone https://github.com/veravisions/nuclide`
-
-And then you can [get started on building the engine and the rest of the toolchain](Building.md). Alternatively, you can also move in the official FTEQW binaries into the Nuclide directory to get started without bootstrapping your own engine + QuakeC compiler.
\ No newline at end of file
+ You can contribute by filing bugs [here](https://www.github.com/veravisions/nuclide).
diff --git a/Documentation/footer.html b/Documentation/footer.html
new file mode 100644
index 00000000..5880adbf
--- /dev/null
+++ b/Documentation/footer.html
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+