@deladriendil
This is what I use:
Server Folder/plugins/MYSQL.pl
Code:
#::: Akkadius
#::: Description: These plugins are MySQL loaders in use with Perl DBI
#::: For plug and play, LoadMysql will load your database credentials from eqemu_config.json
sub LoadMysql {
use DBI;
use DBD::mysql;
use JSON;
my $json = new JSON();
#::: Load Config
my $content;
open(my $fh, '<', "eqemu_config.json") or die "cannot open file $filename"; {
local $/;
$content = <$fh>;
}
close($fh);
#::: Decode
$config = $json->decode($content);
#::: Set MySQL Connection vars
$db = $config->{"server"}{"database"}{"db"};
$host = $config->{"server"}{"database"}{"host"};
$user = $config->{"server"}{"database"}{"username"};
$pass = $config->{"server"}{"database"}{"password"};
#::: Map DSN
$dsn = "dbi:mysql:$db:$host:3306";
#::: Connect and return
$connect = DBI->connect($dsn, $user, $pass);
return $connect;
}
Quote:
Originally Posted by Akkadius
Thanks for taking this on bud - I'm sure many people will appreciate it
If you want to pretty it up and make sure it all works and is tested that would be great.
Swap out special attacks for the new hotness and make sure that works and things should be good
I will make sure that all of this gets into our new docs we've been working on for 2018
|
Not a problem. It's something I've wanted to do for a little while. I would assume I'm the best person other than yourself to get it done since I've used it for years now and I am pretty familiar with the inner workings.
Current plans:
- Update code to take advantage of the new special_abilities system
- Migrate code to the plugins folder to free up space in zone_controller.pl
- Clean up my existing pet scaling code that works with this system
- Simple boolean option to use pet scaling or not
- Add a way to not scale entire zones
- Add a "don't scale me" option for specific NPCs while still scaling the rest of the zone