Go Back   EQEmulator Home > EQEmulator Forums > Development > Development::Tools

Development::Tools 3rd Party Tools for EQEMu (DB management tools, front ends, etc...)

Reply
 
Thread Tools Display Modes
  #1  
Old 10-31-2018, 12:43 PM
Daxchunjae99
Fire Beetle
 
Join Date: Mar 2013
Posts: 8
Default chat with ooc from outside the game

Hey all,

I think I found a way to enable cross platforming chat dialogue with players in game. For example, send text from php -> to the running server. I see 2 things required for this to happen:

1) Log must be on 24/7 which may create some gigantic text files that may or may not be a problem.
2) Telnet must be enabled.

With proper safety measures, one can visit a portal front page and send text directly in game as an /ooc. Players are also able to see this. Thus, a chat dialogue can occur from outside the game.

I see potential with this idea:
1) Can offer devs who don't have time to log in-game, quickly see conversations and even send messages directly from their web browser.
2) Have an improved interactive way to use auction for public use?
3) For low population density servers, this may attract more 'liveliness' in auction, shout, ooc conversations.
4) Immediate server messages such as a required restart, spontaneous events, motd changes etc
5) Maybe a modern way of conversation through cross platform interaction?

Of course there are downsides such as the safety of sending packets to in-game, as well as system performance. But it wouldn't be too difficult to experiment with. This would require html, css, php, mysql, javascript jquery, and some sockets knowledge.

What do I know? My hobby is pretty much eqemu at this point. I've played on many servers and still do today. I've tinkered with my own server on and off over the years. I've worked on some side projects and did some php editor modifications for private use. I'm a gm and dev as well and first started with perl scripting as my first language. This one seems like a fun project to do just for the challenge. Some dev's think this isn't very practical but I still believe this idea can be used in a fun way. What do you guys think?

P.S. If all this has been done before then I apologize and ignore everything I've said!

Last edited by Daxchunjae99; 10-31-2018 at 12:55 PM.. Reason: Grammar
Reply With Quote
  #2  
Old 10-31-2018, 01:03 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Take a look at this

http://www.eqemulator.org/forums/sho...ight=discordeq
Reply With Quote
  #3  
Old 10-31-2018, 01:59 PM
Daxchunjae99
Fire Beetle
 
Join Date: Mar 2013
Posts: 8
Default

Discord huh? Well I guess it's already been done. I suppose I can write this from scratch but, why re-invent the wheel no?
Reply With Quote
  #4  
Old 10-31-2018, 02:31 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Quote:
Originally Posted by Daxchunjae99 View Post
Discord huh? Well I guess it's already been done. I suppose I can write this from scratch but, why re-invent the wheel no?
It works great and a lot of major servers use it, their extent of the use may be limited and vary though because it does require moderation and explicitly adding people to talk in OOC

PEQ developers use it to chat with folks in game, example:

Reply With Quote
  #5  
Old 10-31-2018, 03:33 PM
Daxchunjae99
Fire Beetle
 
Join Date: Mar 2013
Posts: 8
Default

That's cool. That's pretty much what I had in mind. But all this would be instantaneous from the browser with no discord joining and all that. Also, I would have the chat box and refresh just like how it looks ingame so you pretty much see a portion of the chatbox live, kinda like a window to the game so to speak.

I think I could get this up and running on a php editor as an extra tab. Not a fan of Discord since my cryptos got hacked through there but I'll take a look through this, thx!
Reply With Quote
  #6  
Old 10-31-2018, 07:37 PM
N0ctrnl's Avatar
N0ctrnl
Discordant
 
Join Date: Jan 2007
Posts: 443
Default

I have been using it for ages. It's great. Does take some attention to map users, but totally workable once setup. I dig it.
__________________
Ender - Lead GM/Developer
Vegarlson Asylum Server - http://www.vegarlson-server.org/
Reply With Quote
  #7  
Old 10-31-2018, 07:46 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Quote:
Originally Posted by Daxchunjae99 View Post
That's cool. That's pretty much what I had in mind. But all this would be instantaneous from the browser with no discord joining and all that. Also, I would have the chat box and refresh just like how it looks ingame so you pretty much see a portion of the chatbox live, kinda like a window to the game so to speak.

I think I could get this up and running on a php editor as an extra tab. Not a fan of Discord since my cryptos got hacked through there but I'll take a look through this, thx!
What you're talking about has been done before, I've done it before. Discord just makes sense for anyone's use cases. Discord itself is not a security issue in the way you describe.

Auction, ooc and everything you mentioned is covered in the Discord implementation using exactly a telnet persistent connection to achieve the realtime back and forth

We used to have different sets of relays over time, web relays, IRC relays etc. There are a thousand ways to do the same thing but ultimately what sticks is what use case fits a majority in the community

Discord is realtime both ways and if you want to code up chat in a browser that is completely your prerogative and no one will have a problem with it.

Just letting you know what is around right now and why its used and when folks reinvent the wheel with things they may not have known about something that was already out there and the tool or thing dies and along with it the motivation to put energy into something because it wasn't received in the way you would have hoped.

HTH
Reply With Quote
  #8  
Old 10-31-2018, 08:28 PM
Daxchunjae99
Fire Beetle
 
Join Date: Mar 2013
Posts: 8
Default

Hehe, I get that all the time whenever I come up with modifications. No worries. Thanks for the heads up akkadius. I think most people would prefer Discord since it's pretty much go to these days.

Just for the challenge though, I think I'm going to see if I can whip something up. It's only for a select few devs I've trusted over the years anyways. Plus, it wouldn't hurt brushing up on php/jQuery/ajax skills.
Reply With Quote
  #9  
Old 10-31-2018, 08:29 PM
Akkadius's Avatar
Akkadius
Administrator
 
Join Date: Feb 2009
Location: MN
Posts: 2,071
Default

Quote:
Originally Posted by Daxchunjae99 View Post
Hehe, I get that all the time whenever I come up with modifications. No worries. Thanks for the heads up akkadius. I think most people would prefer Discord since it's pretty much go to these days.

Just for the challenge though, I think I'm going to see if I can whip something up. It's only for a select few devs I've trusted over the years anyways. Plus, it wouldn't hurt brushing up on php/jQuery/ajax skills.
If you're going to challenge yourself, use Laravel (PHP) / VueJS and the Websocket server built into Laravel
Reply With Quote
  #10  
Old 10-31-2018, 10:32 PM
Daxchunjae99
Fire Beetle
 
Join Date: Mar 2013
Posts: 8
Default

Oh god Laravel, Just kidding I respect Frameworks . But I'd rather write things from scratch, I think I learn better that way. The only framework I use on a consistent basis would be jQuery and I love it.

I'll update on this as I go, so far I got the ooc & auction to display. I can test this with p1999 log to see it parse in real time just to see there's no lag between the log file and the display. The 2nd part would be to brush up on sockets and telnet again.

Last edited by Daxchunjae99; 10-31-2018 at 10:33 PM.. Reason: Spelling
Reply With Quote
  #11  
Old 11-01-2018, 10:20 AM
Daxchunjae99
Fire Beetle
 
Join Date: Mar 2013
Posts: 8
Default

Here's a quick update on what I have so far. I separated this into 2 parts. The 1st part would be to output the info, filter it and have it display correctly from bottom up. Timestamp was cleaned up as well and displays with proper colors.


https://imgur.com/a/yPoDaF1

The 2nd part would be to do the telnet part. Adding another div to simulate a chat response text field and have that working behind the scenes.

Last edited by Daxchunjae99; 11-01-2018 at 10:21 AM.. Reason: Screenshot
Reply With Quote
  #12  
Old 11-02-2018, 01:31 PM
Daxchunjae99
Fire Beetle
 
Join Date: Mar 2013
Posts: 8
Default

Here's the final part to this whole thing. So now devs with admin access to their php editor can monitor a particular zone or conversation messages and send broadcast packets via telnet if needed. This is done through php socket connections which also requires telnet access from the database with a gmstatus > 50.

[IMG="https://imgur.com/a/uK74M8F"]https://imgur.com/a/uK74M8F[/IMG]

The main concerns about this setup would be leaving a log file on for so long over time that it would cause overhead issues? Possibly this can be alleviated by dumping portions of it into another file and reading that one instead.

Another concern would be security measures since telnet isn't like SSH. I think telnet was supposed to be used as a private network since everything can be seen in clear plain text. (not to mention the annoying double echo). I think ajax & php's stripping and sanitizing can be 2 barriers including the initial login credentials for safety mechanisms. Or just use Discord since that's been out for a while now and probably VERY convenient to plug n play. I wanted the classic look where it emulates a 'window' to the game kinda feel, all from a web browser.

This was a fun challenge to work on and I'll post other things I've been tinkering with over the years.

Last edited by Daxchunjae99; 11-02-2018 at 01:39 PM.. Reason: Screenshot
Reply With Quote
Reply

Tags
chat, cross platform chat, ooc chat, telnet use


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 03:52 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