Go Back   EQEmulator Home > EQEmulator Forums > OpenZone > OpenZone:: Q&A

OpenZone:: Q&A Support forum for OpenZone help

Reply
 
Thread Tools Display Modes
  #1  
Old 02-14-2007, 10:17 AM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default Client discussion, blue-sky thinking welcome

Recently I mentioned that I (we? us?) plan to release a client sometime this year. While at this point I'm ever-so-slowly trying to climb that huge mountain called 'item icons', I'm still committed to that goal, and a message from someone kicked me into thinking that it might be high time to try to spur a discussion on what a client/server combo should have in it. From what I've read in these forums and what I've seen in the larger EQ community, I think that it's time to leave not just Norrath(tm) but the general game of EQ behind, or at least give ourselves that option. What I'd like to spur people into talking about involves customization, and I know I'm not imaginative enough to work out all the issues by myself.

The thing that kicked me into action was a question regarding whether the client I was planning would support things like AA's or custom GUI setups. I think the real issue is MUCH larger than that, but here's my response (sans anything that would identify the person asking) to give you all a starting point:

Quote:
It doesn't support AA's at this point because my test server doesn't support them, but I understand your question. The hardest part will be making the GUI configurable, just because it will be a lot of work to create an XML schema and subsystem for building the GUI dynamically. I want to do just that, but the first version probably won't have that yet. I haven't decided if I want to try to borrow from my OpenSpell dynamic GUI code but that would probably be overkill. I might be able to borrow parts of it, though, to speed the process up.

The client is configurable from the standpoint of server versions -- while I test it primarily with EQEmu 0.5.5, I've tested it with other versions as well. It has profiles for several versions and will automatically configure itself based on what it connects to. There is a custom protocol where the client tells the login server what server versions it supports, the login server tells it what's available within those constraints, and they show up for the player. The client uses dynamic opcode lists and packet definitions, and it can support most versions between EQEmu 0.5.5 and EQEmu 0.6.0. The reason it doesn't support 0.6.1 and newer is because the netcode is completely different, but the client has all of its netcode encapsulated in DLL's -- for it to work with newer versions only requires that someone write a DLL that matches the interface of the existing one. At this point I don't have time to figure out how the newer netcode works and write one myself. The netcode is GPL and will be opened up when it's released so others can work on another DLL if they want.

I think the biggest potential for configurability will be in features and ruleset, for instance:
- what gods are available
- what race/class combos are available
- what choices are available for the starting city
- the player stats (for instance, D&D rules use STR, INT, WIS, DEX, CON, CHA and don't have resistances).
- the types of money (for example, D&D1E has pp,gp,sp,ep, and cp, and other games have have fewer types)
- the money conversion rates
- the relevance of player skills (for example, DragonQuest is very different than D&D when it comes to skills)
- Whether grouping is allowed, and its parameters (more than six? less than six? other features or restrictions?)
- Spell memorization rules

I'm not imaginative enough to figure out all of these things. I think there needs to be a forum discussion on what kind of flexibility is desired, and the sooner it happens the better the design and implementation will probably be. All of these things will require changes to the server and the DB and so it should involve the entire community.
I keep thinking of the opening to The Outer Limits ("Do not adjust your television. We control the horizontal. We control the vertical.") With a client/server combination we control the entire equation, and within the constraints of staying away from anything that belongs to SOE there are loads of possibilities if we're imaginative enough to think of them (and if they're the sort of things I can implement with a reasonable amount of effort). This is something that's been on my mind for a while, but I'm so swamped with the minutia of trying to get everything ready that I really can't spare the brain cells for that sort of blue-sky thinking. About the only consolation is that I can plagiarize the hell out of my code, so for instance the dynamic server packet stuff borrows heavily from the Admin Tool (remember that?). Still, it's no substitute for the real kind of thought that this sort of discussion requires and is why I'm posting it now. Better to have this discussion now than at the 11th hour when I'm getting ready to release something. Fair warning: if participation here is anemic then you all shouldn't expect much because I'm oversubscribed as it is. This is a real 'help needed' call.

Last edited by Windcatcher; 02-14-2007 at 06:24 PM..
Reply With Quote
  #2  
Old 02-14-2007, 11:09 AM
mattmeck
Guest
 
Posts: n/a
Default

Ability to PVP with different rule sets is almost a must in this community. Give people the ability to do town warfare, have forts etc.


A functional bazaar type zone would be nice too. (cant attack, cast deteremental spells, weight isn't taken into account, maybe a form of the merchant in EQ?)


How about the ability to assign different rule sets to different zones? (PVP in those zones, PVE in those, no fighting in those, GUILD PVP in another, team PVP in another, i can think of a lot of ways this can be used.

I know its asking a lot, but the best thing would be for there to be a way to add new code for rules or whatever and make it easy for people to select and change them, i.e. some way that wont require recompiling with every change.



Wind, I have always loved what you have given this community, but when this is given it will take the cake.
Reply With Quote
  #3  
Old 02-14-2007, 02:17 PM
squire
Fire Beetle
 
Join Date: Aug 2004
Posts: 4
Default

I think it's great you are working on this.

An interesting dynamic would be player influence on the faction that controls a region. This is probably a combination of server and client changes, but since you said the sky's the limit, so to speak. Imagine the fun of having a true struggle within the game to where your character can actually liberate or oppress a region. That would add a whole new side of PvP battles.

Customized Spell effects. One person has a funnel for a wind related spell where someone else may have a simple gust of wind.

That's all I got at the moment. If something else strikes me, I'll drop it in here.
Reply With Quote
  #4  
Old 02-14-2007, 11:07 PM
bufferofnewbies
Hill Giant
 
Join Date: Dec 2005
Location: Lurking in KY
Posts: 239
Default

Having the possibility of all effects run by a 'Rules' type system we have here would be nice, but might be extremely hard to code in without alot of excess processing.

I, myself, have always wanted the ability to turn on AA advancement from level 1. That way if your friends start to level behind you, you dont have to stop playing/ turn off exp (allowable on some servers)/ etc. This would allow exp gain of some sort, even if it wouldnt be much. (Imagine trying to get run1 at level 1 exp gains when the exp check is for level 50, but still.. the option would be there)

Perhaps a way to limit aa paths. (ie: lock this path if you have chosen this other one). This could provide the players with a way to diversify classes (read as: create subclasses based on new aa abilities agined at level xx), while still keeping the core classes available to the majority of the community without having to code new classes themselves.

Of course, we would have the ability to modify the aa gained also, so perhaps it would be viable to set some aa's to be used at earlier levels then. Perhaps a level 20 set, a level 40 set, etc. I have always favored the ability to diversify PC abilities as well as provide more flavor.

I am not sure how hard on the system the rules system is as far as the processing it needs to read sets of them, but if that was possible then I would really like to see that type of setup. Where any condition can be changed by the Admins. Even better would be the option to allow such changes to only take effect in 'designated' locations. Not just zones, but perhaps areas within zones. (IE: you can fight here, but NOT at the bank. You can bind here, but NOT deeper in the zone.)

Perhaps a way to share exp gained across a group of people (so the people who play less still gain just as much as the ones who play more) (IE: 2 players are 'tagged' together: player 1 kills a mob and would get 100xp. That player now gets 50xp, and the other player he is 'tagged' with gains 50xp also.) Ok, that one was stolen blatently from SoD, but only because I really like the intent of the system.

As I have stated many times, I don't really know much about the Coding part of the Emu. And atm, I really am not contributing much to the emu itself due to some outside commitments I am in need of focusing upon. But I do like the work you have done so far with this. It has all looked great and any ability to do what we like to do without the use of the current client would be a godsend. This would also enable us to create login servers for the communities, althought I see that really as a bad thing overall since it would seperate the community apart instead of it being a cohesive unit like now.
Reply With Quote
  #5  
Old 02-17-2007, 09:37 AM
Windcatcher
Demi-God
 
Join Date: Jan 2002
Posts: 1,175
Default

I could possibly alter the architecture to support DLL plug-ins so that other people could add support for more kinds of packets, but one issue is cheating. Does anyone have any thoughts? It looks like the bulk of the client will have to be closed-source to prevent cheaters but I'm open to suggestions. I'd like to open as much of it as possible if I can.
Reply With Quote
  #6  
Old 02-18-2007, 12:41 AM
bufferofnewbies
Hill Giant
 
Join Date: Dec 2005
Location: Lurking in KY
Posts: 239
Default

Possible to add a server side check of allowed plugins?
anything not on the list is ignored by the system, to prevent hack plugins (unless the Admin says its ok and adds it to their list)
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

   

All times are GMT -4. The time now is 01:49 AM.


 

Everquest is a registered trademark of Daybreak Game Company LLC.
EQEmulator is not associated or affiliated in any way with Daybreak Game Company LLC.
Except where otherwise noted, this site is licensed under a Creative Commons License.
       
Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Template by Bluepearl Design and vBulletin Templates - Ver3.3