Raised This Month: $151 Target: $400
 37% 

[ANY] MechaWare: Custom Achievements 2.0! (0.6)


Post New Thread Reply   
 
Thread Tools Display Modes
Author
Mecha the Slag
Veteran Member
Join Date: Jun 2009
Location: Denmark
Plugin ID:
1659
Plugin Version:
0.6
Plugin Category:
Fun Stuff
Plugin Game:
Any
Plugin Dependencies:
    Servers with this Plugin:
     
    Plugin Description:
    Custom Achievements in any Source game!
    Old 05-13-2010 , 13:36   [ANY] MechaWare: Custom Achievements 2.0! (0.6)
    Reply With Quote #1

    Requires SDKHooks

    [IMG]http://img39.**************/img39/1378/allpurposeimagez.png[/IMG]

    OPTIMISED
    The code is severely up optimised to be faster, simpler and more extensive than ever. No more than 3 sql tables is needed, no matter the number of achievements!

    SUPPORTS ALL SOURCE GAMES
    Due to the modularity it is now possible to add achievements to any source game!

    MODULAR
    The plugin has been build with modularity in mind. It's now incredibly easy to add new features and new source game support.

    UNLIMITED
    Unlike the previous version, there is absolutely no limit on tasks (as opposed to the previous limit of 5).

    CREATING YOUR OWN TASKS IS EASY
    Tasks now work as an event system where you can easily create your own events and assign tasks to those! It's easy!

    [IMG]http://img707.**************/img707/7725/allpurposeimage.png[/IMG]
    mc_refresh - Refreshes server achievement cache.
    mc_version - Current plugin version.
    mc_info (1) - Upon unlock, explain the achievement.

    Type !ach / !achievements ingame to see achievement progress!

    [IMG]http://img571.**************/img571/7725/allpurposeimage.png[/IMG]
    If you add more events, expire values or requirements, do not hesitate to post them here so I can add them
    If you're confused about anything, feel free to post too!

    UPDATES
    0.6
    • Fixed a bug where the database would not be updated on map change.
    • Made client achievement progress only be submitted on disconnect or map change.
    • Fixed a bug where some achievements wouldn't trigger / be triggered by other achievements
    0.4
    • Fixed a bug where a client's achievements cache wasn't properly reset upon leaving
    • Changed to use SteamID rather than ClientID
    • Added fowards to allow other plugins to trigger events!
    0.32
    • Fixed medic_uber having the wrong target
    0.3
    • Added support for hurt in L4D2
    • Fixed SteamID issue in L4D2
    0.22
    • Fixed achievements not sometimes triggering when another client had the same achievement unlocked
    • Added "x has achievement with id y" (+ negative)
    0.21
    • Changed expire from int to text. Now supports multiple values (x|y|z...)
    • Fixed requirements being... majorly broken due to the optimisation
    • Fixed some achievements not activating proper
    0.2
    • Added BETA web interface
    • "x is class y" now works with survivors (zoey, nick, ...)
    • Extended tf2 support
    • Added requirement optimisation by Thraka
    • Added "game" column, which can make achievements specific to a source game.
    0.12
    • Extended L4D2 events
    • Extended requirements
    • Fixed bugs that would disallow the plugin from running in L4D2
    0.11
    • Extended TF2 events
    • Extended requirements
    0.10
    • Release

    Download Web Interface (0.6)
    Attached Files
    File Type: smx mw_achievements.smx (28.5 KB, 910 views)
    File Type: zip Source_0.6.zip (14.8 KB, 1535 views)
    __________________

    Last edited by berni; 10-26-2014 at 13:33.
    Mecha the Slag is offline
    Mecha the Slag
    Veteran Member
    Join Date: Jun 2009
    Location: Denmark
    Old 05-13-2010 , 13:40   Re: [ANY] MechaWare: Custom Achievements 2.0!
    Reply With Quote #2

    [IMG]http://img263.**************/img263/7725/allpurposeimage.png[/IMG]

    Each achievement has tasks that all need to be activated before the achievement is triggered!
    Example:
    task 1: Kill
    task 2: Chat

    if you kill someone and then chat, you unlock the achievement!

    With requirements, you can be more specific. Example:

    task 1: kill
    Requirement: Victim's class must be spy
    task 2: Chat
    Requirement: Chat must contain "haha"

    if the killer kills a spy and then types "haha" in chat, the achievement is unlocked!

    [IMG]http://img185.**************/img185/25/allpurposeimagey.png[/IMG]
    In order to host your own achievements you will need an SQL server.

    Code:
    	"mw_achievements_post"
    	{
    		"driver"			"mysql"
    		"host"				"siteground133.com"
    		"database"			"mechawar_achievements"
    		"user"				"mechawar_ach"
    		"pass"				"ach123"
    		//"timeout"			"0"
    		//"port"			"0"
    	} 
    	"mw_achievements_get"
    	{
    		"driver"			"mysql"
    		"host"				"siteground133.com"
    		"database"			"mechawar_achievements"
    		"user"				"mechawar_ach"
    		"pass"				"ach123"
    		//"timeout"			"0"
    		//"port"			"0"
    	}
    I HAVE AN SQL SERVER
    1. Use the above template and change it to your own host. POST is where the user's achievement data is stored and GET is the server achievement data. They are separated for convenience.
    2. Launch the following in your sql server. Make changes if you wish, but none is required.
    Quote:
    CREATE TABLE IF NOT EXISTS `mw_achievements_get_ach` (
    `id` int(11) NOT NULL auto_increment,
    `name` varchar(255) NOT NULL,
    `desc` text NOT NULL,
    `triggers` int(11) NOT NULL default '1',
    `blocks` text NOT NULL,
    `game` int(11) NOT NULL default '0',
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;
    CREATE TABLE IF NOT EXISTS `mw_achievements_get_blocks` (
    `id` int(11) NOT NULL auto_increment,
    `event` varchar(255) NOT NULL,
    `target` int(11) NOT NULL default '0',
    `triggers` int(11) NOT NULL default '1',
    `add` int(11) NOT NULL default '0',
    `requirement` text NOT NULL,
    `expire` int(11) NOT NULL default '0',
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;
    CREATE TABLE IF NOT EXISTS `mw_achievements_post_ach` (
    `id` varchar(255) NOT NULL COMMENT '(steamid_achid)',
    `achid` int(11) NOT NULL,
    `steamid` varchar(255) NOT NULL,
    `triggers` int(11) NOT NULL default '0',
    `complete` int(11) NOT NULL default '0',
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8;
    3. Final step is to Download the web interface.

    I DON'T HAVE AN SQL SERVER
    1. Even though you don't have an SQL server you can still use the achievements created by MechaWare for the MechaWare servers.
    Simply add the above template to your databases.cfg and you should be ready to go!
    __________________

    Last edited by Mecha the Slag; 06-21-2010 at 07:08.
    Mecha the Slag is offline
    Afronanny
    Veteran Member
    Join Date: Aug 2009
    Old 05-13-2010 , 14:24   Re: [ANY] MechaWare: Custom Achievements 2.0!
    Reply With Quote #3

    Impressive. The old custom achievements spewed errors constantly, I'll try it out later.
    Afronanny is offline
    SuperShadow
    SourceMod Donor
    Join Date: Jun 2008
    Location: Westminster, MD
    Old 05-13-2010 , 14:52   Re: [ANY] MechaWare: Custom Achievements 2.0!
    Reply With Quote #4

    I look forward to testing this out in the next couple of days, thanks for the effort Mecha!
    SuperShadow is offline
    DrWagstaff
    SourceMod Donor
    Join Date: Apr 2010
    Location: Livermore
    Old 05-14-2010 , 05:13   Re: [ANY] MechaWare: Custom Achievements 2.0!
    Reply With Quote #5

    Goddamnit, I just installed the old one. Does this one have support for more conditions? With the old one I couldn't do achievements like "Kill a heavy while he's eating his sandvich" and "Reflect a reflect and kill the originator".
    DrWagstaff is offline
    Send a message via AIM to DrWagstaff
    Mecha the Slag
    Veteran Member
    Join Date: Jun 2009
    Location: Denmark
    Old 05-14-2010 , 05:35   Re: [ANY] MechaWare: Custom Achievements 2.0!
    Reply With Quote #6

    Quote:
    Originally Posted by DrWagstaff View Post
    Goddamnit, I just installed the old one. Does this one have support for more conditions? With the old one I couldn't do achievements like "Kill a heavy while he's eating his sandvich" and "Reflect a reflect and kill the originator".
    yes it does. Although in this one it's called requirements. If you need a requirement but it isn't implemented yet, request it and I'll add it right away!
    __________________
    Mecha the Slag is offline
    DrWagstaff
    SourceMod Donor
    Join Date: Apr 2010
    Location: Livermore
    Old 05-14-2010 , 05:38   Re: [ANY] MechaWare: Custom Achievements 2.0!
    Reply With Quote #7

    Sigh, I guess I'll have to move to yours! Progress be damned! Thanks for your fine work. Is there any way you could make a script to convert the old achievements/player data in to your system? I have many many achievements set up and I don't want to do them all again (even though I will, if I have to). Thanks again for your time and effort.

    EDIT: Also, just wondering (I could be tired and just not seeing it) does your plugin have an easy creator for achievements? I'd rather like not to go cfg diving to make achievements. And the contribute feature of the other one is quite nice.

    Last edited by DrWagstaff; 05-14-2010 at 05:40.
    DrWagstaff is offline
    Send a message via AIM to DrWagstaff
    Mecha the Slag
    Veteran Member
    Join Date: Jun 2009
    Location: Denmark
    Old 05-14-2010 , 05:41   Re: [ANY] MechaWare: Custom Achievements 2.0!
    Reply With Quote #8

    The system is relatively the same (I also made the other one). Name, description and triggers is the same (triggers being called amount in the old) but the other values are completely different with a completely different meaning and setup. You could recreate them but I doubt there's an easy way to directly convert them.

    If you need any help recreating an achievement do not hesitate to post here as it'll help the development of the plugin
    __________________
    Mecha the Slag is offline
    DrWagstaff
    SourceMod Donor
    Join Date: Apr 2010
    Location: Livermore
    Old 05-14-2010 , 05:58   Re: [ANY] MechaWare: Custom Achievements 2.0!
    Reply With Quote #9

    I must be confused, is there a missing link or something? I was hoping there was a website based back end for it like the other one. I'll definitely move to this one once editing like that is supported.
    DrWagstaff is offline
    Send a message via AIM to DrWagstaff
    Mecha the Slag
    Veteran Member
    Join Date: Jun 2009
    Location: Denmark
    Old 05-14-2010 , 06:07   Re: [ANY] MechaWare: Custom Achievements 2.0!
    Reply With Quote #10

    It does not feature a website interface... yet

    its being worked on though!
    __________________
    Mecha the Slag 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 15:19.


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