It has it's challenges.
I would say the one thing I do that helps a lot is assigning objects, npcs, and enemies all their own npc ID.
I use these across all maps and they are always the same. ( aside from npc's saying different things, chests having different items, and stores selling different stuff )
It's why one of my earliest feature requests was for more npc ID definitions. [ I've been working on this game too long. ]
But by having each object have it's own npc ID, and can reference each npc with that id and check for various things. Then, when I want an object to behave differently, I just change the ID of that object.
so the walking yeti and the thrashing yeti are actually 2 completely different npcs and if I wanted to I could easily place an already thrashing yeti on the map.
After that, I just have the npcs read hero position, and add in a couple random if statements to determine random movements so multiple enemies don't always move the exact same waya nd stack up. I learn that stacking lesson in the first tim-tim game, but mostly when I made the game tim-tim's tower where hte snakes would always become a giant stack of snakes that looked just like a single snake.
By adding random movements or direction change, the npc's become unique and all act differently.
Sounds interesting, Spoonweaver. Is the movement truly random though? How does that look on the screen?
Hello random new person.
I have posted animated gifs throughout this thread of example movements of the nature I described. Please review them for examples of how this would look on the scree, as I'm too lazy right now to make another example gif.
And as far as "truly random", if you're referring to the idea that no number generated by a computer can be 100% random and are normally based off of time, or user input, then no.
The movements are based off the random(x,y) command used in the O.H.R.Rpg.C.E.