Crossfire Mailing List Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: cheating



Mark Wedel <master@rahul.net> writes:
> Back some on pickup:  Implementing it might be possible to do on the
> client, but this means the clients needs to have more information. In
> addition to the fairly straight forward pickup modes (0-5), there is
> pick up all known magical and all gems/coins.  Then there is pickup
> based on value density.

What I was thinking of were pickup modes based on name regexps with  
couple of regexps which pick up e.g. all coins and gems and everything  
marked as magical built in.  People could use those and advanced  
players could write their own regexps.

> However, I do not know if this is any better than the client just
> sending a request to the server of something like 'pickup (x) (y)
> mode (z)'.

Sure, it can be done.  But one advantage of client/server is that the  
server can be at least somewhat simplified by moving out whatever can  
be moved out.

> This is because one reason that was suggested for client pickup was
> so that new pickup modes could be added on the client side.  However,
> if the pickup is based on something that is not mentioned above (ie,
> magical plus of weapons), then the server would just need to be
> changed to update on the client side.  So new pickup modes for the
> client could not easily be made unless that pickup mode only uses
> data that is transmitted.

Well, to pick up items with identified magic pluses, just use a regexp  
like this '+[1234]'.

> It might be a good idea to have the client state what level of detail
> it wants.  This, someone running on a slow link could have the client
> just get the bare mininum number of objects (floor and top object),
> and any time more detail is needed, it makes that request to the
> server (like, to see what might be in a stack.)  But clients on a
> fast link could specify a high detail level, getting every object,
> plus value, magical, etc.

No, please don't.  Not sending all the items based on purely graphical  
concerns destroys the abstraction around which I designed the proposed  
protocol and which I firmly believe is both a good and an interesting  
one.  


Plus value and magical doesn't safe you much in any case -- it is just  
a few bytes in the name which is only transmitted when an ITEM moves  
and even then not necessarily as all the ITEM fields except for tag, x  
and y are optional for an ITEM which the server knows is already known  
to the client.

	Carl Edman