vandal59 Sorry, but I haven't found a way to help you, I don't have too much experience in coding mods yet.

RlKk01
Posts
-
[ZM] Updated bo2_zm_bots -
Changing bus speed in TranzitUltimateman Would you mind making a lightweight script with that function?
I can't understand how to make it work as you instructed. -
[ZM] Updated bo2_zm_botsYeah, i made a mistake, is this line "player thread on_player_spawned();"
-
[ZM] Updated bo2_zm_bots@bocanegra59 In zm_bo2_bots_utility.gsc search this line "level thread init_zombie_healthbar();" and try to add "//" before the line of the script starts.
-
[ZM] Updated bo2_zm_botsZevon Try to update your plutonium, the version you have is outdated.
-
[ZM] Updated bo2_zm_botsGundawg21 No prob
-
[ZM] Updated bo2_zm_botsGundawg21 It has to do more with this line in zm_bo2_bots
// Deduct points
self maps\mp\zombies_zm_score::minus_to_player_score(950);To solve the problem you need to replace the number 950 to 0.
-
[ZM] Updated bo2_zm_botsBySc The teleport function keeps killing the bots when teleport to you.
-
[ZM] Updated bo2_zm_botsBySc There is another thing, bots when they have pap weapons and they are close to a wallbuy they buy for example an m14 or an ak74. It bothers a bit when they are in high rounds and change their weapons for much worse ones.
And that's It, the rest of the mod works perfectly. -
[ZM] Updated bo2_zm_botsWould it be possible to create a briefly moment of invulnerability for you and the bots when they teleport?
Either they die or I get killed when it happens. -
Adding Bots To BO1 ZombiesDid you checked BySc mod from bo2?
Maybe checking his source code would help. -
[ZM] Updated bo2_zm_botsThe script that i send to you is the old version of your mod, i did reactivated and it worked perfectly it's just that it lacks of the preferance of the weapons they gets, for example they get the raygun from the box and buy again to get the balistic knives.
-
[ZM] Updated bo2_zm_botsYeah i know, i tested your actual mod but the function of the box itself for some reason it's bugged for me, i try to buy the box but it won't let me buy it unless a bot open it first.
And i have to spend more points like 3000 thousands points just for get a weapon.
-
[ZM] Updated bo2_zm_botsIs there anyway to mix this script:
bot_buy_box()
{
if(self maps\mp\zombies_zm_laststand::player_is_in_laststand())
return;if(!isDefined(level.chests) || level.chests.size == 0) return; current_box = level.chests[level.chest_index]; if(!isDefined(current_box)) return; dist = Distance(current_box.origin, self.origin); // Only try to use box if we have enough points and aren't too far if(self.score >= 1900 && dist < 150) { // Check if box is available if(!is_true(current_box._box_open) && !is_true(current_box._box_opened_by_fire_sale) && !flag("moving_chest_now")) { if(FindPath(self.origin, current_box.origin, undefined, 0, 1)) { // Move to box if not already there if(dist > 75) { self AddGoal(current_box.origin, 50, 2, "boxBuy"); return; } // Use the box when close enough self maps\mp\zombies\_zm_score::minus_to_player_score(950); current_box notify("trigger", self); // Wait for weapon to appear and box to fully open wait 4; // Try to grab weapon multiple times to ensure it's picked up for(i = 0; i < 3; i++) { if(is_true(current_box._box_open)) { current_box notify("trigger", self); self UseButtonPressed(); wait 0.5; // Check if weapon was actually taken if(!is_true(current_box._box_open)) return; } wait 0.5; } } } } // Clean up any remaining box goal if(self hasgoal("boxBuy")) self cancelgoal("boxBuy");
}
With this one:
// Improved weapon selection logic
bot_should_take_weapon(boxWeapon, currentWeapon)
{
if(!isDefined(boxWeapon))
return false;// Check if we already have this weapon if(self HasWeapon(boxWeapon)) return false; // Always take wonder weapons if(IsSubStr(boxWeapon, "raygun") || IsSubStr(boxWeapon, "thunder") || IsSubStr(boxWeapon, "wave") || IsSubStr(boxWeapon, "mark2") || IsSubStr(boxWeapon, "tesla")) { return true; } // Define weapon tiers for better decision making tier1_weapons = array("raygun_", "thunder", "wave_gun", "mark2", "tesla"); tier2_weapons = array("galil", "an94", "hamr", "rpd", "lsat", "dsr50"); tier3_weapons = array("mp5k", "pdw57", "mtar", "mp40", "ak74u", "qcw05"); tier4_weapons = array("m14", "870mcs", "r870", "olympia", "fnfal"); // Track if current weapon is in specific tier currentIsTier1 = false; currentIsTier2 = false; currentIsTier3 = false; // Check current weapon tier foreach(weapon in tier1_weapons) { if(IsSubStr(currentWeapon, weapon)) { currentIsTier1 = true; break; } } if(!currentIsTier1) { foreach(weapon in tier2_weapons) { if(IsSubStr(currentWeapon, weapon)) { currentIsTier2 = true; break; } } } if(!currentIsTier1 && !currentIsTier2) { foreach(weapon in tier3_weapons) { if(IsSubStr(currentWeapon, weapon)) { currentIsTier3 = true; break; } } } // Don't take bad weapons like snipers or launchers (with small chance for variety) if(IsSubStr(boxWeapon, "sniper") || IsSubStr(boxWeapon, "launcher") || IsSubStr(boxWeapon, "knife") || (IsSubStr(boxWeapon, "ballistic") && !IsSubStr(boxWeapon, "ballistic_knife"))) { return (randomfloat(1) < 0.15); // 15% chance } // Check box weapon tier boxIsTier2 = false; boxIsTier3 = false; boxIsTier4 = false; foreach(weapon in tier2_weapons) { if(IsSubStr(boxWeapon, weapon)) { boxIsTier2 = true; break; } } if(!boxIsTier2) { foreach(weapon in tier3_weapons) { if(IsSubStr(boxWeapon, weapon)) { boxIsTier3 = true; break; } } } if(!boxIsTier2 && !boxIsTier3) { foreach(weapon in tier4_weapons) { if(IsSubStr(boxWeapon, weapon)) { boxIsTier4 = true; break; } } } // Decision logic based on tiers and round number if(currentIsTier1) { // Already have a wonder weapon, only take another if it's a different one // For example, allow taking thunder gun when already having raygun foreach(weapon in tier1_weapons) { if(IsSubStr(boxWeapon, weapon) && !IsSubStr(currentWeapon, weapon)) { // 70% chance to take another wonder weapon return (randomfloat(1) < 0.7); } } return false; // Don't replace wonder weapon with non-wonder weapon } // Have tier 2 weapon already if(currentIsTier2) { if(boxIsTier2) { // 50% chance to swap between tier 2 weapons for variety return (randomfloat(1) < 0.5); } else if(boxIsTier3 || boxIsTier4) { // Almost never downgrade from tier 2 return (randomfloat(1) < 0.1); } // For unclassified weapons, low chance return (randomfloat(1) < 0.2); } // Have tier 3 weapon already if(currentIsTier3) { if(boxIsTier2) { // Always upgrade to tier 2 return true; } else if(boxIsTier3) { // 60% chance to swap between tier 3 for variety return (randomfloat(1) < 0.6); } else if(boxIsTier4) { // Don't downgrade return (randomfloat(1) < 0.15); } } // Round-based logic - in early rounds take most weapons if(level.round_number <= 5) { return true; } // Mid rounds - prefer at least tier 3 else if(level.round_number <= 15) { if(boxIsTier2 || boxIsTier3) return true; else return (randomfloat(1) < 0.5); // 50% chance for other weapons } // Late rounds - generally only take tier 2 else { if(boxIsTier2) return true; else if(boxIsTier3) return (randomfloat(1) < 0.7); // 70% chance for tier 3 else return (randomfloat(1) < 0.3); // 30% chance for other weapons } // Default case - 50/50 chance return (randomfloat(1) < 0.5);
}
-
[ZM] Updated bo2_zm_botsBySc I noticed when I was playing, there are some debug messages constantly appearing on the left side of the screen, it constantly checks the distance from the mystery box, even when the ai is close to the box and they spend all their points buying weapons in it.
-
[ZM] Updated bo2_zm_botsBySc Yes, no matter what map you played, at some point it always lags the whole game.
-
[ZM] Updated bo2_zm_botsAt the end i tested the script without compiling it and it is quite buggy, there's a point where the game just freeze.