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

Re: client/server?



>>>>[From Eric A. Anderson]

    > This is something which should get done soon, I think.  
    > I'd undertake it, but I'm too clueless!  X-programming
    > is largely mysterious to me, as are network protocols.

    Well, the simplest thing to get it started would be to separate out
    every single function which makes an X call into their own
    subdirectory.  Then start moving as much of the "thinking"
    functionality into routines that call the client routines.


No, no.. the first thing to do, is replace ALL X calls with CURSES calls.
Only THEN can you truely make it the equal of nethack, and other fine
games.....

But seriously :-)

I would personally advise a structural/functional analysis of the code.
Get a list of all routines (easy to do, with ctags) then document what
each of them does relating to X display issues.

You also have to spec out _exactly_ what you want the client to handle,
and hunt down all relavant stuff in the code to that, also.

Once you have isolated all cases of "what displays when", then you can
throw away the old X-biased groupings, and make your own groupings.
"groupings" just being a set name, under which you can indicate functions

For example :

  ManipulatePlayerInventory: pickup(),throw(),..
  UpdateScreen:		...
  ChangeAttribute:	...
  ...			...
  etc


When you have done all THAT, then you can start putting together a
protocol with handling for each of those situations.



Not that I think it's going to happen soon. Because yet again, emphasis
is being put on the old way of doing things.

Hopefully, some time in the near future, Mark is going to say
"Okay, code is now FROZEN! all work will now commence on client/server
 breakup"
and something will get done.