1. Eusrv150 is so slick (one bug)

installed it with no problem.
Very slick.
Currentlly running 209.71.60.75 port 9000
I'm going to try to keep it op for the next few hours.
If you'd like to join me in testing it out just
point your favoite mu* client at 209.71.60.75:9000
With standard win95 client RUN: "telnet 209.71.60.75 9000"
** you may need to hit enter twice after password **

Did have one problem:
worked fine with standard win95 telnet.
BUT when I tried my old "GMUD" client, couldn't get login.

Ended up making this patch in socktool.ew lines 960-965
     if    key = '\n' then -- \r
            user= SetCmdPendingTo(user,TRUE )

      elsif key = '\r' then -- \n
            user= SetCmdPendingTo(user,FALSE)
works fine now.
also on ICQ #1350825


------------------------------------------------------------
Visit Iguana Games.
http://cub.kcnet.org/~jnichols/hugo/
  -- Jerry and The Ig

new topic     » topic index » view message » categorize

2. Re: Eusrv150 is so slick (one bug)

Someone wrote:
> installed it with no problem.
> Very slick.

Someone wrote:
> I love the EU Server!  It runs pretty damn good

Someone wrote:
> I agree, its pretty nifty.


Thank you, one and all.  Very glowing response by the public it seems.
:)

> Did have one problem:
> worked fine with standard win95 telnet.
it will with that telnet program, as well as many many others.
TeraTerm is one i recommend for use with EUServ, as well as
just the simple, basic telnet client from Winsnorz...

The server is designed to work with the broadest possible
telnet clients, irregardless of whether they send a
LF or a LF+CR.

> BUT when I tried my old "GMUD" client, couldn't get login.
and the above is likely the culprit...
also, it may be looking for some sort of VT escape code
or an ANSI escape code that the MUD it's set for used to send...

> Ended up making this patch in socktool.ew lines 960-965
>      if    key = '\n' then -- \r
>             user= SetCmdPendingTo(user,TRUE )
>
>       elsif key = '\r' then -- \n
>             user= SetCmdPendingTo(user,FALSE)
> works fine now.
after making that fix, did it still work with the Winsnorz
'basic' telnet program???
if so, and it still works after that fix on other
telnet clients (teraterm, etc) I'll consider making that
a permanent adjustment...
if that is a 'hack' only relating to GMUD, then we may be
able to trace that GMUD problem back to another dilemma...
but it looks to me as a simple LF/LF+CR swapping issue...

Someone wrote:
> I've done several neat tricks with it, such as launching Doom95 twice
> with it and playing a TCP/IP game with myself..
*snicker*
bet it was fun :)

> Kinda buggy, though!
right now, 1.50 is not really setup to send/receive data like that...
which is why you prolly experienced 'bugs'...
however, it would be a really simple mod to tie two(or more) sockets
together as a data channel link and host (in theory) *any*
multiplayer game as a server.
its one of the big reasons i designed EUServ...
to get EU into multiuser applications AND games... the entertainment
industry can really give EU exposure it needs...

we could write a do_game function that set a flag and a socket number
with a user record and in (one of several appropriate places i can
think of) some location in the code we would check that flag,
and if set, we would just push that data right through to the
socket number(s) set ... instant generic multiuser game server,
capable of hosting any combination of games, with any number
of users, and provide a place to chat, all at once :)
I keep thinking that we would want to change HandleAsyncMessage
in the FD_READ section, before it passes to GetKeyFromUser,
that we check our flag, sub out to a new function "ProcessGame",
parse the user record field for whom that user is playing with,
read that chunk of data stored in the buffer, and shove
it right back out to the users that userX is playing with,
flush the buffer and exit FD_READ after updating UserList...
the same technique might be used for FTP servers as well...
figure out if userX is receiving a file and dump straight
to them, or if they are sending a file, snag their buffer,
and append to the file they are sending after each packet...
problems i see: out of order packets are a big one...
packet collisions, packet resends, and timeouts...

Someone wrote:
> I coulnd't make it work :(
> I'm using win98. Using the standard telnet client. Any suggestions?
can you use that telnet client to telnet to other locations?
is your telnet command line properly formatted?
do you have 'localhost' defined in your Hosts file?

try, from a dos-box:
telnet 127.0.0.1 9000
and see if that gets in...

naturally, i'm assuming that you used the run.bat file and
EUServ is actually awaiting connections...

OR!

is *that* the problem? EUServ won't run *at all*???
if so... do the following:

1>edit server.exw and near the beginning you will see the setting
  of the SERVER_LOG_STATUS variable
  -----------------near line 100
  include logging.ew
  --define how you want your default logging here...
  SERVER_LOG_STATUS = LOG_NORMAL
  ------------------------
  change it from LOG_NORMAL to LOG_ALL.
2>using the run.bat file, run the server, and when it dies,
  it will have made a server.log file, in the directory
  you installed to.
3>attach the log file in an email to me.
4>if no log file is made, then there should be an ex.err file
  created instead.  attach that in an email to me instead.
5>if neither an ex.err (shareware EU?) nor a server.log file
  is available, we then have entered the problem child realm. :)
lemme know...

if you can telnet using win98 telnet, euserv should work in theory.
if you cannot use the win98telnet to telnet to suchandsuch place,
then euserv will likely NOT work, as that means you have not
defined tcpip bindings in your network tab (most likely), or
you may be behind a gateway, you may have your DNS entries wrong,
you may have a Hosts file that needs updating... etc...

hope this helps.

-------------------new stuff
it has been suggested that i remove the server echo, to make
EUServ work faster, which it would, indeed, work a *lot* faster.
i will likely make a new do_func to do this, called 'do_config',
and it will allow you to change preferences, such as server
echo to let you, if you can, do your own local echoing.
it will allow you to adjust your prompt to your liking, turn
on/off double spacing (i like the condensed look myself, but
some have said it's too "crowded/hard to read") between lines,
and set your page pauser lines.

no, the page pauser isn't written yet :)

lastly: a subtle reminder to everyone using and connecting
to EUServ.  please do NOT use a password that is important
to you, or any of your 'accounts', as my encryption is deliberately
weak, and also, whomever is implementing the server CAN see
your password if they are so inclined.  There is no real
way to prevent this, and it's a concern that any and all
MU's, servers, etc. face.  I've coded a few Merc/Envy MUD's,
and, although i didn't because i *have* morals, it would
be trivially easy for the implementor of those programs,
or EUServ, to determine/log/view a user's password.

there simply is no way, no matter what code i put in or remove,
to prevent someone who has no morals from 'hacking' the server
code, placing the server available to users to log into, and
snagging passwords from those users.  there was no way to prevent
it in diku/merc/envy (and others i can think of) and there is
no way to prevent it now.

so please, always remember, when ever you login to a MUD, or
any server whatsoever, NEVER use a password you care about...

with that, i bid thee good tidings--Hawke'

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu