Hey all! If you intend to do any serious development with the baystation codebase, there's ways of doing it a lot easier than developing in maker (the byond development environment). Maker is renowned to be barely better than notepad, and in a few cases, worse. Note: VSCode does not replace the entirety of the DM developer environment! It's for the coding portion, it doesn't replace the mapping and icon parts. Big credit to Lohikar for a lot of this, he showed me many of these tricks and configurations. Why VSCode? I'll show you one of the single greatest features with a few screenshots. We're going to use the "other_connections" variable in this example, in grille.dm: That's the only two occurrences in that file, and neither are its definition (it's an inherited var). If you search the codebase for it, you'll get several different results. This example isn't particularly hard to find the definition of this particular var, but it's time wasted and time distracting you from your thought process. Now imagine if it was some much more generically named var with HUNDREDS of occurrences in the codebase? But, with a little VSCode magic and a lovely plugin which I'll get to... I can do this: Bam! There's the definition in another file! It can find the definitions for vars, macros, types, and procs. There's so much more it can do, but that's not the point of this post to go into those details. This is a neat side though if you need more convincing: https://vscodecandothat.com/ Quick Disclaimer: VSCode stands for Visual Studio Code. It's not the same thing as Visual Studio! Another Quick Disclaimer: Git does NOT mean /github/. Github is a site that uses git, the tool. They're not even close to being the same thing. You'll be using both for development. Disclaimer: This is not a howto guide for /starting/ your developing journey. This will make assumptions that you already know how to somewhat use git and github, and have a super duper basic grasp on what coding is. This is a guide aimed at people who have already gotten started and want to make things EASIER, but if you're a total code newbie, it wouldn't be a bad idea to at least get VSCode set up. Prerequisites: Grab VSCode (it's cross platform) and install it: https://code.visualstudio.com/ You need a git client. Anyways, maybe you already have a git client. Maybe you don't. Please note that some clients (especially those that ship with a GUI) may NOT be compatible with VSCode's features. Compatibility isn't a requirement, but trust me it helps. Personally, I use vanilla git with the command line (it also allows me to use the terminal feature without issue in vscode instead of a separate terminal, but again, not covered here), but if you have a client of choice, feel free to try it first. Setting up the environment: There's a few things we need to do. Obviously, first, go ahead and install vscode and your git client before you continue. Next, in order to make this work with baycode, we need to install a couple of extensions. VSCode doesn't ship with knowledge of DM code (dreammaker code), that's what the extensions are for. BYOND DM Language Support - Basically, the syntax highlighter so that you get things color coded like in the screenshots. You get that here: https://marketplace.visualstudio.com/items?itemName=gbasood.byond-dm-language-support DreamMaker Language Client - This is the bread and butter extension that enables VSCode to understand the DM Language. https://marketplace.visualstudio.com/items?itemName=platymuus.dm-langclient Recommended, Gitlens - displays information about lines of code, such as blame history and comparing old versions of files much more easily. https://marketplace.visualstudio.com/items?itemName=eamodio.gitlens Recommended, bookmarks - makes it easier when you have to do a lot of jumping around. https://marketplace.visualstudio.com/items?itemName=alefragnani.Bookmarks Recommended, Rainbow Brackets - colorizes opening and closing bracket pairs so that it's much easier to see if you have placed them correctly. https://marketplace.visualstudio.com/items?itemName=2gua.rainbow-brackets Completely optional, this is something you can worry about later. A settings synchronizer. Over time, you'll be tweaking vscode. There's a LOT of settings. Don't worry too much about them starting out. https://marketplace.visualstudio.com/items?itemName=Shan.code-settings-sync VSCode will look like this if you have extensions installed. I have extras that I use and an interface that is a bit customized, don't worry about it, just make sure you don't see any 'reload required' button like it shows below. If you see it, click it, so the extension is loaded. Setting up the repository: You'll need to clone the repository somewhere. If you're using the CLI, navigate to the directory where you want the subfolder created for baystation. Reminder, the command is 'git clone', the upstream repository is https://github.com/Baystation12/Baystation12.git Loading the repository to begin coding: In VSCode, you need to open the folder for your project: Everything you see there can be edited as long as it's code. VSCode doesn't do icons or have a map editor, you'll still going to have to use maker for that. That's it for the basic set up! Next posts will be about useful things to know about vscode, but are not needed to get started.