Belt Counter 2.0


Factorio but you don't need math anymore. Updated by Alphakilo

Content
1 year, 5 months ago
2.0
2.74K
Circuit network

i Upgrade to 2.1 Factorio's version

2 months ago

Hi, have you thought about updating the mod to make it compatible with Factorio version 2.1?

a month ago
(updated a month ago)

How to Manually Update an Outdated Factorio Mod (Including Unpacking and Repacking)

If a mod hasn't been updated by its author for your current version of Factorio, you can sometimes make it compatible yourself by editing its info.json file. This only bypasses the version check—it does not fix any broken code. If the mod still crashes, you'll need to wait for an official update or fix the Lua code yourself.

Step 1: Locate the mod file

         Go to your Factorio mods folder. On Windows: %appdata%\Factorio\mods.

         Find the mod's .zip file (e.g., beltcounter2_0.1.1.zip). Make a backup copy before editing.

Step 2: Unpack the mod

         Right-click the .zip file and choose "Extract All..." (or use 7-Zip, WinRAR, etc.).

         Extract it to a temporary folder. You should see a folder named something like beltcounter2_0.1.1 containing info.json, control.lua, etc.

Step 3: Edit info.json

         Open info.json with a text editor.

         Change "factorio_version" to your current game version, e.g., "2.1".

         Update the base dependency if needed, e.g., "base >= 2.1.17".

         Save the file.

Example:
{
"name": "beltcounter2",
"version": "0.1.1",
"title": "Belt Counter 2.1",
"author": "PyroFire",
"description": "Factorio but you don't need math anymore. Updated by Alphakilo",
"factorio_version": "2.1",
"dependencies": [
"base >= 2.1.17"
],
"homepage": "https://mods.factorio.com/mod/beltcounter"
}

Step 4: Repack the mod (if you want to use it as a zip)

         Select the top-level mod folder (e.g., beltcounter2_0.1.1), not just the files inside it.

         Right-click and choose "Send to" → "Compressed (zipped) folder" (or use 7-Zip: "Add to archive...").

         Make sure the resulting zip contains the mod folder at its root: beltcounter2_0.1.1/info.json, not info.json directly at the zip root.

         Name the zip something like beltcounter2_0.1.1.zip (the name doesn't have to match exactly, but it helps).

Step 5: Install and test

         Remove or rename the original mod zip/folder from the mods directory to avoid conflicts.

         Place your repacked zip into the mods folder.

         Start Factorio, enable the mod, and check if it loads without errors.

Note: If the mod is already extracted as a folder in your mods directory, you can simply edit info.json directly—no need to unpack or repack. The zip steps are only necessary if you're working with a .zip file.

14 days ago

Thank you for your reply.
The instructions you gave were clear, but in this case it isn’t working because I’m getting the error: “Unable to load mod: ‘Error whilst loading recipe prototype “belt-combinator” (recipe): Value must be a dictionary in property tree at ROOT.recipe.belt-combinator.ingredients[0]
Modifications: Belt Counter’”

14 days ago

Hi,

Thanks for the details. I'm running Factorio 2.1.19 (experimental), and I got the mod working after a small fix.

The error you're seeing:

"Unable to load mod: 'Error whilst loading recipe prototype “belt-combinator” (recipe): Value must be a dictionary in property tree at ROOT.recipe.belt-combinator.ingredients[0] Modifications: Belt Counter'"

usually means the recipe belt-combinator is using the old ingredient syntax from Factorio 1.1. In Factorio 2.0+, ingredients (and results) must be dictionaries with type, name, and amount.

Could you confirm which version of the mod you're using? Is it version 0.1? Also, which Factorio version are you running? In the version I have, the recipe is named belt-arithmetic-combinator, not belt-combinator, so we might be using different mod versions.

To fix it, find the file that defines the belt-combinator recipe (likely data.lua or prototypes/recipe.lua). Then change the ingredients like this:

Old (won't work in 2.0+):

ingredients = {
{"iron-stick", 2},
{"iron-plate", 3}
}

New (required):

ingredients = {
{type = "item", name = "iron-stick", amount = 2},
{type = "item", name = "iron-plate", amount = 3}
}

Do the same for any results if they use the old syntax. Then save the file. If the mod is a .zip, unpack it, edit the file, and repack it so the mod folder is at the root of the zip. Always make a backup first.

After that, remove the old mod zip/folder, place the repacked one in your mods folder, and start Factorio. If other errors appear, they may be due to other 2.1 changes, but this should fix the one you're seeing now.

Let me know if that works or if you need more help.

13 days ago

You were right – I was using an old version.
Thanks for your help.

New response