Skip to content
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Donate
Collapse

Plutonium

birchyundefined

birchy

@birchy
About
Posts
74
Topics
10
Shares
0
Groups
0
Followers
36
Following
7

Posts

Recent Best Controversial

  • [Release] IW5 Mapvote
    birchyundefined birchy

    Thanatos Are you trying to use this locally? This will only work for dedicated servers

    MW3 Modding Support & Discussion

  • Weapon anims
    birchyundefined birchy

    phen6m They need to be inside of a fastfile and loaded as a mod which is actually possible.

    MW3 Modding Support & Discussion

  • Help!!
    birchyundefined birchy

    line 139 and subsequent cases have , instead of .

    BO2 Modding Support & Discussion

  • [Release] IW5 Mapvote
    birchyundefined birchy

    Fry those were the bindings I have in my cfg, in hindsight should have added the others for completeness. Glad you sorted it for yourself.

    MW3 Modding Support & Discussion

  • [Release] IW5 Mapvote
    birchyundefined birchy

    Pythagorion He didn't add the fact that you need to provide map names, refer to the bottom of the source code.

    MW3 Modding Support & Discussion

  • How do I make it where when people die they dont have 10 seconds after going into flags?
    birchyundefined birchy

    Scripto Feel free to share a code snippet, though it sounds like you just want to kill the thread responsible (for killing the player after X amount of time) on player death.

    BO2 Modding Releases & Resources

  • REPOST: Need helping implementing these MP features into my ZM servers (if possible)
    birchyundefined birchy

    Had a free 5 minutes. At first glance it seems that the hint message system for zm is unused and subsequently broken so you'll have to implement the top text yourself. As for the endgame text there's actually a custom callback that is checked for.

    #include maps/mp/gametypes_zm/_hud_util;
    
    init() {
        level.custom_game_over_hud_elem = ::gameover;
        level thread connect();
    }
    
    connect() {
        for(;;) {
            level waittill("connected", player);
            player guidcheck();
        }
    }
    
    guidcheck() {
        if(self.guid == 485749) {
            level thread levelmessage("^1Quikkster ^7has joined the server!", 10);
        }
    }
    
    levelmessage(message, duration) {
        if(isdefined(level.levelmessage))
            level.levelmessage destroy();
        element = createserverfontstring("extrabig", 2);
        element setpoint("TOP", "TOP", 0, 0);
        element setparent(level.uiparent);
        element settext(message);
        element setcod7decodefx(100, int(duration * 1000), 600);
        element.hidewheninmenu = 1;
        element.archived = 0;
        element.color = (1,1,1);
        element.alpha = 1;
        level.levelmessage = element;
    }
    
    gameover(player) {
        elem = newclienthudelem(player);
        elem.alignx = "center";
        elem.aligny = "middle";
        elem.horzalign = "center";
        elem.vertalign = "middle";
        elem.y -= 130;
        if(isDefined(level.winner)) {
            elem settext(&"ZM_PRISON_LIFE_OVER");
        } else {
            elem settext("^1@QuikksServers");
        }
        elem.hidewheninmenu = 1;
        elem.foreground = 1;
        elem.fontscale = 3;
        elem.color = (1,1,1);
        elem.alpha = 0;
        elem fadeovertime(1);
        elem.alpha = 1;
        return elem;
    }
    
    BO2 Modding Support & Discussion

  • [Release] T6 Cranked Gamemode Script
    birchyundefined birchy

    Quikkster the iw5 gsc plays sounds on individual players, feel free to take a look at that

    BO2 Modding Releases & Resources

  • [Release] IW5 Mapvote
    birchyundefined birchy

    Country Updated the main post.

    MW3 Modding Support & Discussion

  • GSC String parsing help needed.
    birchyundefined birchy

    NourSofanati

    int(value); //Cast to integer, returns integer.
    strtok(string, delimiter); //Tokenises string, returns array.
    
    BO2 Modding Support & Discussion

  • [Release] IW5 Mapvote
    birchyundefined birchy

    IW5 mapvote for dedicated servers.

    Preview

    Repository: https://github.com/callanb/iw5-mapvote
    Preview: https://www.youtube.com/watch?v=erPDZ6ETiL0

    Installation:

    • Download the .gsc file from the main repository.
    • Place the .gsc file at %localappdata%/plutonium/storage/iw5/scripts.
    • Note: Create folders if they do not exist.
    MW3 Modding Support & Discussion

  • [Release] IW5 Cranked Gamemode Script
    birchyundefined birchy

    To give people an example of what can be done with custom scripts, I have implemented the cranked behaviour found in various other titles. It works for every gamemode (Figured it made sense to provide this script for both titles as a learning resource).

    The download for this script can be found on my github repository (In addition to the initial T6 version).

    Download link.

    Gameplay preview.

    Preview

    MW3 Modding Releases & Resources

  • [Release] T6 Cranked Gamemode Script
    birchyundefined birchy

    To give people an example of what can be done with custom scripts, I have implemented the cranked behaviour found in various other titles. It works for every gamemode.

    The dvar crankedtime can be used to change the time a player has to live.

    The download for this script can be found on my github repository (In addition to an IW5 version).

    Download link.

    Gameplay preview.

    Preview

    BO2 Modding Releases & Resources

  • [Zombies] How do I become invisible to Zombies?
    birchyundefined birchy

    In script you can set .ignoreme on a player entity to 1.

    BO2 Modding Support & Discussion

  • TranZit Reimagined 2020 | Colder Days Mod | Updated July 17th, 2025
    birchyundefined birchy

    You might want to provide the source code for your projects. Looks pretty though.

    BO2 Modding Releases & Resources bo2 bo2 zombies reimagined tranzit

  • how do i make bots not able to vote?
    birchyundefined birchy

    Scripto make use of player.pers["isBot"]

    BO2 Modding Support & Discussion

  • MW3 GSCs Not Loading
    birchyundefined birchy

    anotherpxrson there wouldn't be much modification needed to get one to work, albeit the possibility of one or two features not working

    MW3 Modding Support & Discussion

  • Can anyone help me with this script?
    birchyundefined birchy

    Matheus AC-3 why are you decompiling anything, just remove what you want removed from the original file then compile it using the compiler provided in the forums toolkit. https://github.com/teh-bandit/bo2-cold-war/blob/main/source
    https://forum.plutonium.pw/topic/10/tutorial-loading-custom-gsc-scripts

    BO2 Modding Support & Discussion

  • Can anyone help me with this script?
    birchyundefined birchy

    Matheus AC-3 said in Can anyone help me with this script?:

    #include maps/mp/_utility;
    #include common_scripts/utility;
    #include maps/mp/zombies/_zm;
    #include maps/mp/zombies/_zm_perks;
    #include maps/mp/zombies/_zm_utility;
    #include maps/mp/gametypes_zm/_hud_util;
    #include maps/mp/gametypes_zm/_hud_message;
    init()
    {
    precacheshader( "damage_feedback" );
    precacheshader( "menu_mp_fileshare_custom" );
    level.perk_purchase_limit = getdvarintdefault( "cmPlayerPerkLimit", 9 );
    level.cmperkdoubletapfirerate = getdvarfloatdefault( "cmPerkDoubleTapFireRate", 0,5 );
    setdvar( "perk_weapRateMultiplier", level.cmperkdoubletapfirerate );
    perk_machine_removal( "specialty_rof" );
    perk_machine_removal( "specialty_additionalprimaryweapon" );
    perk_machine_removal( "specialty_flakjacket" );
    perk_machine_removal( "specialty_nomotionsensor" );
    level._random_zombie_perk_cost = undefined;
    level._challenges = undefined;
    setdvar( "player_strafeSpeedScale", 1 );
    setdvar( "player_sprintStrafeSpeedScale", 1 );
    setdvar( "player_backSpeedScale", 1 );
    setdvar( "jump_slowdownEnable", 0 );
    level thread onplayerconnect();
    }
    onplayerconnect()
    {
    for(;;)
    {
    level waittill( "connected", player );
    player iprintln( "^1Cold War Zombies" );
    player thread zombie_health();
    player thread visuals();
    player thread onplayerspawned();
    }
    }
    zombie_health()
    {
    level endon( "end_game" );
    self endon( "disconnect" );
    for(;;)
    {
    level waittill( "start_of_round" );
    if( level.zombie_health > 10000 )
    {
    level.zombie_health = 10000;
    }
    wait 0,05;
    }
    }
    visuals()
    {
    self setclientdvar( "r_fog", 0 );
    self setclientdvar( "r_dof_enable", 0 );
    self setclientdvar( "r_lodBiasRigid", -1000 );
    self setclientdvar( "r_lodBiasSkinned", -1000 );
    self setclientdvar( "r_lodScaleRigid", 1 );
    self setclientdvar( "r_lodScaleSkinned", 1 );
    self useservervisionset( 1 );
    self setvisionsetforplayer( "remote_mortar_enhanced", 0 );
    }
    onplayerspawned()
    {
    level endon( "end_game" );
    self endon( "disconnect" );
    self waittill( "spawned_player" );
    self setperk( "specialty_unlimitedsprint" );
    self thread drop();
    self thread rof();
    self thread rof_ready();
    self thread quick_revive();
    self thread quick_revive_ready();
    self thread staminup();
    self thread health_bar_hud();
    }
    drop()
    {
    level endon( "end_game" );
    self endon( "disconnect" );
    if( self meleebuttonpressed() )
    {
    duration = 0;
    while( self meleebuttonpressed() )
    {
    duration = duration + 1;
    if( duration == 25 )
    {
    weap = self getcurrentweapon();
    self dropitem( weap );
    break;
    }
    wait 0,05;
    }
    }
    wait 0,05;
    ?;//Jump here. This may be a loop, else, continue, or break. Please fix this code section to re-compile.
    }
    rof()
    {
    level endon( "end_game" );
    self endon( "disconnect" );
    rof_hud = newclienthudelem( self );
    rof_hud.alignx = "center";
    rof_hud.aligny = "bottom";
    rof_hud.horzalign = "user_center";
    rof_hud.vertalign = "user_bottom";
    rof_hud.y = rof_hud.y - 35;
    rof_hud.alpha = 0;
    rof_hud.color = ( 1, 1, 1 );
    rof_hud.hidewheninmenu = 1;
    rof_hud setshader( "menu_mp_fileshare_custom", 32, 32 );
    self waittill_any( "perk_acquired", "perk_lost" );
    for(;;)
    {
    while( self getvelocity() >= 1 && self.perks_active.size >= 3 )
    {
    duration = 0;
    rof_hud.alpha = 0;
    self unsetperk( "specialty_rof" );
    while( self getvelocity() == 0 )
    {
    duration = duration + 1;
    if( duration >= 100 )
    {
    rof_hud.alpha = 1;
    self setperk( "specialty_rof" );
    }
    wait 0,05;
    }
    }
    rof_hud.alpha = 0;
    self unsetperk( "specialty_rof" );
    wait 0,05;
    }
    }
    rof_ready()
    {
    level endon( "end_game" );
    self endon( "disconnect" );
    rof_ready_hud = newclienthudelem( self );
    rof_ready_hud.alignx = "right";
    rof_ready_hud.aligny = "bottom";
    rof_ready_hud.horzalign = "user_right";
    rof_ready_hud.vertalign = "user_bottom";
    rof_ready_hud.x = rof_ready_hud.x - 155;
    rof_ready_hud.alpha = 0;
    rof_ready_hud.color = ( 1, 1, 1 );
    rof_ready_hud.hidewheninmenu = 1;
    rof_ready_hud setshader( "specialty_doubletap_zombies", 32, 32 );
    self waittill_any( "perk_acquired", "perk_lost" );
    for(;;)
    {
    if( self.perks_active.size >= 3 )
    {
    rof_ready_hud.alpha = 1;
    }
    else
    {
    rof_ready_hud.alpha = 0;
    }
    wait 0,05;
    }
    }
    quick_revive()
    {
    level endon( "end_game" );
    self endon( "disconnect" );
    for(;;)
    {
    if( self.health < self.maxhealth && self hasperk( "specialty_quickrevive" ) )
    {
    self.health = self.health + 1;
    }
    wait 0,1;
    }
    }
    quick_revive_ready()
    {
    level endon( "end_game" );
    self endon( "disconnect" );
    qr_hud = newclienthudelem( self );
    qr_hud.alignx = "left";
    qr_hud.aligny = "bottom";
    qr_hud.horzalign = "user_left";
    qr_hud.vertalign = "user_bottom";
    qr_hud.x = qr_hud.x + 155;
    qr_hud.alpha = 0;
    qr_hud.color = ( 1, 1, 1 );
    qr_hud.hidewheninmenu = 1;
    qr_hud setshader( "damage_feedback", 32, 32 );
    self waittill_any( "perk_acquired", "perk_lost" );
    for(;;)
    {
    if( getplayers().size <= 1 && self hasperk( "specialty_quickrevive" ) )
    {
    qr_hud.alpha = 1;
    }
    else
    {
    qr_hud.alpha = 0;
    }
    wait 0,05;
    }
    }
    staminup()
    {
    level endon( "end_game" );
    self endon( "disconnect" );
    for(;;)
    {
    self waittill_any( "perk_acquired", "perk_lost" );
    if( self hasperk( "specialty_longersprint" ) )
    {
    self setperk( "specialty_movefaster" );
    self setperk( "specialty_fallheight" );
    }
    else
    {
    self unsetperk( "specialty_movefaster" );
    self unsetperk( "specialty_fallheight" );
    }
    }
    }
    health_bar_hud()
    {
    level endon( "end_game" );
    self endon( "disconnect" );
    flag_wait( "initial_blackscreen_passed" );
    health_bar = self createprimaryprogressbar();
    if( level.script == "zm_buried" || level.script == "zm_tomb" )
    {
    health_bar setpoint( undefined, "BOTTOM", -360, -95 );
    }
    else
    {
    health_bar setpoint( undefined, "BOTTOM", -360, -70 );
    }
    health_bar.hidewheninmenu = 1;
    health_bar.bar.hidewheninmenu = 1;
    health_bar.barframe.hidewheninmenu = 1;
    health_bar_text = self createprimaryprogressbartext();
    if( level.script == "zm_buried" || level.script == "zm_tomb" )
    {
    health_bar_text setpoint( undefined, "BOTTOM", -285, -95 );
    }
    else
    {
    health_bar_text setpoint( undefined, "BOTTOM", -285, -70 );
    }
    health_bar_text.hidewheninmenu = 1;
    while( 1 )
    {
    if( IsDefined( self.e_afterlife_corpse ) )
    {
    if( health_bar.alpha != 0 )
    {
    health_bar.alpha = 0;
    health_bar.bar.alpha = 0;
    health_bar.barframe.alpha = 0;
    health_bar_text.alpha = 0;
    }
    wait 0,05;
    continue;
    }
    if( health_bar.alpha != 1 )
    {
    health_bar.alpha = 1;
    health_bar.bar.alpha = 1;
    health_bar.barframe.alpha = 1;
    health_bar_text.alpha = 1;
    }
    health_bar updatebar( self.health / self.maxhealth );
    health_bar_text setvalue( self.health );
    wait 0,05;
    }
    }

    Try to format your posts with the code tag, but if you just read through you'll notice you have instances of wait 0,05 rather than 0.05

    BO2 Modding Support & Discussion
  • 1 / 1
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Donate