D2Accelerator works on any mod in the -direct -txt format.  See Fusman's tutorial at
http://www.planetdiablo.com/phrozenkeep/tut-direct.htm  for more information.

However, your mod may make tons of visual changes.  Your firewalls are ice walls that freeze enemies, act 2 mercenies now spawn in huge
laggy hordes, and your players with low-end systems are complaining that you removed the timer on druid spells.

D2Accelerator normaly wouldn't help here.  Selecting the firewall checkbox will make your ice walls look like mini-flames.  The act 2 mercs
will retain their shadows even though they appear as an enemy in droves, and there aren't any checkboxes for messing with the druid spells.

Fortunately, you can change this within the d2adef.txt file.  This is a tab-delimited spreadsheet in text format that you can edit with excel.
This will give you control over what checkboxes appear and what effects they have.

Your mod's custom d2adef.txt should be placed in your mod's base folder.  You should also place a d2acfg.txt file, just copy the one from the
D2Accelerator folder, finish your d2adef changes, then run D2Accelerator and set up the Configuration for how you would like it to appear for
your users.  Then distribute this d2acfg.txt along with the d2adef.txt.

To build a d2adef.txt, it's best to copy columns from your monstats, missiles, and levels.txt to the appropriate places within the d2adef file.
Then just modify the values within the d2adef. 

The specifications for d2adef.txt by column:

The first several columns are from monstats.txt

namco: just the namco column, the monster's name.  For your reference only, do whatever you like here.

MinGrp and MaxGrp: these are the mingroup and maxgroup sizes for monsters.  What does this have to do with lag?  Well it's an easy way
for me to disable critters.  When you check the "critters" checkbox, these entire columns will be used from the d2adef file.  Set your critters'
mingrp and maxgrp to 0 to make them not appear when the "critters" box is checked, but like everything else, don't change more than just the
critters in this column.  Else you will have more or less of actual enemies, and that may not be a good thing.

Shadow: determines whether the monster has a shadow or not.  Shadows from large groups of high-component monsters, like skeletons in the
halls of the dead, take a significant toll on framerates.  However, I thought it looked out of place to disable the shadows on "all" monsters when
you can't disable player shadows.  So I left a 1 for NPCs, mercenaries, valkyries, shadow masters and warriors.  Everything else I gave a 0.
But you can do whatever you like here.  When the Shadow box is checked, the shadow values for all monsters will be used from this column.

Light: determines the light radius, 0 is none, larger numbers = more radius.  I reduced the radius on some monsters and eliminated it from others,
most notably skeleton mages which appear in large numbers whether in the harem or with a necromancer.  When the Monster Light checkbox is
checked it will use this column

the next two entries are from levels.txt

Name is simply the name of the level, for reference only
Rain determines if rain can appear in acts 1-4, and snow in act 5.  I set these all to 0.  When the Weather checkbox is checked, this column is
used.

The remaining deal with missiles.txt

You can have up to 20 checkboxes appear in the "Fix" area, and you can decide their names and effects.  Each checkbox can affect any number
of lines in missiles.txt

Put the name you want to appear in ChkName.  ChkNum is the number of the checkbox, going from 1 to 10 as it goes down on the right side of
the Fix box, and then starting again at 11-20 on the top left.  You only need to have an entry for ChkName next to the first appearance (from the
top) of a ChkNum in d2adef.

When checkbox 1 is checked in D2Accelerator, the information for each row with a 1 in its chknum is used.  The columns copied start with
LoopAnim and end with SubStop from missiles.txt.  When checkbox 2 is selected, then each row with a 2 will be used, all the way up to 20.

ChkNum 0 is just blood, I simply use these lines for the changes when the Blood checkbox is checked.  You can remove the ChkNum/ChkName
here it won't make a difference, these rows will always be copied to modify blood.

So basically, to make a checkbox:
Find the first row that you want your checkbox to change.
Put a name in here.
Put the same value for ChkNum in every row.
When the checkbox is checked, the data for columns LoopAnim through SubStop will be copied for the rows with the ChkNum.

The general principle when modding missiles is that fewer and/or smaller sprites = less lag.
I only know what some of these missile columns actually do, but all are releated visual changes.
LoopAnim is 0 for an animation that doesen't repeat, 1 for one that does, and 2 if your CelFile is Null
Celfile is the graphic file to use, the dccs in data\global\missiles.  To reduce lag it helps to either use Null to make it disappear, or use a smaller
image.  For example I changed charged bolt to use the quill rat's missiles.
AnimLen controls the length of the animation, if you have a longer length then you have frames in your Celfile you may get crashes.
To Fix firewall I set this very short, 2-3.  When a firewall is being made, it starts out very small.  This change keeps it small!
Be sure to copy this value when changing CelFiles.  It is 2 for Null.
AnimSpeed is the rate of playback of the file.
Randstard I have no clue so I don't mess with it.  I always copy it if I change the CelFile
SubLoop is 1 when there is a loop that plays once when the animation reaches the SubStart frame.  It then keeps replaying the frames between
SubStart and SubStop until the skill says it's repeated enough times.  Then it finishes the animlen value.

The entire last column, trans, is copied when the Translucency column is checked.  This does not interact with your Fix checkboxes, it simply
copies ALL the trans settings for every row when it is checked.  If theres a 1 here, the image will be transparent and see-through, otherwise not.
Mummy's unholy bolts have a setting of 2 actually, 2 and above produces some strange effects with coloring.

Once you have your settings all done, simply distribute with your mod in it's main folder (not in data/global/excel), then the user fires up
D2Accelerator, adds a mod and chooses the main folder.  D2adef and d2acfg are small enough that you can distrubte them with your mod
regardless of whether or not all your users will take advantage of it.

A note about how D2Accelerator works: when you add a mod to D2Accelerator, it renames the monstats, missiles, and levels files to stdmonstats,
stdmissiles and stdlevels.  If you have no monstats, missiles, or levels then the appropriate standard 1.09 files will be copied.  These are files
unmodified by any D2Accelerator options.  D2Accelerator then reads these files into memory, and looks at which checkboxes are selected.
Data from the D2adef file is then pasted on the excel sheet in memory over-riding the previous settings, based upon which checkboxes are
selected.  It then writes out this modified file as monstats, levels, and missiles.  D2Accelerator will always go back to the std file, add
modifications and save as a normal file.  When you remove a mod from D2Accelerator, the std files are renamed back to the normal files.  Just
so you don't get caught off guard while manually modding these things.