Fix XGP

GwynnBleiidd

Школьник
Репутация
0 / 1 048
Вот и шапка фиксов:
1.Версия.
2.Текст ерора. Или что фиксим.
3.Сам фикс Обязательно в теге код, если огромный то в спойлере так же.

Что можно:
1.Выкладывать фиксы.
2.Благодарить за фиксы кнопкой "Спасибо".

Нельзя:
1.Обсуждать, для сохранения целостности структуры.





1.2.8
2.Fatal error: Call to private method GalaxyRows::GetPhalanxRange() from context '' in C:\xampp\htdocs\Xnova\includes\pages\ShowPhalanxPa ge.php on line 36
3. В /includes/classes/class.GalaxyRows.php (de la version 2.8)
Код:
Найти:
private function GetPhalanxRange($PhalanxLevel)
Меняем на:
public function GetPhalanxRange($PhalanxLevel)

З.Ы:в тексте ошибки может быть ошибка но фикс рабочий.
 
1.2.8 -
2.Ошибка с текстом в галактике, с описанием шпионов и переработчика.
3.ошибка находится в языках там это, где дебет появления, что посланный сноп флоты уже был, чтобы шпионить или чтобы перерабатывать, и он в языках, так как есть характеры, которые не признаны составителем, старайтесь менять кредит, если он подлатывает.

Из чего делаем вывод, что где-то кодировка или текст не правильный.
Дополнение, просмотри все файлы кодировка должна ОДНА(cp1251 or utf8) в бд также, и в файлах обязательно!!!!
 
У версии 2,8 вслыл баг, которого у меня в 2,7 ненадблюдалось - это копирование ресов когда при отправке в "транспорт" ввести в строке ресов 10000/2. С планеты подымаеться только 5000, а летит 10000.

Я вышел из ситуации так в файле ShowFleet3Page.php

После
Код:
function ShowFleet3Page($CurrentUser, $CurrentPlanet)
{

добавил
Код:
$_POST['resource1'] = str_replace("/", "0", $_POST['resource1']);
$_POST['resource2'] = str_replace("/", "0", $_POST['resource2']);
$_POST['resource3'] = str_replace("/", "0", $_POST['resource3']);

Немного примитивно но действует. Буду благодарен за более качественный фикс.
 
версия 2.8
Бой происходит пишет что игрок уничтожен и снизу же написано что бой окончился в ничью и игрок возвращается без ресурсов...


<div style="margin:20px; margin-top:5px">
<div class="smallfont" style="margin-bottom:2px">Скрытая информация: в файле calculateAttack.php это <input type="button" value="Показать" style="width:60px;font-size:10px;margin:0px;padding:0px;" onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = 'Скрыть'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Показать'; }">
</div>
<div class="alt2" style="margin: 0px; padding: 6px; border: 1px inset;">
<div style="display: none;">
if ($attackAmount['total'] <= 0) {
$won = "2"; // defender

} elseif ($defenseAmount['total'] <= 0) {
$won = "1"; // attacker

} else {
$won = "0"; // draw
$rounds[count($rounds)] = array('attackers' => $attackers, 'defenders' => $defenders, 'attack' => $attackDamage, 'defense' => $defenseDamage, 'attackA' => $attackAmount, 'defenseA' => $defenseAmount);
}
</div>
</div>
</div>
<div style="margin:20px; margin-top:5px">
<div class="smallfont" style="margin-bottom:2px">Скрытая информация: заменить на это <input type="button" value="Показать" style="width:60px;font-size:10px;margin:0px;padding:0px;" onClick="if (this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display != '') { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = ''; this.innerText = ''; this.value = 'Скрыть'; } else { this.parentNode.parentNode.getElementsByTagName('div')[1].getElementsByTagName('div')[0].style.display = 'none'; this.innerText = ''; this.value = 'Показать'; }">
</div>
<div class="alt2" style="margin: 0px; padding: 6px; border: 1px inset;">
<div style="display: none;">
if ($attackAmount['total'] <= 0) {
$won = "r"; // defender

} elseif ($defenseAmount['total'] <= 0) {
$won = "a"; // attacker

} else {
$won = "w"; // draw
$rounds[count($rounds)] = array('attackers' => $attackers, 'defenders' => $defenders, 'attack' => $attackDamage, 'defense' => $defenseDamage, 'attackA' => $attackAmount, 'defenseA' => $defenseAmount);
}
</div>
</div>
</div>
 
Фикс бага с отчетом боя. (Вроде у всех версиях XG)
Суть - например полететь 2 ЛИ на 2к солнечных спутников - выдаст 6 раундов и ничью в итоге (сам скрипт боя срабатывает правильно) но в отчете написано 6 раундов "защитник уничтожен" и конце "бойв ничью"



для фикса - находим файл formatCR.php
там находим
Код:
if (number_format($data1['attack']['total']) > 0)

и меняем на
Код:
if (number_format($data1['attackA']['total']) > 0)

Находим
Код:
if (number_format($data1['defense']['total']) > 0)

меняем на
Код:
if (number_format($data1['defenseA']['total']) > 0)
 
Фикс для тех, кто поставил новый логин как на офф сервере ogame, но при выходе из игры,выходит на старый логин

Файл game.php
Ищем:
<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'> case'logout':
setcookie($game_config['COOKIE_NAME'], "", time()-100000, "/", "", 0);
message($lang['see_you_soon'], $xgp_root, 1, false, false);
break;</div>
Меняем на:
<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'> case'logout':
setcookie($game_config['COOKIE_NAME'], "", time()-100000, "/", "", 0);
message($lang['see_you_soon'], "http://myogame.ru/", 1, false, false);
break;</div>
Где написано myogame.ru вы должны написать путь к вашему сайту...
За фикс спасибо ПеченеГ'у :)
 
Нужен фикс энергетической технологии.
Я пофиксил немного.
Но в ресурсах энергия не правильно считается


файл ShowResourcesPage.php

ищем
Код:
$energy = floor( eval ( $ProdGrid[$ProdID]['formule']['energy']    ) * ( $game_config['resource_multiplier'] ) * ( 1 + ( $CurrentUser['rpg_ingenieur'] * 0.05 ) ) );

меням на
Код:
$energy = floor( eval ( $ProdGrid[$ProdID]['formule']['energy'] ) * ( $game_config['resource_multiplier'] ) * ( 1 + ( $CurrentUser['rpg_ingenieur'] * 0.05 ) )* ( 1 + ( $CurrentUser['energy_tech'] * 0.1 ) ) );

Просто энергетическая теха неучитывалась :)
 
Небольшая ошибка если удалять луну через обзор она удаляется, НО в галактике все ровно видна картинка луны
Открыть ShowOverviewPage.php
найти
Код:
if (md5($_POST['pw']) == $CurrentUser["password"] && $CurrentUser['id_planet'] != $CurrentUser['current_planet'])
{
doquery("UPDATE {{table}} SET `destruyed` = '".(time()+ 86400)."' WHERE `id` = '".mysql_real_escape_string($CurrentUser['current_planet'])."' LIMIT 1;" , 'planets');
doquery("UPDATE {{table}} SET `current_planet` = `id_planet` WHERE `id` = '". mysql_real_escape_string($CurrentUser['id']) ."' LIMIT 1", "users");
doquery("DELETE FROM {{table}} WHERE `galaxy` = '". $CurrentPlanet['galaxy'] ."' AND `system` = '". $CurrentPlanet['system'] ."' AND `planet` = '". $CurrentPlanet['planet'] ."' AND `planet_type` = 3;", 'planets');
message($lang['ov_planet_abandoned'], 'game.php?page=overview&mode=renameplanet');
}
и добавить после
Код:
doquery("DELETE FROM {{table}} WHERE `galaxy` = '". $CurrentPlanet['galaxy'] ."' AND `system` = '". $CurrentPlanet['system'] ."' AND `planet` = '". $CurrentPlanet['planet'] ."' AND `planet_type` = 3;", 'planets');
это
Код:
doquery("UPDATE {{table}} SET `id_luna` ='0' WHERE `id_planet`='".mysql_real_escape_string($CurrentUser['id_planet'])."'LIMIT 1;" , 'galaxy');
Все луна удаляется полностью.

Не забываем про кнопочку СПАСИБО
 
Мелкий фикс для САБа
(Правильная выдача приглашения к САБу)
ShowFleetACSPage.php
Ищем:
Код:
doquery("UPDATE {{table}} SET `eingeladen` = '".$new_eingeladen_mr."';",'aks');
Меняем на
 
ФИКС переработчиков при отправке с галактики
Открываем class.GalaxyRows.php
ищем функцию public function GalaxyRowDebris
в ней ищем
Код:
$Result .= "[url=""]".$lang['gl_collect']."[/url]";
и меняем на
Код:
$Result .= "<a href=game.php?page=fleet&galaxy=".$Galaxy."&amp;system=".$System."&amp;planet=".$Planet."&amp;planettype=".$PlanetType."&amp;target_mission=8>".$lang['gl_collect']."</a>";
Конечно фикс не тот что нужно, но на время сойдет (чтобы не клонировали переработчиков)
 
ФИКС клонирование флота на лунах с помощью фаланги
версия XGP2.9.2
 
ФИКС бага Отправки Межпланетных ракет.

p.s.Сори за хайд т.к тут никто кроме меня ничего не добавляет
 
Под хайд я советовал бы выкладывать другие веши.
А фиксы под 20-30 сообщений, проверено опытом)
Я скоро выложу тему под хайдом.
Так сравниш)
 
ФИКС переработчиков при отправке с галактики
Открываем class.GalaxyRows.php
ищем функцию public function GalaxyRowDebris
в ней ищем
Код:
$Result .= "[url=""]".$lang['gl_collect']."[/url]";
и меняем на
Код:
$Result .= "<a href=game.php?page=fleet&galaxy=".$Galaxy."&system=".$System."&planet=".$Planet."&planettype=".$PlanetType."&target_mission=8>".$lang['gl_collect']."</a>";
Конечно фикс не тот что нужно, но на время сойдет (чтобы не клонировали переработчиков)

Сделай проще:
Вместо
Код:
"<a href= #

Вставляй
Код:
"<a href= java script:void(0);

Причина: первый вариант перегружает страницу, второй просто выполняет команду без перезагрузки.
Вообще во всем XG нужно поменять
Код:
"<a href= #
- а то много чего неправильно пашет
 
фикс с отрицательными ресурсами
фикс работает коряво, теперь в 2.9.6 когда ресы достигают максимального скопления в хранилищах, они при перезаходе спадают
 
ФИКС клонирование флота на лунах с помощью фаланги
версия XGP2.9.2
Этот фикс только что-то меняет в приглашениях? Просто есть небольшой глюк в 2.9.6. При создании саба из 5ых, некоторые не участвуют в бое, то есть летят как будто летели, туда и обратно, но в бое нету. Если не связаны, то может подскажешь, где это можно посотреть.
И еще глюк, выбрана постройка, списаны ресы, постройка прошла, следующая запустилась, но первой нет.
 
Сверху