EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Development::Tools (https://www.eqemulator.org/forums/forumdisplay.php?f=593)
-   -   chat with ooc from outside game (https://www.eqemulator.org/forums/showthread.php?t=42163)

Daxchunjae99 10-31-2018 12:43 PM

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!

Akkadius 10-31-2018 01:03 PM

Take a look at this

http://www.eqemulator.org/forums/sho...ight=discordeq

Daxchunjae99 10-31-2018 01:59 PM

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? :D

Akkadius 10-31-2018 02:31 PM

Quote:

Originally Posted by Daxchunjae99 (Post 260639)
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? :D

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:

https://i.imgur.com/vlNh41N.png

Daxchunjae99 10-31-2018 03:33 PM

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!

N0ctrnl 10-31-2018 07:37 PM

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.

Akkadius 10-31-2018 07:46 PM

Quote:

Originally Posted by Daxchunjae99 (Post 260641)
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

Daxchunjae99 10-31-2018 08:28 PM

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. :D

Akkadius 10-31-2018 08:29 PM

Quote:

Originally Posted by Daxchunjae99 (Post 260644)
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. :D

If you're going to challenge yourself, use Laravel (PHP) / VueJS and the Websocket server built into Laravel :)

Daxchunjae99 10-31-2018 10:32 PM

Oh god Laravel, Just kidding I respect Frameworks :D. 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.

Daxchunjae99 11-01-2018 10:20 AM

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
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.

Daxchunjae99 11-02-2018 01:31 PM

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. :D 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.


All times are GMT -4. The time now is 07:49 PM.

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.