** Big Change, it is a much larger plugin now. This is to accommodate future expansion (more achievements).
This prints out a chat message whenever one of several achievements occur. Examples:
Order of messages are: what Victim sees, what Attacker sees, what everyone else sees..
Level A Charge (L4D2):
[Level] Survivor decided to
Level a Charge on you with a baseball bat!!
[Level] You decided to
Level a Charge on
Charger with a baseball bat!!
[Level] Survivor decided to
Level a Charge on
Charger with a baseball bat!!
Barf Bagged:
[Boomer] You just helped
Boomer achieve
Barf Bagged and get into the
Bulimic Hall of Fame.
[Boomer] You just
Barf Bagged your way into the
Bulimic Hall of Fame.
[Boomer] Boomer just
Barf Bagged into the
Bulimic Hall of Fame.
Man Vs Tank:
[Tank] Survivor just whooped yer ass and got
Man Vs Tank.
[Tank] You just slaughtered
Tank all by your lonesome, you
Man Vs Tank.
[Tank] Survivor is a mighty
Man Vs Tank.
Tank Burger (L4D2):
[Tank] You were just turned into a
Tank Burger, better hope noone is hungry.
<No Attacker Msg>
[Tank] Anybody hungry 'cuz I smell a
Tank Burger.
Kite Like a Man (L4D2 - The Passing - Coop):
<No Victim Msg>
<No Attacker Msg>
[Tank] Some may say you
Kite Like A Man, but most just call you wussies.
Level a charge from this request:
http://forums.alliedmods.net/showthread.php?t=125326 , which was partially filled by CanadaRox.
Requirements:
- colors.inc (web compiler won't work).
- Left 4 Dead 1 or 2
- Translation file (achievement.phrases.txt placed in sourcemod/translations)
Cvars:
l4d_achievements_ver
l4d_achievements_debug (0/1) - Default: 0 (for debugging use only)
l4d_achievements_debuglog (0/1) - Default: 0 (for debugging use only)
l4d_achievements_l4d1inl4d2 (0/1) - Default: 1 - Disabled L4D1 achievements in L4D2
l4d_achievements_usegeneric (0/1) - Default: 0 - Uses a generic message like how Valve prints them (in L4D2.. can't duplicate colors in L4D1)
Commands (still in development):
sm_achievement <Achievement> : Lists info about achievements, including the description as valve has worded it.
sm_my_achievement (this one doesn't do anything much yet)
sm_set_achievement [list|never|once|game|map|life|always] <Achievement>
list: will display info about the achievement (basically sm_achievement)
never|once|game|map|life|always: change the reporting of the achievement. Currently only never and always work - the rest will be implemented in future builds.
Version History:
1.1 - 1.2b
See notes in sp file
1.2.1
- ** Not released **
- Added Tank: Tankbusters
- Added Charger: Scattering Ram & Meat Tenderizer
- Changed [Level] to [Charger]
- Added Jockey: Qualified Ride, A Ride Denied & Back in the Saddle
- Added Generic: Stache Whacker, Gong Show
1.3
- Fairly significant re-write of much of the core code to accomodate the new features
- Started work on Untouchables, Safety First & any other campaign based achievement (currently don't do anything)
- Added Translations
- Fixed Level A Charge Message.. it now is gramatically correct.
- Added convar to allow/disable L4D1 achievements to be displayed in L4D2.
- Added convar for a generic message option
- Added Charger: Long Distance Carrier & started work on Wedding Crasher (when done, it will be every charger achievement).
- Added Tank: All 4 Dead
- Added Boomer: Clean Kill, Blind Luck (not completed)
- Added Hunter: Hunter Punter (not working), Dead Stop, Jump Shot
- Added another check for tank_index not resetting (when you kick the tank).
- Removed MAX_TANKS, changed it to MAXPLAYERS+1 (tanks are players after all)
- Added info on EVERY achievement..
- Added 3 commands for achievements, 1 is admin:
- sm_achievement <achievement> = lists info about an achievement
- sm_my_achievement <achievement> = lists personal info about an achievement (progress, completed, etc)
- sm_set_achievement[list|never|once|game|map|life|always] <Achievement> = with list, it is similar to sm_achievement, all other options set the report frequency on the server
- Got rid of some global handle variables
- Added hooks to the convars
- Added config file
To Do:
Finish Safety First, Untouchables, Wedding Crasher, Blind Luck.
Fix Hunter Punter & any of the other new ones I haven't tested yet.
Fix/finish the commands.
Add trophy.
Add more achievements.