1.10.14 fixes some minor bugs. It's recommended to upgrade especially if you have multiple bosses reliant on rage_cloneattack.
Please note that 1.10 will be the last major version of FF2 v1; however, 1.10.x will still be supported for a while after 2.0.0 comes out. In addition, no more feature additions will be considered for FF2 v1. 1.10.x is solely bugfixes from now on.
Note: The 'plugins' archive now also contains the source code.
Found any bugs? Try to report them over at Github. It makes tracking bugs a lot easier, and will ensure that it doesn't get lost in this forum. Thanks .
Unzip the main FF2 archive, and match up the file structures with the TF2 directory structure (eg addons-->addons, models-->models, etc). When you're finished, you should have a file called freak_fortress_2.phrases.txt in /addons/sourcemod/translations/
Unzip the FF2 plugins archive and place them in the /addons/sourcemod/plugins/ folder (so that plugins/freaks/ff2_1st_set_abilities.ff2 exists).
FF2's config file is located at /cfg/sourcemod/FreakFortress2.cfg, adjust at your leisure.
Upgrading from 1.0.13, 1.0.12, 1.10.11, or 1.10.10
Make sure you have at least Sourcemod 1.6.3 and TF2Items 1.6.4 installed.
Download freak_fortress_2.smx and place it in the plugins folder.
Download ff2_1st_set_abilities.smx, rename it to ff2_1st_set_abilities.ff2, and place it in the plugins/freaks folder.
[Optional] Delete gamedata/equipwearable.txt unless you have other plugins using it.
[Optional] Delete gamedata/saxtonhale.txt unless you have other plugins using it.
[Optional] Save a backup of your FreakFortress2.cfg and delete it. FF2 will generate a fresh one with the new cvars, and you can then re-edit the config.
Convars
Generally, a value of '1' means that the convar is enabled, and '0' means that it is disabled. ff2_version: DO NOT TOUCH THIS EVER ff2_enabled (1): Enable FF2? ff2_point_type (0): Toggles the way in which the control point gets activated. ff2_point_alive (5): Maximum number of players left alive before the CP gets activated. Only has an effect if ff2_point_type is '0'. ff2_point_delay (6): Seconds per player to delay the time before the CP gets activated. Only has an effect if ff2_point_type is '1'. ff2_announce (120): How many seconds to wait for between each FF2 info message in chat. Must be above 1 to display. ff2_crits (1): Can the boss get crits? Personally, I suggest that this be turned off. ff2_first_round (-1): Makes the first round arena mode while waiting for people to join.-THIS CVAR HAS BEEN DEPRECATED IN FAVOR OF FF2_ARENA_ROUNDS ff2_arena_rounds (1): Amount of arena rounds before switching the gamemode to FF2. ff2_circuit_stun (2): Number of seconds the Short Circuit stuns the boss for. Very OP. ff2_countdown_players (1): Maximum number of players left alive before the countdown timer gets activated. 0 to disable. ff2_countdown_time (120): Number of seconds after the countdown timer starts to end the round in a stalemate. ff2_countdown_health (2000): Minimum amount of health the boss can have left in order for the countdown timer to show. ff2_countdown_result (0): 0-Kill players when the countdown ends, 1-End the round in a stalemate. ff2_spec_force_boss (0): Adds queue points to spectators. ff2_enable_eureka (0): Enables the Eureka Effect. ff2_force_team (0): '0'-Boss team is always on Blue; '1'-Boss is on a random team every round; '2'-Boss is always on Red. ff2_health_bar (1): Shows a healthbar illustrating the boss's current health. ff2_last_player_glow (1): Outlines the boss team and the last remaining player when there is only one player left alive. ff2_boss_teleporter (1): '-1' to disallow any bosses from using teleporters; '0' to use TF2 logic; or '1' to allow all bosses. This should actually be set to 0 to preserve existing functionality. ff2_boss_suicide (0): Allows the boss to suicide after the round starts if set to '1'. ff2_shield_crits (0): '0'-Demoman receives no crit buff from equipping a shield; '1'-minicrits; '2'-crits. ff2_caber_detonations (5): The number of times somebody can detonate the Ullapool Caber. ff2_base_jumper_stun (0): Whether or not the Base Jumper should be disabled on stun. ff2_goomba_damage (0.05): How much the Goomba Stomp damage should be multiplied by when stomping the boss. Requires Goomba Stomp. ff2_goomba_jump (300.0): How high players should rebound after stomping the boss. Requires Goomba Stomp. ff2_boss_rtd (0): Allows the boss to use RTD. ff2_oldjump (0): If '1', uses VSH super-jump mechanics. ff2_updater (1): Allows FF2 to auto-update to the newest version. ff2_debug (0): Spews out debug of all sorts in chat and console. Highly unrecommended for actual servers.
Changelog
1.10.14
Fixed minions occasionally spawning on the wrong team (Wliu)
Fixed ff2_start_music at the start of the round causing music to overlap (naydef)
Fixed new clients not hearing music in certain circumstances (naydef)
1.10.13
Fixed insta-backstab issues (Wliu from tom0034)
Fixed team-changing exploit (Wliu from Edge_)
[Server] Fixed an error message logging the wrong values (Wliu)
1.10.12
Actually fixed BGMs not looping (Wliu from WakaFlocka, again)
Fixed new clients not respecting the current music state (Wliu from shadow93)
1.10.11
Fixed BGMs not looping (Wliu from WakaFlocka)
1.10.10
Fixed multiple BGM issues in 1.10.9 (Wliu, shadow93, Nopied, WakaFlocka, and others)
Automatically start BGMs for new clients (Wliu)
Fixed the top damage dealt sometimes displaying as 0 damage (naydef)
Added back Shortstop reload penalty to reflect its buff in the Meet Your Match update (Wliu)
[Server] Fixed an invalid client error in ff2_1st_set_abilities.sp (Wliu)
[Server] Fixed a GetEntProp error (Wliu from Hemen353)
1.10.9
Fixed a critical exploit related to sv_cheats (naydef)
Updated weapons for the Tough Break update (Wliu)
Partially synced with VSH (all changes listed courtesy of VSH contributors and @shadow93)
VSH: Don't play end-of-round announcer sounds
VSH: Increase boss damage to 210% (up from 200%)
VSH: Give scout bosses +3 capture rate instead of +4
VSH: Don't actually call for medic when activating rage
VSH: Override attributes for all mediguns and syringe guns
Fixed Ambassador, Diamondback, Phlogistinator, and the Manmelter not dealing the correct damage (Dalix)
Adjusted medigun and Dead Ringer mechanics to provide a more native experience (Wliu)
Prevent autoteam spam and possible crashes (naydef)
Fixed boss's health not appearing correctly before round start (Wliu)
Fixed ff2_alive...again (Wliu from Dalix)
Fixed BossInfoTimer (that thing no one knows about because it never worked) (Wliu)
Reset clone status properly (Wliu)
Don't allow sound_kill_* and sound_hit to overlap each other (Wliu from WakaFlocka)
Prevent sound_lastman sounds from overlapping with regular kill sounds (Wliu from WakaFlocka)
Updated Russian translation (silenser)
[Server] Make sure the entity is valid before creating a healthbar (shadow93)
[Server] Fixed invalid client errors originating from ff2_1st_set_abilities.sp (Wliu)
[Server] Added ff2_start_music command for symmetry (Wliu from WakaFlocka)
[Dev] Actually make FF2_OnMusic work (Wliu from shadow93)
[Dev] Rewrote BGM code (Wliu)
[Dev] Fixed ability sounds playing even if the ability was canceled in FF2_PreAbility (Wliu from xNanoChip)
1.10.8
Fixed the Powerjack and Kunai one-hit killing bosses (naydef)
1.10.7
Fixed companions always having default rage damage and lives, even if specified otherwise (Wliu from Shadow)
Fixed bosses instantly losing if a boss disconnected while there were still other bosses alive (Shadow from Spyper)
Fixed minions receiving benefits intended only for normal players (Wliu)
Removed Shortstop reload penalty (Starblaster64)
Whitelisted the Shooting Star (Wliu)
Fixed large amounts of lives being cut off when being displayed (Wliu)
More living spectator fixes (naydef, Shadow)
Fixed health bar not updating when goomba-ing the boss (Wliu from Akuba)
[Server] Added arg12 to rage_cloneattack to determine whether or not clones die after their boss dies (Wliu)
[Server] Fixed UTIL_SetModel not precached crashes when using model_projectile_replace (Wliu from Shadow)
[Server] ff2_crits now defaults to 0 instead of 1 (Wliu from Spyper)
[Server] Fixed divide by 0 errors (Wliu)
[Dev] Fixed FF2_OnAlivePlayersChanged not returning the number of minions (Wliu)
[Dev] Fixed PDAs and sappers not being usable when given to bosses (Shadow)
1.10.6
Updated the default health formula to match VSH's (Wliu)
Updated for compatability with the Gunmettle update (Wliu, Shadow, Starblaster64, Chdata, sarysa, and others)
Fixed boss weapon animations sometimes not working (Chdata)
Disconnecting bosses now get replaced by the person with the second-highest queue points (Shadow)
Fixed bosses rarely becoming 'living spectators' during the first round (Shadow/Wliu)
Fixed large amounts of damage insta-killing multi-life bosses (Wliu from Shadow)
Fixed death effects triggering when FF2 wasn't active (Shadow)
Fixed 'sound_fail' playing even when the boss won (Shadow)
Fixed charset voting again (Wliu from Shadow)
Fixed bravejump sounds not playing (Wliu from Maximilian_)
Fixed end-of-round text occasionally showing random symbols and file paths (Wliu)
Updated Russian translations (Maximilian_)
[Server] Fixed 'UTIL_SetModel not precached' crashes (Shadow/Wliu)
[Server] Fixed Array Index Out of Bounds errors when there are more than 32 chances (Wliu from Maximilian_)
[Server] Fixed invalid client errors in easter_abilities.sp (Wliu)
[Server] Missing boss files are now logged (Shadow)
[Dev] Added FF2_StartMusic that was missing from the include file (Wliu from Shadow)
[Dev] FF2_GetBossIndex now makes sure the client index passed is valid (Wliu)
[Dev] Rewrote the health formula parser and fixed a few bugs along the way (WildCard65/Wliu)
[Dev] Prioritized exact matches in OnSpecialSelected and added a 'preset' bool (Wliu from Shadow)
Boss info text now also displays in the chat area (Wliu)
Partially synced with VSH 1.49 (all VSH changes listed courtesy of Chdata)
VSH: Do not show HUD text if the scoreboard is open
VSH: Added market gardener 'backstab'
VSH: Removed Darwin's Danger Shield from the blacklist (Chdata) and gave it a +50 health bonus (Wliu)
VSH: Rebalanced Phlogistinator
VSH: Improved backstab code
VSH: Added `ff2_shield_crits` cvar to control whether or not demomen get crits when using shields
VSH: Reserve Shooter now deals crits to bosses in mid-air
[Server] Fixed conditions still being added when FF2 was disabled (Wliu)
[Server] Fixed a rare healthbar error (Wliu)
[Server] Added convar `ff2_boss_suicide` to control whether or not the boss can suicide after the round starts (Wliu)
[Server] Changed `ff2_boss_teleporter`'s default value to 0 (Wliu)
[Server] Updated translations (Wliu)
[Dev] Added `FF2_GetAlivePlayers` and `FF2_GetBossPlayers` (Wliu/AliceTaylor)
[Dev] Fixed a bug in the main include file (Wliu)
[Dev] Enabled escape sequences in configs (Wliu)
1.10.0
Rage is now activated by calling for medic (Wliu)
Balanced Goomba Stomp and RTD (WildCard65)
Fixed BGM not stopping if the boss suicides at the beginning of the round (Wliu)
Fixed Jarate, etc. not disappearing immediately on the boss (Wliu)
Fixed ability timers not resetting when the round was over (Wliu)
Fixed bosses losing momentum when raging in the air (Wliu)
Fixed bosses losing health if their companion left at round start (Wliu)
Fixed bosses sometimes teleporting to each other if they had a companion (Wliu)
Optimized the health calculation system (WildCard65)
Slightly tweaked default boss health formula to be more balanced (Eggman)
Fixed and optimized the leaderboard (Wliu)
Fixed medic minions receiving the medigun (Wliu)
Fixed Ninja Spy slow-mo bugs (Wliu/Powerlord)
Prevented players from changing to the incorrect team or class (Powerlord/Wliu)
Fixed bosses immediately dying after using the dead ringer (Wliu)
Fixed a rare bug where you could get notified about being the next boss multiple times (Wliu)
Fixed gravity not resetting correctly after a weighdown if using non-standard gravity (Wliu)
[Server] FF2 now properly disables itself when required (Wliu/Powerlord)
[Server] Added ammo, clip, and health arguments to rage_cloneattack (Wliu)
[Server] Changed how BossCrits works...again (Wliu)
[Server] Removed convar ff2_halloween (Wliu)
[Server] Moved convar ff2_oldjump to the main config file (Wliu)
[Server] Added convar ff2_countdown_players to control when the timer should appear (Wliu/BBG_Theory)
[Server] Added convar ff2_updater to control whether automatic updating should be turned on (Wliu)
[Server] Added convar ff2_goomba_jump to control how high players should rebound after goomba stomping the boss (WildCard65)
[Server] Fixed hale_point_enable/disable being registered twice (Wliu)
[Server] Fixed some convars not executing (Wliu)
[Server] Fixed the chances and charset systems (Wliu)
[Dev] Added more natives and one additional forward (Eggman)
[Dev] Added sound_full_rage which plays once the boss is able to rage (Wliu/Eggman)
[Dev] Fixed FF2FLAG_ISBUFFED (Wliu)
[Dev] FF2 now checks for sane values for lives and health_formula (Wliu)
Big thanks to GIANT_CRAB, WildCard65, and kniL for their devotion to this release!
Have questions? Read these first
Q: What's the difference between FF2 and VSH?
A: FF2 is customizable.
Q: How do I add bosses?
A: Drag-n-drop the files that the author gives you. Don't forget to edit /addons/sourcemod/configs/freak_fortress_2/characters.cfg with the new boss name.
Q: YOUR PLUGIN IS BROKEN FIX IT NOW
A: Error logs/explanation or it didn't happen :>.
Q: What is this 'FF2 2.0.0'?
A: A major rewrite for FF2 that will (hopefully) bring many optimizations and improvements, such as customizable weapons.
Q: Can I help with anything?
A: Sure! Check out the source code on Github.
Q: I keep seeing servers that are running FF2 on KOTH maps, how do I do that?
A: Magic.
Q: All the bosses are ERRORS!
A: You may either be: using sv_pure 2, or 1 with an incorrect whitelist (make sure to whitelist the FF2 files); using sv_downloadurl (a fast download server) but haven't placed the bz2 files onto your fast download server; substituting the actual models and sounds (on the server) for their bz2 replacements (which will fail horrendously); or a client who has set their downloads to none, therefore not downloading the custom files from the server. (Taken from VSH's FAQ )
Q: None of my bosses after #63 appear D:
A: Open up freak_fortress_2.sp, find '#define MAX_SPECIALS', and change that number to something higher, then compile it.
Q: The new update broke FF2!
A: Update EVERYTHING and try again. Still not working? Try getting the latest developmental version from Github.
Q: My server still says the game is "Team Fortress" instead of "Freak Fortress 2"
A: Install SteamTools (link is in "Installing from Scratch").
Q: Where can I find some information regarding FF2?
A: Try the wiki.
Q: Why should I install the recommended plugins?
A:
TF2Attributes adds back the old Mantreads behavior that was present in FF2 (super-high rocket jumping) before a TF2 update broke it
SteamTools changes the game mode in the server browser to Freak Fortress 2 and also allows Updater to function
Updater automagically updates FF2 to the latest version
Interested in seeing the diff between 1.10.13 and 1.10.14? Try this.
Thanks to:
-friagram for giving random snippets of fix code on the forums
-BBG_Theory for being extremely supportive and giving me a testing server (and also pointing out bugs I would have never noticed )
-Powerlord for allowing me to take over FF2
-Shadow for constantly bugging me about bugs
-Maximilian_ for updating Russian translations (and bug reports!)
-wasder, also for updating Russian translations
-CooliMC for German translations
-50DKP for just being there
-Chris for telling me not to commit broken stuff everytime I ask him for help
-Lawd for lawdling
-Carge for iunno, sound? Just the random pop-in to tell me about cupcakes or something?
-Anyone who's contributed on the Github repo
__________________
~Wliu
Last edited by Wliu; 10-22-2016 at 00:30.
Reason: 1.10.14!
So I forgot to mention some things (I was tired last night, ok? ).
RELEASE HIGHLIGHTS:
1) FF2 NOW DEPENDS ON morecolors.inc! Get it here: http://forums.alliedmods.net/showthread.php?t=185016. You can remove colors.inc if none of your other plugins depend on it.
2) You can now specify the clip amount while giving a weapon to a boss (on rage/life-loss/etc.). No more reloading
3) You no longer have to precache sound_bgm, FF2 will now do it automatically.
4) Translations now are a whole lot less disjointed.
5) freak_fortress_2.inc's info was greatly improved.
6) Ninja Spy/etc. don't get stuck in walls or ceilings anymore!
7) Bosses don't get stuck in ceilings when teleporting anymore!
8) Seeldier's minions can NO LONGER CAP. This was a balance change due to the fact that if you spawned your minions near the point, they would win in a matter of seconds. Also, a x3/x6 cap rate is fast enough, no need for added minions trying to cap.
9) Medigun now overheals 50% more.
10) FF2RoundState was discarded for GameRules_GetRoundState() (which is called through FF2's CheckRoundState()). Should be a whole lot more accurate and should also fix some round-related bugs (hopefully the end-of-round bgm playing).
11) Whitelisted some weapons/action slot items.
12) Added more checks so that spies couldn't exploit the 2s wait timer after backstabbing.
13) If an attribute formatting error is detected in your config, FF2 will default to default attributes to avoid being spammed with errors. Fix dem configs!
As for the damage done not appearing, do you mean the green block of text on the lower part of your screen? Does it NEVER appear, or does it not appear only when you're alive/dead?
FF2RoundState really does need to return its old values, though... since subplugins may rely on it. Definitely deprecated and it's recommend that subplugins use GameRules_GetRoundState, though.
__________________
Not currently working on SourceMod plugin development.
FF2RoundState really does need to return its old values, though... since subplugins may rely on it. Definitely deprecated and it's recommend that subplugins use GameRules_GetRoundState, though.
I know, the code is as follows (hurr just realized that it can be simplified into a switch case, will get on that):
The change is reflected in the include files...I think.
@Automicbomb, as far as I can see, the damage display should be working...
What do you mean by special ability? Rage? (If that's broken I might have to take another look at the RoundState stuff...)
Yes the rage and the super jumo. And for example the demopans charge wont work at all when i was running this. I re-installed stable version of the FF2 today and all works fine
Does anyone else have the issue where the first boss of the map is a bugged soldier who cannot move or attack?
Edit 1: Probably not specifically a soldier, and it's now happened several rounds past the first with no console output to analyze.
Edit 2: I believe I've fixed it by deleting FreakFortress2.cfg
Edit 3: I take that back, still happens every now and then, as well as the last player standing not having crits.
Last edited by Kanye_East; 11-02-2013 at 20:49.
Reason: not fixed