"custom callback" files can be used to override the automatically generated callbacks. in this file, you can write NML statements (e.g. switches) which will be preprocessed and then included into the engine file. the VEH_ID() macro can be used to generate unique names for identifiers. to use these switches in the graphics{}-block for the vehicle, you can define the macros documented below. the following builtin callbacks can be overridden by a #define: GFX_ The target (switch or formula) of the graphics callback for the -th part of the vehicle GUI_ The target of the purchase graphics callback for the -th part of the vehicle RECOLOUR_ The target of the recolour mask callback for the -th part of the vehicle RECOLOUR_GUI_ The target of the purchase recolour mask callback for the -th part of the vehicle TEXT The target of the additional NewGRF text for the purchase list callback SOUND_EFFECT The target of the sound effect callback RUN_COST The target of the running cost callback RUN_COST_PURCHASE The target of the running cost in the purchase list callback CAPACITY The target of the capacity callback LOADING_SPEED The target of the loading speed callback ARTIC The target of the articulated parts callback additionally, the macro "CUSTOM" may be defined to add new lines to the graphics{} block, to handle callbacks that are not automatically generated.