Please create an account or Login! Have fun!

Editing Data Size Glitch

Jump to navigation Jump to search
You are not logged in. While you can edit without logging in, your IP address will be recorded publicly, along with the time and date, in this page's history. It is sometimes possible for others to identify you with this information. Creating an account will conceal your IP address and provide you with many other benefits. Messages sent to your IP can be viewed on your talk page.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
The '''Data Size Glitch''' is an [[Glitch|error]] in [[Microsoft's version of Chip's Challenge]] which occurs when the size of a level's data in memory exceeds an internal limit of the program. This glitch causes MSCC to terminate abnormally when the level is accessed in certain ways ''(listed below)'', although in other cases the level can be played as usual. [[Tile World]] does not suffer from this glitch.
The '''Data Size Glitch''' is an [[Glitch|error]] in [[Microsoft's version of Chip's Challenge]], which occurs when the size of a level's data in memory exceeds an internal limit of the program. This glitch causes MSCC to terminate abnormally when the level is accessed in certain ways ''(listed below)'', although in other cases the level can be played as usual. [[Tile World]] does not suffer from this glitch.


==Occurrences==
==Occurrences==
The glitch is triggered when the level is entered in the following ways:
The glitch is triggered when the level is entered in the following ways:-
*Using '''Ctrl+P''' / '''Ctrl+N''' to navigate to that level from the next / previous level
*Using '''Ctrl+P''' / '''Ctrl+N''' to navigate to that level from the next / previous level
*When starting the program with the Current Level as that level. This includes the case when the program is started for the purpose of playtesting a level from a [[level editor]].
*When starting the program with the Current Level as that level. This includes the case when the program is started for the purpose of [[playtesting]] a level from a [[Level editor|level editor]].


The glitch can be avoided by accessing the level in other ways:
The glitch can be avoid by accessing the level in other ways:-
*Completing the previous level
*Completing the previous level
*Jumping to the level using '''Go To...'''
*Jumping to the level using '''Go To...'''


==Calculations==
==Calculations==
The error occurs when the size of a level's "non-map" data exceeds 544 bytes. Non-map data includes everything other than the data that specifies the tiles constituting the two layers of the map. It can be calculated as follows:
The error occurs when the size of a level's "non-map" data exceeds 544 bytes. Non-map data includes everything other than the data that specifies the tiles constituting the two layers of the map. It can be calculated as follows:-
#title size = length of title + 3
#title size = length of title + 3
#password size = 7
#password size = 7
Line 18: Line 18:
#clone machine connections list size = number of connections * 8 + 2, 0 if none
#clone machine connections list size = number of connections * 8 + 2, 0 if none
#monster list size = number of monsters * 2 + 2, 0 if none
#monster list size = number of monsters * 2 + 2, 0 if none
''(The above information was originally posted by [[ccexplore]] at the Chip's Challenge newsgroup, but that post has since been archived.)''
''(The above information was originally posted by [[ccexplore]] at the Chip's Challenge [[newsgroup]], but that post has since been archived.)''


==Fixes==
==Fixes==
Unlike the [[Termination Glitch]], there is no utility or patch available to fix the glitch. Hence, the only way to ensure that it does not occur is to modify an offending level so that its data size is brought within limits. Changes that can be done without severely altering the level are:
Unlike the [[Termination Glitch]], there is no utility or patch available to fix the glitch. Hence, the only way to ensure that it does not occur is to modify an offending level so that its data size is brought within limits. Changes that can be done without severely altering the level are:-
*Rewrite the [[hint]] in a fewer number of characters. Note that in any case, MSCC will not display hints that don't fit into the Hint pane.
*Rewrite the [[Hint|hint]] in a fewer number of characters. Note that in any case, MSCC will not display hints that don't fit into the Hint pane.
*Remove monsters that cannot move from the [[monster list]] by marking them as "stationary". This includes monsters on [[clone machine]]s and unconnected [[trap]]s.
*Remove monsters that cannot move from the [[Monster list|monster list]] by marking them as "stationary". This includes monsters on [[Clone machine|clone machines]] and unconnected [[Trap|traps]].
*Use a shorter level name.
*Use a shorter level name.


[[Category:Glitches]]
[[Category:Glitches]]
Please note that all contributions to Chip's Challenge Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Chip's Challenge Wiki:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)
Your changes will be visible immediately.
  • If you want to test editing, try the sandbox.
  • On talk pages, please sign your posts by typing four tildes (~~~~).