# V0002: A setup guide for the modern era
This is a short guide for setting up Blockland V0002 and its various mods for modern standards. This includes mod-specific things that veteran players would consider necessary for a given mod, such as setting up BAC's pack for RTB, or obtaining and installing the Wiggy Patch for TOB.
If you've already got an installation of a V0002 mod, it may still be worth reading over this guide, as it goes over a few things that may be handy to know regardless.
This guide was originally written by Bhijn (also known as deathride58). If you have any questions, comments, or anything else you'd like to contact me for, you may reach me on Telegram at t.me/garbagebhijn, on Discord via Bhijn#6295, or on IRCtoo by simply mentioning my name in the #tbmirc channel.
Anyone may copy and redistribute this guide in any form, with any amount of edits, so long as the above attribution and this notice are preserved verbatim, and a link to the original document is included if possible.
If you're reading this on the original hackmd page, you can find a table of contents to the left of this text.
As of writing (12/29/2020), this guide is considered a work-in-progress, and currently contains only what I personally consider to be the bare necessities for actually playing V0002 and its various mods.
# -1. Too Long; Won't Read
This section is a straight-to-the-point list of things (with direct links to the relevant files, most of which are hosted on Kenko's Blockland archive) you have to install to get most V0002 mods up and running in a way that mostly satisfies modern PC gaming expectations. This section contains none of the wall of texts explaining why each of these things are important.
For things listed without install instructions, you can install them by extracting them to the root of your mod installation, making sure to overwrite files when prompted.
- For all mods
- [Universal FOV fix](https://bl.kenko.dev/v0002/Add-ons/Client/universal_fovfix.cs) (Right click -> Save link as...)
- Install instructions for TOB with the Wiggy Patch installed
- Copy the .cs file into `dtb/client/Dynamic`
- Install instructions for all other mods
- Copy the .cs file into `common`
- Add the following line at the very bottom of main.cs in the mod’s root directory (the one with blockLand.exe): `exec("common/universal_fovfix.cs");`
- [RtB 1.045](https://bl.kenko.dev/v0002/Full%20Mods/RTB_v1.045.zip)
- [BAC's pack](https://bl.kenko.dev/v0002/Add-ons/RTB/bacspack_v103.zip)
- [Xmenu](https://bl.kenko.dev/v0002/Add-ons/RTB/XMenu_v1.0.zip) (Requires BAC's pack)
- [TOB 2.3](https://bl.kenko.dev/v0002/Full%20Mods/TOB_v2.3_Setup.exe)
- [TOB 2.3.1 patch](https://bl.kenko.dev/v0002/Full%20Mods/TOB_v2.31_Patch.zip)
- [Wiggy Patch](https://bl.kenko.dev/v0002/Add-ons/TBM/Server/The%20Wiggy%20Patch%201.24.zip)
- After installing, go into `dtb/client/Dynamic`, and delete `Wiggy.cs.dso`, then do the same for the `Wiggy.cs.dso` in `dtb/server/Dynamic`.
- [FlatMap crash fix](https://mega.nz/file/RYlkABaZ#1v4QXQZqBMWhxXmwakJJP5KU4p-IDt0UYRUhTi_kyck)
- [Copies of other, less popular mods, can be found listed here.](https://bl.kenko.dev/v0002/Full%20Mods/)
- Some of these mods aren't standalone. For mods that lack a `blockLand.exe`, install them over a [fresh copy of V0002.](https://bl.kenko.dev/v0002/blockland0002.zip)
- DTB in particular requires an installation of TBM2, and cannot be installed by itself.
- Further tweaks
- To set your FOV ingame, open the console (press the tilde key), and type the following: `setfov("X");` (replace X with the value you want to use). If you're using the FOV fix listed above, [here's a calculator that will tell you the exact horizontal FOV that a given value will result in](https://casualhacks.net/Source-FOV-calculator.html).
- If you've installed the FOV fix, you can set a permanent FOV by typing the following into console: `$pref::Player::defaultFov = "X";` (replace X with your desired FOV value). To apply this change, simply (re)connect to a server, tap your hold-to-zoom key (if the mod has one), or use the setfov() command detailed above.
# 0. Where's the download links/How do I install?
Kenko's Blockland archive contains pretty much everything you need to obtain, install, and run older V0002 mods. You can find it here: https://bl.kenko.dev/v0002/
Modpacks such as RTB, TOB, etc, are located under the "Full Mods" directory in the archive's "v0002" directory. Mods for those modpacks are located under "Add-ons". It's fairly self-explanatory.
Mods in the archive are distributed exactly as they were originally distributed. In most cases, modpacks can be installed by creating a new folder, and extracting the contents of the mod's zip file to that fresh folder, as most contain everything you need right out of the box. However, some modpacks, such as TBM2, require you to extract the folder over a fresh installation of V0002 (which is available in Kenko's archive as blockland0002.zip, [direct link here](https://bl.kenko.dev/v0002/blockland0002.zip)).
# 1. Prior setup before first launch
First thing's first, if you're running a widescreen monitor (or in a worst case scenario, an ultrawide monitor), you're immediately going to notice something when you set the resolution to something with a widescreen ratio. The FOV is going to be extremely narrow by modern standards. This is because, by default, Torque uses vert- scaling for FOV calculations, which further means that an FOV setting of 90 degrees is always going to be 90 horizontal degrees. And to add insult to injury, attempting to set your FOV via the prefs file will show no immediate changes when you actually boot up the game, unless you tap the hold-to-zoom key that some mods have.
So I fixed this problem myself. I made a script that fixes both of these issues by adding hor+ FOV scaling (In [FILM notation](https://www.kovaak.com/film-notation/), TGE by default uses hML scaling, while my script makes the game use 4ML3 scaling), while also making the defaultFov preference function as you'd expect it to. You can find the script that fixes these issues in Kenko's archive under `v0002/Add-ons/Client` (The download button is at the bottom right of the page when you click the file. Right click that, and hit "Save link as...") [(Direct link here. Right click -> Save link as...)](https://bl.kenko.dev/v0002/Add-ons/Client/universal_fovfix.cs). Alternatively, you can download the script directly from my MEGA drive, [available here](https://mega.nz/file/oU0zwaoT#LpODNSd2NlB6DArqwWR5uvC8Hnhhxw2YQmfiQydNT8w). You can find screenshots of the script in action [here](https://imgur.com/a/RvZv0r9).
To install this script, follow these instructions:
- TOB 2.3.1 (with the Wiggy Patch installed (or soon-to-be-installed))
- Copy the .cs file into `dtb/client/Dynamic`
- No further modifications needed
- All other mods (RTB, AIO, older versions of TOB, v0002, etc)
- Copy the .cs file into the `common` directory.
- Add the following line at the very bottom of main.cs in the mod's root directory (the one with blockLand.exe): `exec("common/universal_fovfix.cs");`
- No further modifications needed.
This script doesn't add an in-game FOV slider, so in order to change your FOV ingame, open the console, and type in `$pref::Player::defaultFov = "X";` (replacing X with the FOV value you want to use). When you load into a server, or tap your hold-to-zoom key (if the mod has one), you should see a difference. When you're setting your FOV, keep in mind that the horizontal FOV is measured to a 4:3 display when the script is installed ([Here's a calculator if you want to know exact numbers](https://casualhacks.net/Source-FOV-calculator.html)).
Alternatively, you can manually modify your prefs.cs file while the game is closed (assuming you've launched the game at least once). For RTB, you'll want to modify both `common/client/prefs.cs`, and `rtb/client/prefs.cs`. For TOB, you'll want to modify both `common/client/prefs.cs` and `tbm/client/prefs.cs`. For other mods, you'll want to look in the mod's specific folder (IE: `aioreloaded/client` for AiO), alongside the common directory. In order to change your FOV from there, you'll want to find the `$pref::Player::defaultFov =` line. Change the default FOV value in both files to the FOV you desire. When you load into a server, you should immediately notice the difference.
If you'd like to play around with FOV values ingame, you can use the `setfov("X");` command in the console (replace the X with the value you want to use). Just keep in mind that setting your FOV with this command won't save the value.
## 1.1. Further setup for RTB
This section covers further optional-but-strongly-recommended setup for RTB specifically.
First up is BAC's pack. This mod is largely considered a must-have by RTB veterans, as it contains quite a few quality-of-life tweaks (much longer editor wand + brick placement range, uncapped mover distance, and the ability to chat in the loading screen), plus some extra content (one-way bricks, extra paint and prints, 20-slot inventory, and more!).
BAC's pack is available in Kenko's archive under `v0002/Add-ons/RTB`. You'll want to download `bacspack_v103.zip` [(Direct link here)](https://bl.kenko.dev/v0002/Add-ons/RTB/bacspack_v103.zip). To install it, simply extract it into your RTB installation (making sure the `rtb` folder in the archive is merged into the `rtb` folder of your RTB installation. Same with the `common` folder). Make sure to overwrite any existing files. Once extraction is done, there's no further steps needed. Documentation for BAC's pack is included under the MANUALS directory, which should now be inside the root of your RTB folder (the folder with blockLand.exe) if you've extracted BAC's pack properly.
Another mod of note is Xmenu. This adds several features that're primarily useful for server administration, such as the bring/goto functions, mass muting, and autosaving. This mod is available in Kenko's archive under the same RTB addons folder, as `XMenu_v1.0.zip` [(Direct link here)](https://bl.kenko.dev/v0002/Add-ons/RTB/XMenu_v1.0.zip). However, do note that this copy requires BAC's pack. I remember there being a version that didn't require BAC's pack, but I'm not sure if it's lost to time or not. Either way, installation is exactly the same as BAC's pack: extract it into the root folder of your RTB install, making sure to overwrite files as prompted. Do note that the automessage feature will overlap with BAC's pack's automessage feature, but this seems to be the only compatibility issue it has. For usage instructions, see `xmenu(instructions).txt`, included in the mod's zip file.
## 1.2. Further setup for TOB 2.3
Yeah, I know. An installer makes it pretty unusual compared to other mods. When TOB 2.3 was released, there was an option of downloading it as a zip, but that unfortunately seems to be lost to time. Either way though, this section covers the optional-but-strongly-recommended setup steps for TOB specifically.
First thing's first, installing the TOB 2.3.1 patch. This is pretty simple, just download `TOB_2.31_Patch.zip` from the `v0002/Full Mods` directory of Kenko's archive [(Direct link here)](https://bl.kenko.dev/v0002/Full%20Mods/TOB_v2.31_Patch.zip), and extract the patch to the root of your TOB installation (making sure the `tbm`, `dtb`, and `common` folders all overlap, overwriting files when prompted). This patch mainly features a few bugfixes, such as fixing the CTCP exploit (an oversight that allowed arbitrary messages to be written in the server lists of individual clients), along with backports of a few exploit fixes that were previously exclusive to the Wiggy Patch. There's pretty much no reason not to install the 2.3.1 patch.
And now the interesting stuff. Installing the Wiggy Patch, which is considered a must-have by TOB veterans. The Wiggy Patch is fairly similar to RTB's Xmenu, adding features that're primarily useful for server administration, such as deleting players, teleporting players, a privilege system, a GUI for configuring gamemodes, and much more. It also adds a few features that're useful for clients, as well, such as macros, auto messages, chatting in the loading screen, and more. As a bonus, it also changes the tag that your server uses while connected to an IRC server (Vanilla TOB 2.3 clients use a tag of `[TBM2]`, while Wiggy Patch users instead have a tag of `[TOB2]`)
The Wiggy Patch is available in Kenko's archive, under `Add-ons/TBM/Server`, as `The Wiggy Patch 1.24.zip` [(Direct link here)](https://bl.kenko.dev/v0002/Add-ons/TBM/Server/The%20Wiggy%20Patch%201.24.zip). To install, extract to the root of your TOB installation (same as the above steps for installing the 2.3.1 patch), and overwrite files when prompted. After that, go into `dtb/client/Dynamic`, and delete `Wiggy.cs.dso`, then do the same for the `Wiggy.cs.dso` in `dtb/server/Dynamic`. This is to make sure that the serverlib and clientlib for the Wiggy Patch are properly recompiled, as the modified dates for both of those files will result in the engine assuming the compiled scripts are up-to-date. Once you're done with that, there's no further steps you have to take. For a feature list and basic usage instructions, see `The Wiggy Patch 1.24.txt`, included with the patch.
# 2. Troubleshooting (WIP)
TODO - Figure out if there's any common issues that people have when they try to run v0002 and it's various mods, find solutions and add here.
# 3. Unofficial mod-specific patches (WIP)
This section covers modern patches for specific mods. These mainly just fix exploits, backdoors, crashes, and otherwise annoying bugs/oversights. These are all optional, but are nice to have. If you know of any issues you'd like to be fixed, feel free to contact me, Bhijn (see header for contact info), and I'll see what I can do.
## 3.1. Unofficial patches for TOB 2.3.1 (WIP)
- [FlatMap crash fix](https://mega.nz/file/RYlkABaZ#1v4QXQZqBMWhxXmwakJJP5KU4p-IDt0UYRUhTi_kyck) - This fixes a consistent crash that regularly occurs on FlatMap by reducing the map's max draw distance to 800. This must be installed by a server's host (This crash occurs because the terrain is simply way too small for the map's draw distance of 1000, resulting in the occasional reading/writing to invalid memory regions.)
TODO - figure out wtf is going on with people managing to join servers without a join message. as funny as it is to witness a metal gear solid fanfiction get played out entirely by ghosts perpetually haunting a dead mod, the fact that these ghost players can easily crash servers is pretty annoying.
# 4. Advanced goodies for powerusers (WIP)
Things covered in this section are not recommended at all unless you really know what you're doing. These tweaks are provided without support or warranty.
TODO - clean up my irc server unlocker script for TOB, publish it here