Instead of using the require function to include files, use shard_include. When using shard_include, the function allows for games to override vanilla Shard files.

For example, if running under BA this code:

shard_include( 'example' )

Will attempt to load the file example.lua in this order:

  •  ba/example.lua
  •  example.lua

This allows behaviours to be modified for individual games without creating forks of Shard.