AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Plugins (https://forums.alliedmods.net/forumdisplay.php?f=108)
-   -   MOTDgd Advertisements (3.0.2 2020/01/04) ** Added 'rewards' (works with CSGO) ** (https://forums.alliedmods.net/showthread.php?t=219062)

Ixel 06-24-2013 21:17

MOTDgd Advertisements (3.0.2 2020/01/04) ** Added 'rewards' (works with CSGO) **
 
MOTDgd Advertisements Plugin

DOWNLOAD HERE:

https://github.com/MOTDgd-Ltd/sourcemod-plugin


If you're updating from 2.4.19 or lower then please ensure you use the new cfg file as it's different!

It is strongly recommended you download the ZIP file if you wish to compile the plugin, make sure you have the necessary extra includes files.

Please make sure you use the latest SteamWorks 'includes' SP file.

Made by one dedicated game player, MOTDgd is set out to be a fairly customisable and rewarding asset to community owners with one or more gameservers. Unlike some, we realise that servers aren’t objects that grow on trees, we realise they cost money, so we’re here to try and help offset that and allow you to enjoy the community you have rather than worry everyday about the bills that it’s producing. Our philosophy is to keep the implementation simple, non-intrusive and offer fair and competitive rates, while trying to keep a balance between satisfied players and relaxed community owners.

Our portal interface offers near real-time statistics, makes use of HighCharts, and offers some of the finest details that you'd find useful to know about.

Instructions to getting started:
1. Go to our website and register for an account by clicking here
2. When logged in you should notice your MOTDgd MOTD URL, at the end of it it says a number, this is your MOTDgd user ID
3. Change the ‘sm_motdgd_userid’ plugin cvar to your MOTDgd user ID you took note of earlier and other cvars as necessary
4. The plugin.motdgd_adverts.cfg file belongs in *game-mod*/cfg/sourcemod/, or Sourcemod will generate a default plugin.motdgd_adverts.cfg file when you start the plugin
5. Load the plugin or restart the server

For instructions on setting up 'rewards' for your players (particularly important for CSGO servers currently), when they successfully watch an ad, please see our Github page. The link is at the end of this post.

Any feedback, improvements and suggestions to the plugin code are absolutely welcome.

TO DO
- Translations

CHANGELOG
Code:

04/01/2020 - Version 3.0.2
* Hope everyone had a nice Christmas and New Year!
* Fixed compiler warning messages for MASK and FIN
* Fixed an issue with KillTimer(g_Reminder) on initial server startup
* Fixed an issue with rewards not being given on initial server startup due to MOTD file being out of sync

11/12/2018
* Fixed 'sm_motdgd_reminder' CVAR from being read incorrectly by the plugin (was reading as seconds instead of minutes)

The following changes were contributed by Glubbable:
* Converted plugin code to use new syntax
* Fixed EasyHTTP tag mismatches
* Fixed an issue with the plugin loading with cURL
* Advertisements will no longer be sent to clients with a non-HTML MOTD

09/08/2018 - Version 3.0.1
* Fixed an issue with configured 'rewards' duplicating on map change

08/08/2018 - Version 3.0.0
+ Added 'rewards' functionality, similar to how our Minecraft and Unturned plugins work, optionally reward your players something if they watch an ad
* Socket extension is required
* This is also a workaround for CSGO servers, since Panorama currently no longer has an MOTD UI, 'rewards' also work for all supported games however

05/02/2018 - Version 2.5.32
* Note: Version number hasn't been changed as this is an extremely minor update
* Removed notify on version and user ID cvar so that servers no longer advertise these

12/07/2017 - Version 2.5.32
* Implemented a workaround for Team Fortress 2's currently buggy MOTD
* Plugin now requires cURL extension (only for Team Fortress 2 servers)
* Fixed a bug with Counter-Strike: Global Offensive

11/04/2017 - Version 2.5.3
* Fixed an issue with 'No More Room In Hell' where players were stuck in the floor and needed to manually run 'joingame'

02/02/2017 - Version 2.5.2
* Fixed an issue with team join

31/01/2017 - Version 2.5.1
- Removed supported games check so that more games are supported without our intervention

04/08/2016 - Version 2.4.87
+ Cvar sm_motdgd_ip now supports port being specified (optional, you can just specify the IP address only if you wish)
* Improvements for trying to identify the server's true IP address
* Bug fix for sm_motdgd_ip, incorrectly handling no specified port

20/07/2016 - Version 2.4.83
+ Added cvar sm_motdgd_ip - this is for specifying your server IP address manually (e.g. 123.123.123.123) if the plugin can't identify it (it must be an IP address, not a hostname!)
* Changed default and minimum for sm_motdgd_auto_close as it was closing too early, causing poor completion rates in some cases
- Team Fortress 2 no longer supports sm_motdgd_auto_close due to restrictions with executing client commands (such as changeteam)

28/06/2016 - Version 2.4.19
+ SteamWorks is now used as an optional extension
+ Steam ID whitelist, immunity to seeing advertisements (add each Steam ID on a new line in addons/sourcemod/configs/motdgd_whitelist.cfg)
+ Cvar sm_motdgd_auto_close, number of seconds to automatically close the MOTD window (default 40 seconds, minimum 30 seconds)
* Using the SteamWorks extension (if it's running), the true server IP is retrieved
* Some bug fixes

13/12/2015 - Version 2.3.5
+ Added support for sending player's name to MOTDgd
* Fixed a problem with Counter-Strike: Source

30/06/2015 - Version 2.3.2
+ Added support for insurgency (credit to vem882)
* Fixed forced timer indefinitely running
- Removed some deprecated and unused preloading code that was supposed to be removed in the previous version

25/06/2015 - Version 2.3.1
+ Added optional forced timer duration cvar for supported games (not supported in CSGO and L4D2), in an effort to improve performance based metrics for our advertisers, please note this is 5 seconds and can be disabled, see new plugin cfg file for the cvar
* Some bug fixes
- Removed unused events in games not supported
- Removed preloading functionality
- Removed chat ad functionality
- Removed dependency for JSON and EasyHTTP2 includes (also no longer needing extensions such as cURL, Socket or SteamTools)

21/06/2015 - Version 2.3.0
* Bug fixes and corrections made to the old URL's in the code (due to changes made to the backend)
* Compatible with the latest compiler

02/04/2015 - Version 2.2.9
+ Added 'sm_motdgd_chat' to toggle usage of chat advertisements (thanks to Bottiger)
+ Added re-view event support for round_start
* View time is now saved as timestamps instead of creating a timer for each player (thanks to Bottiger)
* Moved null check for IsValidClient to the front because it will
cause IsClientInGame to fail (thanks to Bottiger)

31/12/2014 - Version 2.2.7 beta
- Removed a chat message for testing purposes

30/12/2014 - Version 2.2.6 beta
* Fixed Left 4 Dead 2 compatibility issue, the MOTD should now show up
* Fixed re-view timer issues, re-view should now work correctly

12/10/2014 - Version 2.2.5 beta
* Fixed another identified bug related to a client that's no longer connected to the server and therefore wrongly logging an error in the Sourcemod error log

12/10/2014 - Version 2.2.4 beta
+ Added in some additional checks for identifying if the player is still connected or not (lack of these checks caused some errors before)
+ Added 'sm_motdgd_preload' cvar, this represents the maximum time in seconds to allow an advertisement to preload, 15 by default and a setting of 0 disables preloading advertisements, please be aware that this feature is only supported on Team Fortress servers for now and is considered 'experimental'
* Fixed a bug that caused a re-view event to fire repeatedly after it was first eligible to fire
* Fixed a bug for Team Fortress 2 servers where a re-view event would occur for a spy that died with a dead ringer active (feigning death)

08/10/2014 - Version 2.2.1 beta
- Removed LogError line in plugin which caused 'Once Per Player' spam in the error log on busy servers (unintentional debug message left in the code)

08/10/2014 - Version 2.2.0 beta (plugin rewrite)
* Complete plugin rewrite
* Changed URL cvar to user ID, please ensure you use the new cfg file as it's different!
* Improved L4D2 support
* More efficient code
+ Additional modes to choose for the re-view functionality
+ Added a cvar for showing ad on connection
+ Added new advertising format (in-game chat message, once every 10 minutes if any advertisement is available)
- Removed 'updater' dependency and support

15/02/2014 - Version 1.6.6
- Removed forced cvar temporarily due to Valve changes last year making this no longer functional, will re-implement soon
- Removed EasyHTTP code from the plugin, this will fix the error log spam

02/11/2013 - Version 1.6.5
+ Dynamic forced timer support (optional) - This means if you have a forced timer of, for example, 30 seconds set and the ad only lasts 10 seconds then the MOTD will be skippable after 10 seconds~
* Nuclear Dawn now shows team selection window after closing MOTD
* Changed update URL to prevent 1.6.4 updating automatically
* EasyHTTP is used (include) - Credit to https://bitbucket.org/motdplayer/sm-adplugin/src
* Either cURL, SteamTools or Sockets are required

26/10/2013 - Version 1.6.4
* Forced timers should now fully work in supported games
* TF2 spies feigning death shouldn't trigger a review
* PbReadString was incorrectly used

13/07/2013 - Version 1.6.3
* Changed sm_motdgd_forced to specify number of forced seconds, 0 is disabled, 6 is default
* Changed MOTD code so that more consideration is made to supporting L4D2 better, still needs working on though (buggy for L4D2 apparently)

necavi did the following:
+ Added IsPlayerValid to simplify player checks
* Did massive code clean-up
* Modified all timers to use userids instead of client indexes, fixing most errors

Also, the 'MOTDgd' member on this forum is also an official staff member of MOTDgd.

DOWNLOAD HERE:

https://github.com/MOTDgd-Ltd/sourcemod-plugin

DeathMaster 06-25-2013 04:29

Re: MOTDgd Advertisements Plugin
 
So far so good. I have been testing this out and the stats are higher then other programs iv used.

Morell 06-25-2013 04:33

Re: MOTDgd Advertisements Plugin
 
The videos are in flash? This causes game crash, same with the Pinion, please use HTML5.

Ixel 06-25-2013 04:53

Re: MOTDgd Advertisements Plugin
 
Quote:

Originally Posted by Morell (Post 1976893)
The videos are in flash? This causes game crash, same with the Pinion, please use HTML5.

I will discuss this option with the ad provider, however Flash should be fine on a majority of viewers. Flash typically crashes if it's an old version or installed bad in some way. I have also implemented a measure to 'detect' any potential crashes and therefore prevent the advertisement being played to the same user temporarily.

Morell 06-25-2013 05:19

Re: MOTDgd Advertisements Plugin
 
In addition, the Flash does not allow minimize the game.

If you need to do some test, send me an MP or Steam.

PD. In the last test with 15 players, 6 have crash client with World War Z advert (using flash).

Happy DODs player 06-25-2013 05:50

Re: MOTDgd Advertisements Plugin
 
Will test later today. Mucho gracias.

XaxaXoxo 06-25-2013 05:51

Re: MOTDgd Advertisements Plugin
 
Are there restrictions on which countries?

Ixel 06-25-2013 06:32

Re: MOTDgd Advertisements Plugin
 
Quote:

Originally Posted by XaxaXoxo (Post 1976929)
Are there restrictions on which countries?

There are no restrictions on countries at the moment.

Ixel 06-25-2013 15:00

Re: MOTDgd Advertisements Plugin
 
Quote:

Originally Posted by Morell (Post 1976912)
In addition, the Flash does not allow minimize the game.

If you need to do some test, send me an MP or Steam.

PD. In the last test with 15 players, 6 have crash client with World War Z advert (using flash).

I will have that advert looked into now, if that's the case I can have it easily removed from the rotation. Thanks for letting me know.

EDIT: I've added some experimental JS code based on a theory of what's causing the crash. My belief is it's when the 'layer' is being removed (which contains a Flash object) and for some reason the browser doesn't like that. So, my experiment involves having a timer which looks for the div and flash object elements in question (related to the layer) and renames them so that they can't be removed after the ad has finished. If anyone can tell me whether this fixed it, those that get this specific ad that is, I'd be appreciative. Thanks.

Morell 06-25-2013 15:28

Re: MOTDgd Advertisements Plugin
 
Quote:

Originally Posted by Ixel (Post 1977298)
I will have that advert looked into now, if that's the case I can have it easily removed from the rotation. Thanks for letting me know.

All adverts with flash produce this crash. I had to disable the plugin.


All times are GMT -4. The time now is 02:38.

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