No, I never did get into any instances. Basically, the server doesn't know what to do. As I said, on the real servers, the instances are actually on a whole different computer. It's an entire engine that does not exist in shock. Think quests, npcs, mobs, stats, loot tables, bosses, etc. What needs to be done is a new, separate "world instance" has to be created for each player that is in a dungeon. at least, that's the way I see it. They need to be created on entry, and destroyed when reset. Additionally, players in a party all get transported to the instance of the party leader; not their own. If all you wanted to do was get into BoL or something, you could define the worldspace and add a teleportal to it. However, that would not be enough because there would only be one copy of it. (Imagine 50 people in a 5-man dungeon... Lot's of wtfs all around.) For true instancing to work, each player has to have their own personal copy of the dungeon that is separate from everyone else's. That's the hard part.
Basically the core stuff, that's absolutely nothing compared to what it's gonna take to rejigger all the freaking data. Programmatically is gonna be the only way to do it. I mean, dear god... 42mb xml. Fortunately most of the work is already done core-wise. Getting mobs, skills, items, spawns to work; those things are basically complete in the engine. Just add the data and go. Adding more features should be minimal work. As I said, I properly added gunner and reaper class to my copy of TeraNA-master off szdberra's GitHub. This is embarrassing, but I actually don't know how to use git... I've always handled my own versioning.
As I said, it should not take too much time to get everything working; and I do mean everything. This really does not seem that complicated in the grand scheme of things. That's a good thing I think as it seems like we're all pressed for time. What I want is a complete server. I want every last feature. Now here's an idea. Instead of using "Tera-shock" XML... Why don't we just re-write the damn parser to accept native "Tera" xml? Honestly that seems like less work than converting the crap.
We have the real, actual data that the official servers use, and the opcodes. That's all we need. Hell, I could add a parser for the opcode listing and we could just rip every data dependency out of the core and stuff THAT into a little xml. Need to update your opcodes? Copy and freaking paste. We could overhaul the core to be more powerful and feature-rich. Then, any features, constructs, extra crap we wanna support or add can just be added to the core. Need to add a feature? Drop in the official xml and download a new core revision. done.
Who's with me?