Быстрая загрузка текстур неба

Статус
В этой теме нельзя размещать новые ответы.
Сообщения
3,582
Реакции
1,570
Помог
137 раз(а)
Имеется плагин:
Код:
#include <amxmodx>  

new const VERSION[] = "2.2";

new const skies[][] =
{
    "m_bas_", "mandaris256_", "k1nder",
    "blood", "mpa30"
};

public plugin_init()
    register_plugin("Random Skies", VERSION, "tuty/NordicWarrior");

public plugin_precache()
    server_cmd("sv_skyname %s", skies[random_num(0, charsmax(skies))]);
При первом заходе на карту с другим небом .tga-файлы качаются нормально, с fastdl. Но при смене карты (т.е. при второй и более загрузке файлов), данные файлы качаются как обычно, через кс.
Есть ли способ исправить это?

P.s. я даже сменил форвард на plugin_precache(), т.к. он вызывается первым, но это не принесло результатов.
P.p.s. единственным решением вижу прекешить и скачивать сразу все файлы клиенту, но есть ли другой способ?
 
Сообщения
509
Реакции
111
Помог
16 раз(а)
sbelov020, создать или добавть в .res файл карты текстуры неба.
 
Сообщения
3,582
Реакции
1,570
Помог
137 раз(а)
r1nk0, причём тут карты вообще? Я хочу сделать это посредством амхх.
 
Сообщения
509
Реакции
111
Помог
16 раз(а)
sbelov020, Да это понятно,но я хз возможно дело и не в плагине,но можно все текстуры неба нестандартного подгружать через res файл карт,а не плагином.
 

fox

Сообщения
176
Реакции
49
Помог
7 раз(а)
sbelov020, стояла данная версия, проблем не наблюдалось.

sv_skies_mode 0/1
0 - небо будет стандартным, заданное картой
1 - небо будет меняться

Код:
#include < amxmodx >

new gPluginMode;

new const gSkies[ ][ ] =
{
    "2desert", "alien1", "alien2", "alien3",
    "black", "city", "cliffe", "desert",
    "dusk", "morning","neb1", "neb6",
    "neb7", "space", "xen10", "xen8",
    "xen9", "night", "black","green",
    "blue", "backalley", "city1", "morningdew",
    "hav", "cliff", "office", "grnplsnt",
    "tornsky", "doom1", "cx", "de_storm",
    "snowlake_", "tornsky", "trainyard", "tsccity_",
    "snow", "2desert", "des"
};

public plugin_init( )
{
    register_plugin( "Random Skies", "2.0.0", "tuty" );
    
    gPluginMode = register_cvar( "sv_skies_mode", "1" );  // 0 - disabled, 1 - random skies
}

public plugin_end( )
{
    if( get_pcvar_num( gPluginMode ) == 1 )
    {
        server_cmd( "sv_skyname %s", gSkies[ random_num( 0, charsmax( gSkies ) ) ] );
    }
}
 
Сообщения
144
Реакции
276
Помог
1 раз(а)
А где сам прекеш файлов через дженерик ?
 
  • Нравится
Реакции: voed
Сообщения
148
Реакции
48
Помог
4 раз(а)
sbelov020, у самого были проблемы по такому же принципу.
Решение:
Отключил загрузку с сервера. Только фаст дл)
 
Сообщения
3,582
Реакции
1,570
Помог
137 раз(а)
fox, я с него же и переделал.
SISA, в оригинале не было, хз.
 
Сообщения
3,582
Реакции
1,570
Помог
137 раз(а)
SISA, и как правильно их запрекешить? пробовал так - всё равно обычная загрузка, не с фастдл:

Код:
#include <amxmodx>   

new const VERSION[] = "2.3";

new const g_szSkies[][] =
{
    "m_bas_", "mandaris256_", "k1nder",
    "blood", "mpa30", "sky120", "sky121",
    "MilkWorld", "sky118"
};

public plugin_init()
    register_plugin("Random skies", VERSION, "tuty/NordicWarrior");

public plugin_precache()
{
    new iSky = random_num(0, charsmax(g_szSkies));

    precache_generic(fmt("gfx/env/%sbk.tga", g_szSkies[iSky]));
    precache_generic(fmt("gfx/env/%sdn.tga", g_szSkies[iSky]));
    precache_generic(fmt("gfx/env/%sft.tga", g_szSkies[iSky]));
    precache_generic(fmt("gfx/env/%slf.tga", g_szSkies[iSky]));
    precache_generic(fmt("gfx/env/%srt.tga", g_szSkies[iSky]));
    precache_generic(fmt("gfx/env/%sup.tga", g_szSkies[iSky]));

    server_cmd("sv_skyname %s", g_szSkies[iSky]);
}
 
Сообщения
3,582
Реакции
1,570
Помог
137 раз(а)
up. я вообще правильно запрекешил .tga?
 
Сообщения
144
Реакции
276
Помог
1 раз(а)
Если они не скачиваются с фастдл, значит их там нет. До входа на сервере в консоли клиента developer 1 и лог подключения сюда скопируйте.
 
Сообщения
3,582
Реакции
1,570
Помог
137 раз(а)
SISA, файлы на фастдл присутствуют. Я описал проблему в первом посте.
При первом заходе на карту с другим небом .tga-файлы качаются нормально, с fastdl. Но при смене карты (т.е. при второй и более загрузке файлов), данные файлы качаются как обычно, через кс.
 

Garey

ninjaCow
Сообщения
422
Реакции
1,056
Помог
10 раз(а)
sbelov020 проблема не в сервере а в клиенте, когда клиент качает файлы с сервера он добавляет в себе в игру строчку по типу "servername:map" что с этого сервера эту карту качать ненадо (через фастдл) - из за этого проблема. Решается перезапуском кс или если пропатчить кс :-)
13 Авг 2019
HexReplaceInLibrary("hw.dll", "F6D81BC040c3", "B801000000c3", 0, 0);
 
Последнее редактирование:
Сообщения
3,582
Реакции
1,570
Помог
137 раз(а)
Garey, спасибо за ответ.

Тогда пришлось сделать, как я и предполагал, через прекеш всех файлов сразу. Тему можно закрывать.
 
Статус
В этой теме нельзя размещать новые ответы.

Пользователи, просматривающие эту тему

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу