Implementing: Channels

EQ2Emulator Development forum.

Moderator: Team Members

User avatar
Scatman
Retired
Posts: 1688
Joined: Wed Apr 16, 2008 5:44 am
EQ2Emu Server: Scatman's Word
Characters: Scatman
Location: New Jersey

Implementing: Channels

Post by Scatman » Wed Mar 14, 2012 9:59 pm

Chat Channel Progress:

Last Edit: 3/18/2012 6:30pm
Bold items are new

So far these features work:
Getting a list of world channels you may join (based on your level, class, and race, and generic channels)
Joining a channel
Leaving a channel
Talking in channel
Creating custom channels with/without passwords

Still left to do:
Nothing? Bug fixes?

Thanks Xinux for doing a few collects for me!

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Implementing: Channels

Post by John Adams » Thu Mar 15, 2012 6:46 am

Awesome work, both of yas.

Scat, how are we providing a list of "World Channels"? Will there be a table in the DB for channels defined by the server admin? While I do not mind hard-coding the SOE defaults, I think they should be optional to the server admin themselves. Unless of course the client (UI) will not show "just any channels as world channels" ie., locked to Guardian, Level 1-10 as far as display goes. If the channels can be named any-damn-thing-we-want, and displayed in the World Channels dialog of Chat Settings, perhaps we can offer this customization, too?

Edit: Will this also allow for users to create "Custom Channels", and our final channel type to add, Raid? I know we don't raid yet, but as long as "we're" in the chat mode, might as well add the channel option ;)


I thought I'd try something new, and change everything *before* you finished your work this time :)

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Implementing: Channels

Post by John Adams » Thu Mar 15, 2012 6:49 am

PS: you do have to commit your vcxproj file when committing new files to the project, otherwise we don't compile. I think the proj files are safe to commit now with VS2010 since our custom settings should be in vcxproj.user. Otherwise, we'll just need to be smart, use the /trunk/dev configs like good team mates and there will be no big issue with custom build locations ;)

User avatar
Scatman
Retired
Posts: 1688
Joined: Wed Apr 16, 2008 5:44 am
EQ2Emu Server: Scatman's Word
Characters: Scatman
Location: New Jersey

Re: Implementing: Channels

Post by Scatman » Thu Mar 15, 2012 9:48 am

the global channels ( guardian, halfling, auction, level_*, etc) are all hardcoded at the moment. Each channel can have a level restriction, a list of allowed races, and a list of allowed classes to determine who can join what. So although they are loaded from memory, they are still very dynamic in choosing who can join. So if you wanted to put the world channels into the db it would require no code changes except for code to load them.

When im done this will allow users to create custom channels, yes. You cannot create or delete world channels.

I think itd be better to handle raid chat in the raid object itself like how guilds do it.

Andd doh on the project file. Ill remember for next time.

Did i miss anything? :)

User avatar
Scatman
Retired
Posts: 1688
Joined: Wed Apr 16, 2008 5:44 am
EQ2Emu Server: Scatman's Word
Characters: Scatman
Location: New Jersey

Re: Implementing: Channels

Post by Scatman » Thu Mar 15, 2012 12:28 pm

So this is interesting, I just logged into my server today and I auto-joined the channels I had joined last night when I did my last test for the night. It appears the client keeps track of what channels you're in? Does anyone know?

User avatar
Scatman
Retired
Posts: 1688
Joined: Wed Apr 16, 2008 5:44 am
EQ2Emu Server: Scatman's Word
Characters: Scatman
Location: New Jersey

Re: Implementing: Channels

Post by Scatman » Thu Mar 15, 2012 12:39 pm

Question: Since I am having trouble with my LaunchPad (somehow it got reverted to 2008's), is there a message when someone else joins and leaves a channel? I believe there is a packet for it.

User avatar
alfa
Team Member
Posts: 550
Joined: Fri Jul 27, 2007 6:24 pm
Location: France
Contact:

Re: Implementing: Channels

Post by alfa » Thu Mar 15, 2012 1:04 pm

Channels are store in client, like voice channels, mayby in socialscache.dat file.

The is no message when user come in channel as far I know.

There is a list of channels commands
/# Tell command for channel number assignment (better than /tellchannel #)
/channellist Lists all channels currently in
/joinchannel Enter a room (or create if doesn't exist)
/leaveall Exit all channels you are currently in
/leavechannel Leave a room (game/world rooms)
/tellchannel Send message to room specified. Alias: /csay
/whochannel # Lists all users in specified channel.
Fight with me... Or die, like the rest.
J.A. say: "I think Xinux tried to tell me this, but I ignore most things he suggests."

User avatar
xinux
Team Member
Posts: 680
Joined: Wed Mar 10, 2010 11:10 am
Location: Destroyer of Servers

Re: Implementing: Channels

Post by xinux » Thu Mar 15, 2012 1:07 pm

Don't quote me but there is a packet sent when someone enters and leaves but i don't remember seeing a message client side in the chat box.
EQ II - Build=1360 (Orig) - Build=1360 (DoF) - Build=2654 (KoS) - Build=3375 (Classic) - Build=3554 (EoF)
EQ II - Build=4412 (RoK) - Build=5122 (TSO) - Build=6118 (SF) - Build=7628 (DoV) - Build=8295 (Aod)

User avatar
Scatman
Retired
Posts: 1688
Joined: Wed Apr 16, 2008 5:44 am
EQ2Emu Server: Scatman's Word
Characters: Scatman
Location: New Jersey

Re: Implementing: Channels

Post by Scatman » Thu Mar 15, 2012 1:08 pm

Thanks guys, that's all I needed to know and more!

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Implementing: Channels

Post by John Adams » Sat Mar 17, 2012 4:46 pm

Awesome work, Scatto. This is a cool addition.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Implementing: Channels

Post by John Adams » Sat Mar 17, 2012 4:57 pm

Scatman wrote:Andd doh on the project file. Ill remember for next time.
Scat, maybe you know... VS2010 has the vcxproj.user file, and sometimes it puts your custom build path into there, and sometimes into our main vcxproj file. Any idea why this is so f'n inconsistent?

Devs, when you fetch latest SVN, you'll need to reset the World Debug Output Directory back to $(SolutionDir)worldserver\ (if you use the Dev Team solution)

User avatar
Scatman
Retired
Posts: 1688
Joined: Wed Apr 16, 2008 5:44 am
EQ2Emu Server: Scatman's Word
Characters: Scatman
Location: New Jersey

Re: Implementing: Channels

Post by Scatman » Sun Mar 18, 2012 9:40 am

Yeah I thought all of the custom build paths went into the project file itself, kind of annoying. But after you told me I had to commit it I did, so sorry about that :) I really wish they would put those paths into a different file.

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Implementing: Channels

Post by John Adams » Sun Mar 18, 2012 1:58 pm

No worries at all, I'd rather you commit the proj than have people wondering why they cannot build. :D Cuz, we have sooo many devs and all :shock:

Please do commit it. Promise, no one will come to the forums and rant about how inconvenient it is they spent 9 days rebuilding the solution because someone dared commit a proj ;)

(no, i am never gonna let that go haha)

User avatar
Scatman
Retired
Posts: 1688
Joined: Wed Apr 16, 2008 5:44 am
EQ2Emu Server: Scatman's Word
Characters: Scatman
Location: New Jersey

Re: Implementing: Channels

Post by Scatman » Sun Mar 18, 2012 3:42 pm

Ok I think everything is done for channels. Let me know if there are any problems or something I missed. But my code never has bugs so goodluck! /sarcasm off

Edit:
Oh, did we want to do anything with the database for channels?

User avatar
John Adams
Retired
Posts: 9684
Joined: Thu Jul 26, 2007 6:27 am
EQ2Emu Server: EQ2Emulator Test Center
Characters: John
Location: Arizona
Contact:

Re: Implementing: Channels

Post by John Adams » Tue Mar 20, 2012 7:11 am

Scatman wrote:But my code never has bugs so goodluck!
You're right, your code doesn't have bugs, just missing ")" so it doesn't compile :D j/k!
Scatman wrote:Oh, did we want to do anything with the database for channels?
I (personally) would prefer to load channel names/restrictions from a table in the World DB, so each world can have their own World channel setup. Just more customizable that way. Nothing we have to do right now, if you'd prefer. You got the default channels working, and that's the big ticket item.

If you chose to tackle this now, we could offer the default world channel configs via PatchServer so all worlds at least have the default ones. Admins could then modify/add/remove whatever they want for a custom experience.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest