Exemplo n.º 1
0
$stmt->bindParam(':email', $_SESSION['username']);
$stmt->execute();
$playerinfo = $stmt->fetch(PDO::FETCH_ASSOC);
if (array_key_exists('sure', $_GET)) {
    $sure = $_GET['sure'];
}
if (!isset($sure)) {
    echo "<font color=red><strong>" . $langvars['l_die_rusure'] . "</strong></font><br><br>";
    echo "Please Note: You will loose all your Planets if you Self-Destruct!.<br>\n";
    echo "<a href='main.php'>" . $langvars['l_die_nonono'] . "</a> " . $langvars['l_die_what'] . "<br><br>";
    echo "<a href=self_destruct.php?sure=1>" . $langvars['l_yes'] . "!</a> " . $langvars['l_die_goodbye'] . "<br><br>";
} elseif ($sure == 1) {
    echo "<font color=red><strong>" . $langvars['l_die_check'] . "</strong></font><br><br>";
    echo "Please Note: You will loose all your Planets if you Self-Destruct!.<br>\n";
    echo "<a href='main.php'>" . $langvars['l_die_nonono'] . "</a> " . $langvars['l_die_what'] . "<br><br>";
    echo "<a href=self_destruct.php?sure=2>" . $langvars['l_yes'] . "!</a> " . $langvars['l_die_goodbye'] . "<br><br>";
} elseif ($sure == 2) {
    echo $langvars['l_die_count'] . "<br>";
    echo $langvars['l_die_vapor'] . "<br><br>";
    $langvars['l_die_please'] = str_replace("[logout]", "<a href='logout.php'>" . $langvars['l_logout'] . "</a>", $langvars['l_die_please']);
    echo $langvars['l_die_please'] . "<br>";
    Tki\Character::kill($pdo_db, $playerinfo['ship_id'], $langvars, $tkireg, true);
    Tki\Bounty::cancel($pdo_db, $playerinfo['ship_id']);
    Tki\AdminLog::writeLog($pdo_db, LOG_ADMIN_HARAKIRI, "{$playerinfo['character_name']}|" . $request->server->get('REMOTE_ADDR') . "");
    Tki\PlayerLog::WriteLog($pdo_db, $playerinfo['ship_id'], LOG_HARAKIRI, $request->server->get('REMOTE_ADDR'));
    echo "Due to nobody looking after your Planets, all your Planets have reduced into dust and ruble. Your Planets are no more.<br>\n";
} else {
    echo $langvars['l_die_exploit'] . "<br><br>";
}
Tki\Text::gotomain($pdo_db, $lang);
Tki\Footer::display($pdo_db, $lang, $tkireg, $template);
Exemplo n.º 2
0
 // Updating to always get a positive rating increase for
 // xenobe and the credits they are carrying
 $salv_credits = 0;
 // Double death attack bug fix - Returns 0 for real
 // players, 1 for Xenobe players
 // He is a Xenobe
 if (preg_match("/(\\@xenobe)\$/", $targetinfo['email']) !== 0) {
     $resx = $db->Execute("UPDATE {$db->prefix}xenobe SET active= N WHERE xenobe_id = ?;", array($targetinfo['email']));
     Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
     Tki\AdminLog::writeLog($pdo_db, LOG_ATTACK_DEBUG, "*|{$playerinfo['ship_id']}|{$targetinfo['ship_id']}|Detected as AI.");
     if ($rating_change > 0) {
         $rating_change = 0 - $rating_change;
         Tki\PlayerLog::WriteLog($pdo_db, $targetinfo['ship_id'], LOG_ATTACK_LOSE, "{$playerinfo['character_name']}|N");
         Tki\Bounty::collect($pdo_db, $langvars, $playerinfo['ship_id'], $targetinfo['ship_id']);
         Tki\Character::kill($pdo_db, $targetinfo['ship_id'], $langvars, $tkireg, false);
         Tki\AdminLog::writeLog($pdo_db, LOG_ATTACK_DEBUG, "*|{$playerinfo['ship_id']}|{$targetinfo['ship_id']}|Hope fully we only killed off the AI.");
     }
     $salv_credits = $targetinfo['credits'];
 }
 $free_ore = round($targetinfo['ship_ore'] / 2);
 $free_organics = round($targetinfo['ship_organics'] / 2);
 $free_goods = round($targetinfo['ship_goods'] / 2);
 $free_holds = Tki\CalcLevels::holds($playerinfo['hull'], $tkireg) - $playerinfo['ship_ore'] - $playerinfo['ship_organics'] - $playerinfo['ship_goods'] - $playerinfo['ship_colonists'];
 if ($free_holds > $free_goods) {
     $salv_goods = $free_goods;
     $free_holds = $free_holds - $free_goods;
 } elseif ($free_holds > 0) {
     $salv_goods = $free_holds;
     $free_holds = 0;
 } else {
     $salv_goods = 0;
Exemplo n.º 3
0
                    Tki\Db::LogDbErrors($pdo_db, $resy, __LINE__, __FILE__);
                }
            } else {
                $resz = $db->Execute("UPDATE {$db->prefix}scheduler SET ticks_left = ? WHERE sched_id = ?", array($ticks_left, $event['sched_id']));
                Tki\Db::LogDbErrors($pdo_db, $resz, __LINE__, __FILE__);
            }
            $sched_var_id = $event['sched_id'];
            $sched_var_extrainfo = $event['extra_info'];
            $sched_i = 0;
            while ($sched_i < $multiplier) {
                include_once './scheduler/' . $event['sched_file'];
                $sched_i++;
            }
            $sched_res->MoveNext();
        }
        $lastRun /= $schedCount;
    }
    // Calculate the difference in time when the last good update happened.
    $schedDiff = $lastRun - (time() - $tkireg->sched_ticks * 60);
    if (abs($schedDiff) > $tkireg->sched_ticks * 60) {
        // Hmmm, seems that we have missed at least 1 update, so log it to the admin.
        Tki\AdminLog::writeLog($pdo_db, 2468, "Detected Scheduler Issue|{$lastRun}|" . time() . "|" . (time() - $tkireg->sched_ticks * 60) . "|{$schedDiff}|" . serialize($lastrunList));
    }
    $runtime = time() - $starttime;
    echo "<p>The scheduler took {$runtime} seconds to execute.<p>";
    $res = $db->Execute("UPDATE {$db->prefix}scheduler SET last_run = " . time());
    Tki\Db::LogDbErrors($pdo_db, $res, __LINE__, __FILE__);
}
echo "<br>";
Tki\Text::gotomain($pdo_db, $lang);
Tki\Footer::display($pdo_db, $lang, $tkireg, $template);
Exemplo n.º 4
0
     } else {
         echo $langvars['l_planet_not_selling'] . "<br>";
     }
     $langvars['l_planet_att_link'] = "<a href=planet.php?planet_id={$planet_id}&command=attac>" . $langvars['l_planet_att_link'] . "</a>";
     $langvars['l_planet_att'] = str_replace("[attack]", $langvars['l_planet_att_link'], $langvars['l_planet_att']);
     $langvars['l_planet_scn_link'] = "<a href=planet.php?planet_id={$planet_id}&command=scan>" . $langvars['l_planet_scn_link'] . "</a>";
     $langvars['l_planet_scn'] = str_replace("[scan]", $langvars['l_planet_scn_link'], $langvars['l_planet_scn']);
     echo $langvars['l_planet_att'] . "<br>";
     echo $langvars['l_planet_scn'] . "<br>";
     echo "<a href=planet.php?planet_id={$planet_id}&command=bomb>" . $langvars['l_sofa'] . "</a><strong>" . $langvars['l_planet_att_sure'] . "</strong><br>";
 } elseif ($command == "bomb" && $tkireg->allow_sofa) {
     Planet::planetBombing($pdo_db, $lang, $langvars, $tkireg, $playerinfo, $ownerinfo, $planetinfo, $template);
 } elseif ($command == "scan") {
     // Kami Multi Browser Window Attack Fix
     if (array_key_exists('planet_selected', $_SESSION) === false || $_SESSION['planet_selected'] != $planet_id) {
         Tki\AdminLog::writeLog($pdo_db, LOG_MULTI_BROWSER, "{$request->server->get('REMOTE_ADDR')}|{$playerinfo['ship_id']}|Tried to Scan without clicking on the Planet.");
         echo "You need to Click on the planet first.<br><br>";
         Tki\Text::gotomain($pdo_db, $lang);
         Tki\Footer::display($pdo_db, $lang, $tkireg, $template);
         die;
     }
     unset($_SESSION['planet_selected']);
     // Scan menu
     if ($playerinfo['turns'] < 1) {
         echo $langvars['l_plant_scn_turn'] . "<br><br>";
         Tki\Text::gotomain($pdo_db, $lang);
         Tki\Footer::display($pdo_db, $lang, $tkireg, $template);
         die;
     }
     // Determine per cent chance of success in scanning target ship - based on player's sensors and opponent's cloak
     $success = (10 - $ownerinfo['cloak'] / 2 + $playerinfo['sensors']) * 5;
Exemplo n.º 5
0
            }
        } else {
            echo "<div style='font-size:18px; color:#FF0000;'>\n";
            if (array_key_exists('ban_type', $ban_result) && $ban_result['ban_type'] == ID_LOCKED) {
                echo "Your account has been Locked";
            } else {
                echo "Your account has been Banned";
            }
            if (array_key_exists('public_info', $ban_result) && mb_strlen(trim($ban_result['public_info'])) > 0) {
                echo " for the following:<br>\n";
                echo "<br>\n";
                echo "<div style='font-size:16px; color:#FFFF00;'>{$ban_result['public_info']}</div>\n";
            }
            echo "</div>\n";
            echo "<br>\n";
            echo "<div style='color:#FF0000;'>Maybe you will behave yourself next time.</div>\n";
            echo "<br>\n";
            echo str_replace("[here]", "<a href='index.php'>" . $langvars['l_here'] . "</a>", $langvars['l_global_mlogin']);
        }
    } else {
        // password is incorrect
        echo $langvars['l_login_4gotpw1a'] . "<br><br>" . $langvars['l_login_4gotpw1b'] . " <a href='mail.php?mail=" . $email . "'>" . $langvars['l_clickme'] . "</a> " . $langvars['l_login_4gotpw2a'] . "<br><br>" . $langvars['l_login_4gotpw2b'] . " <a href='index.php'>" . $langvars['l_clickme'] . "</a> " . $langvars['l_login_4gotpw3'] . " " . $request->server->get('REMOTE_ADDR') . "...";
        Tki\PlayerLog::WriteLog($pdo_db, $playerinfo['ship_id'], LOG_BADLOGIN, $request->server->get('REMOTE_ADDR'));
        Tki\AdminLog::writeLog($pdo_db, 1000 + LOG_BADLOGIN, "{$request->server->get('REMOTE_ADDR')}|{$email}|{$filtered_post_password}");
    }
} else {
    // FUTURE: Add handling to pass the email address to the new signup.
    $langvars['l_login_noone'] = str_replace("[here]", "<a href='new.php" . $link . "'>" . $langvars['l_here'] . "</a>", $langvars['l_login_noone']);
    echo "<strong>" . $langvars['l_login_noone'] . "</strong><br>";
}
Tki\Footer::display($pdo_db, $lang, $tkireg, $template);
Exemplo n.º 6
0
        if ($db->ErrorNo() > 0) {
            echo "error: " . $db->ErrorMsg() . "<br>\n";
        }
        $detected = (bool) true;
        // Tki\AdminLog::writeLog ($pdo_db, 960, "20|{$bankinfo['ship_id']}|{$bankinfo['balance']}");
    }
    // Checking IBANK Loan Credits
    if ($bankinfo['loan'] < 0) {
        echo "'-> <span style='color:#f00;'>Detected Loan Credits Flip on IBANK Account: {$bankinfo['ship_id']}.</span> <span style='color:#0f0;'>*** FIXED ***</span><br>\n";
        $resk = $db->Execute("UPDATE {$db->prefix}ibank_accounts SET loan = ? WHERE ship_id = ? LIMIT 1;", array(0, $bankinfo['ship_id']));
        Tki\Db::LogDbErrors($pdo_db, $resk, __LINE__, __FILE__);
        if ($db->ErrorNo() > 0) {
            echo "error: " . $db->ErrorMsg() . "<br>\n";
        }
        $detected = (bool) true;
        Tki\AdminLog::writeLog($pdo_db, 960, "21|{$bankinfo['ship_id']}|{$bankinfo['balance']}");
    }
    $tdres->MoveNext();
}
echo "Validating IBANK Transfer Amount Credits...<br>\n";
$tdres = $db->Execute("SELECT transfer_id, source_id, dest_id, amount FROM {$db->prefix}ibank_transfers");
Tki\Db::LogDbErrors($pdo_db, $tdres, __LINE__, __FILE__);
/*
while (!$tdres->EOF)
{
    $transferinfo = $tdres->fields;

    // Checking IBANK Transfer Amount Credits
    if ($transferinfo['amount'] < 0)
    {
        echo "'-> <span style='color:#f00;'>Detected Transfer Amount Credits Flip on IBANK Transfer: {$transferinfo['ship_id']}.</span> <span style='color:#0f0;'>*** FIXED ***</span><br>\n";
Exemplo n.º 7
0
        $playerinfo['ship_colonists'] = 0;
    }
    if ($playerinfo['ship_ore'] < 0 || $playerinfo['ship_ore'] > $maxholds) {
        Tki\AdminLog::writeLog($pdo_db, LOG_ADMIN_ILLEGVALUE, "{$playerinfo['ship_name']}|{$playerinfo['ship_ore']}|ore|{$maxholds}");
        $playerinfo['ship_ore'] = 0;
    }
    if ($playerinfo['ship_organics'] < 0 || $playerinfo['ship_organics'] > $maxholds) {
        Tki\AdminLog::writeLog($pdo_db, LOG_ADMIN_ILLEGVALUE, "{$playerinfo['ship_name']}|{$playerinfo['ship_organics']}|organics|{$maxholds}");
        $playerinfo['ship_organics'] = 0;
    }
    if ($playerinfo['ship_goods'] < 0 || $playerinfo['ship_goods'] > $maxholds) {
        Tki\AdminLog::writeLog($pdo_db, LOG_ADMIN_ILLEGVALUE, "{$playerinfo['ship_name']}|{$playerinfo['ship_goods']}|goods|{$maxholds}");
        $playerinfo['ship_goods'] = 0;
    }
    if ($playerinfo['ship_energy'] < 0 || $playerinfo['ship_energy'] > $maxenergy) {
        Tki\AdminLog::writeLog($pdo_db, LOG_ADMIN_ILLEGVALUE, "{$playerinfo['ship_name']}|{$playerinfo['ship_energy']}|energy|{$maxenergy}");
        $playerinfo['ship_energy'] = 0;
    }
    if ($freeholds < 0) {
        $freeholds = 0;
    }
    $update1 = $db->Execute("UPDATE {$db->prefix}ships SET ship_ore=?, ship_organics=?, ship_goods=?, ship_energy=?, ship_colonists=? WHERE ship_id=?;", array($playerinfo['ship_ore'], $playerinfo['ship_organics'], $playerinfo['ship_goods'], $playerinfo['ship_energy'], $playerinfo['ship_colonists'], $playerinfo['ship_id']));
    Tki\Db::LogDbErrors($pdo_db, $update1, __LINE__, __FILE__);
}
// Default to 1 run if we don't get a valid repeat value.
$tr_repeat = 1;
// Detect if this variable exists, and filter it. Returns false if anything wasn't right.
$tr_repeat = null;
$tr_repeat = (int) filter_input(INPUT_POST, 'tr_repeat', FILTER_SANITIZE_NUMBER_INT);
if (mb_strlen(trim($tr_repeat)) === 0) {
    $tr_repeat = 0;
Exemplo n.º 8
0
             $query = $query . ", dev_lssd='Y'";
             Tki\Ports::buildOneCol($langvars['l_lssd'] . " " . $langvars['l_trade_installed']);
         }
         $query = $query . ", turns = turns - 1, turns_used = turns_used + 1 WHERE ship_id = " . $playerinfo['ship_id'];
         $purchase = $db->Execute("{$query}");
         Tki\Db::LogDbErrors($pdo_db, $purchase, __LINE__, __FILE__);
         $hull_upgrade = 0;
         echo "</table>";
         echo "<div style='font-size:16px; color:#fff;'><br>[<span style='color:#0f0;'>Border Patrol</span>]<br>\n";
         echo "Halt, while we scan your cargo...<br>\n";
         if (Tki\CalcLevels::holds($playerinfo['hull'], $tkireg) - $playerinfo['ship_ore'] - $playerinfo['ship_organics'] - $playerinfo['ship_goods'] - $playerinfo['ship_colonists'] < 0) {
             // Tki\Ports::buildTwoCol("<span style='color:#f00;'>Detected Illegal Cargo</span>", "<span style='color:#0f0;'>Fixed</span>", "left", "right");
             echo "<span style='color:#f00; font-weight:bold;'>Detected illegal cargo, as a penalty, we are confiscating all of your cargo, you may now continue.</span>\n";
             $resx = $db->Execute("UPDATE {$db->prefix}ships SET ship_ore=0, ship_organics=0, ship_goods=0, ship_energy=0, ship_colonists =0 WHERE ship_id = ? LIMIT 1;", array($playerinfo['ship_id']));
             Tki\Db::LogDbErrors($pdo_db, $resx, __LINE__, __FILE__);
             Tki\AdminLog::writeLog($pdo_db, 5001, "Detected illegal cargo on shipID: {$playerinfo['ship_id']}");
         } else {
             echo "<span style='color:#0f0;'>Detected no illegal cargo, you may continue.</span>\n";
         }
         echo "</div>\n";
     }
 } elseif ($sectorinfo['port_type'] != "none") {
     $price_array = array();
     // Detect if this variable exists, and filter it. Returns false if anything wasn't right.
     $trade_ore = null;
     $trade_ore = (int) filter_input(INPUT_POST, 'trade_ore', FILTER_SANITIZE_NUMBER_INT);
     if (mb_strlen(trim($trade_ore)) === 0) {
         $trade_ore = false;
     }
     // Detect if this variable exists, and filter it. Returns false if anything wasn't right.
     $trade_organics = null;