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

CF: crossfire code directions.




 Just to some up a few messages I saw:

 It seems to be a general consensus (of 2-3 people) that accessing object
attributes should all be done through macros - this way, the underlying object
can change, and all that needs to be changed is the macro, and not all the code
that refers to it.

 inline functions would probably be safer than macros (and should be just as
fast).  Unfortunately, I don't think they are part of ANSI C, although most
every compiler supports them.

 I do agree that the answer of making crossfire a more popular game is increase
the number of people that can play it.  Having java of windows clients would be
the way to go on that.

 As for a complete server rewrite:  Probably won't happen - or at least not by
me.  I know that a while back (year maybe?) some group was taking crossfire as
a base for the gameplay and were going to rewrite in C++ - I think that was
only a 1 quarter/semester class which ended before work was really far along.

 However, being that crossfire is under the GPL, there is nothing preventing
others from rewriting a game based on crossfire's ideas.

 There are a few reasons why a completed rewrite of crossfire won't happen by
me:  1) I don't have the time.  2) Why crossfire certainly needs some cleanup,
I don't see the need to toss what is there away and redo it.  3) I know the
current well pretty good, so while some things are messy, a rewrite in a
cleaner language/form isn't a big gain for me.

 That said, some of the things currently on the TODO list will require some
pretty big changes in the code.  And while doing some of them, it makes sense
to rewrite the code in the more modular fashion.  As an example, if various
levels of protections are added, it makes sense to access and set this
information via the macros mentioned above - since all current referances to
protections/immunities/vulnerabilities will need to be changed, it makes sense
to update them to use a modular fashion.


-- 

-- Mark Wedel
mark@pyramid.com
[to unsubscribe etc., send mail to crossfire-request@ifi.uio.no]


Follow-Ups: