[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Прозрачные объекты в samp 0.3b?
zahar911Дата: Вторник, 30.11.2010, 21:41 | Сообщение # 1
Глава Русской Мафии Балосс
Группа: Администраторы
Сообщений: 149
Репутация: 14
Статус: Offline
Начало появляться большое количество тем с проблемами типа: "почему объекты стали прозрачными?".
Связи с этим создал эту тему.

1.Правильный перевод сервера с версии 0.3a на 0.3b
Для начала нужно скачать новые инклуды (желательно с официального сайта)

Запускаем программу pawno из скачаного архива.
И открываем в ней все используемые скрипты и моды, далее жмем компилировать.
Обновляем старые файлы samp-server, samp-npc, announce файлами из архива. Вот и все! Сервер переведен на версию 0.3b !!!

2.Использование стримера
Если на сервере кол-во объектов превышает 400 (это текущий лимит объектов), а новые дома, парковки, трюки и т.п. нужно засунуть на сервер, то нам нужен стример объектов.

Могу порекомендовать стример, который сам использую - Fallout's Streamer (текущая версия 0.5)
Тестировал - спокойно держит 2500 объектов, разработчиками заявлен лимит 40.000.

Настройка:
Открываем файл F_Streamer.inc

Видим строчки:

Code
#define F_MAX_OBJECTS   10000    //количество объектов используемых на сервере        
#define UpdateTime   300    //время обновления в миллисекундах.        
#define ObjectsToStream   380    //максимальное количество объектов отображаемых игроку (max = 400).        
#define StreamRange   400.0    //дистанция на которой будут отображаться объекты        
#pragma dynamic    30000    //измените значение если возникнут проблемы с отображением огромных объектов

Функционал:

Code
native F_CreateObject(modelid, Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz); //создать объекь.     
native F_DestroyObject(objectid); //удалить объект.     
native F_PlayerObjectUpdate(playerid, Float:x, Float:y, Float:z); //обновить объект.     
native F_MoveObject(objectid, Float:x, Float:y, Float:z, Float:speed); //движение объекта.     
native F_StopObject(objectid); //остановить движение.     
native F_IsValidObject(objectid); //возвращает 1 если объект сужествует, 0 - если не существует.     
native F_SetObjectPos(objectid, Float:x, Float:y, Float:z); //устанавливает местоположение объекта.     
native F_GetObjectPos(objectid, &Float:x, &Float:y, &Float:z); //получает коорддинаты объекта.     
native F_SetObjectRot(objectid, Float:rx, Float:ry, Float:rz); //устанавливает поворот объекта.     
native F_GetObjectRot(objectid, &Float:rx, &Float:ry, &Float:rz); //получает поворот объекта.     
native F_RefreshObjects(playerid); //пересоздает объект     
native F_ObjectUpdateForAll(); //обновляет объект для всех игроков.[/color]

Стабильное использование:
Для начала конвертируем объекты для стримера на сайте convertffs.com
Открываем F_Streamer.pwn, и добавляем конвертированные объекты в public OnFilterScriptInit()
Компилируем файл, подключаем его в файле server.cfg. Все! Стример настроен!
Примечание: если в моде/скрипте используется функция SetPlayerPos, для быстрого отображения объектов желательно подключить инклуд F_Streamer

Code
#include <F_Streamer


=======Я УЗНАЛ , ЧТО У МЕНЯ , ЕСТЬ ОГРОМНАЯ СЕМЬЯ=====
=====МОНИТОР, СИСТЕМНЫЙ БЛОК , В СЕТЬ ВОТКНУЛ Я ПРОВОДОК===
======ВИНДОУС, НЕБО ГОЛУБОЕ , ЭТО ВСЁ МОЁ, РОДНОЕ======
======БЕЗ ИНЕТА ЖИТЬ НЕЛЬЗЯ, ЭТО РОДИНА МОЯ!!!=======
 
  • Страница 1 из 1
  • 1
Поиск: