Fatal error 183 cannot read from file multicolors

Help Compiling .sp to .smx Scripting
Author

Message

Junior Member

OG Link's Avatar

Old

09-03-2020

, 18:29

 

Help Compiling .sp to .smx

Reply With Quote

#1


Hi OG Link here, I could use some help tf2 is a bit different then other programs I have worked with can someone help me understand why I can’t compile this new vipmenu I had made by a old tf2 friend and now he can’t help fix it idk where he is its been weeks anyway I try to compile the .sp to .smx and i get

vipmenu.sp : fatal error 183: cannot read from file: «multicolors»

I don’t understand what the issue is I tried researching the issue and only found something about adding multicolors.inc to my cfg but idk what that means and im just editing it on my desktop so Im kinda confused any advice and help would be great thank you

OG Link is offline

Veteran Member

PC Gamer's Avatar

Old

09-04-2020

, 05:10

 

Re: Help Compiling .sp to .smx

Reply With Quote

#2


1. find multicolors.inc file.
2. put it in your /sourcemod/scripting/include directory
3. try to compile your plugin.

Some plugin authors include bits of code from other authors. To do that their code will include a dependency on the the other authors work. You can tell when this occurs by looking at the top of the plugin code. It will say something like: #include <multicolors>

When you try to compile the plugin it will look in the /scripting/include directory for a file called multicolors.inc

I hope this helps….

PC Gamer is offline

Junior Member

OG Link's Avatar

Old

09-04-2020

, 14:34

 

Re: Help Compiling .sp to .smx

Reply With Quote

#3


Quote:

Originally Posted by PC Gamer
View Post

1. find multicolors.inc file.
2. put it in your /sourcemod/scripting/include directory
3. try to compile your plugin.

Some plugin authors include bits of code from other authors. To do that their code will include a dependency on the the other authors work. You can tell when this occurs by looking at the top of the plugin code. It will say something like: #include <multicolors>

When you try to compile the plugin it will look in the /scripting/include directory for a file called multicolors.inc

I hope this helps….

OHH Are you saying this has to be compiled inside my sourcemods folder I am just editing the file it self on my desktop.

OG Link is offline

Member

awyx's Avatar

Old

09-04-2020

, 14:51

 

Re: Help Compiling .sp to .smx

Reply With Quote

#4


Yes, download sourcemod, and use scripting folder I suppose (you dont need the other folders for compiling I think), that how I usually do it.
Put your plugin in scripting/, and the multicolors include goes to scripting/include/.
Then compile it

__________________

awyx is offline

Junior Member

OG Link's Avatar

Old

09-04-2020

, 14:53

 

Re: Help Compiling .sp to .smx

Reply With Quote

#5


Quote:

Originally Posted by awyx
View Post

Yes, download sourcemod, and use scripting folder I suppose (you dont need the other folders for compiling I think), that how I usually do it.
Put your plugin in scripting/, and the multicolors include goes to scripting/include/.
Then compile it

Haha I didn’t know that Lol I feel dumb Okay thank you so much!

OG Link is offline

Junior Member

OG Link's Avatar

Old

09-04-2020

, 16:07

 

Re: Help Compiling .sp to .smx

Reply With Quote

#6


Not sure What I Am doing wrong But I can’t get it working still I added it to scripting and have sourcemod copy from my server working with multicolors in include correctly and it still is saying same error?

OG Link is offline

Junior Member

OG Link's Avatar

Old

09-04-2020

, 17:03

 

Re: Help Compiling .sp to .smx

Reply With Quote

#7


NVM Figured it out
Edit: You gotta edit the files in sourcemods>scripting folder it self also and have all extensions in sourcemod as well


Last edited by OG Link; 09-05-2020 at 16:30.

OG Link is offline

#include <amxmodx>
#include <reapi>

#define WARMUPTIME     60    // Время вармапа
#define NUM_RR        1    // Кол-во рестартов
#define LATENCY        1    // Задержка между рестартами
#define DHUD_MESSAGE        // Показывать в dhud. Закомментируйте, чтобы был hud
#define GIVE_SHIELD    0    // 0 — выключить; 1 — Щит + deagle; 2 — щит + нож; 3 — щит и с диглом и ножом
#define STOP_PLUGS        // Отключать плагины на время вармапа
#define DM_MODE            // Бесконечный респавн на время вармапа
#define ThFiveHP_ON_KNIFE    // Выдает 35HP игрокам, если оружие — НОЖ

#if defined STOP_PLUGS
    new g_arPlugins[][] =    // Указывать название файлов, например test.amxx
    {
        «reapi_awp_limitter_182.amxx»,
        «amxx_vip_gold.amxx»,
        «weaponrest.amxx»,
        «crux_ansata.amxx»

            }
#endif
new g_szWeapon[32];
new g_iWp;
new HookChain:fwd_NewRound,
#if defined DM_MODE
    HookChain:fwd_Killed,
#endif
    HookChain:fwd_Spawn;
#if defined DHUD_MESSAGE
    #if AMXX_VERSION_NUM < 183
        #include <dhudmessage>
    #endif
#else
    new g_iHudSync;
#endif

public plugin_init()
{
    register_plugin(«Random Weapons WarmUP», «2.5.untested», «neugomon»);

    RegisterHookChain(RG_RoundEnd, «fwdRoundEnd», true);
    DisableHookChain((fwd_NewRound = RegisterHookChain(RG_CSGameRules_CheckMapConditions, «CSGameRules», true)));
    DisableHookChain((fwd_Spawn    = RegisterHookChain(RG_CBasePlayer_Spawn, «CBasePlayer_Spawn_Post», true)));
#if defined DM_MODE    
    DisableHookChain((fwd_Killed   = RegisterHookChain(RG_CBasePlayer_Killed, «CBasePlayer_Killed_Post», true)));

        register_clcmd(«joinclass», «clCmdJoinClass»);
    register_clcmd(«menuselect»,»clCmdJoinClass»);
#endif
#if !defined DHUD_MESSAGE
    g_iHudSync    = CreateHudSyncObj();
#endif
    state warmupOff;
}

public fwdRoundEnd(WinStatus:status, ScenarioEventEndRound:event, Float:tmDelay) <warmupOff>
    if(event == ROUND_GAME_COMMENCE)
        EnableHookChain(fwd_NewRound);

        public fwdRoundEnd(WinStatus:status, ScenarioEventEndRound:event, Float:tmDelay) <warmupOn>
    return;

public CSGameRules ()
{
    state warmupOn;

        set_member_game(m_bMapHasBuyZone, true);
    BuyZone_ToogleSolid(SOLID_NOT);

        DisableHookChain(fwd_NewRound);
    EnableHookChain(fwd_Spawn);
#if defined DM_MODE    
    EnableHookChain(fwd_Killed);
#endif    
#if defined STOP_PLUGS    
    PluginController(1);
#endif    
    switch((g_iWp = random(5)))
    {
        case 0: formatex(g_szWeapon, charsmax(g_szWeapon), «TMP»);
        case 1: formatex(g_szWeapon, charsmax(g_szWeapon), «UMP45»);
        case 2: formatex(g_szWeapon, charsmax(g_szWeapon), «Scout»);
        case 3: formatex(g_szWeapon, charsmax(g_szWeapon), «Grenade»);
        case 4: formatex(g_szWeapon, charsmax(g_szWeapon), «Knife»);
    }

            set_task(1.0, «ShowTimer», .flags = «a», .repeat = WARMUPTIME);
}
#if defined DM_MODE
public clCmdJoinClass(id) <warmupOff>
    return;

    public clCmdJoinClass(id) <warmupOn>
    if(get_member(id, m_iMenu) == Menu_ChooseAppearance)
        set_task(0.5, «SpawnPlayer», id);
#endif
public CBasePlayer_Spawn_Post(const id)
{
    if(!is_user_alive(id))
        return;

            rg_remove_all_items(id);

        switch(g_iWp)
    {
        case 0:
        {
            rg_give_item(id, «weapon_tmp»);
            rg_set_user_bpammo(id, WEAPON_TMP, 300);
        }
        case 1:
        {
            rg_give_item(id, «weapon_ump45»);
            rg_set_user_bpammo(id, WEAPON_UMP45, 300);
        }
        case 2:
        {
            rg_give_item(id, «weapon_scout»);
            rg_set_user_bpammo(id, WEAPON_SCOUT, 300);
        }
        case 3:
        {
            rg_give_item(id, «weapon_hegrenade»);
            rg_set_user_bpammo(id, WEAPON_HEGRENADE, 512);
        }
        case 4:
        {
        #if GIVE_SHIELD == 2 || GIVE_SHIELD == 3
            rg_give_item(id, «weapon_shield»);
        #endif
            rg_give_item(id, «weapon_knife»);
        #if defined ThFiveHP_ON_KNIFE
            set_entvar(id, var_health, 35.0);
        #endif    
        }    
    }    
}
#if defined DM_MODE
public CBasePlayer_Killed_Post(pVictim)
    set_task(1.0, «SpawnPlayer», pVictim);
#endif    
public ShowTimer()
{
    static timer = -1;
    if(timer == -1) timer = WARMUPTIME;

        switch(—timer)
    {
        case 0:
        {
            state warmupOff;

                        BuyZone_ToogleSolid(SOLID_TRIGGER);
            DisableHookChain(fwd_Spawn);
        #if defined DM_MODE    
            DisableHookChain(fwd_Killed);
        #endif
        #if defined STOP_PLUGS    
            PluginController(0);
        #endif    
        #if NUM_RR > 1        
            set_task(LATENCY, «SV_Restart», .flags = «a», .repeat = NUM_RR);
        #else
            SV_Restart();
        #endif
            timer = -1;
        }
        default:
        {
        #if defined DHUD_MESSAGE
            set_dhudmessage(.red = 135, .green = 206, .blue = 235, .x = -1.0, .y = 0.08, .holdtime = 0.9);
            show_dhudmessage(0, «Разминка на %s!^nРестарт через %d сек», g_szWeapon, timer);
        #else    
            set_hudmessage(135, 206, 235, .x = -1.0, .y = 0.9, .holdtime = 0.9, .channel = -1);
            ShowSyncHudMsg(0, g_iHudSync, «Разминка на %s!^nРестарт через %d сек», g_szWeapon, timer);
        #endif    
        }
    }
}

public SV_Restart()
    set_cvar_num(«sv_restart», 1);
#if defined DM_MODE    
public SpawnPlayer(id)
{
    if(is_user_alive(id))
        return;

            switch(get_member(id, m_iTeam))
    {
        case 1, 2: rg_round_respawn(id);
    }
}
#endif
stock PluginController(stop)
{
    for(new i; i < sizeof g_arPlugins; i++)
    {
        if(stop)pause  («ac», g_arPlugins[i]);
        else    unpause(«ac», g_arPlugins[i]);
    }    
}

stock BuyZone_ToogleSolid(const solid)
{
    new entityIndex = 0;
    while ((entityIndex = rg_find_ent_by_class(entityIndex, «func_buyzone»)))
        set_entvar(entityIndex, var_solid, solid);
}

Recommend Projects

  • React photo

    React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo

    Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo

    Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo

    TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo

    Django

    The Web framework for perfectionists with deadlines.

  • Laravel photo

    Laravel

    A PHP framework for web artisans

  • D3 photo

    D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Visualization

    Some thing interesting about visualization, use data art

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo

    Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo

    Microsoft

    Open source projects and samples from Microsoft.

  • Google photo

    Google

    Google ❤️ Open Source for everyone.

  • Alibaba photo

    Alibaba

    Alibaba Open Source for everyone

  • D3 photo

    D3

    Data-Driven Documents codes.

  • Tencent photo

    Tencent

    China tencent open source team.

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Fatal error 183 cannot read from file emitsoundany
  • Fatal error 183 cannot read from file dhooks
  • Fatal error 183 cannot read from file colors
  • Fatal error 120 cannot read from file sourcemod
  • Fatal error 113 occurred while download

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии