View Single Post
  #11  
Old 06-02-2009, 05:03 AM
trevius's Avatar
trevius
Developer
 
Join Date: Aug 2006
Location: USA
Posts: 5,946
Default

The differences aren't really as bad as you would think in most cases. The only major issue is the difference in the spell files, but even that isn't all too bad depending on how your server is setup.

I already have Drakkin set to show up as humans to anyone using the Titanium client, so that resolves one issue there. Another issue is bank slots, since SoF gets 8 more slots. Basically, those slots are fully usable in SoF, but if you switch to Titanium, the items are still there, you just can't get to them. Not really a big deal IMO. AAs are different for SoF a bit, but I think we can correct that by just having separate AA tables for each client. Items from newer expansions are still fully usable with the Titanium, you just don't see the models for them. You also don't see the appropriate item icon if it is out of the Titanium range, but you see a necklace icon as default instead. Those are merely cosmetic issues, and not really a big deal. But, IMO it would be a good idea to try to keep SoF content to SoF clients. On Storm Haven, I am developing new content in SoF and using SoF items in it. Sure, if people get those items and switch back and forth between clients, they won't show up properly, but once SoF is fully completed, there shouldn't be any reason to switch back and forth in the first place.

for special new stuff like items with Corruption Resist or with Heroic stats on them, those are fine too. Yes, they won't be displayed in Titanium, but since the server handles all of the bonus calculations like that, the effects of them will still work exactly the same between clients.

Having Post-Titanium items in the database is nothing new to EQEmu. You really only had 2 options in the past: Either don't use those items at all, or check each one to make sure it has a valid Icon, Model and any effect that are compatible with Titanium. It is pretty-much the same deal now as it was before, accept you now have the option to give those items to just SoF clients, so you don't have to worry about the possible negative points of giving them to Titanium clients.

There are always hacks that could be coded in to allow Titanium and SoF to work better together cosmetically. Just like how I set all races over race 473 to show up as a normal human for Titanium, we could also set weapon models over a certain number to do something similar, and maybe even something like that for Titanium. For a while, I was even thinking about making some type of conversion function for Icons and Weapon models that would basically let you set (in a table) which Titanium icons you would like to show for each SoF icon, and the same for weapon models. For example, if there is a sword model that requires SoF to see it, you could set a conversion for Titanium clients to see any item using that model as a sword model from Titanium. It would work the same for Icons, where if there was a bag icon (for example) that required SoF to see it, you could set it so Titanium clients just see a normal Titanium bag icon when they view those items. It would actually be pretty cool to have something like that IMO

For a while, I was even thinking of doing something similar to that for Titanium Spells vs SoF Spells, but it wouldn't work exactly as perfectly as the icon and model conversions. An example would be if someone using SoF cast Tenacity on someone using the Titanium client, you could set it so that instead of Tenacity, they would get buffed with Virtue or whatever. Since there are so many spells out there, this idea would be a bit unreasonable, but it could definitely be interesting if implemented properly. Basically, I think it is best to use a combination of the spell files from both clients to make a single custom spell file that both can use. If both are using the same spell file, they should both work well together. The only issue is that Titanium can only go up to spell ID 9999 as a limitation of the client (which sucks big time!), so at the very least, any 70+ player spells would need to be moved to be under the 9999 range. This is how I have the Storm Haven spell file setup currently.

The level 70+ stuff between the 2 clients is actually a bit odd. Titanium can be set to use any level up to 254, and SoF should be able to as well, but they both have quirkiness with them after a certain level. Titanium was designed to work up to level 70 and does that perfectly. Anything over 70 works fine accept the skills roll back to 0 for the client (not the server), so AC and Attack don't show up properly in the inventory window. This is simply a cosmetic issue and the correct stats can be seen by using the #showstats command on yourself. For SoF, it was designed to go up to level 80, but oddly, it only works perfectly up to level 75. For anything 75+ in SoF, skills show up just fine and stats continue to raise their caps as they should, but for some reason the base HPs/Mana/Endurance (before items are added) gets set down to 5 on the client. This isn't too terrible, since the server maintains the correct values for those stats, but if your client thinks it's hps are 0, you will die whether the server thinks you should or not (I believe anyway). So, this is a bit more of an issue for SoF. Though, this wouldn't be too hard to hack some code in to get around this issue. Basically, I am thinking of picking an inventory slot and sending the client bogus hp/mana/end for that slot that equal to the item stats + your base hps/mana/end. This would trick the client into show the appropriate values. These bogus stats would only need to be sent if the character is 76 or greater though. I would love to find a solution to correct this otherwise, but it may just be something hard coded into the client that we can't change. At least there are ways around it if needed.
__________________
Trevazar/Trevius Owner of: Storm Haven
Everquest Emulator FAQ (Frequently Asked Questions) - Read It!
Reply With Quote