А-а-а, короче, вот ответ неськи 
Спасибо за детали! Поскольку в `Fishing_table` колонка `DropID` везде содержит значение "10901" (а `DropIDNet` — NULL), это, скорее всего, **ссылка на группу дропа** (drop group ID), а не прямой ID предмета. В структурах баз данных BDO (и эмуляторах вроде Archer) рыбалка часто использует группы дропа, где один ID (как 10901) определяет набор возможных предметов с шансами. Если вместо рыбы ловятся чёрные камни (ID 16001/16002) и серебро, значит, в группе 10901 прописаны эти нежелательные предметы вместо (или вместе с) рыбой.
Поскольку вы проверили конфиги, MongoDB и отсутствие таблиц вроде `drop` или `loot`, проблема, вероятно, в другой таблице sqlite, которая определяет содержимое групп дропа. В репаке Archer (на основе BDO эмуляторов) такие группы часто хранятся в таблицах вроде `RandomBox_table`, `ItemRandomBox_table`, `DropGroup_table` или `ItemDropGroup_table`. Серебро может быть отдельным полем (как валюта-дроп), а чёрные камни — стандартными предметами.
### 1. **Перечислите все таблицы в bdoOLD.sqlite3**
Чтобы убедиться, что вы не пропустили таблицу:
- В DB Browser for SQLite выполните запрос:
 ```sql
 SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;
 ```
- Ищите таблицы с именами, содержащими "random", "box", "dropgroup", "itemdrop", "lootgroup", "fishingdrop" или подобными. Возможные варианты:
 - `RandomBox_table`
 - `ItemRandomBox_table`
 - `DropGroup_table`
 - `ItemDropGroup_table`
 - `RandomItem_table`
 - `FishingDrop_table` (если есть вариации)
- Если найдёте, перейдите к шагу 2.
### 2. **Проверьте группу дропа 10901 в найденной таблице**
Предположим, таблица называется `RandomBox_table` (это распространённо в BDO эмуляторах). Выполните:
```sql
SELECT * FROM RandomBox_table WHERE id = 10901 OR group_id = 10901 OR box_id = 10901;
```
- Или замените `RandomBox_table` на имя найденной таблицы.
- В результатах ищите столбцы вроде:
 - `item_id` или `drop_id`: Здесь будут ID предметов (например, 16001 для чёрного камня оружия, 16002 для брони, или 1 для серебра/валюты).
 - `count` или `quantity`: Количество.
 - `rate` или `probability`: Шанс выпадения (например, 0.1 для 10%).
 - Если серебро не как item, а как валюта, может быть столбец `money` или `silver_amount`.
- Пример структуры (если таблица похожа):
 | id    | item_id | count | rate |
 |-------|---------|-------|------|
 | 10901 | 16001  | 1     | 0.2  |  // Чёрный камень (оружие)
 | 10901 | 1      | 1000  | 0.3  |  // Серебро
 | 10901 | 839    | 1     | 0.5  |  // Рыба (сельдь)
### 3. **Исправьте группу дропа**
- **Удалите нежелательные предметы** (чёрные камни и серебро):
 ```sql
 DELETE FROM RandomBox_table 
 WHERE (id = 10901 OR group_id = 10901) AND item_id IN (1, 16001, 16002);
 ```
 (Замените `RandomBox_table` на реальное имя таблицы, и `item_id` на соответствующий столбец.)
- **Добавьте или увеличьте шансы для рыбы** (если рыбы нет или мало):
 Сначала найдите ID рыб в `item_table`:
 ```sql
 SELECT id, name FROM item_table WHERE name LIKE '%рыб%' OR name LIKE '%fish%';
 ```
 Примеры ID рыб: 839 (сельдь), 840 (окунь), 841 (сом) и т.д.
 
 Затем добавьте записи (пример для группы 10901):
 ```sql
 INSERT INTO RandomBox_table (id, item_id, count, rate) 
 VALUES 
 (10901, 839, 1, 0.5),   -- Сельдь, шанс 50%
 (10901, 840, 1, 0.3),   -- Окунь, шанс 30%
 (10901, 841, 1, 0.2);   -- Сом, шанс 20%
 ```
 Убедитесь, что сумма `rate` близка к 1.0 (или 100%, в зависимости от формата).
- **Измените существующие записи** (альтернатива удалению):
 ```sql
 UPDATE RandomBox_table 
 SET item_id = 839, rate = 1.0 
 WHERE (id = 10901 OR group_id = 10901) AND item_id IN (16001, 16002, 1);
 ```
 Это заменит чёрные камни и серебро на рыбу (например, ID 839) со 100% шансом.
### 4. **Дополнительные проверки**
- Если группа 10901 содержит подгруппы (sub-groups), проверьте столбцы вроде `sub_id` или `group_link` и рекурсивно проверьте связанные записи.
- Если серебро добавляется отдельно (не как item), ищите в таблице поля вроде `min_silver`, `max_silver` и установите их на 0:
 ```sql
 UPDATE RandomBox_table 
 SET min_silver = 0, max_silver = 0 
 WHERE id = 10901;
 ```
- После изменений сохраните базу (File > Write Changes) и перезапустите сервер. Протестируйте рыбалку в игре.
### 5. **Если таблицы не найдены**
- Если нет таблиц с "random" или "dropgroup", проблема может быть в серверных скриптах:
- Проверьте папку `gameserver/scripts` (или `bin/scripts`) на файлы вроде `fishing.lua`, `drop.lua` или `
randomdrop.java`.
 - Ищите код, где упоминается 10901, и редактируйте добавление предметов (например, удалите `addItem(16001)` или `addSilver(1000)`).
 - Пример в Lua:
   ```lua
   if dropGroup == 10901 then
     -- Удалите: addItem(player, 16001, 1)  -- Чёрный камень
     -- Удалите: addSilver(player, 1000)
     addItem(player, 839, 1)  -- Рыба
   end
   ```
- Если скрипты на Java, используйте текстовый редактор (Notepad++ или VS Code) для поиска по ключу "10901".
### 6. **Рекомендации**
- **Резервная копия**: Сделайте копию `bdoOLD.sqlite3` перед SQL-запросами.
- **ID подтверждение**: Чёрные камни — 16001 (оружие), 16002 (броня). Серебро — часто 1 или специальное. Рыбы — из `item_table`.
- **Тест**: Создайте тестовую зону рыбалки и проверьте дроп.
- **Ragezone**: Если не поможет, зарегистрируйтесь на Ragezone и спросите в теме Archer repack (поиск по "Archer BDO repack") о "fishing drop group 10901". Там могут быть кастомные изменения в репаке.
Если опишете список таблиц из шага 1 или данные из группы 10901, я дам более точные SQL-запросы!