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

Plutonium

Sorexundefined

Sorex

@Sorex
Contributor
About
Posts
696
Topics
34
Shares
0
Groups
1
Followers
160
Following
0

Posts

Recent Best Controversial

  • How sexy would this be? 👀
    Sorexundefined Sorex

    Slxxpy Thats so cool. I love it ❤

    General Discussion

  • FIX YOUR SPRINT
    Sorexundefined Sorex

    JohnBluR69 I THINK IS YOUR KEYBOARD BORKEN. HAVE YOU THINK ALSO ABOUT THAT POSSIBILITY?

    MW3 Client Support

  • Does anyone known how to change loading for zombies
    Sorexundefined Sorex

    @Adem-Dz Like that
    https://forum.plutonium.pw/topic/3263/release-zombies-loadscreen-screen
    You need only to change image and convert it to iwi

    BO2 Modding Support & Discussion

  • [Release] Haisa's Camo Pack V1
    Sorexundefined Sorex

    They are very clean, I like them. They are well made and well detailed great work. I really like the style you use, I would like to see more of camos.

    Good Job Haisa 👍

    BO2 Modding Releases & Resources

  • New Black ops II Mapvote
    Sorexundefined Sorex

    Features Implemented

    gunji All of the suggestions you have offered so far have been implemented. The mapvote menu I think can be released publicly in a few days if all goes well.

    More Suggestions

    Add ideas if you have any so we can make this simple mapvote better. My goal is to make an easy to configure mapvote for everyone.
    Try to explain your ideas in the best way possible. Give a title and a description for each one so that I can immediately understand the request to be implemented.

    BO2 Modding Support & Discussion

  • My Take on AutoSpawnBots & Sniper Only Damage (w/ almost hit & distance meter) [Trickshotting GSC]
    Sorexundefined Sorex

    Fix

    Nothing special, just some simple fix.

    onPlayerConnect

    Don't check if the player is a bot when you already know that is not a bot

    onPlayerConnect()
    {
        for(;;)
        {
            level waittill("connected", player);
            player thread onPlayerSpawned();
            
            if(player is_bot())
            {
    	    player thread botCantWin(); // by DoktorSAS
    	}
            else
            {
    	    player thread kickbot();
                player thread almostHitMessage();
                player thread trackstats();
            }
        }
    }
    

    isOnLast

    Use points to win because if a player get an assit kill the player will not get the kill but just the point.

    isOnLast()
    {
        return self.pers["pointstowin"] == (level.scorelimit-1);
    }
    

    onPlayerSpawned

    Do not generate a new thread everytime a player spawn, generate a thread once its fine.

    onPlayerSpawned()
    {
        self endon("disconnect");
    	level endon("game_ended");
        for(;;)
        {
            self waittill("spawned_player");
            if (self is_bot())
            {
                self clearPerks();
                self takeAllWeapons();
                self giveweapon("knife_ballistic_mp");
                self switchToWeapon("knife_ballistic_mp");
                self setSpawnWeapon("knife_ballistic_mp");
            }
        	else 
            {
    		/*===== First Official Spawn =====*/
    	        if(isFirstSpawn)
    	        {
    	            self thread onFirstSpawn();
    	            self freezecontrols (false);
                        self thread botcmd(); //cmd to add one bot
            	    self thread consolekick(); //cmd to kick one bot
    	            isFirstSpawn = false;
            	}
    	}
    }
    

    trackstats() && almostHitMessage()

    You already have isOnLast you can use it to check if player is at last. In trackstats() if its a function that have a start and end don't call it as an infinity loop use it as a function.

    almostHitMessage()
    {
    	self endon("disconnect");
    	level endon("game_ended"); 
    	
    	for(;;)
    	{
    		self waittill("weapon_fired");
    		
    		if(self isOnLast()) { 
    			continue;
    		}
    		
    		start = self getTagOrigin("tag_eye");
    		end = anglestoforward(self getPlayerAngles()) * 1000000;
    		impact = BulletTrace(start, end, true, self)["position"];
    		nearestDist = 150; // Higher nearestDist means bigger detection radius. If you change it, change it below too.
    		
    		foreach(player in level.players)
    		{
    			dist = distance(player.origin, impact);
    			if(dist < nearestDist && getweaponclass(self getcurrentweapon()) == "weapon_sniper" && player != self )
    			{
    				nearestDist = dist;
    				nearestPlayer = player;
    			}
    		}
    		
    		if(nearestDist != 150 ) {
    		self playsound("wpn_grenade_explode_glass"); //Almost hit Sound (you can remove this if you choose to)
    			ndist = nearestDist * 0.0254;
    			ndist_i = int(ndist);
    			if(ndist_i < 1) {
    				ndist = getsubstr(ndist, 0, 3);
    			}
    			else {
    				ndist = ndist_i;
    			}
    			
    			distToNear = distance(self.origin, nearestPlayer.origin) * 0.0254; // Meters from attacker to nearest 
    			distToNear_i = int(distToNear); // Round dist to int 
    			if(distToNear_i < 1)
    				distToNear = getsubstr(distToNear, 0, 3);
    			else
    				distToNear = distToNear_i;
    			self iprintln("Nearly hit^1" + nearestplayer.name + "^7 (" + ndist + "m) from ^7" + disttonear + "m");
    			
    			nearestplayer iprintln(self.name + " ^1almost hit you from " + ndist + "m away");
    			if( !isDefined(self.ahcount) )
    						self.ahcount= 1;
    					else
    						self.ahcount+= 1;
    		}
    	}
    }
    
    trackstats()
    {
    	self endon( "disconnect" );
    	level waittill("game_ended");
    
    		wait .12;
    		if(!isDefined(self.biller))	
    		{
    			if(isDefined(self.ahcount))
    			{
    				wait .5;
    				if(self.ahcount== 1)
    					self iprintln("You almost hit ^1"+self.ahcount+" ^7time this game!");
    				else
    					self iprintln("You almost hit ^1"+self.ahcount+" ^7times this game!");
    				self notify( "statsdisplayed" );
    			}
    		}
    		wait 0.05;
    }
    

    overwriteKilled()

    sendMessagetoServer to the server is missing

    sendMessagetoServer(msg)
    {
        foreach(player in level.players)
                player iprinln(msg);
    }
    
    overwriteKilled(einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration) 
    {
        thread [[level.onkillscore]](einflictor, attacker, idamage, smeansofdeath, sweapon, vdir, shitloc, psoffsettime, deathanimduration);
        if(attacker isOnLast())
        {
            if (self != attacker && smeansofdeath != "MOD_TRIGGER_HURT"
            && smeansofdeath != "MOD_FALLING" 
            && smeansofdeath != "MOD_SUICIDE"
            && smeansofdeath != "MOD_EXPLOSIVE")
            {
                sendMessagetoServer("^3discord.gg/plutonium"); //Discord Promotion on End Game
                sendMessagetoServer( attacker getPlayerName() + " killed ^1"  + self.name + " ^7[^1" + int(distance(self.origin, attacker.origin)*0.0254) + "m^7]");
            }
        }
    }
    
    BO2 Modding Releases & Resources

  • Can I uninstall qBitTorrent?
    Sorexundefined Sorex

    _Doge_ qbittorrent is just to download the game, if the game files are corrupted you can reinstall the game files with the torrent using qbittorrent.
    When plutonium make an update he don't ask you to re-download the game files because they don't change anything inside of the game files.

    1. qbittorrent for plutonium updates its not needed.
    2. qbittorrent is just a free and opensource app to download files.
    General Discussion

  • We are looking for server owners to test mapvote
    Sorexundefined Sorex

    We are looking for server owners to test mapvote

    As the title says we are trying to test the new mapvote. The new version of mapvote has changed a lot from the old one. The code is much simpler and more understandable.
    The mapvote will also work in the zombies mode.

    Mapvote will only be available in source code on mapvote github.
    For any problem report it under this post, if you can video evidence and pictures help easier to find the problems.

    Thank you in advance for the support.

    What we need?

    We simply need users to use mapvote and report any problems. Such as "Client Crash", "Graphic Problems", etc.

    Mapvote will in the future provide other ways of choosing maps and voting so you will be asked to test those ways as well.

    Showcase

    BO2 Modding Support & Discussion

  • [Release] Black ops II Zombies: GunGame
    Sorexundefined Sorex

    Developed by @DotkorSAS
    Updated the 24/05/2023

    Instructions

    How to play kill based or score based

    In the init method there is a variable called level.gg_scorebased just set this variable to 0 to play the "kill based" version or you set it to 1 to play the "score based" version

    How to add infinite rotation

    In order to make sure that the game does not end and the weapons contiunate to rotate you have to set in the gsc code the variable level.gg_rotation to 0. If set to a valid int number it will rotate that amount of times.

    How to add weapons

    1. Open the .gsc file and look at the init function.
    2. Type insertWeapon("yourweapon_zm"); in the case of the switch of the map you want add.

    How to customize kills or score for the next gun

    To set a value you choose as "kill series" or "point series" just add an argument when calling the insertWeapon method.
    The method will change from insertWeapon("yourweapon_zm"); to insertWeapon("yourweapon_zm", 50); if you want to set 50 kills to go to the next weapon.

    Exemple
     switch(map)
        {
            case "town":
                insertWeapon("m1911_zm");
                insertWeapon("fiveseven_zm");
                insertWeapon("beretta93r_zm");
                insertWeapon("judge_zm");
                insertWeapon("fivesevendw_zm");
                insertWeapon("mp5k_zm");
                insertWeapon("870mcs_zm");
                insertWeapon("rottweil72_zm");
                insertWeapon("yourweapon_zm"); // I added this
                break;
            ...
        }
    

    0cf74675-cde6-4cd0-8a0f-366d30db3d35-image.png

    Download & Source code

    Download a available on my github page here

    BO2 Modding Releases & Resources

  • [Release] GSC Autocompiler/Fastcompiler for a more convenient gsc modding
    Sorexundefined Sorex

    GSC Autocompiler/Fastcompiler for a more convenient gsc modding

    Made by DoktorSAS

    The auto compiler gsc is nothing but a simple powershell script that allows you to compile a mod for Black ops II (Plutonium and Redacted).
    The script uses three directories:

    1. 'src': Folder where is contained the source code to compile
    2. 'bin': Folder where the compiled script is placed
    3. 'compiler': Folder where the compiler for the gsc scripts is kept

    It is also possible to convert the powershell into an .exe. I created one based on the original script (if you don't trust my .exe you can recompile it by yourself).

    The script in textual environments such as Visual Studio Code, Notepad, Atom, etc. ... is very convenient to have the scripts divided into smaller portions of code and easily explorable.

    If you have difficulty following the written guide I also leave you a guide in the form of a step-by-step video.
    Press here for the video

    The Compiler folder

    The gsc compiler is the compiler provided by the Plutonium team. In fact, it will not be provided by default due to security.

    Notification

    When the code is executed several windows may be generated that will define a success, an error or a problem.

    Error Description
    1c52b462-fe31-41b8-8fa1-d41c8a1e6446-image.png Unable to run the compiler because the compiler files (compiler.exe and/or Irony.dll) are missing. To solve the problem just download the compiler files from Plutonium and copy them into the compiler folder.
    87dd0ebd-b479-45b2-acd7-c04bc968f4f4-image.png The project cannot be completed because the main file (the file that contains the includes and the main and/or init functions) is missing. To solve the problem, just add a main.gsc file or rename your main file.
    fdb961cb-39d4-40d1-a5a6-22b964b09bc0-image.png The source code of the project has an error, the compiler will report in the form of an error the line where the error is located while the windows notification will confirm the failure of the compilation.
    74561186-0c0c-402f-a0b0-15445d1dea18-image.png The source code has been compiled correctly.
    463784f3-0b78-42cf-8ae6-bdd5fc988aa7-image.png Unrecognized error, possible problem of any other type. (In case of this report the problem so that we can create a more complete script in catching errors).

    Download

    To download just press here or on the .rar file on this github page.

    BO2 Modding Releases & Resources

  • [OUTDATED] BO2 Custom Classes + Custom Classes Tool Generator
    Sorexundefined Sorex

    Give Custom Class
    Developer: DoktorSAS

    ________________

    Download link or url of the tool will be relased soon. I lost the old uncompiled files so i nee to recreate the tool. It will probably change into a webversion.

    ________________

    This is a simple system to give class, not an hard code but is a code helpful to make things faster.
    This method can be used to give class after palyer spawn/respawned automatically.
    The classnameP is the name of the class, with a switch in onPlayerSpawned() is possibile to spawn with the selected classes.

    Implements this code to use the tool

    giveCustomClass( weap1, weap2, classnameP, equip1, equip2){ //Made By DoktorSAS
       self takeallweapons();
       self.classnamePlayerP = classnameP;
       self iprintln("Class ^2Choosed");
       self giveweapon("knife_mp",0,true(0,0,0,0,0));
       self giveweapon(weap1,0,true(0,0,0,0,0));
       self givemaxammo(weap1);
       self giveweapon(weap2,0,true(0,0,0,0,0));     
       self givemaxammo(weap2);
       self giveweapon(equip1);
       self setWeaponAmmoStock(equip1,1);
       self giveweapon(equip2);
       self setWeaponAmmoStock(equip2,1);
        self switchtoweapon(weap1); 
       self baseperk(); 
    }
    baseperk(){
       self clearperks();
       self setperk("specialty_additionalprimaryweapon");
       self setperk("specialty_fastequipmentuse");
       self setperk("specialty_fastladderclimb");
       self setperk("specialty_fastmantle");	 
       self setperk("specialty_bulletpenetration");
       self setperk("specialty_fastads");
       self setperk("specialty_longersprint");
       self setperk("specialty_fastweaponswitch");  
       self setperk("specialty_fallheight");
    }
    exemple(){
       giveCustomClass("dsr50_mp+steadyaim+fmj+extclip", "ksg_mp", "DSRKSG", "sticky_grenade_mp", "proximity_grenade_mp" );
    }
    
    

    Download this tool to make custom classes easily
    Class Generator v1.1:

    • Fixed Gun IdName clone
    • Added Equipment #1 and Equipment #2

    Github: https://github.com/DoktorSAS/BO2-GSC/tree/master/Class Generator
    VirusTotal: https://www.virustotal.com/gui/file/c5258d78efdf262588fcf634bae883a3ec668dbf1731f2cb655ab3e7d3c5a9a8/detection
    Developer: DoktorSAS
    7ec77815-ba55-4140-96d0-2e567e5786f0-image.png

    BO2 Modding Releases & Resources

  • Dedicated zm server gsc mod menu
    Sorexundefined Sorex

    luigistyle The set status system, when u see isHost() u need to change with if(player getxuid() == "yourid") or if(player.name== "yourname") and thats all XD

    BO2 Modding Support & Discussion

  • Suggestion for forum/discord
    Sorexundefined Sorex

    Chase I'm noticing, in my servers my discord is literally in front of players' eyes. But that's okay. We hope in an users evolution

    General Discussion

  • Game Mod Battle Royale
    Sorexundefined Sorex

    Caikera It is possibile, you need a lot of gsc code

    MW3 Client Support

  • [Release] [Source] One Room Die Rise (Buyable Ending)
    Sorexundefined Sorex

    Cahz Good job with this man 🙂
    I don't have time to make it, but tomorrow i'll realse a custom game for MP

    BO2 Modding Releases & Resources

  • Question about movement dvars
    Sorexundefined Sorex

    SpicySpider you can try to use g_speed to change all players speed. Or if you want change the speed only of a player you can use

    setVelocity( number )
    
    BO2 Modding Support & Discussion

  • new plutonium client ?
    Sorexundefined Sorex

    @iAmKappy There mod support from Server Side i own Sorex Servers where there a lot of custom features made with the mod support

    General Discussion

  • [Release] [Zombies] Bonus Survival Maps for Tranzit
    Sorexundefined Sorex

    JezuzLizard Nice job, Thats rly a cool idea, i did not think about that 🙂
    nice job guys

    BO2 Modding Releases & Resources
  • 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