BLSE0.6

Overview

Installing and troubleshooting

On this page 7 sections

Requirements#

  • Vampire: The Masquerade – Bloodlines with the Unofficial Patch (Basic or Plus). The patch's mod loader (its "Advanced EXE") loads every .vtm file in Bin/loader; BLSE is one of them.
  • Windows.

Installing#

  1. Extract the release zip anywhere.
  2. Copy its Bin folder into the game folder (the folder that contains Vampire.exe), merging with the existing Bin.
  3. Start the game. In the console (~) type blse.

What gets installed:

Path (inside the game folder) Purpose
Bin/loader/blse.vtm The BLSE runtime
Bin/loader/blse/mods/ Mod folders: one folder per mod, with its files, Python scripts and plugins (see below)
Bin/loader/blse/blse.log The log of the current run (blse.log.old: the previous run). It stops growing at 64 MiB

BLSE creates more folders when mods need them: config/ (settings, .ini), data/ (JSON files), translations/ (text for each language), cache/ (files BLSE built from several mods' changes; safe to delete) and crash logs next to blse.log.

Installing mods that use BLSE#

Not sure where a download goes? Where mod files go shows every folder, how to recognise each kind of mod and the common mistakes.

Every mod is one folder in Bin/loader/blse/mods/ (see Mod folders below). Its Python scripts are in the folder's blse/scripts/, its plugins (.dll files) in blse/plugins/, and they load at game start. A mod's own page may name other mods it needs; a mod or plugin whose requirements are missing is not loaded, and the log says why.

Plugins are native code with the same rights as the game: only install plugins from people you trust.

Mod folders#

A mod comes as a folder (for example my_mod with models, sound, vdata, blse ... inside). Put the whole folder in Bin/loader/blse/mods/. You do not copy anything into the game's own folders and nothing is replaced, so several such mods can be installed together.

  • Order: Bin/loader/blse/config/loadorder.txt lists the mod folders. Mods are combined where they can be; where two change the same thing (a file, a line of dialogue, a value), the one further down wins. BLSE adds new folders to the end; move a line to change the order, or put - in front of a name to switch that mod off. Mods that build on other mods go below them. blse.log lists the order and every conflict.
  • A mod is off: a mod can name what it needs (a BLSE version, other mods). If something is missing, BLSE switches that mod off and says why: type blse in the console, or see blse.log. A mod that is off runs none of its scripts and loads none of its plugins.
  • Two plugins with the same file name: if two mods ship a .dll with the same name, only the one from the mod further down is loaded; the log names the other as not loaded.
  • Removing: delete the mod's folder. Keep the mod while you play a game you started with it: a save can contain items, quests or characters from it, and a save holding a new item from a removed mod makes the game crash when it loads.

Settings#

Bin/loader/blse/config/blse.ini holds BLSE's own settings. BLSE writes it on first use:

  • [Translations] has language = auto (the Windows display language); set a language name such as german to choose another.

Mods keep their own settings in config/<mod>.ini.

Uninstalling#

Delete Bin/loader/blse.vtm and the Bin/loader/blse folder. Keep a backup of your saves first: a save made with mods that store data may behave differently without them, and a save holding new items that mods added cannot be loaded without BLSE.

If something goes wrong#

  • blse does nothing in the console. BLSE did not load. Check that the Unofficial Patch is installed, that blse.vtm is in Bin/loader, and that Bin/loader/blse/blse.log exists. If there is no log, the loader never started it.
  • The log says the build is not recognized. BLSE still runs, but features that depend on exact game code switch themselves off. Report it with the log.
  • A mod does not work. Look in blse.log for lines marked [python] or with the plugin's name, and in the console for Python tracebacks.
  • The game gets slower or uses more memory after many loads. Type blse_debug in the console after each load: it writes the game's memory and how much BLSE holds (subscriptions, HUD elements, ...) to the console and blse.log. Numbers of BLSE's that grow with every load point to a mod that registers again at each load (the log also warns at 256 Python subscriptions); send the log with the report. A second "held:" line (b0.5.49) counts plugins' draw callbacks, button sounds and their vtable copies, and model animations with the models and model files they keep.
  • A plugin was disabled. The log names the plugin and where it crashed. The game keeps running without it.
  • The game crashed. The game writes crash(<date time>).log in the game folder; BLSE adds a [ BLSE ] section to it saying which mod was running. Crashes the game does not report get crash-<date>_<time>.log and a .dmp in Bin/loader/blse/. Send these with blse.log when you report a problem.
  • Updating. Copy the new Bin folder over the old one. Later versions only add to what mods use, so your mods keep working; a mod made for a newer BLSE says so in the log.