Merge branch 'master' into shared_tasks

This commit is contained in:
Michael Cook (mackal) 2018-09-12 13:34:16 -04:00
commit e2c15dbc9e
3 changed files with 43 additions and 39 deletions

View File

@ -172,19 +172,19 @@ sub show_install_summary_info {
if (-e "install_variables.txt") { if (-e "install_variables.txt") {
$file_to_open = "install_variables.txt"; $file_to_open = "install_variables.txt";
} }
elsif(-e "../install_variables.txt"){ elsif (-e "../install_variables.txt") {
$file_to_open = "../install_variables.txt"; $file_to_open = "../install_variables.txt";
} }
open (INSTALL_VARS, $file_to_open); open(INSTALL_VARS, $file_to_open);
while (<INSTALL_VARS>){ while (<INSTALL_VARS>) {
chomp; chomp;
$o = $_; $o = $_;
@data = split(":", $o); @data = split(":", $o);
print " - " . $data[0] . "\t" . $data[1] . "\n"; print " - " . $data[0] . "\t" . $data[1] . "\n";
} }
close (INSTALL_VARS); close(INSTALL_VARS);
if($OS eq "Windows"){ if ($OS eq "Windows") {
print "[Install] Windows Utility Scripts:\n"; print "[Install] Windows Utility Scripts:\n";
print " - t_start_server.bat Starts EQEmu server with 30 dynamic zones, UCS & Queryserv, dynamic zones\n"; print " - t_start_server.bat Starts EQEmu server with 30 dynamic zones, UCS & Queryserv, dynamic zones\n";
print " - t_start_server_with_loginserver.bat Starts EQEmu server with 30 zones with loginserver\n"; print " - t_start_server_with_loginserver.bat Starts EQEmu server with 30 zones with loginserver\n";
@ -192,16 +192,16 @@ sub show_install_summary_info {
print " - t_database_backup.bat Backs up the Database to backups/ folder - do not run during server is online\n"; print " - t_database_backup.bat Backs up the Database to backups/ folder - do not run during server is online\n";
print " - t_server_crash_report.pl Will parse any zone crashes for reporting to developers\n"; print " - t_server_crash_report.pl Will parse any zone crashes for reporting to developers\n";
} }
if($OS eq "Linux"){ if ($OS eq "Linux") {
print "[Install] Linux Utility Scripts:\n"; print "[Install] Linux Utility Scripts:\n";
print " - server_start.sh Starts EQEmu server (Quiet) with 30 dynamic zones, UCS & Queryserv, dynamic zones\n"; print " - server_start.sh Starts EQEmu server (Quiet) with 30 dynamic zones, UCS & Queryserv, dynamic zones\n";
print " - server_start_dev.sh Starts EQEmu server with 10 dynamic zones, UCS & Queryserv, dynamic zones all verbose\n"; print " - server_start_dev.sh Starts EQEmu server with 10 dynamic zones, UCS & Queryserv, dynamic zones all verbose\n";
print " - server_stop.sh Stops EQEmu Server (No warning)\n"; print " - server_stop.sh Stops EQEmu Server (No warning)\n";
print " - server_status.sh Prints the status of the EQEmu Server processes\n"; print " - server_status.sh Prints the status of the EQEmu Server processes\n";
} }
print "[Configure] eqemu_config.xml Edit to change server settings and name\n"; print "[Configure] eqemu_config.xml Edit to change server settings and name\n";
analytics_insertion("install_complete", "null"); analytics_insertion("install_complete", "null");
} }
@ -831,6 +831,7 @@ sub show_menu_prompt {
elsif($input eq "setup_bots"){ setup_bots(); $dc = 1; } elsif($input eq "setup_bots"){ setup_bots(); $dc = 1; }
elsif($input eq "linux_login_server_setup"){ do_linux_login_server_setup(); $dc = 1; } elsif($input eq "linux_login_server_setup"){ do_linux_login_server_setup(); $dc = 1; }
elsif($input eq "quest_heading_convert"){ quest_heading_convert(); $dc = 1; } elsif($input eq "quest_heading_convert"){ quest_heading_convert(); $dc = 1; }
elsif($input eq "source_peq_db"){ fetch_peq_db_full(); $dc = 1; }
elsif($input eq "exit"){ elsif($input eq "exit"){
exit; exit;
} }

View File

@ -54,36 +54,39 @@ export apt_options="-y -qq" # Set autoconfirm and silent install
################################################################ ################################################################
read -n1 -r -p "Press any key to continue..." key if [ ! -f ./install_variables.txt ]; then
#::: Setting up user environment (eqemu) read -n1 -r -p "Press any key to continue..." key
echo "First, we need to set your passwords..."
echo "Make sure that you remember these and keep them somewhere" #::: Setting up user environment (eqemu)
echo "" echo "First, we need to set your passwords..."
echo "" echo "Make sure that you remember these and keep them somewhere"
groupadd eqemu echo ""
useradd -g eqemu -d $eqemu_server_directory eqemu echo ""
passwd eqemu groupadd eqemu
useradd -g eqemu -d $eqemu_server_directory eqemu
passwd eqemu
#::: Make server directory and go to it #::: Make server directory and go to it
mkdir $eqemu_server_directory mkdir $eqemu_server_directory
cd $eqemu_server_directory cd $eqemu_server_directory
#::: Setup MySQL root user PW #::: Setup MySQL root user PW
read -p "Enter MySQL root (Database) password: " eqemu_db_root_password read -p "Enter MySQL root (Database) password: " eqemu_db_root_password
#::: Write install variables (later use) #::: Write install variables (later use)
echo "mysql_root:$eqemu_db_root_password" > install_variables.txt echo "mysql_root:$eqemu_db_root_password" > install_variables.txt
#::: Setup MySQL server #::: Setup MySQL server
read -p "Enter Database Name (single word, no special characters, lower case):" eqemu_db_name read -p "Enter Database Name (single word, no special characters, lower case):" eqemu_db_name
read -p "Enter (Database) MySQL EQEmu Server username: " eqemu_db_username read -p "Enter (Database) MySQL EQEmu Server username: " eqemu_db_username
read -p "Enter (Database) MySQL EQEmu Server password: " eqemu_db_password read -p "Enter (Database) MySQL EQEmu Server password: " eqemu_db_password
#::: Write install variables (later use) #::: Write install variables (later use)
echo "mysql_eqemu_db_name:$eqemu_db_name" >> install_variables.txt echo "mysql_eqemu_db_name:$eqemu_db_name" >> install_variables.txt
echo "mysql_eqemu_user:$eqemu_db_username" >> install_variables.txt echo "mysql_eqemu_user:$eqemu_db_username" >> install_variables.txt
echo "mysql_eqemu_password:$eqemu_db_password" >> install_variables.txt echo "mysql_eqemu_password:$eqemu_db_password" >> install_variables.txt
fi
if [[ "$OS" == "Debian" ]]; then if [[ "$OS" == "Debian" ]]; then
# Install pre-req packages # Install pre-req packages

View File

@ -610,15 +610,15 @@ void Client::DropItem(int16 slot_id, bool recurse)
if (LogSys.log_settings[Logs::Inventory].is_category_enabled) { if (LogSys.log_settings[Logs::Inventory].is_category_enabled) {
Log(Logs::General, Logs::Inventory, "DropItem() Hack detected - full item parse:"); Log(Logs::General, Logs::Inventory, "DropItem() Hack detected - full item parse:");
Log(Logs::General, Logs::Inventory, "depth: 0, Item: '%s' (id: %u), IsDroppable: %s", Log(Logs::General, Logs::Inventory, "depth: 0, Item: '%s' (id: %u), IsDroppable: %s",
(invalid_drop->GetItem() ? invalid_drop->GetItem()->Name : "null data"), invalid_drop->GetID(), invalid_drop->IsDroppable(false)); (invalid_drop->GetItem() ? invalid_drop->GetItem()->Name : "null data"), invalid_drop->GetID(), (invalid_drop->IsDroppable(false) ? "true" : "false"));
for (auto iter1 : *invalid_drop->GetContents()) { // depth 1 for (auto iter1 : *invalid_drop->GetContents()) { // depth 1
Log(Logs::General, Logs::Inventory, "-depth: 1, Item: '%s' (id: %u), IsDroppable: %s", Log(Logs::General, Logs::Inventory, "-depth: 1, Item: '%s' (id: %u), IsDroppable: %s",
(iter1.second->GetItem() ? iter1.second->GetItem()->Name : "null data"), iter1.second->GetID(), iter1.second->IsDroppable(false)); (iter1.second->GetItem() ? iter1.second->GetItem()->Name : "null data"), iter1.second->GetID(), (iter1.second->IsDroppable(false) ? "true" : "false"));
for (auto iter2 : *iter1.second->GetContents()) { // depth 2 for (auto iter2 : *iter1.second->GetContents()) { // depth 2
Log(Logs::General, Logs::Inventory, "--depth: 2, Item: '%s' (id: %u), IsDroppable: %s", Log(Logs::General, Logs::Inventory, "--depth: 2, Item: '%s' (id: %u), IsDroppable: %s",
(iter2.second->GetItem() ? iter2.second->GetItem()->Name : "null data"), iter2.second->GetID(), iter2.second->IsDroppable(false)); (iter2.second->GetItem() ? iter2.second->GetItem()->Name : "null data"), iter2.second->GetID(), (iter2.second->IsDroppable(false) ? "true" : "false"));
} }
} }
} }
@ -636,21 +636,21 @@ void Client::DropItem(int16 slot_id, bool recurse)
if (LogSys.log_settings[Logs::Inventory].is_category_enabled) { if (LogSys.log_settings[Logs::Inventory].is_category_enabled) {
Log(Logs::General, Logs::Inventory, "DropItem() Processing - full item parse:"); Log(Logs::General, Logs::Inventory, "DropItem() Processing - full item parse:");
Log(Logs::General, Logs::Inventory, "depth: 0, Item: '%s' (id: %u), IsDroppable: %s", Log(Logs::General, Logs::Inventory, "depth: 0, Item: '%s' (id: %u), IsDroppable: %s",
(inst->GetItem() ? inst->GetItem()->Name : "null data"), inst->GetID(), inst->IsDroppable(false)); (inst->GetItem() ? inst->GetItem()->Name : "null data"), inst->GetID(), (inst->IsDroppable(false) ? "true" : "false"));
if (!inst->IsDroppable(false)) if (!inst->IsDroppable(false))
Log(Logs::General, Logs::Error, "Non-droppable item being processed for drop by '%s'", GetCleanName()); Log(Logs::General, Logs::Error, "Non-droppable item being processed for drop by '%s'", GetCleanName());
for (auto iter1 : *inst->GetContents()) { // depth 1 for (auto iter1 : *inst->GetContents()) { // depth 1
Log(Logs::General, Logs::Inventory, "-depth: 1, Item: '%s' (id: %u), IsDroppable: %s", Log(Logs::General, Logs::Inventory, "-depth: 1, Item: '%s' (id: %u), IsDroppable: %s",
(iter1.second->GetItem() ? iter1.second->GetItem()->Name : "null data"), iter1.second->GetID(), iter1.second->IsDroppable(false)); (iter1.second->GetItem() ? iter1.second->GetItem()->Name : "null data"), iter1.second->GetID(), (iter1.second->IsDroppable(false) ? "true" : "false"));
if (!iter1.second->IsDroppable(false)) if (!iter1.second->IsDroppable(false))
Log(Logs::General, Logs::Error, "Non-droppable item being processed for drop by '%s'", GetCleanName()); Log(Logs::General, Logs::Error, "Non-droppable item being processed for drop by '%s'", GetCleanName());
for (auto iter2 : *iter1.second->GetContents()) { // depth 2 for (auto iter2 : *iter1.second->GetContents()) { // depth 2
Log(Logs::General, Logs::Inventory, "--depth: 2, Item: '%s' (id: %u), IsDroppable: %s", Log(Logs::General, Logs::Inventory, "--depth: 2, Item: '%s' (id: %u), IsDroppable: %s",
(iter2.second->GetItem() ? iter2.second->GetItem()->Name : "null data"), iter2.second->GetID(), iter2.second->IsDroppable(false)); (iter2.second->GetItem() ? iter2.second->GetItem()->Name : "null data"), iter2.second->GetID(), (iter2.second->IsDroppable(false) ? "true" : "false"));
if (!iter2.second->IsDroppable(false)) if (!iter2.second->IsDroppable(false))
Log(Logs::General, Logs::Error, "Non-droppable item being processed for drop by '%s'", GetCleanName()); Log(Logs::General, Logs::Error, "Non-droppable item being processed for drop by '%s'", GetCleanName());