Raised This Month: $12 Target: $400
 3% 

[TF2] Mann vs. Mann (1.15.0, 2023-04-19)


Post New Thread Reply   
 
Thread Tools Display Modes
Author
Mikusch
AlliedModders Donor
Join Date: Oct 2019
Location: Germany
Plugin ID:
7998
Plugin Version:
1.15.0
Plugin Category:
Gameplay
Plugin Game:
Team Fortress 2
Plugin Dependencies:
    Servers with this Plugin:
    12 
    Plugin Description:
    A custom Team Fortress 2 gamemode that mixes Mann vs. Machine mechanics with regular gameplay
    Old 03-10-2022 , 10:36   [TF2] Mann vs. Mann (1.15.0, 2023-04-19)
    Reply With Quote #1

    [TF2] Mann vs. Mann



    A custom Team Fortress 2 gamemode that mixes Mann vs. Machine mechanics with regular gameplay.

    Have you ever wondered what it would be like to use your Mann vs. Machine upgrades to fight real players instead of robots? Do you hate respawning and wish you could just buy back into the game, or be revived by a friendly Medic? If you answered yes to any of these questions, this gamemode got your back.

    Inspired by the scrapped Bounty Mode, players may purchase upgrades at resupply lockers with money earned from fallen enemies.

    🡺 Source Code on GitHub


    Features
    • Fully functioning Mann vs. Machine mechanics in regular gameplay
      • Player and Item Upgrades
      • Power Up Canteens
      • Money Pickups
      • Buybacks
      • Revive Markers
      • ...and much more
    • Compatible with all official gamemodes (except Mann vs. Machine)
    • Support for custom upgrade files
    • Configurable using plugin ConVars

    Download

    You can find the latest release package on the Releases tab of the GitHub repository.
    You can also find the change log between versions there.

    🡺 Download Latest Release


    Requirements

    Custom Upgrades

    The gamemode fully supports custom upgrade files. Usually, this would only be possible if the file is packed into the map, but due to a bug in the parsing code we are able to load our own file on both the server and the client. (fixed as of 2022-12-01)

    Custom upgrade files are quite limited in functionality due to Valve hardcoding all applicable upgrades for each weapon. As a result, adding new weapon upgrades is not possible. You can, however, add new player upgrades and edit/remove all default upgrades.

    Step by Step Instructions
    1. Create a copy of the default upgrades file found at scripts/items/mvm_upgrades.txt and copy it to scripts/items/ on your server
    2. Edit the file to suit your needs
    3. Give the file a unique name along with a version number (e.g. mvm_upgrades_mikusch_v1.txt)
      • This is very important because clients have to download the upgrades file in order to see the upgrade menu
      • Having a unique and versioned name ensures that you can update the file at a later point
    4. Set the value of the convar sm_mvm_custom_upgrades_file to the path of your new file (e.g. sm_mvm_custom_upgrades_file "scripts/items/mvm_upgrades_mikusch_v1.txt")
    5. ???
    6. Profit!

    Events

    Instead of creating dozens of forwards, this plugin fires Mann vs. Machine events which you can hook in your own plugins.

    List of Mann vs. Machine Events
    • revive_player_notify
    • revive_player_stopped
    • revive_player_complete
    • player_buyback
    • player_used_powerup_bottle
    • player_directhit_stun
    • player_currency_changed
    • player_upgraded
    • medigun_shield_blocked_damage
    • mvm_sniper_headshot_currency
    • mvm_quick_sentry_upgrade
    • mvm_pickup_currency
    • mvm_medic_powerup_shared
    • upgrades_file_changed

    ConVars

    Console output from the find command (because I'm lazy):
    Code:
    "sm_mvm_resupply_upgrades" = "1"
     - When set to 1, the resupply locker will act as an upgrade station.
    "sm_mvm_respec_enabled" = "1"
     - When set to 1, players can refund their upgrades.
    "sm_mvm_player_sapper" = "1"
     - When set to 1, Spy can place sappers on players.
    "sm_mvm_setup_quickbuild" = "1"
     - When set to 1, Engineer can quickbuild during setup.
    "sm_mvm_backstab_armor_piercing" = "1"
     - When set to 1, backstabs use armor piercing upgrades to determine the damage.
    "sm_mvm_arena_canteens" = "1"
     - When set to 1, Power Up Canteens may be used in arena mode.
    "sm_mvm_defender_team" = "any"
     - Determines which team is allowed to use Mann vs. Machine Defender mechanics. {any, blue, red, spectator}
    "sm_mvm_death_responses" = "0"
     - When set to 1, players will announce their teammate's deaths.
    "sm_mvm_custom_upgrades_file" = ""
     - Custom upgrade menu file to use, set to an empty string to use the default.
    "sm_mvm_broadcast_events" = "0"
     - When set to 1, the 'player_buyback' and 'player_used_powerup_bottle' events will be broadcast to all players.
    "sm_mvm_revive_markers" = "1"
     - When set to 1, players will create revive markers on death.
    "sm_mvm_radius_spy_scan" = "1"
     - When set to 1, Spy will reveal cloaked enemy Spies in a radius.
    "sm_mvm_medigun_shield_damage_modifier" = "0"
     - Multiplier to damage of the shield created by the Medi Gun's 'Projectile Shield' upgrade.
    "sm_mvm_explosive_sniper_shot_damage_modifier" = "1.0"
     - Multiplier to damage of the explosion created by the 'Explosive Headshot' upgrade.
    "sm_mvm_gas_explode_damage_modifier" = "0.5"
     - Multiplier to damage of the explosion created by the 'Explode On Ignite' upgrade.
    "sm_mvm_players_are_minibosses" = "1"
     - When set to 1, all upgrades will function as if players are MvM giants.
    "sm_mvm_music_enabled" = "1"
     - When set to 1, Mann vs. Machine music will play at the start and end of a round.
    "sm_mvm_spawn_protection" = "1"
     - When set to 1, players are granted ubercharge while they leave their spawn.
    "sm_mvm_showhealth" = "0"
     - When set to 1, shows a floating health icon over enemy players.
    "sm_mvm_upgrades_reset_mode" = "0"
     - How player upgrades and credits are reset after a full round has been played. 0 = Reset if teams are being switched or scrambled. 1 = Always reset. 2 = Never reset.
    "sm_mvm_currency_rewards_player_modifier_medieval" = "0.33"
     - Multiplier to dropped currency in medieval mode.
    "sm_mvm_currency_rewards_player_modifier_arena" = "2.0"
     - Multiplier to dropped currency in arena mode.
    "sm_mvm_currency_rewards_player_catchup_max" = "1.5" min. 1.000000
     - Maximum currency bonus multiplier for losing teams.
    "sm_mvm_currency_rewards_player_catchup_min" = "0.66" min. 0.000000 max. 1.000000
     - Maximum currency penalty multiplier for winning teams
    "sm_mvm_currency_rewards_player_count_bonus" = "2.0" min. 1.000000
     - Multiplier to dropped currency that gradually increases up to this value until all player slots have been filled.
    "sm_mvm_currency_rewards_player_killed" = "15"
     - The fixed number of credits dropped by players on death.
    "sm_mvm_currency_starting" = "1000" min. 0.000000
     - Number of credits that players get at the start of a match.
    "sm_mvm_enabled" = "1"
     - When set, the plugin will be enabled.
    "sm_mvm_version" = "1.15.0"
     notify singleplayer replicated
     - Mann vs. Mann plugin version
    __________________

    Last edited by Mikusch; 04-23-2023 at 10:18.
    Mikusch is offline
    PC Gamer
    Veteran Member
    Join Date: Mar 2014
    Old 03-10-2022 , 17:00   Re: [TF2] Mann vs. Mann (1.6.0, 2022-03-10)
    Reply With Quote #2

    Interesting idea! I'll give this a try.

    How do I implement custom upgrade files? What location do I put the file? What format?

    Last edited by PC Gamer; 03-10-2022 at 17:01.
    PC Gamer is offline
    Mikusch
    AlliedModders Donor
    Join Date: Oct 2019
    Location: Germany
    Old 03-10-2022 , 20:32   Re: [TF2] Mann vs. Mann (1.6.0, 2022-03-10)
    Reply With Quote #3

    Quote:
    Originally Posted by PC Gamer View Post
    How do I implement custom upgrade files? What location do I put the file? What format?
    I've added a "Custom Upgrades" section to the original post. I hope this explains it well enough.
    __________________
    Mikusch is offline
    Mikusch
    AlliedModders Donor
    Join Date: Oct 2019
    Location: Germany
    Old 03-15-2022 , 20:09   Re: [TF2] Mann vs. Mann (1.6.0, 2022-03-10)
    Reply With Quote #4

    A new version of the plugin has been released: 1.6.1

    I highly advise updating to this version because it fixes a major bug where no virtual hooks would exist after a map change, thus disabling a lot of functionality.

    I won't be giving information on updates like this very frequently in here, so I recommend watching the GitHub repository for releases instead.
    __________________
    Mikusch is offline
    BorealBlizzard
    Junior Member
    Join Date: Jun 2021
    Location: Missouri, MO
    Old 08-27-2022 , 13:37   Re: [TF2] Mann vs. Mann (1.7.0, 2022-03-30)
    Reply With Quote #5

    Any known servers that run this mode? I was thinking about starting one but i want to play it first lol
    __________________
    BorealBlizzard is offline
    BorealBlizzard
    Junior Member
    Join Date: Jun 2021
    Location: Missouri, MO
    Old 08-29-2022 , 21:55   Re: [TF2] Mann vs. Mann (1.7.0, 2022-03-30)
    Reply With Quote #6

    Quote:
    Originally Posted by BorealBlizzard View Post
    Any known servers that run this mode? I was thinking about starting one but i want to play it first lol
    Currently Running a server with this plugin @ 173.237.13.230:27015
    __________________
    BorealBlizzard is offline
    Hells Redeemer
    New Member
    Join Date: Dec 2022
    Old 12-15-2022 , 17:04   Re: [TF2] Mann vs. Mann (1.9.1, 2022-11-01)
    Reply With Quote #7

    For reasons I would hope to be self evident, could you add a convar for damage multiplier for explosive headshots similar to the gas passer? As much as I understand this is hardly a balance mod I don't want to force all my players to get explosive resist to not die to their own teammates poor positioning.
    Hells Redeemer is offline
    Hells Redeemer
    New Member
    Join Date: Dec 2022
    Old 12-16-2022 , 00:46   Re: [TF2] Mann vs. Mann (1.9.1, 2022-11-01)
    Reply With Quote #8

    Another thing some players and I noticed is the sentry insta-placement is very difficult and frustrating to play against, would it also be possible to add a convar/settings to disable this?

    Also sorry for a second post I hopefully won't have anything else immediately concerning in the near future.

    Side note: This plugin is pretty dang cool and it seems to function smoothly. I am pretty new to configuration concerning mvm so I'm not sure how to implement custom upgrades in general and if anyone has a guide for that I'd be gratueful.
    Hells Redeemer is offline
    Mikusch
    AlliedModders Donor
    Join Date: Oct 2019
    Location: Germany
    Old 12-22-2022 , 05:29   Re: [TF2] Mann vs. Mann (1.9.1, 2022-11-01)
    Reply With Quote #9

    I can probably make these configurable whenever I'm updating the plugin next.

    There is a small guide on setting up custom upgrades above, and the upgrades themselves are just attributes. Should be fairly easy to grasp by looking at the default upgrades file.
    __________________
    Mikusch is offline
    Reply


    Thread Tools
    Display Modes

    Posting Rules
    You may not post new threads
    You may not post replies
    You may not post attachments
    You may not edit your posts

    BB code is On
    Smilies are On
    [IMG] code is On
    HTML code is Off

    Forum Jump


    All times are GMT -4. The time now is 13:56.


    Powered by vBulletin®
    Copyright ©2000 - 2024, vBulletin Solutions, Inc.
    Theme made by Freecode