Re: Smokeables and a general question about Patching...

From: Daniel A. Koepke (
Date: 01/03/03

On Tue, 31 Dec 2002, Adam Scriven wrote:

> It seems to me it would be a very big job, so is there anything I should
> take into consideration to make it "patchable" to other systems, to
> people don't have to duplicate my work?

It should be a fairly small, isolated job.  As you've observed, it's very
similar to the code for drinking.  Thus, you have a complete template off
of which to work.

> I'm a newbie at this Patching thing... how portable is it?

Patches are typically not forwards/backwards compatible.  The mechanism is
inherently fragile.  A patch is generated by using the 'diff' program to
compare a set of "old" files (e.g., stock CircleMUD v3.1) against a set of
"new" files (e.g., CircleMUD v3.1 with "smokeables").  The 'diff' program
outputs a set of instructions that tell you (or the 'patch' program) how
to modify the old files to turn them into the new ones.

Once you understand how it works, it's obvious why it's a hit-or-miss
enterprise.  A patch is only guaranteed to go in cleanly if it's being
applied to files that match the "old" files whence the patch was produced.
Things usually are a bit more forgiving.  Certain types of changes,
typically those unrelated to the patch, can be automatically handled.
Others, howver, require human intervention.

This is one of the reasons we suggest hand-patching.

> Is there anything reasonably that can be done to fix that, [...] ?

The only thing to be done is for people to contribute back to the
community.  These older patches have lots of users who have individually
done the work to apply them to newer versions of CircleMUD.  I can't
imagine why these users don't take the few extra steps to release the
updated version of a patch.  Reducing the maintainence burden on the
original patch developer seems like a great way to show your appreciation;
it also frees him up to contribute more.


   | FAQ: |
   | Archives: |
   | Newbie List:   |

This archive was generated by hypermail 2b30 : 06/26/03 PDT