1) Yes, there are linked lists everywhere, but unfortunately, due to the organic nature of the code, linked lists are implemented in at leastSo far, I haven't run into this issue, but thanks for letting me know, I'll keep my eyes open.
two different ways. First is a home grown implementation which I wrote
in the very beginning and second, extensive use of glib's GList.
Uhhh, yeah, I sort of wondered about that but didn't want to ask. =) I've yet to meet anybody that raved about literate programming's benefits after a multi-developer Open Source application was well underway. I'm not a fan myself, either, but I'm also not trying to change the world, just get one feature implemented. I've been writing the code on the .c side to reduce the steps in the try-compile-test-shoot that didn't work-trythis-compile-test cycle with plans to convert it to the .nw side when I was ready to submit, but if you can tolerate a .c patch that's fine by me!2) This noweb thing. noweb is/was an experiment in literate programming. Please feel free to submit patches to me against either the noweb files or .c files. For now noweb would be easier, but I can deal with .c patches as well.
I'll cut right to the chase then. A tile is nothing more than aWow, that's JUST what I was looking for to optimize the search routine. The only complexity is what you'd have with any tile-based system - if you're near the edge of a tile sometimes you have to search two (or four if near a corner). Not a big deal.
fixed size subdivision of the entire world space. The entire world space
is divided into a 10 x 10 grid. Each grid space is a tile.