Клон Ботвы

Жека

Старейшина
Репутация
0 / 80
Слив очередного клона Ботвы, слив старый, кого интересует более новые версии обращайтесь в ЛС мб договоримся.
Что есть в игре:
- прокачка статов
- покупка шмота/амулетов
- продажа на аукционе шмота
- топ
- бои pvp/pve
- чат
- работа и еще куча всего

БД чистая и вроде полная.

Скрипт:

БД:

Пароль на архив:


Есть админка и бои против боссов, кого интересует пишите в ЛС договоримся о цене.

БД перезалил. Скрипт написан под register_globals = off
Пароль на архивы: dapf.ru
 
спасибо конечно но ты бы сразу озвучил цену или она индивидуальная? одному за 100 руб а другому за 1000, короче все от настроения? один фиг будет в паблике. ну если не сложно то в лс скинь мне ценник, в паблик не выложу 100%
 
пасс вы в MD5 хоть записывался, а то както ........ не очень
при регистрации выдает ошибку, пишет еррор и все
да даже и без входа в игру косяков завались.
 
пасс вы в MD5 хоть записывался, а то както ........ не очень
при регистрации выдает ошибку, пишет еррор и все
да даже и без входа в игру косяков завались.

добавь в таблицу users пару полей

status (int) 1
chat_v (int) 1


В целом БД не полная, ТопикСтартер ты спецом часть таблиц и полей из некоторых таблиц кикнул ?
 
Смотрите файл class/user.php функция initRegister()
Если выводит Error 1 значит невозможно выполнить UPDATE в БД
 
hamman14
1. http://citforum.ru/internet/php/register_globals/
4. Измени в таблице users поле status на 1
5. В файле /class/user.php
Если я хочу удалить активацию,то удалить в user.php
Код:
// Составляем "keystring" для активации
            $key = md5(substr($email, 0 ,2).$id.substr($name, 0 ,2));
            $date = date("d.m.Y",$time);
Правильно,если нет то вставьте кусок который удалить!Спасибо!
 
Этот код
Код:
$sqlReg = count_query("INSERT INTO users (name, pass, email, ip, last_ip, timestamp, gold, zelen, krystal, race, ava1, ava2, ava3) values('".$name."','".$passH."','".addslashes($email)."', '".$_SERVER['REMOTE_ADDR']."', '".$_SERVER['REMOTE_ADDR']."', '".time()."', '".$gold_prize."', '".$zelen_prize."', '".$kri_prize."', '".$race."', '".$ava1."', '".$ava2."', '".$ava3."')");
Изменить на этот
Код:
$sqlReg = count_query("INSERT INTO users (name, pass, email, ip, last_ip, status, timestamp, gold, zelen, krystal, race, ava1, ava2, ava3) values('".$name."','".$passH."','".addslashes($email)."', '".$_SERVER['REMOTE_ADDR']."', '".$_SERVER['REMOTE_ADDR']."', '1',. '".time()."', '".$gold_prize."', '".$zelen_prize."', '".$kri_prize."', '".$race."', '".$ava1."', '".$ava2."', '".$ava3."')");
 
Этот код
Код:
$sqlReg = count_query("INSERT INTO users (name, pass, email, ip, last_ip, timestamp, gold, zelen, krystal, race, ava1, ava2, ava3) values('".$name."','".$passH."','".addslashes($email)."', '".$_SERVER['REMOTE_ADDR']."', '".$_SERVER['REMOTE_ADDR']."', '".time()."', '".$gold_prize."', '".$zelen_prize."', '".$kri_prize."', '".$race."', '".$ava1."', '".$ava2."', '".$ava3."')");
Изменить на этот
Код:
$sqlReg = count_query("INSERT INTO users (name, pass, email, ip, last_ip, status, timestamp, gold, zelen, krystal, race, ava1, ava2, ava3) values('".$name."','".$passH."','".addslashes($email)."', '".$_SERVER['REMOTE_ADDR']."', '".$_SERVER['REMOTE_ADDR']."', '1',. '".time()."', '".$gold_prize."', '".$zelen_prize."', '".$kri_prize."', '".$race."', '".$ava1."', '".$ava2."', '".$ava3."')");
Спасибо и еще если не сложно опиши как сделать регенерацию HP (жизней)
 
Спасибо и еще если не сложно опиши как сделать регенерацию HP (жизней)
есть папачка cron на файлы в ней нужно поставить "расписание" обычно на норм хостингах такое есть.
Что бы файлики обновлялись там кажыде к примеру 15сек
 
есть папачка cron на файлы в ней нужно поставить "расписание" обычно на норм хостингах такое есть.
Что бы файлики обновлялись там кажыде к примеру 15сек
А через Tottal нельзя такое сделать,если да то как ?
и еще +спасибо за помощь! :rolleyes:
 
чЁТ запутался не понял где прописывается лвл, чтоб дописать свой. Хотя нашёл файл func.php
Там есть код
Код:
function ulvl_to_exp ($ulvl) //расчет экспы по уровню
{
    $y = $ulvl*10+5;
    $x = (pow($y,2) - 425) / 20;
    return $x;
}
Вроде как я понял до 2 лвла это 10 опыта. Поидее вроде тут изменить если 10 на 410, дальше пойдёт норм. Но тут всякие примиумы и шерифы. Вот запутался в этом файле, плюс не пойму что за +5 ($y = $ulvl*10+5) и что озночает (pow($y,2) - 425) / 20
п.с. Вообще там жесть. Плюс посмотрел боёвку, всего 2 вида простой бой и с критом. Уворотом, блоком нету.
Плюс ко всему чтобы ты не делал всё идёт в опыт, было бы легче если б данные брались из таблицы баз. А то пока до середины доберёшься файла, уже запутаешься:)
 
чЁТ запутался не понял где прописывается лвл, чтоб дописать свой. Хотя нашёл файл func.php
Там есть код
Код:
function ulvl_to_exp ($ulvl) //расчет экспы по уровню
{
    $y = $ulvl*10+5;
    $x = (pow($y,2) - 425) / 20;
    return $x;
}
Вроде как я понял до 2 лвла это 10 опыта. Поидее вроде тут изменить если 10 на 410, дальше пойдёт норм. Но тут всякие примиумы и шерифы. Вот запутался в этом файле, плюс не пойму что за +5 ($y = $ulvl*10+5) и что озночает (pow($y,2) - 425) / 20
ищи там где задана функция ulvl_to_exp(и тут будет передаваемое значение $ulvl)
 
чЁТ запутался не понял где прописывается лвл, чтоб дописать свой. Хотя нашёл файл func.php
....
Плюс ко всему чтобы ты не делал всё идёт в опыт, было бы легче если б данные брались из таблицы баз. А то пока до середины доберёшься файла, уже запутаешься:)
Расчет уровня идет по квадратному уравнению, поэтому вписать свои уровни неполучиться - нужно менять формулы в функциях function lvl ($exp), function lvl_to_exp ($lvl), function n_lvl_exp ($exp). А все левые цифкрки - это корректировка графика уровнения, чтобы все хорошо было)).
 
Жека, я так понял в сборке которые ты продаёшь, пухи, шмот не робит?
Так как у мя до одевание в статах показывает, допустим сила базовая +9, что одел что не одевал, всеровно показывает +9, не добовляет. Хотя, что одевал написано, что должно прибавить.
А вроде добовляет, в бою пишут норм статы.
Потом ещё, в админке выстовил бонусы, тоесть если кто регается за сторону там где большенство ему не дают бонус, а если зарегаться за меньшество дают. Чёт не дали*sad*
П.С. не магу найти в файле func.php где меняется экспа за победу над игроком на репутацию. А то работать выгодней чем нападать, а это скучно в игре.
Вот сам файлик
п.с. Код фермы скорей не проработан, так как проработал 1 час получил экспы 1, проработал 8 часов получил экспы 1. Потом поидее можно работать ток через сутки, а тут не проблема, идём заного работать:)
Код:
function farm ($speed) //работа на ферме
{
    $user = new InitUser;
    $res = mysql_fetch_array($user->InitChar(1));
    
    if (lvl($res['exp']) <= 2) {
        $gold=40*$speed;// расчет получения денег
        $exp = 1;
    } else if (lvl($res['exp']) > 2 AND lvl($res['exp']) <= 6) {
        $gold=80*$speed;// расчет получения денег
        $exp = 1;
    } else if (lvl($res['exp']) > 3 AND lvl($res['exp']) <= 14) {
        $gold=160*$speed;// расчет получения денег
        $exp = 1;
    } else if (lvl($res['exp']) > 14 AND lvl($res['exp']) <= 30) {
        $gold=320*$speed;// расчет получения денег
        $exp = 1;
    }
    
    $day = date("j");
    $m = date("n");
    $y = date("y");
    $h = date("H");
    $min= date("i");
    $time = $day.".".$m.".".$y." ".$h.":".$min;
    
    count_query("UPDATE `users` SET  `gold`=gold+'".$gold."', read_msg='0', `exp`=exp+'".$exp."', timeFerma=timeFerma+'".($speed*3600)."' WHERE `id_user` = '".$res['id_user']."'") or die("Invalid query: " . mysql_error());
    count_query("INSERT INTO `message` (`time`, `to`, `text`, `metka`) VALUES ('".$time."', '".$res['name']."', 'После работы на жаре вы получили ".$gold." <img src=images/ico_gold1.png alt=Золото align=absmiddle class=png> и ".$exp." <img src=images/ico_21.png alt=Опыт align=absmiddle/>', '5')") or die("Invalid query: " . mysql_error());
  //удаление записи о действии после всех расчетов
    count_query("DELETE FROM `action` WHERE `uid` = '".$res['id_user']."'");
}
п.с. Сборка была куплена, как ты сказал за 17.03.2011.
 
Во нафлудили :D
П.С. не магу найти в файле func.php где меняется экспа за победу над игроком на репутацию. А то работать выгодней чем нападать, а это скучно в игре.
function for_batt
$exp=rand(0,3);
п.с. Код фермы скорей не проработан, так как проработал 1 час получил экспы 1, проработал 8 часов получил экспы 1. Потом поидее можно работать ток через сутки, а тут не проблема, идём заного работать:)
Ну там свою экспу ставь
$exp = 1;

Ильйа вот в этом коде ковыряй, поставь доп. проверку что бы узнать когда игрок последний раз нападал.
[/QUOTE]
if (isset($_POST['do_attack']))
{
if ($_POST['do_attack'] == 1)
{
$qsc = mysql_fetch_array(count_query("SELECT * FROM `users` WHERE `id_user`='".$_POST['char_id']."'"));
if ($qsc['id_user'] > 0)
{
if ($qsc['last_bat']+3600 < time() AND $row['bat_timer']-time()<0)
{
bat($row['id_user'], $_POST['char_id']);
}
else
{
loca('boynia.php');
}
}
} else if ($_POST['do_attack'] == 2) {
$crim = mysql_fetch_array(count_query("SELECT * FROM criminals WHERE id_c = '".$_POST['char_id']."'"));
monster2($crim['id_c'], $crim['lvl_c']);
}
}
 
Можно и не ждать а делать) К примеру смена флага можно сделать по функции Аватара.
У Жеки вроде времени нету :)
 
Баги если регенить русские ники или ники с пробелами, фикс исправлений. В файл user.php
после
Код:
        } else if (strlen ($name)<3 || strlen ($name)>8) {
            $err = "Длина имени должна быть от 3-х до 8 символов";
             $errn = 1;
Добавить
Код:
        } else if (!preg_match("/^[a-zA-Z0-9_\-\!\~\.@ ]+$/",$name)){ 
           $err = "[b]Имя персонажа[/b] содержит запрещенные символы";
           $errn=1;
 
А вот я столкнулся с ошибочкками, после боя выпадает пару ошибок такого типа:
Warning: Division by zero in Z:\home\test1.ru\fight_log.php on line 235
Что то вроде не может свести из за 0ля как я понял, посмотрел у 2 бойуов которые бились статы по 0, а в профиле когда заходишь по 5, и вот не могу понять почему та формула ошибается...
 
А вот я столкнулся с ошибочкками, после боя выпадает пару ошибок такого типа:
Warning: Division by zero in Z:\home\test1.ru\fight_log.php on line 235
Что то вроде не может свести из за 0ля как я понял, посмотрел у 2 бойуов которые бились статы по 0, а в профиле когда заходишь по 5, и вот не могу понять почему та формула ошибается...
Если быть точнее, то вот список ошибок файлов, каторые выходят после боя, даж на новой сборке:
Код:
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 235
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 236
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 237
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 238
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 239
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 268
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 269
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 270
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 271
Warning: Division by zero in C:\AppServ\www\fight_log.php on line 272

Незнаю, если автор скрипта фикс по этому выложит, будь большое спасибо. а ТАК бои работают через раз.
 
Сверху