ID:1516129
 
(See the best response by Ter13.)
Code:
Nothing here but us ferrets!


Problem description:
Okay this isn't so much of a problem as a bit of curiosity that spawned when I was thinking of an easier, quick, and efficient way to handle large amounts of data (primarily a long list of stats). It then hit me--the limits. I started really getting into DM post-500 (as I was still still figuring out the interface, took a break, then jumped back in later some time after 500), and there was specific mention of "many 64k compile time limits being removed", and other limits such as 65k unique lists. But these were all older pre-500 posts, and I still remain in the dark on the specifics of these "limits" and what has been removed.

Note that, this doesn't mean I'm looking for a reason to stop being careful more for what I need to be aware of when I am programming so I don't get any nasty surprises late in the game (and making sure mine or anyone else's computer isn't crying for mercy!).

So, what limits have been removed and what limits remain in BYOND?
Best response
In response to Ter13
Ter13 wrote:
String limits have been removed at compile time

Type limits have been removed at compile time

Proc limits have been removed at compile time

Procs are limited to 64K instructions each

Procs are limited to 64K instructions each

Cache sizes support 4-byte indexes

Strings are limited to 16,777,216 at runtime

User-defined Lists are limited to 16,777,216 at runtime

/obj instances are limited to 16,777,216 at runtime

/mob instances are limited to 16,777,216 at runtime

/area instances are limited to 16,777,216 at runtime

/image instances are limited to 16,777,216 at runtime

appearances are limited to 16,777,216 at runtime

unique overlay/underlay lists are limited to 16,777,216 at runtime

Total number of frames available to DS is 64K at runtime

BYOND's limit on interface elements is effectively tied to that of windows

Garbage collection is now continuous

Background procs are no longer limited to 65K in number

user-defined Datums are limited to 16,777,216 instances

As for version numbers I don't know:

View size is limited to a total area of 5,000 tiles

Pop limit (unique tiles in DMB) should be 4-bytes now.

Map size should be limited to 1000x1000x? at compile-time.

Map size is no longer limited, but seems to crash around 1024x1024x200.

If there are any that are wrong, or missing, please correct me. We don't really have a solid list of limitations to the BYOND engine anymore.

You seriously rock!

Do you mind if I take this list and compile it and post it somewhere on the forums? That way all developers (now and in the future) will have a list of all known BYOND limitations for reference.
Not at all.
In response to Ter13
Ter13 wrote:
Not at all.

Sweet. I'll post it in "Tutorials and Snippets".
Don't forget big numbers haha