Modding, the process by which a custom chart creator makes mods for a chart, is a key part of XDRV chart creation. In XDRV, mods are the easing and setting of the physical properties of game elements, including the camera, tracks, notes, and scroll speed. Mods can be found in nearly every highdiff and many lowdiffs in base-game XDRV, as they can add a lot of character and expressiveness to a chart. Some mods can also add to a chart’s difficulty by making reading more difficult. Adjacent to but distinct from the process of modding is the making of visual events. These events make lighting change and enable some special events based on a song’s specific background.
With that said, you may wonder what tools work the best for making mods for your charts? The answer to this question is that there is no “best tool.” Any interactive development environment (IDE) or text editor can hypothetically be used to create modfiles.
The first step of creating mods for a chart is setting up your file organization and metadata so that a modfile can be read by the chart. This can be done through the following steps:
In the file space where your .xdrv file, image file, and audio file are stored, create a new file with a .lua extension. This file will be your modfile. Typically, the naming convention for these files is “[CHART DIFFICULTY]_mods.lua.
DirectoryMy_Custom_Charts
DirectoryKeep_Going!_TheBlockiest
audio.ogg
HYPER.xdrv
jacket.jpg
HYPER_mods.lua
Open the .xdrv that you want to add the modfile to in Notepad++.
In the field that says MODFILE_PATH, fill in the name of the .lua file.
Now, when the chart is loaded (either on startup or upon playing the chart), the game will load any mods that are written in the .lua file, provided that they compile without error.
As stated previously, there are a number of tools you can use to code .lua modfiles. If you have a lot of experience using one IDE or code editor, especially with the Lua language, it may be optimal that you use that software. If you have no prior experience, however, some tools will be easier than others to pick up and learn.
Notepad++
If you are not interested in downloading any additional software to create IDEs, Notepad++ can be used without issue. Notepad++ automatically ships with special coloring for keywords, variables, and values, making your mods more legible. With that said, Notepad++ does not come with any debugging or automatic formatting functionality. Notepad++ is a great tool for charters with prior experience in the Lua programming language. People who lack such experience may want to consider a different tool.
Visual Studio / Visual Studio Code
Visual Studio (VS) and Visual Studio Code (VSC) are two interactive development environments that include, among many other features, a code editor. Though VSC is more lightweight, both can be used for XDRV mods. While both VS and VSC come with keyword coloring, VSC has a useful extension that provides many QoL features, including a debugger, for Lua. If you are new to programming in Lua and/or creating modfiles, using VSC with the Lua extension may be your best bet.
While the tools above can easily be used to create mods for XDRV charts, they are in no way the only tools you can use. Regardless of the software you choose, however, you still have to put in the work of coding. If you’ve never programmed before, learning to code might be a bit daunting. With that said, a lot of factors are working in your favor. Lua is a simpler language to learn, and documentation on XDRV mods is thorough.