Gridtorio


Distributes the Gridtorio scenario by sOvr9000. You start in a single chunk with iron [item=iron-ore], coal [item=coal], stone [item=stone], and a market [entity=market]. You must sell some basic items for coins [item=coin], and then use those coins to expand to other chunks. Automate trading with markets, capture ruins of enemy bases, and discover how the world changes as you venture farther out.

Scenarios
4 months ago
1.1
2.75K
Environment

b Non-recoverable error upon purchasing new chunk

4 months ago

Great mod, unfortunately the game crashes when buying a specific chunk.

Other chunks are fine, the one that crashes on me always crashes, except when I don't have enough coins.
Not sure what stuff to provide to help with bug fixing, I'm new at this. Error message below:

The scenario level caused a non-recoverable error.
Please report this error to the scenario author.

Error while running event level::on_gui_click (ID 1)
...g/Factorio/temp/currently-playing/menu/tradeOverview.lua:116: attempt to perform arithmetic on field '?' (a nil value)
stack traceback:
...g/Factorio/temp/currently-playing/menu/tradeOverview.lua:116: in function 'refresh'
...Data/Roaming/Factorio/temp/currently-playing/control.lua:663: in function 'initMarket'
...Data/Roaming/Factorio/temp/currently-playing/control.lua:703: in function 'onChunkBought'
...Data/Roaming/Factorio/temp/currently-playing/control.lua:1024: in function 'unlockChunk'
...Data/Roaming/Factorio/temp/currently-playing/control.lua:1256: in function <...Data/Roaming/Factorio/temp/currently-playing/control.lua:1236>

4 months ago

Apparently it crashes whenever theres a shop in the purchased chunk. I have tried a total of 5 different chunks with shops, they all crash. Chunks I need to buy to get there are no problem.
I'm currently at 2 shops. Not sure how I got the 2nd one though. Might've crashed once, then worked? don't remember exactly

4 months ago
(updated 4 months ago)

Are you playing with mods that alter the recipes of vanilla items?

4 months ago

I am having the same issue. It was working fine for an extended period of time and I have unlocked 10+ markets. However, I am no longer able to purchase a chunk with a market. It also crashes when I filter the trades with the buy/sell option in the menu. I looked into the tradeOverview.refresh function. It appears that itemToGive of some of the trades are not present in the itemValues. I did not feel up to reading through the whole itemValues.lua tonight but at first glance it appear the registerAll function has errors. I have included the log dump of my itemValue table at time of the crash. I edited out most of the function references but left the registerAll in as it has errors in it. The itemValues table only has the raw materials entries in it which I assume is the issue. Hope this helps.

coal = 2.3999999999999999,
coin = 120,
["copper-ore"] = 5,
["crude-oil"] = 0.25,
exists = ((loadstring or load),
["express-loader"] = 1500,
["fast-loader"] = 600,
get = ((loadstring or load),
["iron-ore"] = 6,
loader = 250,
["raw-fish"] = 8,
registerAll = ((loadstring or load)("\27LuaR\0\1\4\8\4\8\0\25“\13\n\26\n\24\1\0\0p\1\0\0\0\0\23­\0\0\0\4\0€\3\6\2@\0E\2€\0\29\2\1\1\23\0$€FC@\0GƒÀ\6\7\0ƒ\6\27@\0\0\23@\1€FÃ@\0\3\1\0À\3\0\6\1D\1\0–\3\4\7]C\0\1A€\1\0F\3@\0‡ÃA\0]\3\1\1\23€\4€†\4B\1ÇDÂ\8„\0\1›D\0\0\23À\1€†Ä@\0Á„\2\0\7EÂ\8AÅ\2\0‡EB\0Ö„…\9D\0\1\23@\1€†\4C\1ÇDÂ\8„\0\1ÇDÃ\8Ä\4\9M€„\0bƒ\0\0ãƒú\127€\1\0F\3@\0‡ƒC\0]\3\1\1\23€\4€†\4B\1ÇDÂ\8„\0\1›D\0\0\23@\3€„\1\0ÇÄÃ\8\24\0Ä\9\23€\0€ÇDÃ\8DÄ\9\23\0\0€‡DÃ\8Ç„Ä\8Û\4\0\0\23@\0€Ç„Ä\8Ä\4\9€\4\1bƒ\0\0ãƒú\127Z€A\1\23À\0€GƒC\0U\3€\6\26€Á\6\23€\1€FÃ@\0Ã\4\0ÇCB\0\1\4\5\0–\3\4\7]C\0\1\31\0€\0FCE\0GƒÅ\6‡ÃE\0Å\3€\1Ã\3\7Å\3\0\2]ƒ€\1Í@\3ŒGÃA\0U\3€\6…\3€\2Oƒƒ\6\13A\3ŒFCF\3‡ÃA\0]ƒ\0\1[\3\0\0\23À\1€FƒF\3‡ÃA\0]ƒ\0\1[\3\0\0\23€\0€E\3€\3MC\3Œ\15A\3\2OÀ\0O\3\6‡ƒC\0•\3\0\7Pƒ\6GCB\0FC\3\4[\3\0\0\23À\0€GCB\0FC\3\4MC\3ŒOAƒ\2F\3@\0‡ƒC\0]\3\1\1\23À\5€‡AÃ\8‡„Ä\8›\4\0\0\23@\0€‡„Ä\8\4\3Ё\2†ÄF\1ÇDÂ\8\0\5€\3D€\1‡DÂ\8\24\0G\9\23@\2€†ÄF\1ÁD\7\0\6\5C\1AE\7\0\29…\0\1E\5€\3ME\5ŒOE…\3\13E\5\nD€\1bƒ\0\0ãCù\127\"‚\0\0£\2Û\127\6ÂF\1A‚\7\0†\2C\1ÁÂ\7\0‚\0\1\2H\5Å\2€\2ÍÂ\2ŒÂ\2\5\29B€\1\6ÂF\1AB\8\0†\2C\1Á‚\8\0‚\0\1ÂH\5Å\2€\2ÍÂ\2ŒÂ\2\5\29B€\1\31\0€\0$\0\0\0\4\6\0\0\0\0\0\0\0pairs\0\4\5\0\0\0\0\0\0\0game\0\4\18\0\0\0\0\0\0\0recipe_prototypes\0\4\4\0\0\0\0\0\0\0log\0\4\15\0\0\0\0\0\0\0ERROR: Recipe \0\4\17\0\0\0\0\0\0\0 does not exist.\0\3\0\0\0\0\0\0\0\0\4\12\0\0\0\0\0\0\0ingredients\0\4\7\0\0\0\0\0\0\0exists\0\4\5\0\0\0\0\0\0\0name\0\0049\0\0\0\0\0\0\0Bad order for recipes. Need to register item value for \0\4\23\0\0\0\0\0\0\0 in order to register \0\4\4\0\0\0\0\0\0\0get\0\4\7\0\0\0\0\0\0\0amount\0\4\9\0\0\0\0\0\0\0products\0\4\5\0\0\0\0\0\0\0type\0\4\6\0\0\0\0\0\0\0fluid\0\3\0\0\0\0\0@@\4\12\0\0\0\0\0\0\0probability\0\4M\0\0\0\0\0\0\0Something unexpected occurred. Calculated total value of results in recipe \0\4:\0\0\0\0\0\0\0 is not positive, or all products are already calculated.\0\4\5\0\0\0\0\0\0\0math\0\4\4\0\0\0\0\0\0\0min\0\4\7\0\0\0\0\0\0\0energy\0\3\0\0\0\0\0\0ð?\4\19\0\0\0\0\0\0\0ingredientsHasItem\0\4\20\0\0\0\0\0\0\0ingredientsHasFluid\0\4\4\0\0\0\0\0\0\0set\0\4\14\0\0\0\0\0\0\0sulfuric-acid\0\4\12\0\0\0\0\0\0\0uranium-ore\0\4\26\0\0\0\0\0\0\0used-up-uranium-fuel-cell\0\4\12\0\0\0\0\0\0\0uranium-238\0\3\0\0\0\0\0\0\20@\4\19\0\0\0\0\0\0\0space-science-pack\0\4\12\0\0\0\0\0\0\0rocket-part\0\3\0\0\0\0\0\0004@\0\0\0\0\9\0\0\0\0\0\1\8\1\6\1\1\1\2\1\4\1\0\1\3\1\7Q\0\0\0\0\0\0\0@*/AppData/Roaming/Factorio/temp/currently-playing/itemValues.lua\0­\0\0\0\25\1\0\0\26\1\0\0\26\1\0\0\26\1\0\0\26\1\0\0\27\1\0\0\27\1\0\0\27\1\0\0\29\1\0\0\29\1\0\0\30\1\0\0\30\1\0\0\30\1\0\0\30\1\0\0\30\1\0\0\30\1\0\0\"\1\0\0$\1\0\0$\1\0\0$\1\0\0$\1\0\0%\1\0\0%\1\0\0%\1\0\0%\1\0\0%\1\0\0&\1\0\0&\1\0\0&\1\0\0&\1\0\0&\1\0\0&\1\0\0&\1\0\0&\1\0\0(\1\0\0(\1\0\0(\1\0\0(\1\0\0(\1\0\0(\1\0\0$\1\0\0$\1\0\0-\1\0\0/\1\0\0/\1\0\0/\1\0\0/\1\0\0000\1\0\0000\1\0\0000\1\0\0000\1\0\0000\1\0\0001\1\0\0002\1\0\0002\1\0\0002\1\0\0003\1\0\0003\1\0\0003\1\0\0005\1\0\0007\1\0\0007\1\0\0007\1\0\0008\1\0\0008\1\0\0;\1\0\0/\1\0\0/\1\0\0>\1\0\0>\1\0\0>\1\0\0>\1\0\0>\1\0\0>\1\0\0?\1\0\0?\1\0\0?\1\0\0?\1\0\0?\1\0\0?\1\0\0@\1\0\0R\1\0\0R\1\0\0R\1\0\0R\1\0\0R\1\0\0R\1\0\0R\1\0\0R\1\0\0S\1\0\0S\1\0\0S\1\0\0S\1\0\0S\1\0\0T\1\0\0T\1\0\0T\1\0\0T\1\0\0T\1\0\0T\1\0\0T\1\0\0T\1\0\0T\1\0\0T\1\0\0U\1\0\0U\1\0\0U\1\0\0X\1\0\0X\1\0\0X\1\0\0X\1\0\0X\1\0\0Z\1\0\0Z\1\0\0Z\1\0\0Z\1\0\0[\1\0\0[\1\0\0[\1\0\0[\1\0\0^\1\0\0^\1\0\0^\1\0\0^\1\0\0_\1\0\0\1\0\0\1\0\0`\1\0\0a\1\0\0a\1\0\0c\1\0\0d\1\0\0d\1\0\0d\1\0\0d\1\0\0e\1\0\0e\1\0\0e\1\0\0h\1\0\0h\1\0\0h\1\0\0h\1\0\0h\1\0\0h\1\0\0h\1\0\0h\1\0\0h\1\0\0h\1\0\0^\1\0\0^\1\0\0\26\1\0\0\26\1\0\0n\1\0\0n\1\0\0n\1\0\0n\1\0\0n\1\0\0n\1\0\0n\1\0\0n\1\0\0n\1\0\0n\1\0\0o\1\0\0o\1\0\0o\1\0\0o\1\0\0o\1\0\0o\1\0\0o\1\0\0o\1\0\0o\1\0\0o\1\0\0p\1\0\0\29\0\0\0\5\0\0\0\0\0\0\0prot\0\1\0\0\0­\0\0\0\11\0\0\0\0\0\0\0totalValue\0\1\0\0\0­\0\0\0\12\0\0\0\0\0\0\0totalAmount\0\1\0\0\0­\0\0\0\9\0\0\0\0\0\0\0timeMult\0\1\0\0\0­\0\0\0\15\0\0\0\0\0\0\0complexityMult\0\1\0\0\0­\0\0\0\12\0\0\0\0\0\0\0resultValue\0\1\0\0\0­\0\0\0\13\0\0\0\0\0\0\0resultAmount\0\1\0\0\0­\0\0\0\n\0\0\0\0\0\0\0itemValue\0\1\0\0\0­\0\0\0\16\0\0\0\0\0\0\0(for generator)\0\4\0\0\0˜\0\0\0\12\0\0\0\0\0\0\0(for state)\0\4\0\0\0˜\0\0\0\14\0\0\0\0\0\0\0(for control)\0\4\0\0\0˜\0\0\0\2\0\0\0\0\0\0\0_\0\5\0\0\0–\0\0\0\11\0\0\0\0\0\0\0recipeName\0\5\0\0\0–\0\0\0\16\0\0\0\0\0\0\0(for generator)\0\20\0\0\0\0\0\0\12\0\0\0\0\0\0\0(for state)\0\20\0\0\0\0\0\0\14\0\0\0\0\0\0\0(for control)\0\20\0\0\0*\0\0\0\2\0\0\0\0\0\0\0_\0\21\0\0\0(\0\0\0\11\0\0\0\0\0\0\0ingredient\0\21\0\0\0(\0\0\0\16\0\0\0\0\0\0\0(for generator)\0.\0\0\0D\0\0\0\12\0\0\0\0\0\0\0(for state)\0.\0\0\0D\0\0\0\14\0\0\0\0\0\0\0(for control)\0.\0\0\0D\0\0\0\2\0\0\0\0\0\0\0_\0/\0\0\0B\0\0\0\7\0\0\0\0\0\0\0result\0/\0\0\0B\0\0\0\15\0\0\0\0\0\0\0totalAmountInc\0005\0\0\0B\0\0\0\16\0\0\0\0\0\0\0(for generator)\0{\0\0\0–\0\0\0\12\0\0\0\0\0\0\0(for state)\0{\0\0\0–\0\0\0\14\0\0\0\0\0\0\0(for control)\0{\0\0\0–\0\0\0\2\0\0\0\0\0\0\0_\0|\0\0\0”\0\0\0\7\0\0\0\0\0\0\0result\0|\0\0\0”\0\0\0\9\0\0\0\5\0\0\0\0\0\0\0_ENV\0\12\0\0\0\0\0\0\0recipeOrder\0\11\0\0\0\0\0\0\0itemValues\0\15\0\0\0\0\0\0\0timeMultiplier\0\18\0\0\0\0\0\0\0timeMultiplierMax\0\21\0\0\0\0\0\0\0complexityMultiplier\0\5\0\0\0\0\0\0\0util\0\30\0\0\0\0\0\0\0itemFluidComplexityMultiplier\0\21\0\0\0\0\0\0\0itemValueMultipliers\0",'@serialized')),
remove = ((loadstring or load),
set = ((loadstring or load),
steam = 0.001,
stone = 2,
["uranium-ore"] = 12,
water = 0,
wood = 4

4 months ago

Im playing with mods. Disabling them all and loading the save "vanilla" doesn't help though.

Modlist, just in case:
Auto Deconstruct
Automatic Train Painter
Base mod
Blueprint Shotgung
Bottleneck Lite
Chunky Chunks - Configurable Geodesic Grid
Extended Descriptions
Factorio Library
Gridtorio
Helmod
Mining Scars
Playtime
Recursive Blueprints
Remote Configuration
Simple Landfill Mining
Story Missions - [Scenario Pack]
The Blueprint Designer Lab
The Ruins Mod
Train Groups
VehicleSnap

4 months ago
(updated 4 months ago)

I am having the same issue. It was working fine for an extended period of time and I have unlocked 10+ markets. However, I am no longer able to purchase a chunk with a market. It also crashes when I filter the trades with the buy/sell option in the menu. I looked into the tradeOverview.refresh function. It appears that itemToGive of some of the trades are not present in the itemValues. I did not feel up to reading through the whole itemValues.lua tonight but at first glance it appear the registerAll function has errors. I have included the log dump of my itemValue table at time of the crash. I edited out most of the function references but left the registerAll in as it has errors in it. The itemValues table only has the raw materials entries in it which I assume is the issue. Hope this helps.

I appreciate your investigation on the issue. That's actually not the reason for the crash. itemValues has a function in it, so it cannot be saved in global. This is why control.lua puts the item value entries into global as global.itemValues, without the function. So, global.itemValues is populated correctly, and each time you load up a save, the original itemValues (which contains the function) is reset and only contains the raw materials, but that's irrelevant because the save uses global.itemValues which was calculated at the start of the game to then be reused forever. Moreover, if you run the command /item-values, it will print all calculated item values, overflowing the chat history. You can also check a specific item's value with /item-value <item>, or see help on the command with /help item-value.

The error more likely comes from other things not being cached correctly with global. I do not know exactly why you can't buy some markets yet, but I did very recently find a bug on my own where loading a save can make the trade overview filtering crash the game, even though it doesn't if you play the save all the way through without closing and reloading. This is something I'm currently fixing, and it will be released in 0.0.7.

Hopefully I can catch the bug for why market purchases still crash the game before too long. If not, I may need your help, perhaps your save specifically, to determine what weird edge case is going on. Thank you for your report! For easier communication, you can join my Gridtorio Discord server at https://discord.gg/huJY7QK6UG.

4 months ago

Im playing with mods. Disabling them all and loading the save "vanilla" doesn't help though.

I think 0.0.7 kills the bug you're experiencing. However, it is important to note that the files which run the scenario logic for an older save are not updated with the new version of the scenario. This means that you are almost certainly required to start a new save with the newest version of the scenario. Thanks for reporting these issues! This is how I can make the scenario work for everyone flawlessly, and one day extensive mod support will be a thing.

4 months ago
(updated 4 months ago)

loading a save can make the trade overview filtering crash the game, even though it doesn't if you play the save all the way through without closing and reloading.

Had the idea to purchase markets with loaded and fresh saves after reading this, I guess you beat me to it. I appreciate the speedy fix, won't have time to verify immediately though.

New response