Seite 1 von 2
suche: Stardate / Sternenzeit Hack [für Star Trek Board]
Verfasst: 07.01.2003 00:07
von ZeroB@NG
...
Ich hab nen Star Trek RPG Board und es wär ganz praktisch wenns nen Mod / Hack (was auch immer) gäbe der die aktuelle Zeit (plus paar hundert Jährchen draufgerechnet) in Sternenzeit anzeigen könnte...
ich bezweifel zwar das es sowas gibt aber die diskussion ist gerade aufgekommen und da dacht ich mir fragen kann net schaden
gefunden hab ich jedenfalls noch nix...
Verfasst: 07.01.2003 00:51
von Hotschi
hi
ich meine mal gewusst zu haben, wie sich die star trek sternzeit berechnet...
wenn du mir das nochmal genau sagst, oder mir einen link gibts, dann schau ich mir das mal an...
grz
hotschi
Verfasst: 07.01.2003 00:58
von roger
Da gibt es einen Sternzeit-Rechner:
http://fedtf.de/temp/stardate.zip...
roger
Verfasst: 07.01.2003 01:44
von Hotschi
Hi
Zum einen läuft das Proggi bei mir nicht, was aber an meinem System liegen kann (sehr, sehr wahrsheinlich

), und zum anderen benötige ich keinen Rechner, sondern eine Rechnung oder vielmehr eine Formel o.Ä. nach der ich die Zeit berechnen kann.
Gruß
Hotschi
Verfasst: 07.01.2003 13:07
von Starfun
Verfasst: 09.01.2003 16:02
von ZeroB@NG
also das mit der php Funktion sieht (in meinen augen) schonmal nicht übel aus...
die Formel hätte ich jetzt auch nicht gewusst *g* aber gut wenn Hotschi damit was basteln kann? *lieb guck*
jedenfalls schonmal THX für die Hilfe!
Verfasst: 09.01.2003 16:23
von saerdnaer
also zuerst folgedes in die includes/funtions.php einfügen:
Code: Alles auswählen
<?php
/*
falls die MCAL-Funktionen nicht verfügbar sind,
müssen diese Funktion hier zusätzlich eingebaut
werden.
einige Formeln stammen von
http://www.th-o.de/kalender.htm
*/
function SGN($x) {
if ($x < 0) $y = -1;
if ($x == 0) $y = 0;
if ($x > 0) $y = 1;
return $y;
}
function is_leap_year($year) {
$JG = $year;
$JJ = $JG - floor($JG/100)*100;
$JH = $JG - $JJ;
return SGN($JG % 100) - SGN($JJ % 4) + 1 - SGN($JG % 400);
}
function day_of_year($year,$month,$day) {
$days_in_month_data = array(
0 => array(31,28,31,30,31,30,31,31,30,31,30,31),
1 => array(31,29,31,30,31,30,31,31,30,31,30,31)
);
$days_in_month = $days_in_month_data[is_leap_year($year)];
for ($i=1;$i<$month;$i++) {
$day += $days_in_month[$i];
}
return $day;
}
/*
Sternzeit-Berechnung
Florian Heidinger
14.09.2002
Version 2.0
*/
function stardate($year = false, $month = false, $day = false, $hour = false, $minute = false, $second = false)
{
$timestamp = time();
$thistime = getdate($timestamp);
if (empty($year)) $year = $thistime["year"];
if (empty($month)) $month = $thistime["mon"];
if (empty($day)) $day = $thistime["mday"];
if (empty($hour)) $hour = $thistime["hours"];
if (empty($minute)) $minute = $thistime["minutes"];
if (empty($second)) $second = $thistime["seconds"];
// mit MCAL:
// $daysinyear = 365 + mcal_is_leap_year($year);
// ohne MCAL:
$daysinyear = 365 + is_leap_year($year);
// mit MCAL:
// $dayofyear = mcal_day_of_year($year,$month,$day) + 1;
// ohne MCAL:
$dayofyear = day_of_year($year,$month,$day) + 1;
$thestardate = round((($year-2323)+(($dayofyear+($hour/24)+($minute/1440)+($second/86400))/$daysinyear))*100000)/100;
return $thestardate;
}
?>
suchen:
Code: Alles auswählen
function create_date($format, $gmepoch, $tz)
{
global $board_config, $lang;
static $translate;
if ( empty($translate) && $board_config['default_lang'] != 'english' )
{
@reset($lang['datetime']);
while ( list($match, $replace) = @each($lang['datetime']) )
{
$translate[$match] = $replace;
}
}
return ( !empty($translate) ) ? strtr(@gmdate($format, $gmepoch + (3600 * $tz)), $translate) : @gmdate($format, $gmepoch + (3600 * $tz));
}
ersetzen durch
Code: Alles auswählen
/*
function create_date($format, $gmepoch, $tz)
{
global $board_config, $lang;
static $translate;
if ( empty($translate) && $board_config['default_lang'] != 'english' )
{
@reset($lang['datetime']);
while ( list($match, $replace) = @each($lang['datetime']) )
{
$translate[$match] = $replace;
}
}
return ( !empty($translate) ) ? strtr(@gmdate($format, $gmepoch + (3600 * $tz)), $translate) : @gmdate($format, $gmepoch + (3600 * $tz));
}
*/
function create_date($format, $gmepoch, $tz)
{
$thistime = getdate($gmepoch);
$year = $thistime["year"];
$month = $thistime["mon"];
$day = $thistime["mday"];
$hour = $thistime["hours"];
$minute = $thistime["minutes"];
$second = $thistime["seconds"];
// mit MCAL:
// $daysinyear = 365 + mcal_is_leap_year($year);
// ohne MCAL:
$daysinyear = 365 + is_leap_year($year);
// mit MCAL:
// $dayofyear = mcal_day_of_year($year,$month,$day) + 1;
// ohne MCAL:
$dayofyear = day_of_year($year,$month,$day) + 1;
$thestardate = round((($year-2323)+(($dayofyear+($hour/24)+($minute/1440)+($second/86400))/$daysinyear))*100000)/100;
return $thestardate;
}
ah
Verfasst: 10.01.2003 17:01
von ZeroB@NG
*ausprobier*
hmmm... das ist nicht so ganz das was ich brauche...
das ersetzt überall die aktuelle "echte Zeit" durch die aktuelle Sternenzeit (-3****) [da muss man schon bissi krank sein wenn man dann noch nen durchblick hat was wann geostet wurde ;]
ich brauch aber die Sternenzeit ausm Jahr 2378 [da spielt das RPG!] (also am besten ein Feld im ACP wo man für die Sternzeit "plus ***"-Jahre" einstellen kann! Tage Uhrzeit + Monat kann ja von der Echtzeit genommen werden
ich brauch die anzeige eher im Posting neben dem...
"Verfasst am: 06.Jan.2003 - Mo, 20:57
Stardate: ***** Titel: BLABLABLA"
das wäre "ganz nett"...
aber was ich auf jeden fall brauche(!) ist das einem wenn man selber postet die aktuelle Sternenzeit (vom posting +n Jahre ausm ACP) angezeigt wird... ("wo" ist eigentlich egal nur halt wenn man schreibt das man irgendwie die aktuelle sternzeit sehen kann...)
ja ja ich weis! versteht nix davon und extrawünsche hater auch noch

Verfasst: 10.01.2003 17:05
von saerdnaer
soll man in seinem profil das stardate über z.b sd einfügen können?
ah
Verfasst: 11.01.2003 14:27
von ZeroB@NG
meinst du bei "Datums-Format:..."
fänd ich nicht so gut wenn das da dabei wär man kann das zwar im Admin CP "global" einstellen aber dann haben die User die schon registriert sind das nicht so, sondern die eigene (alte) Einstellung... wär net so ideal (wenn du das so meinst?)
*überleg* dann würds ja im index auch überall stehen (würd bissi blöd aussehen wird dann zu breit)