anpera.net
https://anpera.homeip.net/phpbb3/

Tag/Nachtphase der Tageslänge anpassen
https://anpera.homeip.net/phpbb3/viewtopic.php?f=34&t=2076
Seite 1 von 1

Autor:  Rikkarda [ Do 05 Jan, 2006 00:28 ]
Betreff des Beitrags:  Tag/Nachtphase der Tageslänge anpassen

Also ich habe nun sicher 30 mins mich durch die Suchenfunktion gewühlt und bin leider nicht fündig geworden ;/ und zwar haben sich einige meiner Bewohner darüber "beschwert" das der Wechsel zwischen Tag und Nacht im Dorf zu schnell ist.

Da ich eine Tageslänge von 4 RL-Std. habe möchten sie gerne, dass in diesen 4 RL-Std. auch nur 1 InGameTag sowie 1 InGameNacht enthalten sind. Also eine Zeitspanne pro Phase von 2 RL Std.. ich habe mich durch die Datein gewustet und hab zig Sachen getestet, dennoch bin ich leider nicht fündig geworden und hoffe somit auf Hilfe von Euch ;)

Da in Silienta viel Wert auf Rollenspiel gelegt wird, und einige Nachtwesen im Dorf leben hoffe ich meinen Bewohnern den Wunsch erfüllen zu können, dass pro Spieltag auch nur noch einmal Tag und Nacht ist^^


lg Rikka



P.S. Falls es doch einen Thread hierzu gibt, den ich trotz intensiver Suche nicht gefunden habe, so bitte ich darum meinen Post dahin zu verschieben

Autor:  Auric [ Do 05 Jan, 2006 00:59 ]
Betreff des Beitrags:  Re: Tag/Nachtphase der Tageslänge anpassen

Rikkarda hat geschrieben:
Da ich eine Tageslänge von 4 RL-Std. habe möchten sie gerne, dass in diesen 4 RL-Std. auch nur 1 InGameTag sowie 1 InGameNacht enthalten sind. Also eine Zeitspanne pro Phase von 2 RL Std.. ich habe mich durch die Datein gewustet und hab zig Sachen getestet, dennoch bin ich leider nicht fündig geworden und hoffe somit auf Hilfe von Euch ;)


Das verstehe ich nicht: Du hast doch nur einen Tag und eine Nacht in einem InGame Tag :?

Autor:  Lyra [ Do 05 Jan, 2006 01:08 ]
Betreff des Beitrags: 

also wenn du nur die einstellung haben willst musst in die admingrotte, dann zu den spieleinstellungen. unter "neue tage" dann "Spieltage pro Kalendertag" dabei 8 eingeben.. dann hast du 4 stunden..

wenn du aber ne eigene einteilung haben willst wann ne nacht beginnt, dann weiß ich auch nicht weiter...

Autor:  Kevz [ Do 05 Jan, 2006 01:09 ]
Betreff des Beitrags: 

Wieso? Ist doch Logisch, denn ein InGame- Tick, ist ein neuer Tag an dem der Morgen beginnt und irgendwann muss er ja auch zu ende sein. Also musst du die Game Ticks / 2 rechnen und daraus eben eine if bilden ;)

So das zb:
Unser Tick ist 4h lang. Unsere Startzeit ist 00:00 Uhr, nächster Tick wäre also 04:00 Uhr. Also muss es bis 02:00 Uhr morgens sein und ab 02:00 Uhr eben danach Abends bis 04:00 Uhr. Und dann beginnt das gleiche noch einmal von vorne. So wäre das ganze sehr realistisch.

Beachte also:
  • Startzeit des Ticks.
  • Dauer des Ticks.
  • Berechnen des Ticks.


Machen kann man es, wäre auch nicht besonders schwer, nur wie man das ganze einsetzt muss jeder selbst wissen.

Autor:  Lyra [ Do 05 Jan, 2006 01:14 ]
Betreff des Beitrags: 

rechnen kann ich auch.. aber wie will man das eingeben? umsetzen? DAS ist ja die frage...

Autor:  Kevz [ Do 05 Jan, 2006 02:45 ]
Betreff des Beitrags: 

Genau, das habe ich gerade oben erklärt...
Evtl. wäre es Sinnvoll, wenn du mal auf php.net die Datumsfunktionen mal anguckst diese werden dir um einiges auf die Sprünge helfen. Am einfachsten ist es du Wandelst das ganze im TimeStamp um, dann hast soweit keine Probleme und kannst jedes xxx beliebe Datum ausgeben aus dem TimeStamp. Achja damit du dich dort nicht verirrst guck mal hier.

Autor:  Meteora [ Do 05 Jan, 2006 09:51 ]
Betreff des Beitrags: 

[php]
function is_new_day(){
global $session;
$t1 = gametime();
$t2 = convertgametime(strtotime($session[user][lasthit]));
$d1 = date("Y-m-d",$t1);
$d2 = date("Y-m-d",$t2);
if ($d1!=$d2){
return true;
}else{
return false;
}
}
[/php]

[php]
function gametime(){
$time = convertgametime(strtotime(date("r")));
return $time;
}
[/php]

[php]
function convertgametime($intime){
// Hehe, einen hamwa noch, einen hamwa noch: by JT & anpera
$multi = getsetting("daysperday",4);
$offset = getsetting("gameoffsetseconds",0);
$fixtime = mktime(0,0,0-$offset,date("m")-$multi,date("d"),date("Y"));
$time=$multi*(strtotime(date("Y-m-d H:i:s",$intime))-$fixtime);
$time=strtotime(date("Y-m-d H:i:s",$time)."+".($multi*date("I",$intime))." hour");
$time=strtotime(date("Y-m-d H:i:s",$time)."-".date("I",$time). " hour");
$time=strtotime(date("Y-m-d H:i:s",$time)."+".(23-$multi)." hour");
return $time;
}
//
[/php]
[php]
function getgametime(){
return date("g:i a",gametime());
}
[/php]

mit diesen komplizierten functionen dürftes zu machen sein ;) 'einfach' anpassen.

Autor:  Devilzimti [ Do 05 Jan, 2006 09:55 ]
Betreff des Beitrags: 

Lyra hat geschrieben:
rechnen kann ich auch.. aber wie will man das eingeben? umsetzen? DAS ist ja die frage...


In der Admin Grotte unter Spieleinstellungen?
Gaanz unten steht das da..
Offset ist, wann die Tagen am echten (RL) Tag beginnen zu Zählen.

Autor:  Lyra [ Do 05 Jan, 2006 15:58 ]
Betreff des Beitrags: 

Devilzimti hat geschrieben:
Lyra hat geschrieben:
rechnen kann ich auch.. aber wie will man das eingeben? umsetzen? DAS ist ja die frage...


In der Admin Grotte unter Spieleinstellungen?
Gaanz unten steht das da..
Offset ist, wann die Tagen am echten (RL) Tag beginnen zu Zählen.



nein.. wenn du richtig lesen würdest, würdest du sehen, dass es nicht um die länge der igtage geht in bezug zum rl.. das schrieb ich nämlich auch schon... :roll:

Autor:  Kevz [ Do 05 Jan, 2006 16:24 ]
Betreff des Beitrags: 

Ich gehe mal ziemlich davon aus das Lyra's antwort oben sich auf meinen Post mit der Berechnung bezog, wie man es möglich macht die Tage & Nacht länge ein zustellen das es passend ist und nicht verschiebt.

Autor:  Lyra [ Do 05 Jan, 2006 16:53 ]
Betreff des Beitrags: 

Kevz hat geschrieben:
Ich gehe mal ziemlich davon aus das Lyra's antwort oben sich auf meinen Post mit der Berechnung bezog, wie man es möglich macht die Tage & Nacht länge ein zustellen das es passend ist und nicht verschiebt.


jop

Autor:  Rikkarda [ Do 05 Jan, 2006 17:10 ]
Betreff des Beitrags: 

thx hadi.. ich versuch mich dann mal am Wochenende daran *hoff*

bisher hab ich mich da net rangetraut *gg*

lg

Seite 1 von 1 Alle Zeiten sind UTC + 1 Stunde
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/