Inform ran out of STORAGE?!

Help! Inform tells me that I broke the storage apparantly. My PC has plenty of storage left and I’m not sure how to increase the storage. If somebody could please help with this thank you!

Translating the Source - Inform 6 ran out of memory

The application ran your source text through the Inform 7 compiler, as usual, and it found no problems translating the source as far as a sort of intermediate-level code - a program for Inform 6, which would ordinarily then be used to make the final working IF.

Unfortunately, the program must have been too demanding for Inform 6 to handle, because it reported that one of its memory settings had been broken. These are upper limits, usually on the number of things of a particular sort which can be created, or on the amount of memory available for a given purpose.

2 Likes

I haven’t run into this issue myself, but I believe there are some workarounds for this; this chapter of Writing with Inform might help!

4 Likes

Thank you but that’s not helping because I’ve tried looking at that and typing in various stuff and nothing works. It just keeps saying the memory is exceeded. Here is my latest attempt

"Full Map" by somebody.

Use MAX_PROP_TABLE_SIZE of 60000.

Generating is a room.  "Welcome aboard commander! Go ahead and take control of your spaceship, the Shardspoint, and let's make our way back home.[paragraph break][bold type]Prompt: Check your watch[roman type]".

When play begins: now the printed name of Generating is "" ; now the right hand status line is ""; now the command prompt is "Order [turn count]: "; choose row with a final response rule of immediately restore saved game rule in the Table of Final Question Options; blank out the final question wording entry; choose row with a final response rule of immediately undo rule in the Table of Final Question Options; blank out the final question wording entry;

At 9:00 AM: say "[bold type]Generating...[roman type] [paragraph break]A crewmember approaches. He opens his mouth but upon thinking twice shuts his mouth. Another crewmember joins the room and she glares at him and gestures for him to speak. 'We have a problem.' he mutters. [paragraph break]'And that is what' you reply calmly.[paragraph break] 'We forgot how to get to get back.' he nervously replies.[paragraph break] You think aloud, 'Hmm.'" ; now the printed name of Start is ""; now the right hand status line is " "; move the player to Start, without printing a room description;
At 9:01 AM: now the printed name of Start is "Space Barracks".

chamber1 is a kind of room with the printed name "[one of][sticky random]".

chamber2 is a kind of room with the printed name "[one of][sticky random]".

chamber3 is a kind of room with the printed name "[one of][sticky random]".

chamber4 is a kind of room with the printed name "[one of][sticky random]".

chamber5 is a kind of room with the printed name "[one of][sticky random]".

A1 is west of A2. A2 is west of A3. A3 is west of A4. A4 is west of A5. A5 is west of A6. A6 is west of A7. A7 is west of A8. A8 is west of A9. A9 is west of A10. A10 is west of A1.

A11 is west of A12. A12 is west of A13. A13 is west of A14. A14 is west of A15. A15 is west of A16. A16 is west of A17. A17 is west of A18. A18 is west of A19. A19 is west of A20. A20 is west of A11.

A21 is west of A22. A22 is west of A23. A23 is west of A24. A24 is west of A25. A25 is west of A26. A26 is west of A27. A27 is west of A28. A28 is west of A29. A29 is west of A30. A30 is west of A21.

A31 is west of A32. A32 is west of A33. A33 is west of A34. A34 is west of A35. A35 is west of A36. A36 is west of A37. A37 is west of A38. A38 is west of A39. A39 is west of A40. A40 is west of A31.

A41 is west of A42. A42 is west of A43. A43 is west of A44. A44 is west of Planet Northoon. Planet Northoon is west of A46. A46 is west of A47. A47 is west of A48. A48 is west of A49. A49 is west of A50. A50 is west of A41.

A51 is west of A52. A52 is west of A53. A53 is west of A54. A54 is west of Start. Start is west of A56. A56 is west of A57. A57 is west of A58. A58 is west of A59. A59 is west of A60. A60 is west of A51.

A61 is west of A62. A62 is west of A63. A63 is west of A64. A64 is west of A65. A65 is west of A66. A66 is west of A67. A67 is west of A68. A68 is west of A69. A69 is west of A70. A70 is west of A61.

A71 is west of A72. A72 is west of A73. A73 is west of A74. A74 is west of A75. A75 is west of A76. A76 is west of A77. A77 is west of A78. A78 is west of A79. A79 is west of A80. A80 is west of A71.

A81 is west of A82. A82 is west of A83. A83 is west of A84. A84 is west of A85. A85 is west of A86. A86 is west of A87. A87 is west of A88. A88 is west of A89. A89 is west of A90. A90 is west of A81.

A91 is west of A92. A92 is west of A93. A93 is west of A94. A94 is west of A95. A95 is west of A96. A96 is west of A97. A97 is west of A98. A98 is west of A99. A99 is west of A100. A100 is west of A91.

A1 is north of A11. A11 is north of A21. A21 is north of A31. A31 is north of A41. A41 is north of A51. A51 is north of A61. A61 is north of A71. A71 is north of A81. A81 is north of A91. A91 is north of A1.

A2 is north of A12. A12 is north of A22. A22 is north of A32. A32 is north of A42. A42 is north of A52. A52 is north of A62. A62 is north of A72. A72 is north of A82. A82 is north of A92. A92 is north of A2.

A3 is north of A13. A13 is north of A23. A23 is north of A33. A33 is north of A43. A43 is north of A53. A53 is north of A63. A63 is north of A73. A73 is north of A83. A83 is north of A93. A93 is north of A3.

A4 is north of A14. A14 is north of A24. A24 is north of A34. A34 is north of A44. A44 is north of A54. A54 is north of A64. A64 is north of A74. A74 is north of A84. A84 is north of A94. A94 is north of A4.

A5 is north of A15. A15 is north of A25. A25 is north of A35. A35 is north of Planet Northoon. Planet Northoon is north of Start. Start is north of A65. A65 is north of A75. A75 is north of A85. A85 is north of A95. A95 is north of A5.

A6 is north of A16. A16 is north of A26. A26 is north of A36. A36 is north of A46. A46 is north of A56. A56 is north of A66. A62 is north of A76. A76 is north of A86. A86 is north of A96. A96 is north of A6.

A7 is north of A17. A17 is north of A27. A27 is north of A37. A7 is north of A47. A47 is north of A57. A57 is north of A67. A67 is north of A77. A77 is north of A87. A87 is north of A97. A97 is north of A7.

A8 is north of A18. A18 is north of A28. A28 is north of A38. A38 is north of A48. A48 is north of A58. A58 is north of A68. A68 is north of A78. A78 is north of A88. A88 is north of A98. A98 is north of A8.

A9 is north of A19. A19 is north of A29. A29 is north of A39. A39 is north of A49. A49 is north of A59. A59 is north of A69. A69 is north of A79. A79 is north of A89. A89 is north of A99. A99 is north of A9.

A10 is north of A20. A20 is north of A30. A30 is north of A40. A40 is north of A50. A50 is north of A60. A60 is north of A70. A70 is north of A80. A80 is north of A90. A90 is north of A100. A100 is north of A10.

B1 is west of B2. B2 is west of B3. B3 is west of B4. B4 is west of B5. B5 is west of B6. B6 is west of B7. B7 is west of B8. B8 is west of B9. B9 is west of B10. B10 is west of B1.

B11 is west of B12. B12 is west of B13. B13 is west of B14. B14 is west of B15. B15 is west of B16. B16 is west of B17. B17 is west of B18. B18 is west of B19. B19 is west of B20. B20 is west of B11.

B21 is west of B22. B22 is west of B23. B23 is west of B24. B24 is west of B25. B25 is west of B26. B26 is west of B27. B27 is west of B28. B28 is west of B29. B29 is west of B30. B30 is west of B21.

B31 is west of B32. B32 is west of B33. B33 is west of B34. B34 is west of B35. AB5 is west of B36. B36 is west of B37. B37 is west of B38. B38 is west of B39. B39 is west of B40. B40 is west of B31.

B41 is west of B42. B42 is west of B43. B43 is west of B44. B44 is west of B45. B45 is west of B46. B46 is west of B47. B47 is west of B48. B48 is west of B49. B49 is west of B50. B50 is west of B41.

B51 is west of B52. B52 is west of B53. B53 is west of B54. B54 is west of B55. B55 is west of B56. B56 is west of B57. B57 is west of B58. B58 is west of B59. B59 is west of B60. B60 is west of B51.

B61 is west of B62. B62 is west of B63. B63 is west of B64. B64 is west of B65. B65 is west of B66. B66 is west of B67. B67 is west of B68. B68 is west of B69. B69 is west of B70. B70 is west of B61.

B71 is west of B72. B72 is west of B73. B73 is west of B74. B74 is west of B75. B75 is west of B76. B76 is west of B77. B77 is west of B78. B78 is west of B79. B79 is west of B80. B80 is west of B71.

B81 is west of B82. B82 is west of B83. B83 is west of B84. B84 is west of B85. B85 is west of B86. B86 is west of B87. B87 is west of B88. B88 is west of B89. B89 is west of B90. B90 is west of B81.

B91 is west of B92. B92 is west of B93. B93 is west of B94. B94 is west of B95. B95 is west of B96. B96 is west of B97. B97 is west of B98. B98 is west of B99. B99 is west of B100. B100 is west of B91.

B1 is north of B11. B11 is north of B21. B21 is north of B31. B31 is north of B41. B41 is north of B51. B51 is north of B61. B61 is north of B71. B71 is north of B81. B81 is north of B91. B91 is north of B1.

B2 is north of B12. B12 is north of B22. B22 is north of B32. B32 is north of B42. B42 is north of B52. B52 is north of B62. B62 is north of B72. B72 is north of B82. B82 is north of B92. B92 is north of B2.

B3 is north of B13. B13 is north of B23. B23 is north of B33. B33 is north of B43. B43 is north of B53. B53 is north of B63. B63 is north of B73. B73 is north of B83. B83 is north of B93. B93 is north of B3.

B4 is north of B14. B14 is north of B24. B24 is north of B34. B34 is north of B44. B44 is north of B54. B54 is north of B64. B64 is north of B74. B74 is north of B84. B84 is north of B94. B94 is north of B4.

B5 is north of B15. B15 is north of B25. B25 is north of B35. B35 is north of B45. B45 is north of B55. B55 is north of B65. B65 is north of B75. B75 is north of B85. B85 is north of B95. B95 is north of B5.

B6 is north of B16. B16 is north of B26. B26 is north of B36. B36 is north of B46. B46 is north of B56. B56 is north of B66. B62 is north of B76. B76 is north of B86. B86 is north of B96. B96 is north of B6.

B7 is north of B17. B17 is north of B27. B27 is north of B37. B7 is north of B47. B47 is north of B57. B57 is north of B67. B67 is north of B77. B77 is north of B87. B87 is north of B97. B97 is north of B7.

B8 is north of B18. B18 is north of B28. B28 is north of B38. B38 is north of B48. B48 is north of B58. b58 is north of B68. B68 is north of B78. B78 is north of B88. B88 is north of B98. B98 is north of B8.

B9 is north of B19. B19 is north of B29. B29 is north of B39. B39 is north of B49. B49 is north of B59. B59 is north of B69. B69 is north of B79. B79 is north of B89. B89 is north of B99. B99 is north of B9.

 B10 is north of B20. B20 is north of B30. B30 is north of B40. B40 is north of B50. B50 is north of B60. B60 is north of B70. B70 is north of B80. B80 is north of B90.BA90 is north of B100.

Update

So I just kept trying different memory stuff (cause i already had a high number) and it worked. Thank you for directing me to that chapter! Also if you are wondering what game im making/why im makingit so big feel free to ask!

1 Like

You can figure out exactly which Inform 6 memory setting needs to be adjusted from the Results tab. From there click “Console” and read the text, which is the raw output of the various compilers. For your source, I see in that text

auto.inf(31578): Fatal error: The memory setting MAX_STATIC_DATA (which is 180000 at present) has been exceeded. Try running Inform again with $MAX_STATIC_DATA=<some-larger-number> on the command line.

So then I would try setting MAX_STATIC_DATA to some larger value.

5 Likes

ARGH! I’ve hit this problem! I went to the chapter @DeusIrae linked above, and tried adding these lines:

Use MAX_ZCODE_SIZE of 60000.
Use MAX_PROP_TABLE_SIZE of 50000.
Use memory economy.

but no dice. That page says to increase size "similarly for every other Inform 6 memory setting, " but it doesn’t list those, and googling them isn’t helping.

HELP!

Maybe this thread?

Thank you! I think I found it. Nervous about this happening again, though.

You have to read the error message (in the Results/Console tab) and increase the setting that it tells you to increase. Don’t just blindly flail at it.

3 Likes

I regret to say that blindly flailing at it was exactly what I was doing. But I have a handle on it now, I think, by randomly picking a number (flailing) for the problem area:
Use MAx_OBJ_PROP_COUNT of 100.
100 was a number that was more, and more was what seemed like the answer to the problem. Will this cause other problems? Who can say?

This was a very startling error message.

1 Like

For the record, I had*, for A Roiling Original,

USE MAX_OBJECTS 0f 990
USE MAX_VERBS of 860

Posting the full list would be an exercise in absurdity, but I just increased whatever the compiler said I needed to, by 5-10%. The only downside I saw was that the game compiled more slowly as I added more stuff. It felt like compile time ~ size^2, but I don’t have any details on that.

But “Had?” Why, yes … not to spam a topic I created, but I remembered this topic when I noticed the compiler got an upgrade yesterday, so this question can be moot now!

If the OP is still around, maybe this will help them streamline some of their programming. If not, hopefully anyone searching for this specific error will see that switching in the new compiler .exe will make these problems vanish.

1 Like