По второму вопросу:
Номер очередной БД-ы битвы берётся из индекса таблички BattleInfo. А индекс этот отмечен как ID строки, соотв-но он САМ увеличивается на 1 при новой вставке.
Поэтому, для того, чтобы сбросить счётчик баз - нужно делать ClearAll, иначе никак (так сам скуль-сервер работает, я тоже в своё время заморачивался - как сбросить ID в начало. Ничего, кроме как пересоздания таблицы не накопал). БЖСЭ, как говориться.
По удалению руками "ненужных" БД битв - в принципе, ничего страшного в этом нет. Главное, чтобы не было обращений в этим БД. Да, и при обращении к несуществующей БД-е - тоже ничего страшного не будет: ошибка в лог упадёт, и всё. Вот, только лог ошибок может расползаться до неприличных р-ров.

Если вычищаете ВСЮ табличку dbo.BattleInfo - можно это делать черех ХП ClearBattleInfo. Тогда индексы БД битв будут начинаться с "1".
Но тут могет засада получиться (вернее получится) - в табличке учёта вылетов будут неправильные ссылки, т.к. они привязаны к №битвы и №вылета в конкретной битве.

З.Ы. Мне для анализа - какой р-р БД Serv_DB у Вас сейчас, какой общий р-р БД битв и какой средний р-р одной БД битвы. И сколько по времени идёт одна битва.