ID:2173728
 
(See the best response by Lummox JR.)
These are the stats of my game when using 359.6 mbs of my pcs memory.
Prototypes:
obj: 492916 (3187)
mob: 497556 (290)
proc: 1540096 (1917)
str: 717855 (16196)
appearance: 1653351 (4331)
id array: 1690460 (4679)
map: 280984184 (400,400,21)
objects:
mobs: 421056 (455)
objs: 11446656 (59210)
datums: 46316 (548)
images: 11993316 (138)
lists: 529768 (10836)


Problem description:
The initial problem was lag-spikes and delay. World CPU has been optimize and averages below 20%. I've deducted the problem was the game was using too much memory. 359.6MB of memory seems like quite a lot and I need suggestions on how to minimize it.

This morning I've reduced it from 440 mb by moving around some variables and initializing a few list when needed. I can't seem to find any more variables that need this type of optimization.

So I'm referencing the memory status to know where I should look but I'm not too particular familiar with it. For instance, I have no idea how 138 images could take up 11993316 bytes of memory. And I'm not quite sure what an ID array is and how I would go about minimizing that.
Okay, ive been condensing the map filling up spaces like a jigsaw puzzle. I've received a lot of good results.
I didn't know maps usually consumes the most memory in a project
Maps usually don't, you're just using an abnormally large and/or detailed map. One thing you should worry about is eliminating empty spaces and perhaps looking into instanced loading.
Best response
Map memory is a tricky business.

First there's a static array, which takes up N bytes per cell. I believe that's currently 8 bytes per cell. Your map in that original output is large, but the memory taken up is 83 bytes per cell.

There's also the map of unique cell IDs. Each unique cell type has a specific turf type, turf appearance, and area ID. I don't believe this actually gets counted at all in the memory report.

Each turf that has overhangers (anything on it that overhangs from another loc because of large bounds), non-default vars, or animation has a data structure attached to it--only as I recall, only the vars and the structure itself are counted toward that memory report. Going by your results, it looks like you have a lot of turfs with vars set.

In general, you're always better off condensing your maps if you can. Having big empty spaces across three maps when you could stick them all on the same map is wasteful, since those extra turfs are still taking up memory in the static array.
is there a difference memory wise from
obj/var/test
//And
obj/var/test=0
No. The default var won't impact the memory used per turf, unless you set it to something like list() which has to be created in an init proc.