I believe there is a bug in basic_DS.m (version 1.0.2)
On line~542 it reads:
initial_inds = ceil(rand(1, num_resample_sites) * num_resample_sites);
It should read instead:
initial_inds = ceil(rand(1, num_resample_sites) * length(sites_to_use));
Otherwise if num_resample_sites < num_resample_sites then the indices greater than num_resample_sites never get picked in the resampling process.