ID:134188
 
Is the limit for atom/movable iterations in a game still the 65k number? If so, are there any plans to try and enlarge that with the much more advanced processors we're blessed with these days?


~Polatrite~
Polatrite wrote:
atom/movable iterations

What?
In response to Kaioken
Instaces of movable items. The type that obj and mob are created from - how many are allowed in the game at a time? It used to be 65k.
In response to Polatrite
I figured, but "iteration" != "instance". And I know what atom/movable is. :P
I bet its still 65k, like well, all other limits apparently. Why don't you quickly test it though instead of posting a topic?
Also, I think there're separate limits for mobs and objs, ie you can have 60,000 objs and 60,000 mobs, IIRC.
In response to Kaioken
The topic is necessary because he's requesting a change, prefacing it with a question to make sure the request isn't redundant at this point. He could have tested it and then phrased his post differently... or not made it, as appropriate... but for people who aren't allergic to admitting there's something they don't know, this is faster.
Not happening. The reason that there's a limit of 65535 is nothing to do with the processor - it's about how memory is referenced in the BYOND VM. It uses 16 bits as an 'id number' for various objects. That gives you a limit of 65535 unique objects in each reference space. These 'id numbers' being 2 bytes long is embedded rather deeply in the BYOND VM, to the point where changing it is impossible without a lot of programming effort from someone who knows the intricate details of the VM.
In response to Hedgemistress
Hedgemistress wrote:
The topic is necessary because he's requesting a change, prefacing it with a question to make sure the request isn't redundant at this point. He could have tested it and then phrased his post differently... or not made it, as appropriate... but for people who aren't allergic to admitting there's something they don't know, this is faster.

You're amazing.
In response to Polatrite
Almost all things in DM use a 2 byte ID. They would need to make massive internal changes to this if they would like to change it. The problem is a lot of it was Dan's code and the BYOND developers don't like touching that.
In response to Xx Dark Wizard xX
Well, apparently it's very messy and difficult to understand, which is okay I suppose. I don't believe that Dan ever thought that other people would be touching the code he made on BYOND.
Polatrite wrote:
Is the limit for atom/movable iterations in a game still the 65k number? If so, are there any plans to try and enlarge that with the much more advanced processors we're blessed with these days?

Actually there are separate limits of 65535 for objs and mobs, not a specific limit for /atom/movable.

Lummox JR
In response to Lummox JR
Isn't there like one thats shared between objs and mobs or unique objs + mobs?
In response to Xx Dark Wizard xX
All objects count to one limit, all mobs count to another, all UNIQUE turfs count to one limit, and I believe areas behave the same way as turfs.
In response to CaptFalcon33035
I think there is also a unique appearances limit.
In response to CaptFalcon33035
Plus, IIRC, turfs havea 4-byte tag, which gives you about 4 billion unique turfs. And one area object can encompass multiple turfs. So you're unlikely to hit those two limits.

The most common ones to hit are the list limit, or the obj/mob limit. If you're hitting either one, you've either designed or programmed your game badly, or there's some way you can only load the mobs/objs that are needed.
In response to Jp
I hit the internal arrays one quite a few times.
In response to Jp
If you're hitting either one, you've either designed or programmed your game badly,

Yeah, pretty much. I remember when Hedgerow Hall hit the list limit waaaaay back, almost 5 years ago now. It was exceptionally bad programming on my part. It was supposed to keep one copy of a list for every type of turf in the game. Intead, it had one per turf, and everytime somebody built a burrow, it added another 41x41 lists.

In response to CaptFalcon33035
CaptFalcon33035 wrote:
All objects count to one limit, all mobs count to another, all UNIQUE turfs count to one limit, and I believe areas behave the same way as turfs.

No, turfs are fairly unique in the higher limit. Areas have the same limit that most other atoms do.

Lummox JR
In response to Jp
Jp wrote:
Plus, IIRC, turfs havea 4-byte tag, which gives you about 4 billion unique turfs. And one area object can encompass multiple turfs. So you're unlikely to hit those two limits.

The most common ones to hit are the list limit, or the obj/mob limit. If you're hitting either one, you've either designed or programmed your game badly, or there's some way you can only load the mobs/objs that are needed.

I'm a 6 year BYOND veteran with a number of highly successful completed projects. Not some noob who can't program. I want to know what the capabilities are as I look to the future of my own development ideas, and sometimes cutting corners to eliminate mobs/objs at runtime (via dynamic loading and unloading) is not a preferred solution, or really even feasable.

I'm looking to see what kind of enhanced capabilities I can expect without deprecating the program's ability to live up to it's purpose.


~Polatrite~