About this mod
Moving, attacking, and existing costs runes. If you reach 0 runes, you get stuck or die.
- Permissions and credits
This is a capitalism mod in the sense that souls are already a highly applicable metaphor for primitive and capital accumulation (the dark soul is literally enclosed), but also because it incentivizes actions which maximize hoarding and capital accumulation for its own sake at the expense of otherwise reasonable behavior. The mod's mechanics also bear some resemblance to real-world attempts to apply these incentives with microtransactions and in-game currencies. There are admittedly no relations of production in the mod, but if you really want you can imagine Marika extracting surplus value from you.
Half-baked metaphors aside, the mod is meant to be a fun challenge. It was created for this youtube run:
The mod design itself is a collaboration with LilAggy, starting from a basic idea and adding whatever features were possible to implement in Elden Ring. As part of this I added a ton of additional customization, playtesting and tuning the mod extensively, especially the scaling system. If you use it for content, credit/links to this mod page are appreciated.
Pro tip: start with the Lands Between Rune.
Installation
Basic installation
The mod comes with modengine2 and a launcher. In its most basic form, you can
1. Download the mod and unzip it to anywhere
2. Go into the capitalism directory and click launchmod_eldenring.bat to launch Elden Ring (it must be installed on steam, and steam must be running, and only run as admin if you marked eldenring.exe to run as admin)
3. When loading into the game, you should drain runes on actions like movement and attacks, and not be able to do anything at 0 runes
The rune logic is all managed from the dll directory, and it gets loaded from config_eldenring.toml which includes Capitalism.dll as an external dll. If the mod has been loaded, it will create Capitalism_log.txt in the dll directory, which also will include details for any initialization errors.
Most importantly, you can edit Capitalism_config.ini in the dll directory to change which actions cost runes and what the consequences are for running out. For the most part, as soon as you save the config file, the new settings will be immediately reflected in-game. Each setting is thoroughly documented in the config file, and most of it can be managed with simple true/false switches. There is also a cost scaling system, which tries to counteract Elden Ring's rune scaling curve, whose intensity is controlled by the lateGameMultiplier setting.
A few more advanced features are supported with additional setup.
Installing the rune counter overlay
If enableOverlay is true in the config, Elden Ring will start a webserver with a webpage that has a fake version of the real rune counter which is bigger and shows detailed diffs when you gain or lose runes. It is not possible to implement this in the game itself, as the game's gfx UI system is extremely difficult to extend, and imgui can't look this good. It is mainly intended for use as an OBS overlay for streamers. However, it can be used while playing the game as well.
Note that even if you don't use the custom rune counter, Elden Ring's built-in rune counter has been modified so it is capable of showing more frequent updates, rather than getting constantly stuck on target values. However, if you are using the custom rune counter, you will want to hide the built-in one. Do not cover it up, as both are translucent, and rune additions need space to appear below the custom rune counter.
By default you can access the custom rune counter at http://localhost:22777/overlay/capitalism without any additional setup while the game and mod are running. You can open this in any modern web browser. If your OBS is on a different PC from your game, you can use the gaming PC's IP address instead of localhost and enable allowRemoteAccess in settings (but beware of security caveats). Multiple instances of the overlay can be opened at once, but beware this can cause game crashes if there are many instances and very frequent rune updates.
1. First, hide the built-in rune counter. You can do this using the Minimal HUD mod's "Remove Runes Counter" download. Paste the menu folder from the HUD mod inside of the empty minimal_hud_runes_counter folder in the capitalism mod, and they should launch together when you launch the game.
2. To include the counter in streams/recordings via OBS, add the webpage as a browser source while the game is running. Set the height to 220.
Make sure the entire height is visible in your window, and that it doesn't interfere with other UI elements, as follows.
Beware that the rune tick logic is based on fromsoft's own logic, which is frame-rate dependent. The overlay tries to ratelimit it to 60fps but this will probably look bad if OBS is running at a higher refresh rate. I'd recommend not doing this.
3. If you want to be able to see the counter while you're playing, there are a few ways to go about this. One hacky way is to just play through OBS, but this adds lag. Another way if you have multiple monitors is to open the counter in a browser window just off-screen and glance at it. The most advanced way is to use an Always On Top utility so it is appears above the game. With OBS, you can use this alongside Game Capture for Elden Ring so the window is only visible to you. If Elden Ring fails to show up after a restart, switch its window name to something else and then back.
3a. First, open the rune counter in a new window in your web browser. You can use an extension like Open as Popup in Chrome to produce a window with no toolbars or address bar.
3b. Doubleclick in the browser window so it will switch to a dark gray background. This is part of the overlay webpage so it can look better standalone.
3c. Install PowerToys or a similar Always On Top utility and then activate it for the browser window. You may want to configure the options to tweak appearances, so there's no massive border for instance. All together, it should look like this when you're playing the game.
The contents of overlay_capitalism.html and overlay_capitalism.js can be edited and will be reflected in the overlay, but this is not officially supported. Caveat emptor.
Installing fog gate cost
This is only supported for Elden Ring 1.10 and 1.10.1 because these files are very annoying to edit. I do not recommend trying to merge this with other mods.
Entry for major bosses (any boss with an achievement) can be modified so that they cost a fixed amount of money to unlock the boss. To install this for Elden Ring 1.10.x only,
1. Download the Fog Cost optional download and unzip it.
2. Paste the fog_cost directory from Fog Cost into the capitalism mod directory. From the capitalism directory, when you click inside of fog_cost, you should see a regulation.bin, msg, and event. The new regulation adds entries to ActionButtonParam for the new fog prompt.
3. When launching the game, it should modify fog gates to disallow entry until payment (the prompt should be different), as well as marking bosses as encountered. Margit has a custom setup to avoid triggering Melina early but it breaks the BGM in the first encounter.
4. The exact cost can be configured with majorFogCost in the dll settings file.
Using with item+enemy randomizer
This mod can be merged into Elden Ring item+enemy randomizer, version v0.9.1 or later, which merges external_dlls accordingly. After setting up this mod by itself, you have to use "Merge other mod" in randomizer and then "Select toml file" and select the config_eldenring.toml file which is part of the capitalism mod. Then after randomizing, click "Launch Elden Ring", and it will launch with both mods. If you can't use "Launch Elden Ring" you'll have to figure out how to set up modengine manually.
Credits
This mod makes use of Pattern16, RTTIHook, PointerChain, and VxD by Dasaav. It uses mINI by metayeti for the config file. These are provided under the terms of the MIT License. It uses minhook by TsudaKageyu for some override hooks, which is available under its license. Thanks also to Pav whose Elden Ring CE table contained several invaluable offsets.
Redistribution of this mod or parts of it is not permitted.