so why he said that he have 50 plugins and he will update them soon if they are private we are not wizards to know if they are private or no
but .. i think 10 plugins are not private or maybe greater then 10
one of them !emblem this just example
Beiträge von GumGes1
-
-
wow 50 !!!
why you don't share ?
well i only know about 30 plugin in manuadminmod the !register , !contact and more things
but what is that 20 more plugins ? can u share please ? -
i don't need to say it but i will and its (AHEAHEAHEAHEAHEAHEAHEAHEA)
daa... you don't support GameRanger So i don't care with what iceops are doing and don't support iceops
and u said
In my opinion there is no need to add "warn for bad names".
o rly ? @Azad69 ask if you can u can't come and say (In my opinion there is no need to add "warn for bad names".)
this is in your opinion but azad want it -
did you see
-
i really need to do it but i am already creating a plugin
but some one here should help you now cause this plugin its -Easy- For some developer or management
don't worry -
you can't only if some one create for you a plug-in for 1.0.0
-
-
GSC files
killcam,!fps,!fov,!menu,ranks,and more
the !fps fullbright @Azad69 no need for some u said that laaaaag or lag to follow the commands just he type !fps
!fov = Full Out View
forget this thing i will give you what you need to add in config.cfg at customcommands
i will wait my friend to open GameRanger -.-
to get config -
My job
you always welcome -
i found this plugin with a friend
its topplayers ,
!topplayers <number>
and save stats when player quit
and more... a lot of more
same as !xlrstats -
i really will do my best for you
-
AHEAHEAHEAHEAHEAHEAHEAHEAHEA.
don't worry about that
tell me what you want ? the plugin ? to warn
i will do my best for you -
its not there its here and the problem is i can't find it too
3 cases kick , ban , tempbanSpoiler anzeigen
PHP
Alles anzeigen<?php /** * ManuAdminMod * * This is a powerful and platform independent software for administrating game servers of various kinds. * If you need help with installing or using this software, please visit our website at: www.ManuAdminMod.de * If you want to obtain additional permissions extending the license, contact us at: Webmaster@ManuAdminMod.de * * @copyright www.ManuAdminMod.de * @license http://www.creativecommons.org/licenses/by-nc-nd/4.0/ Creative Commons BY-NC-ND 4.0 * @version 1.0.0-Beta+6 **/ namespace MAM\Plugins\Nameprotection; use MAM\Daemon\Libraries\Plugins\PluginHandler as PluginHandler; /** * Nameprotection for admins * * @author ManuAdminMod * @todo Rename Functions with Underline */ class NameProtection extends PluginHandler { /** * List of bad names * @var array */ private $bad_names; /** * Constructor */ public function __construct() { parent::__construct(); //Check Players because playerJoined isn't called at startup array_map(array($this, "nameprotection_main"), array_keys($this->players)); $this->nameprotection_read(); } /** * Inits the plugin * * This function initiates the plugin. This means that it register commands * default values, and events. It's important that every plugin has this function * Otherwise the plugin exists but can't be used */ protected function initPlugin() { parent::initPlugin(); $this->mod->setDefaultCV("nameprotection", "enabled", false); $this->mod->setDefaultCV("nameprotection", "badnamekick", false); $this->mod->setDefaultCV("nameprotection", "badnamekickmode", "tempban"); $this->mod->setDefaultCV("nameprotection", "badnamekickreason", "Your name contains an illegal part: <PART>"); $this->mod->setDefaultCV("nameprotection", "adminnamekick", false); $this->mod->setDefaultCV("nameprotection", "adminnamekickmode", "tempban"); $this->mod->setDefaultCV("nameprotection", "adminnamekickreason", "Your name is an admins name"); $this->mod->setDefaultCV("nameprotection", "maxnamechanges", false); $this->mod->setDefaultCV("nameprotection", "maxnamechangeskickmode", "tempban"); $this->mod->setDefaultCV("nameprotection", "maxnamechangeskickmode", "You have changed your name too often"); $this->mod->setDefaultCV("nameprotection", "uppercasedisallow", false); $this->mod->setDefaultCV("nameprotection", "uppercasekickreason", "Please do not use only upper case letters in your nickname"); $this->mod->setDefaultCV("nameprotection", "uppercasekickmode", "kick"); } /** * Runs the plugin * * This function is called after all plugins were loaded and dependencies were checked. * In this function you can define things which you want to load, when all plugins are fine. * * If you know that you don't have any dependencies, you can remove this function. * Otherwise you should use it. * * In this function you should call functions like registerCommand, registerEvent, triggerEvent */ public function runPlugin() { parent::runPlugin(); $this->mod->registerEvent("playerJoined", "nameprotection_main", $this); $this->mod->registerEvent("playerNameChange", "nameprotection_main", $this); $this->mod->registerEvent("parseConfig", "nameprotection_read", $this); } /** * Reads out the badwnames file * * @return void */ public function nameprotection_read() { if (!$this->mod->getCV("nameprotection", "enabled") || !$this->mod->getCV("nameprotection", "badnamekick")) { return; } $file = $this->mod->getCV("nameprotection", "disallowednames"); if ($file === false) { $this->logging->warning("Nameprotection: File $configdir/plugins/badnames.lst could not be opened, badnames part will be disabled"); $this->bad_names = false; return false; } $normal = array(); $regexp = array(); foreach ($file as $value) { $value = trim($value); if (stripos($value, "regexp:") === 0) { $regexp[] = substr($value, 7); } else { $normal[] = $value; } } $this->bad_names = array("normal" => $normal, "regexp" => $regexp); return; } /** * Checks if player uses a protected/forbidden name * * @param array $parameters * @return void * @todo Move Namechange to Namechange Checker * @todo Set upercasedisallow to false * @todo Move upercase to NameObserver class */ public function nameprotection_main($parameters) { if (!$this->mod->getCV("nameprotection", "enabled")) { return; } if (is_array($parameters)) { $guid = $parameters[0]; } else { $guid = $parameters; } $name = $this->players[$guid]->getName(); if ($this->mod->getCV("nameprotection", "adminnamekick") && !$this->permissions->hasPermissions($guid, 'nameprotection.punishment.adminname.ignore')) { if (!$this->mod->guidCanHaveName($guid, $name)) { $this->switchDoAction($this->mod->getCV("nameprotection", "adminnamekickmode"), $this->mod->getCV("nameprotection", "adminnamekickreason"), $guid); return; } } $kick = false; if ($this->mod->getCV("nameprotection", "badnamekick") && $this->bad_names != false && !$this->permissions->hasPermissions($guid, 'nameprotection.punishment.badname.ignore')) { foreach ($this->bad_names["normal"] as $value) { if (stripos($name, $value) !== false) { $part = $value; $kick = true; break; } } if (!$kick) { foreach ($this->bad_names["regexp"] as $value) { if (preg_match("´" . str_replace("´", "\\xB4", $value) . "´i", $name, $subpatterns)) { $part = $subpatterns[0]; $kick = true; break; } } } if ($kick) { $this->switchDoAction($this->mod->getCV("nameprotection", "badnamekickmode"), str_replace("<PART>", $part, $this->mod->getCV("nameprotection", "badnamekickreason")), $guid); return; } } if ($this->mod->getCV("nameprotection", "maxnamechanges") > 0 && !$this->permissions->hasPermissions($guid, 'nameprotection.punishment.maxnamechanges.ignore')) { if (!isset($this->players[$guid]->nameprotection_nameChanges)) { $this->players[$guid]->nameprotection_nameChanges = 0; } else { $this->players[$guid]->nameprotection_nameChanges ++; } if ($this->players[$guid]->nameprotection_nameChanges > $this->mod->getCV("nameprotection", "maxnamechanges")) { $this->switchDoAction($this->mod->getCV("nameprotection", "maxnamechangeskickmode"), $this->mod->getCV("nameprotection", "maxnamechangeskickreason"), $guid); return; } } if ($this->mod->getCV("nameprotection", "uppercasedisallow") && !$this->permissions->hasPermissions($guid, 'nameprotection.punishment.uppercasedisallow.ignore')) { if (preg_match('|^[^a-z0-9]+$|', $name)) { $this->switchDoAction($this->mod->getCV("nameprotection", "uppercasekickmode"), $this->mod->getCV("nameprotection", "uppercasekickreason"), $guid); return; } } } /** * Switch trough punishments * * @param string $switch * @param string $do Reason * @param string $guid Player Guid */ private function switchDoAction($switch, $do, $guid) { switch ($switch) { case "tempban": $this->players[$guid]->tempBan($do); break; case "kick": $this->players[$guid]->kick($do); break; case "ban": $this->players[$guid]->ban($do); break; default: $this->logging->debug("Undefined Type for switch $switch"); break; } } }
-
no no i am still not sure cause i never used nameprotection
-
yes
"badnamekickmode": "kick" u can put warn i think or no ?
cause i never use it
oh i think no -
i think the warn already exist
-
The Geoip please city and country
-
for sure i know the error
copy paste the original banner i mean when u download the adminmod 1.0.0 beta 6 don't change any thing now
go to banner.JSON
the last
banner added its "^2Try calling votes with ^3!vote{{br}}^2Versuche mithilfe von ^3!vote ^2Abstimmungen zu starten"
this thing don't have , in the last like this thing "^2Play fair and have fun{{br}}^2Spielt fair und habt Spaß", (,)<---------
so when u need to add new line just be sure that u added (,) in the last one its here
"^2Try calling votes with ^3!vote{{br}}^2Versuche mithilfe von ^3!vote ^2Abstimmungen zu starten" with ,
so all banners msg should have in the last like that "try !rules to see server rules",
only the last one like that "try !rule to see rules"and i have some questions why you guys changed from .lst and .cfg to JSON ?
i think 0.12 better then 1.0.0 beta 6 cause count of errors = 0
when i try geoip in 1.0.06 not works and more things too like
and why i have error with (Admin Valid !!!) ?
its written for 0.12 ? -
http://www.manuadminmod.de/lexicon/index.…ng-PHP-Windows/
enable every thing in php
cause can not open sqlite.dll -
cause or maybe when u add banner like that
hack not allowed
this is bad
it should be like that
"!vote to vote",
only the last one should be without ,
example "read rules"here the banner
Spoiler anzeigen
{
"banner": {
"enabled": true,
"time": 100,
"logging": true,
"banners": [
"^2This Server is running Manu-Admin-Mod ^1v<VERSION>",
"^2Next map is: ^7<NEXTMAP> (<NEXTGT>)",
"^2Play fair and have fun{{br}}^2Spielt fair und habt Spaß",
"^3Visit the Modhomepage http:/^3/manuadminmod.de{{br}}^3Besuche die Modhomepage: http:/^3/manuadminmod.de",
"^2Try calling votes with ^3!vote{{br}}^2Versuche mithilfe von ^3!vote ^2Abstimmungen zu starten",
"my name is GumGes1",
"your name is ReSh40",
"add some thing"
]
}
}