Question for anyone: I'm using MO2 and this mod. During gameplay, this mod creates dozens of files in my overwrite folder [my MO2 overwrite folder]\bin\x64\plugins\cyber_engine_tweaks\mods\stocks\data\persistent, like 1733208610.lua, 1733210022.lua, etc.
Is this expected behavior or is MO2 confusing the mod and forcing it to create these files?
MO2 dumps any mod-generated files into Overwrite, so this would count as expected behavior. Everything in Overwrite takes precedence over all files in the modlist. If there are any conflicts between mod-generated files that arise within the Overwrite folder itself (there shouldn't be, but s#*! happens), the last file generated wins, i.e. it literally overwrites the previous file and the most recent mod to modify the file is the one whose version gets dumped in there.
You can drag and drop the files in Overwrite directly from the Overwrite conflict warning resolution page to the corresponding mod in the modlist if you know what mod it belongs to, and in most cases that will clear the warning, at least until another mod generates another file. Eventually, once you get your modlist sorted, stable, and settings how you want them, mods will not need to generate new files and the Overwrite folder will stay clear. Alternatively, you can just ignore the warning message, leave everything in Overwrite, and 99.9% of the time everything will work out fine.
It's important to note that any character appearance presets and other files of that nature will get put in Overwrite. Obviously you don't want to lose those, so it's important to know what MO2 is doing with them.
First time i downloaded the mod, i don't know if it works at 100%, but the window pop on pc and on the smart window if you downloaded it too, it seems like working pretty good tho, but im not sure i didn't try it
Everyone praises this mod. I wanted to do it too at first, until I realized that due to the lack of some restrictions in the mod, I got rich too quickly and lost interest in development. All you need to do is quickly organize a genocide of the police. and buy up the cheapest shares for 15-20, and when the price for them normalizes and costs 35-40, sell them. This is too much profit, given that sometimes a share cost 10, and you could sell it for 55. But I had already managed to earn too much before that. At the very least, you need a limit on the number of shares you buy, and a narrower range of price differences for cheap shares. Because of this, buying shares that cost 1000+ simply does not make sense, since they fluctuate in price by mere pennies.
I dunno, that sounds like it's working as intended for me. A perfectly cyberpunk hellscape dystopia where the masses are slaughtered just to justify stock price. The only difference is that it's you doing it instead of a CEO.
Nah even without that it is just far too exploitable. All you need to do is buy as much of the cheapest stock that is at it's lowest point in value as you can, wait/sleep for a couple hours, and sell if it went up (which it usually does) and repeat.
Consider that this is a role playing game and some people don't like their character slaughtering cops to make a buck? Yeah you can get rich by being selfish, that's how games like this go. Alternatively, just don't purposely exploit the system. Hell, you're already doing that by not just using the console commands from the CET requirement to give yourself crazy amounts of money, what makes this any different?
Patch 2.2 compatibility: ? I don't know if the mod will require to be updated, but core frameworks (CET) will In the past, the first CET updates for a new patch have been prone to be not stable and missing important features used by mods, thus I recommend waiting until all core frameworks have been fully updated.
Man I love this mod, would love to see an expansion, there’s so many other companies I see advertising while walking around that I would love to invest in, just for immersion sake.
love checking my portfolio every night and morning after heading to my hideout after a long day of missions haha
I really enjoyed this mod when I played it last year, but unfortunately, it now causes stutters and crashes. It might be conflicting with some of the other mods I have installed, but for now, I'll have to disable it because I don't know what else to do. :/
I don't know if mine is broken or if this is just totally OP once you have some decent funds. I get more than 10% returns every five minutes without doing anything. Did a few NCPD pump and dumps first, to get some capital for the regular trading, but stopped once I hit a million or so because it was a pain.... Currently have about 120 million total between stocks and cash and can easily trade for a few million per minute, but I'm money capped so why bother lol.
Cool mod!
EDIT: Oh yeah, almost certainly something was broken. I think most of the stock volatility (and thus profit potential) was from the entire market reinitializing quite often. Just checked out the console (for a different mod) and I'm getting repeated bursts of 'StockMarket OverflowReset'. I went through a few of the market persistence .lua files, and the only number that stood out as strange in them was an infinitesimal for Tsunami's "spent", something like -9e-9, along with one having a tsunamiAction of -3e-18.
Edit 2: I got bored and remembered CET mods are uncompiled lua scripts, so I decided to dig in and find the issue. getStockDelta() is returning ridiculous values for some stocks due to stockInvest (varying, I've seen over 2000) and moneySpent (around 1500 at all times). This makes the stocks go way over their maximum, causes an overflow, and resets the market.
Additionally, moneySpent seems to push the stocks affected by it up in value constantly, and the trigger doesn't decay. I played with the stock market for... a while... and have spent ludicrous amounts of money - hence a 1500 moneySpent trigger. By now these stocks overflow whenever they try to update. I decided to remove the effects of the triggers.
In modules/logic/triggerManager.lua, I changed for _, trigger in pairs(stock.triggers) do delta = delta + self.triggers[trigger.name].exportData.value * trigger.amount end to for _, trigger in pairs(stock.triggers) do local triggerValue = self.triggers[trigger.name].exportData.value * trigger.amount if trigger.name == "moneySpent" or trigger.name == "stockInvest" then triggerValue = 0 end delta = delta + triggerValue end
Since applying this change, I have not had a single market reset in multiple hours.
TLDR; The problem I had was that the value for a few of the stocks were constantly being pushed upwards, which broke the market entirely and made making money too easy. I disabled the two triggers that were causing this.
The market design includes minimum and maximum values any given stock can be worth. If a stock is out of this range after it updates, the entire stock market is reset. Resetting the market randomizes the values of all stocks (within a certain range for each). I keep the stocks I have in my portfolio when the market resets. If resets happen frequently, this totally breaks the concept of a stock market that you either have to manipulate or wait a long time for returns, and basically turns it into a free slot machine. Just buy when it randomly plummets in price and then wait for RNG to give you a good number. It meant that I could make money WAY faster than intended, sometimes up to 20% growth within literally a minute.
One of the reasons the stocks go up or down is because, on each update of the market, various 'triggers' influence the stock value. These triggers are how things like the state of various quests, police/civilian massacres and player weapon usage effect the stock market. The triggers are directly added to the stock's value in each update. Most of the triggers are scaled right and have pretty small values, so their effect is minor compared to the random movements of the stock - usually just enough to influence the general trend slightly. Unfortunately, there are two triggers that don't seem to quite work right: 'moneySpent' and 'stockInvest'.
I believe moneySpent is literally based on the sum total of all money you have spent on a character. Maybe 1/10,000 or 1/100,000 of the total you've spent? A cubic root? Not sure. The problem is that I didn't see any type of decay. I have a character with 45h of playtime and the moneySpent has reached 1500, while most of the stocks have a max of a few hundred. Whenever the market tried to update a stock that uses this trigger, the stock would go way over it's maximum and cause a market reset. Even at far lower values, this would cause infrequent resets because the stocks always went up.
I'm not sure what stockInvest is based on. I assume based on the name that how much you invest in the stock and how much it's worth have something to do with it, althought it might just be the sheer quantity of stock units bought/sold. I've purchased about 5 million worth of a stock and the next update had a 2000 stockInvest trigger added, which caused a market reset, and it was 0 the rest of the time as long as I bothered to check out. (Also, I feel like the stock price of any megacorporation worth the title shouldn't even twitch at 100 million of private equity investing or divesting.)
I was a few hours into debugging and didn't want to dig even deeper to figure out how these values were set, so I made a quick and simple fix. When the list of triggers is being processed, instead of just adding each trigger blindly, check if the name of the trigger is moneySpent or stockInvest; if it is one of them, add 0 instead of the actual value. This removes the effects of only these two triggers, leaving the stock market otherwise unchanged - still easily manipulatable via massacres and weapon usage, still totally OP in terms of profit potential, just not literally broken.
Interestingly, Corpo V in the prologue had stock market in his HUD, I wonder if you can reimplement that, but link it to your mod, probably showing the trend of company you invested in and its value going up.
So idk if anyone has the same problem but i got way to much money like 10 billion and im tryna make bezos V but bro can only hold 100 mil so its so hard to transfer more then 500 mil before the market updates maybe a 1 bil if im fast but does anyone know of a money cap remover so i can hold more then 100 mil?
idk why but this just straight up isn't working at all. I can play the game normally and my other mods load but the games acting like I straight up didnt install this mod at all. I go over to the pc and the tab for the stock market just isnt there.
fyi, i actually have been using vortex for cyberpunk mods since like 3months after cyberpunk went out (and i discovered the world of mods lol) and had never had any issue with vortex installed stock market mod. i'd double check if all the requirements are in place and if yes, try reinstalling.
596 comments
[my MO2 overwrite folder]\bin\x64\plugins\cyber_engine_tweaks\mods\stocks\data\persistent,
like 1733208610.lua, 1733210022.lua, etc.
Is this expected behavior or is MO2 confusing the mod and forcing it to create these files?
You can drag and drop the files in Overwrite directly from the Overwrite conflict warning resolution page to the corresponding mod in the modlist if you know what mod it belongs to, and in most cases that will clear the warning, at least until another mod generates another file. Eventually, once you get your modlist sorted, stable, and settings how you want them, mods will not need to generate new files and the Overwrite folder will stay clear. Alternatively, you can just ignore the warning message, leave everything in Overwrite, and 99.9% of the time everything will work out fine.
It's important to note that any character appearance presets and other files of that nature will get put in Overwrite. Obviously you don't want to lose those, so it's important to know what MO2 is doing with them.
Welcome to real life!
I don't know if the mod will require to be updated, but core frameworks (CET) will
In the past, the first CET updates for a new patch have been prone to be not stable and missing important features used by mods, thus I recommend waiting until all core frameworks have been fully updated.
love checking my portfolio every night and morning after heading to my hideout after a long day of missions haha
Cool mod!
EDIT: Oh yeah, almost certainly something was broken. I think most of the stock volatility (and thus profit potential) was from the entire market reinitializing quite often. Just checked out the console (for a different mod) and I'm getting repeated bursts of 'StockMarket OverflowReset'. I went through a few of the market persistence .lua files, and the only number that stood out as strange in them was an infinitesimal for Tsunami's "spent", something like -9e-9, along with one having a tsunamiAction of -3e-18.
Edit 2: I got bored and remembered CET mods are uncompiled lua scripts, so I decided to dig in and find the issue. getStockDelta() is returning ridiculous values for some stocks due to stockInvest (varying, I've seen over 2000) and moneySpent (around 1500 at all times). This makes the stocks go way over their maximum, causes an overflow, and resets the market.
Additionally, moneySpent seems to push the stocks affected by it up in value constantly, and the trigger doesn't decay. I played with the stock market for... a while... and have spent ludicrous amounts of money - hence a 1500 moneySpent trigger. By now these stocks overflow whenever they try to update. I decided to remove the effects of the triggers.
In modules/logic/triggerManager.lua, I changed
for _, trigger in pairs(stock.triggers) do
todelta = delta + self.triggers[trigger.name].exportData.value * trigger.amount
end
for _, trigger in pairs(stock.triggers) do
local triggerValue = self.triggers[trigger.name].exportData.value * trigger.amount
if trigger.name == "moneySpent" or trigger.name == "stockInvest" then
triggerValue = 0
end
delta = delta + triggerValue
end
Since applying this change, I have not had a single market reset in multiple hours.
The market design includes minimum and maximum values any given stock can be worth. If a stock is out of this range after it updates, the entire stock market is reset. Resetting the market randomizes the values of all stocks (within a certain range for each). I keep the stocks I have in my portfolio when the market resets. If resets happen frequently, this totally breaks the concept of a stock market that you either have to manipulate or wait a long time for returns, and basically turns it into a free slot machine. Just buy when it randomly plummets in price and then wait for RNG to give you a good number. It meant that I could make money WAY faster than intended, sometimes up to 20% growth within literally a minute.
One of the reasons the stocks go up or down is because, on each update of the market, various 'triggers' influence the stock value. These triggers are how things like the state of various quests, police/civilian massacres and player weapon usage effect the stock market. The triggers are directly added to the stock's value in each update. Most of the triggers are scaled right and have pretty small values, so their effect is minor compared to the random movements of the stock - usually just enough to influence the general trend slightly. Unfortunately, there are two triggers that don't seem to quite work right: 'moneySpent' and 'stockInvest'.
I believe moneySpent is literally based on the sum total of all money you have spent on a character. Maybe 1/10,000 or 1/100,000 of the total you've spent? A cubic root? Not sure. The problem is that I didn't see any type of decay. I have a character with 45h of playtime and the moneySpent has reached 1500, while most of the stocks have a max of a few hundred. Whenever the market tried to update a stock that uses this trigger, the stock would go way over it's maximum and cause a market reset. Even at far lower values, this would cause infrequent resets because the stocks always went up.
I'm not sure what stockInvest is based on. I assume based on the name that how much you invest in the stock and how much it's worth have something to do with it, althought it might just be the sheer quantity of stock units bought/sold. I've purchased about 5 million worth of a stock and the next update had a 2000 stockInvest trigger added, which caused a market reset, and it was 0 the rest of the time as long as I bothered to check out. (Also, I feel like the stock price of any megacorporation worth the title shouldn't even twitch at 100 million of private equity investing or divesting.)
I was a few hours into debugging and didn't want to dig even deeper to figure out how these values were set, so I made a quick and simple fix. When the list of triggers is being processed, instead of just adding each trigger blindly, check if the name of the trigger is moneySpent or stockInvest; if it is one of them, add 0 instead of the actual value. This removes the effects of only these two triggers, leaving the stock market otherwise unchanged - still easily manipulatable via massacres and weapon usage, still totally OP in terms of profit potential, just not literally broken.