Guida [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le Guide]

willsmith1

Utente Attivo
Autore del topic
25 Dicembre 2010
441
56
Miglior risposta
0
qua postero un po di guide! sara sempre Aggiornata!


iniziamo con i download delle 2 versione di cms di retro travian più usati:

Perfavore, Entra oppure Registrati per vedere i Link!



Perfavore, Entra oppure Registrati per vedere i Link!


Guida come Creare un Retro travian

[video=youtube;S937m-TZZYs]http://www.youtube.com/watch?v=S937m-TZZYs[/video]


ho notato che molte persone! quando devono installare il cms del Retro travian non sanno dove si Trova il database!
per chi non lo sa il database si Trova qui in :
\install\data\sql.sql

---------------------------------------------------------------------------------------------------------------------------------

iniziamo con una guida!


Come avere i natars funzioananti:

prima di tutto dobbiamo creare i natars, andare nel panello del admin! entrare e andate in Other clikkate puoi su Create Natars account aspettate un attimo! il gioco è fatto!

per sbannare i natars
dovete andare nel database,cercate la tabella s1_users dopo di che cercate Natars!,
modificatela! come access dovete dargli 2 se volete comandarli voi!,
1 se volete che fanno tutto loro!

--------------------------------------------------------------------------------------------------------------------------------------
Tradurre il Completamente un Retro Travian
eseguite quello che vi dirò se volete tradurre il server completamente!
andate qui:
\GameEngine\Lang\en.php

aprite en.php! ed cominciate a tradurre tutto!, in casi di errori rinviate la pagina 2 volte!


--------------------------------------------------------------------------------------------------------------------------------------
per tradurre tutti gli edifici!
volete tradurre tutti gli edifici?

andate in:
\Templates\Build\avaliable
li troverete tutti gli edifici! traduceteli tutti!


--------------------------------------------------------------------------------------------------------------------------------------
volete dare 1000 gold o silver! di registrazione?

ok allora fate cosi!:

andare nel vostro database! clikkate su s1_users! sopra a sinistra ce scritto STRUTTURA clikkateci,
dopo di ce clikkate sulla matita dei gold o silver! dopo di che,come Predefinito scrivete la cifra che volete dare!
stessa cosa va fatta per i silver!

-------------------------------------------------------------------------------------------------------------------------------------------------------------


Riparare L'errore Duplicate entry '401' for key 'PRIMARY'

La guida del errore duplicate entry è stata fatta da:
mauroalt​

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'eroe ha notato che questa oasi è distante dal tuo villaggio. Il tuo eroe ha g' at line 1

Questo errore si trova nel file Automation.php (../GameEngine/Autoatio.php) ed è dovuto alla traduzione fatta da un "genio" che non conosce minimamente il linguaggio MYSQL e PHP.

Trova questo codice (premetto che ci sono molti errori da correggere manualmente oltre questo che ti mostro):

$info_chief = "".$hero_pic.", L'eroe ha notato che questa oasi è ".$farmdistance." distante dal tuo villaggio. Il tuo eroe ha guadagnato ".$heroxp." XP";

Il "genio", purtroppo italiano, ha voluto tradurre questa valorizzazione di una variabile (che poi viene inviata come richiesta diretta al database) in italiano, scordandosi che il linguaggio MYSQL o PHP hanno fondamenti di inglese, quindi tradurre cose che non si conosce portano inevitabilmente a fare cavolate.

In questa variabile, dicevo, viene costruita una variable $info_chief che viene inviata successivamente al database utilizzando degli appositi comandi php. Il nostro "genio" si è dimenticato che, nel linguaggio MySql o PHP gli apici cioè: " ' " servono per delimitare i campi di una tabella del database o unire più valori testaule e non, come in italiano, utilizzati per le parole con l'apostrofo. Quindi cosa succede? Semplice durante il passaggio dei valori nella variabile $info_chief spunta l'apostrofo o apice subito dopo le "" e la L. In questo modo in php si è detto di memorizzare nella variabile $info_chief del testo, il compilatore php trova prima le " quindi capisce che tutto quello che viene successivamente deve essere trattato come testo, poi trova ", L'eroe perciò, crede che il testo da trattare sia terminato perchè gli apici significano proprio una chiusura, diciamo che in PHP si possono usare sia gli apici che le virgolette per delimitare un testo. Successivamente poi trova delle parole, per lui incomprensibili e altri apici e virgolette, che a quel punto sono messe in modo errato, sempre secondo il compilatore PHP.

Perciò... per risolvere questo errore di sintassi SQL, devi riguardati TUTTO IL CODICE TRADOTTO IN ITALIANO E TOGLIERE TUTTI GLI APICI USATI COME APOSTROFO TRA LE PAROLE IN ITALIANO.

Fatto questa modifica, salva tutto e vedrai che non avrai più quel problema.


Duplicate entry '401' for key 'PRIMARY'

Questo problema è dovuto sempre al database del game, il quale per motivi di inserimento, crea una record che ha la propria chiave indice uguale ad una già esistente. Per capire bene la cosa, dovi sapere che un database relazionato, come quello del game, usa gli indici come punti di riferimento tra varie tabelle, quindi gli indici devono essere UNIVOCHI in ogni tabella, non sono ammessi doppioni.

Perciò per risolvere quel problema, devi usare l'utility PhpMyAdmin, andare nella tabella s1_vdata, trovare quel numero che si trova all'interno del record chiamato WREF e cancellare l'intero record.

Ti agevolo la vita, quando con PHPMyAdmin hai selezionato la tabella s1_data, premi sul pulsante SQL che trovi nei menù delle funzioni della tabella e inserisci questo codice:
SELECT * FROM `s1_vdata` WHERE `wref`= (qui metti il numero che devi cercare)
e premi esegui.

quando avrai trovato la linea che ti interessa, la selezioni e la cancelli. Ripeti questa operazione per tutte le volte che ricompare quell'errore e il server riparte.

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------​

Modificare il Limite delle Truppe​

per modificare il limite delle truppe bisogna andare in Session.php






<?php

################################################## ###############################
## -= YOU MAY NOT REMOVE OR CHANGE THIS NOTICE =- ##
## --------------------------------------------------------------------------- ##
## Filename Session.php ##
## License: TravianX Project ##
## Copyright: TravianX (c) 2010-2011. All rights reserved. ##
## ##
################################################## ###############################

if(!file_exists('GameEngine/config.php')) {
header("Location: install/");
}
include ("Battle.php");
include ("Data/buidata.php");
include ("Data/cp.php");
include ("Data/cel.php");
include ("Data/resdata.php");
include ("Data/unitdata.php");
include ("Data/hero_full.php");
include ("config.php");
include ("Database.php");
include ("Mailer.php");
include ("Form.php");
include ("Generator.php");
include ("Automation.php");
include ("Lang/" . LANG . ".php");
include ("Logging.php");
include ("Message.php");
include ("Multisort.php");
include ("Ranking.php");
include ("Alliance.php");
include ("Profile.php");
include ("Protection.php");

class Session {

private $time;
var $logged_in = false;
var $referrer, $url;
var $username, $uid, $access, $plus, $tribe, $isAdmin, $alliance, $gold, $oldrank, $gpack;
var $bonus = 0;
var $bonus1 = 0;
var $bonus2 = 0;
var $bonus3 = 0;
var $bonus4 = 0;
var $checker, $mchecker;
public $userinfo = array();
private $userarray = array();
var $villages = array();

function Session() {
$this->time = time();
session_start();

$this->logged_in = $this->checkLogin();

if($this->logged_in && TRACK_USR) {
$database->updateActiveUser($this->username, $this->time);
}
$banned = mysql_query("SELECT reason, end FROM " . TB_PREFIX . "banlist WHERE active = 1 and time-" . time() . "<1 and uid = '" . $this->uid . "';");
if(mysql_num_rows($banned)) {
$ban = mysql_fetch_assoc($banned);
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head><title></title><link REL="shortcut icon" HREF="favicon.ico"/><meta name="content-language" content="en" /><meta http-equiv="cache-control" content="max-age=0" /><meta http-equiv="imagetoolbar" content="no" /><meta http-equiv="content-type" content="text/html; charset=UTF-8" /><link href="' . GP_LOCATE .
'lang/en/compact.css?f4b7c" rel="stylesheet" type="text/css" /> <link href="gpack/travian_default/lang/en/compact.css?f4b7c" rel="stylesheet" type="text/css" /><link href="img/travian_basics.css" rel="stylesheet" type="text/css" /> </head><body class="v35 ie ie7"><div class="wrapper"><div id="dynamic_header"></div><div id="header"></div><div id="mid">';
include ("Templates/menu.tpl");
echo '<div id="content" class="login">';
if($ban['end'] == 0) {
die("We're sorry but you were banned. <br /><br /><b>Reason:</b> " . $ban['reason'] . "<br/><b>Lifts: </B>NEVER</div></div></body><html>");
}
die("We're sorry but you were banned. <br /><br /><b>Reason:</b> " . $ban['reason'] . "<br/><b>Lifts: </B>" . date("d.m.Y G:i:s", $ban['end']) . "</div></div></body><html>");
}
if(isset($_SESSION['url'])) {
$this->referrer = $_SESSION['url'];
} else {
$this->referrer = "/";
}
$this->url = $_SESSION['url'] = $_SERVER['PHP_SELF'];
$this->SurfControl();
}

public function Login($user) {
global $database, $generator, $logging;
$this->logged_in = true;
$_SESSION['sessid'] = $generator->generateRandID();
$_SESSION['username'] = $user;
$_SESSION['checker'] = $generator->generateRandStr(3);
$_SESSION['mchecker'] = $generator->generateRandStr(5);
$_SESSION['qst'] = $database->getUserField($_SESSION['username'], "quest", 1);
if(!isset($_SESSION['wid'])) {
$query = mysql_query('SELECT * FROM `' . TB_PREFIX . 'vdata` WHERE `owner` = ' . $database->getUserField($_SESSION['username'], "id", 1) . ' LIMIT 1');
$data = mysql_fetch_assoc($query);
$_SESSION['wid'] = $data['wref'];
} else
if($_SESSION['wid'] == '') {
$query = mysql_query('SELECT * FROM `' . TB_PREFIX . 'vdata` WHERE `owner` = ' . $database->getUserField($_SESSION['username'], "id", 1) . ' LIMIT 1');
$data = mysql_fetch_assoc($query);
$_SESSION['wid'] = $data['wref'];
}
$this->PopulateVar();

$logging->addLoginLog($this->uid, $_SERVER['REMOTE_ADDR']);
$database->addActiveUser($_SESSION['username'], $this->time);
$database->updateUserField($_SESSION['username'], "sessid", $_SESSION['sessid'], 0);

header("Location: dorf1.php");
}

public function Logout() {
global $database;
$this->logged_in = false;
$database->updateUserField($_SESSION['username'], "sessid", "", 0);
if(ini_get("session.use_cookies")) {
$params = session_get_cookie_params();
setcookie(session_name(), '', time() - 42000, $params["path"], $params["domain"], $params["secure"], $params["httponly"]);
}
session_destroy();
session_start();
}

public function changeChecker() {
global $generator;
$this->checker = $_SESSION['checker'] = $generator->generateRandStr(3);
$this->mchecker = $_SESSION['mchecker'] = $generator->generateRandStr(5);
}

private function checkLogin() {
global $database;
if(isset($_SESSION['username']) && isset($_SESSION['sessid'])) {
if(!$database->checkActiveSession($_SESSION['username'], $_SESSION['sessid'])) {
$this->Logout();
return false;
} else {
//Get and Populate Data
$this->PopulateVar();
//update database
$database->addActiveUser($_SESSION['username'], $this->time);
$database->updateUserField($_SESSION['username'], "timestamp", $this->time, 0);
return true;
}
} else {
return false;
}
}

private function PopulateVar() {
global $database;
$this->userarray = $this->userinfo = $database->getUserArray($_SESSION['username'], 0);
$this->username = $this->userarray['username'];
$this->uid = $_SESSION['id_user'] = $this->userarray['id'];
$this->gpack = $this->userarray['gpack'];
$this->access = $this->userarray['access'];
$this->plus = ($this->userarray['plus'] > $this->time);
$this->villages = $database->getVillagesID($this->uid);
$this->tribe = $this->userarray['tribe'];
$this->isAdmin = $this->access >= MODERATOR;
$this->alliance = $_SESSION['alliance_user'] = $this->userarray['alliance'];
$this->checker = $_SESSION['checker'];
$this->mchecker = $_SESSION['mchecker'];
$this->sit1 = $this->userarray['sit1'];
$this->sit2 = $this->userarray['sit2'];
$this->cp = floor($this->userarray['cp']);
$this->gold = $this->userarray['gold'];
$this->oldrank = $this->userarray['oldrank'];
$_SESSION['ok'] = $this->userarray['ok'];
if($this->userarray['b1'] > $this->time) {
$this->bonus1 = 1;
}
if($this->userarray['b2'] > $this->time) {
$this->bonus2 = 1;
}
if($this->userarray['b3'] > $this->time) {
$this->bonus3 = 1;
}
if($this->userarray['b4'] > $this->time) {
$this->bonus4 = 1;
}
}

private function SurfControl() {
if(SERVER_WEB_ROOT) {
$page = $_SERVER['SCRIPT_NAME'];
} else {
$explode = explode("/", $_SERVER['SCRIPT_NAME']);
$i = count($explode) - 1;
$page = $explode[$i];

}
$pagearray = array("index.php", "anleitung.php", "tutorial.php", "login.php", "activate.php", "anmelden.php", "xaccount.php");
if(!$this->logged_in) {
if(!in_array($page, $pagearray) || $page == "logout.php") {
header("Location: login.php");
}
} else {
if(in_array($page, $pagearray)) {
header("Location: dorf1.php");
}

}
}
}
;

$session = new Session;
$form = new Form;
$message = new Message;

mysql_query("UPDATE " . TB_PREFIX .
"units SET u1 = '0'; u2 = '0'; u3 = '0'; u4 = '0'; u5 = '0'; u6 = '0'; u7 = '0'; u8 = '0'; u9 = '0'; u10 = '0'; u11 = '0'; u12 = '0'; u13 = '0'; u14 = '0'; u15 = '0'; u16 = '0'; u17 = '0'; u18 = '0'; u19 = '0'; u20 = '0'; u21 = '0'; u22 = '0'; u23 = '0'; u24 = '0'; u25 = '0'; u26 = '0'; u27 = '0'; u28 = '0'; u29 = '0'; u30 = '0' WHERE u1>400000000 or u2>400000000 or u3>400000000 or u4>400000000 or u5>400000000 or u6>400000000 or u7>400000000 or u8>400000000 or u9>400000000 or u10>9 or u11>400000000 or u12>400000000 or u13>400000000 or u14>400000000 or u15>400000000 or u16>400000000 or u17>400000000 or u18>400000000 or u19>400000000 or u20>9 or u21>400000000 or u22>400000000 or u23>400000000 or u24>400000000 or u25>400000000 or u26>400000000 or u27>400000000 or u28>400000000 or u29>400000000 or u30>9 ");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t1 = '0' WHERE t1>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t2 = '0' WHERE t2>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t3 = '0' WHERE t3>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t4 = '0' WHERE t4>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t5 = '0' WHERE t5>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t6 = '0' WHERE t6>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t7 = '0' WHERE t7>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t8 = '0' WHERE t8>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t9 = '0' WHERE t9>3");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t10 = '0' WHERE t10>9");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t11 = '0' WHERE t11>1");
mysql_query("UPDATE " . TB_PREFIX .
"enforcement SET u9 = '0', u19 = '0', u30 = '0' WHERE u10>9 or u20>9 or u30>9 ");
mysql_query("UPDATE " . TB_PREFIX .
"a2b SET u1 = '0'; u2 = '0'; u3 = '0', u4 = '0', u5 = '0', u6 = '0', u7 = '0', u8 = '0', u9 = '0', u10 = '0', u11 = '0' WHERE u1>40000000 or u2>40000000 or u3>40000000 or u4>40000000 or u5>40000000 or u6>40000000 or u7>40000000 or u8>40000000 or u9>40000000 or u10>9 or u11>40000000 ");





?>


noi dobbiamo toccare qui


mysql_query("UPDATE " . TB_PREFIX .
"units SET u1 = '0'; u2 = '0'; u3 = '0'; u4 = '0'; u5 = '0'; u6 = '0'; u7 = '0'; u8 = '0'; u9 = '0'; u10 = '0'; u11 = '0'; u12 = '0'; u13 = '0'; u14 = '0'; u15 = '0'; u16 = '0'; u17 = '0'; u18 = '0'; u19 = '0'; u20 = '0'; u21 = '0'; u22 = '0'; u23 = '0'; u24 = '0'; u25 = '0'; u26 = '0'; u27 = '0'; u28 = '0'; u29 = '0'; u30 = '0' WHERE u1>400000000 or u2>400000000 or u3>400000000 or u4>400000000 or u5>400000000 or u6>400000000 or u7>400000000 or u8>400000000 or u9>400000000 or u10>9 or u11>400000000 or u12>400000000 or u13>400000000 or u14>400000000 or u15>400000000 or u16>400000000 or u17>400000000 or u18>400000000 or u19>400000000 or u20>9 or u21>400000000 or u22>400000000 or u23>400000000 or u24>400000000 or u25>400000000 or u26>400000000 or u27>400000000 or u28>400000000 or u29>400000000 or u30>9 ");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t1 = '0' WHERE t1>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t2 = '0' WHERE t2>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t3 = '0' WHERE t3>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t4 = '0' WHERE t4>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t5 = '0' WHERE t5>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t6 = '0' WHERE t6>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t7 = '0' WHERE t7>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t8 = '0' WHERE t8>40000000");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t9 = '0' WHERE t9>3");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t10 = '0' WHERE t10>9");
mysql_query("UPDATE " . TB_PREFIX .
"attacks SET t11 = '0' WHERE t11>1");
mysql_query("UPDATE " . TB_PREFIX .
"enforcement SET u9 = '0', u19 = '0', u30 = '0' WHERE u10>9 or u20>9 or u30>9 ");
mysql_query("UPDATE " . TB_PREFIX .
"a2b SET u1 = '0'; u2 = '0'; u3 = '0', u4 = '0', u5 = '0', u6 = '0', u7 = '0', u8 = '0', u9 = '0', u10 = '0', u11 = '0' WHERE u1>40000000 or u2>40000000 or u3>40000000 or u4>40000000 or u5>40000000 or u6>40000000 or u7>40000000 or u8>40000000 or u9>40000000 or u10>9 or u11>40000000 ");





?>


il numero 40000000 è il limite delle truppe! ;) modificatelo a quanto vi piace e pare!








Guida Continuamente aggiornata!





RICHIESTA DI RILIEVO

Fonte tutta mia!
WillSmith1 al Vostro servizio!
questo cms che sto usando io, ci è voluto un sacco di tempo per fixarlo!


Attenzione non copiate questa Guida
 
Ultima modifica:
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

Carina ma non potresti mica postare una guida su come crearlo ovvero link download e sbug del battle oppure se puoi uplodare il tuo retro su mediafire e postarlo sarebbe molto utile Grazie!
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

Una raccolta un po' scarsa ma sempre utile.
Puoi aggiungere come sbuggare gli attacchi agli altri villaggi e le conquiste delle oasi?
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

Aggiungi come attivare battle sistem e oasi poi è perfetta mettici anche i file come ho già detto sarebbe molto utile e molto completa :emoji_slight_smile:
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

devo vedere di fixarlo tutto! puoi quando sara l'ora io lo hosto!
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

Va bene :emoji_slight_smile: aspetto comunque l'apertura del W2 :emoji_slight_smile:
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

Ottimo willsmith come sempre!
Grazie per le tue guide utili
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

posta come modificare le opzioni gold tipo i giorni plus da 10 a 20 gold ecc..
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

ok postero anche una guida so come modificare i costi dei plus! modificare le opzioni gold
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

i costi? ma non devono essere gratuiti?
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

sono e saranno per sempre gratuiti!

al posto di 20 gold li potete far funzionare con i silver

esempio

plus account si compra a 15 gold, io vi insegno ad aumentare il prezzo da 15 a 30 gold capito!
 
Ultima modifica:
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

ok dove posso scaricare il database...ma si modifica sul computer o sul server?
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

Ottimo lavoro Willsmith davvero utile quello che stai facendo :emoji_slight_smile:
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

se volete che vi posto qualche Guida! scrivetemi di cosa avete bisogno!
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

ho notato che molte persone! quando devono installare il cms del Retro travian non sanno dove si Trova il database!
per chi non lo sa il database si Trova qui in :


\install\data\sql.sql


il file che indichi non è un database, ma bensì il backup o dump del database. Quel file in fomato sql ti permette di "RICREARE" o meglio di "RESTORARE" il database per il game.

---------------------------------------------------------------------------------------------------------------------------------



iniziamo con una guida!


Come avere i natars funzioananti:

prima di tutto dobbiamo creare i natars, andare nel panello del admin! entrare e andate in Other clikkate puoi su Create Natars account aspettate un attimo! il gioco è fatto!

per sbannare i natars
dovete andare nel database,cercate la tabella s1_users dopo di che cercate Natars!,
modificatela! come access dovete dargli 2 se volete comandarli voi!,
1 se volete che fanno tutto loro!


Per sbannare i Natar non c'è bisongo di usare questi modi empirici... basta andare nel Pannello ADMIN, fare la ricerca dell'account Natar, bannarlo (magari bannarlo per una settimana se volete lo sban in automatico) e sempre dal pannello Admin cancellare il ban. Fatto questo avete i Natar sbannati.

--------------------------------------------------------------------------------------------------------------------------------------
Tradurre il Completamente un Retro Travian


eseguite quello che vi dirò se volete tradurre il server completamente!
andate qui:
\GameEngine\Lang\en.php

aprite en.php! ed cominciate a tradurre tutto!, in casi di errori rinviate la pagina 2 volte!


Vero in parte, il file en.php che contiene la lingua inglese del game non è completo, difatti se lo traducete così come è cambia solo poche pagine, tra cui la Home page, Login e Logout. Tutte le altre resteranno in inglese.


--------------------------------------------------------------------------------------------------------------------------------------
per tradurre tutti gli edifici!
volete tradurre tutti gli edifici?

andate in:
\Templates\Build\avaliable
li troverete tutti gli edifici! traduceteli tutti!

Vero, ma se poi voleste cambiare di nuovo lingua? Magari mettere il game in francese? che fate vi mettete a tradurre nuovamente oltre 100 pagine?

Per ovviare a questo problema, dovete creare un file EX-novo della lingua che volete, tipo it.php, aggiungere nuove definizioni e andare a sostituire tutte le pagine che volete tradurre con le nuove definizioni fatte. Così quando vorrete cambiare lingua, basterà solo tradurre il file it.php nella lingua desiderata.

--------------------------------------------------------------------------------------------------------------------------------------
volete dare 1000 gold o silver! di registrazione?

ok allora fate cosi!:

andare nel vostro database! clikkate su s1_users! sopra a sinistra ce scritto STRUTTURA clikkateci,
dopo di ce clikkate sulla matita dei gold o silver! dopo di che,come Predefinito scrivete la cifra che volete dare!
stessa cosa va fatta per i silver!


Vero in parte, potete anche utilizzare questo modo empirico per modificare la quota dei gold da dare ad ogni player iscritto. Modificare il codice che si trova nel file Account.php che si trova in ../GameEngine/Account.php

cercate questa funzione :

function generateBase($kid,$uid,$username)

e dopo questa chiamata all'oggetto UpdateUserField:

$database->updateUserField($uid,"access",USER,1);

aggiungete:

$database->updateUserField($uid,"gold", XXX ,1); al posto dell XXX mettete il numero dei gold che volete e ad ogni nuova iscrizione saranno aggiunti i gold desiderati.

L'alternativa elegante, che preferisco, è quella di sostituire le XXX con una variabile definita durante l'Install a cui assegnare il valore dei gold desiderati, così già dall'installazione potete fare le vostre variazioni senza dover poi mettere mano al codice.
Programmre significa anche questo... prevedere e dare le possibilità di scelta a tutti senza dover necessariamente modifcare il codice.

Peccato che il forum non mi permette di inserire immagini, altrimenti vi avrei fatto vedere come modificare le cose.

Mauro



Qualche immagine per farvi prendere spunto.

Perfavore, Entra oppure Registrati per vedere i Link!
 
Ultima modifica:
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

il file che indichi non è un database, ma bensì il backup o dump del database. Quel file in fomato sql ti permette di "RICREARE" o meglio di "RESTORARE" il database per il game.

---------------------------------------------------------------------------------------------------------------------------------



iniziamo con una guida!





Per sbannare i Natar non c'è bisongo di usare questi modi empirici... basta andare nel Pannello ADMIN, fare la ricerca dell'account Natar, bannarlo (magari bannarlo per una settimana se volete lo sban in automatico) e sempre dal pannello Admin cancellare il ban. Fatto questo avete i Natar sbannati.

--------------------------------------------------------------------------------------------------------------------------------------



Vero in parte, il file en.php che contiene la lingua inglese del game non è completo, difatti se lo traducete così come è cambia solo poche pagine, tra cui la Home page, Login e Logout. Tutte le altre resteranno in inglese.


--------------------------------------------------------------------------------------------------------------------------------------


Vero, ma se poi voleste cambiare di nuovo lingua? Magari mettere il game in francese? che fate vi mettete a tradurre nuovamente oltre 100 pagine?

Per ovviare a questo problema, dovete creare un file EX-novo della lingua che volete, tipo it.php, aggiungere nuove definizioni e andare a sostituire tutte le pagine che volete tradurre con le nuove definizioni fatte. Così quando vorrete cambiare lingua, basterà solo tradurre il file it.php nella lingua desiderata.

--------------------------------------------------------------------------------------------------------------------------------------



Vero in parte, potete anche utilizzare questo modo empirico per modificare la quota dei gold da dare ad ogni player iscritto. Modificare il codice che si trova nel file Account.php che si trova in ../GameEngine/Account.php

cercate questa funzione :

function generateBase($kid,$uid,$username)

e dopo questa chiamata all'oggetto UpdateUserField:

$database->updateUserField($uid,"access",USER,1);

aggiungete:

$database->updateUserField($uid,"gold", XXX ,1); al posto dell XXX mettete il numero dei gold che volete e ad ogni nuova iscrizione saranno aggiunti i gold desiderati.

L'alternativa elegante, che preferisco, è quella di sostituire le XXX con una variabile definita durante l'Install a cui assegnare il valore dei gold desiderati, così già dall'installazione potete fare le vostre variazioni senza dover poi mettere mano al codice.
Programmre significa anche questo... prevedere e dare le possibilità di scelta a tutti senza dover necessariamente modifcare il codice.

Peccato che il forum non mi permette di inserire immagini, altrimenti vi avrei fatto vedere come modificare le cose.

Mauro



Qualche immagine per farvi prendere spunto.

Perfavore, Entra oppure Registrati per vedere i Link!



bhe vedo che tu hai spiegato tutto nei minimi dettagli

molto furbo da parte Tua!
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

Furbo?

non mi sembra aver fatto il furbo. Ho solo corretto le cose che hai citato perchè secondo me non esatte. Forse se intendi fare guide, dovresti prima impararle a fare e poi magari cimentarti nel cercare di farle per gli altri.
Siamo capaci tutti di scrivere, se vuoi correggere questa cosa, vai qui e scrivi così... ma sai almeno il motivo perchè si mette un comando al posto di un altro? O perchè si usa una certa logica?
Tu, scusami se mi permetto di darti del tu, hai solo scritto una guida superficiale priva di significato senza spiegare il perchè si fa una cosa al posto di un'altra o per quale motivo si modifica un valore in una tabella.
Purtroppo sono certo che non lo sai neanche tu il motivo di quella variazione, sai solamente che è una correzione, ma perchè funziona... è un mistero.

Se tu sapessi di cosa stai parlando, e non riportassi solo scopiazzature che peschi nei meandri di internet senza tra l'altro citarne la fonte, perchè precisiamo non sono fonti tue e lo sai bene, sicuramente le "guide" che fai sarebbero molto più dettagliate e corrette.

Vedi la risposta che ho dato in questo post:

http://www.sciax2.it/forum/travian/errore-non-riesco-capire-492808.html

ti sfido a trovami un qualsiasi post in questo forum che ha una risposta dettagliata del genere e che ti spiega il motivo di quell'errore e come si corregge. Adesso quell'utente e tutti gli altri che leggeranno sanno perchè viene fatta quella correzione, come prevenire l'errore e magari tentare di trovare una correzione migliore. Forse dopo aver letto quel post, capirai con chi hai a che fare.

Io intanto ti ho dinostrato che quello che hai scritto non era del tutto esatto e ti ho risposto punto per punto dimostrando con i fatti le tue inesattezze, lungi da me quindi mettermi in competizione con te, non ne ho bisogno, l'intenzione era quella di dare un contributo al forum, ma se ti senti risentito del fatto che sei stato corretto e cerchi un confronto con me su tutto il codice del retrò o su come si corregge, possiamo iniziare quando vuoi.
Sono sempre pronto ad apprendere nuovi concetti e metodi per migliorarmi.

Mauro
 
Ultima modifica:
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

nono, non mela sono Presa ;) mi fa piacere! che ci sia gente cosi Brava!
anche io sono molto bravo, ma non mi piace tanto scrivere!
io dico le cose basi per riparare l'errore! so già da cosa viene provocato!
ma dico solo il Fix!

cmq Piacere sono willsmith1 ! gli amici mi chiamano di Solito King Of Internet ;)
 
Ultima modifica:
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

Guida Aggiornata, con i due download più importanti
 
Riferimento: [Guida] Le cose essenziali per essere un buon Retro Servista[Guida][tutte le

willsmith1 il mio session.php è diverso .. non c'è un altro modo per metter un limite truppe?