EorzeaTime - Printable Version +- MMOMinion (https://www.mmominion.com) +-- Forum: FFXIVMinion (https://www.mmominion.com/forumdisplay.php?fid=87) +--- Forum: [DOWNLOADS] Addons, Lua Modules, Navigation Meshes.. (https://www.mmominion.com/forumdisplay.php?fid=90) +---- Forum: I Need Help with LUA coding! (https://www.mmominion.com/forumdisplay.php?fid=104) +---- Thread: EorzeaTime (/showthread.php?tid=5992) |
EorzeaTime - MAHA - 01-22-2014 Hi, Leider hat die API ein Problem mit Berechnungen von Numerischen Variablen größer 8 Zeichen Beispiel temp = 99999999 temp = temp + 1 Ergebnis: temp = 10000000 Wenn man die Variable jetzt wieder um 1 erhöht ist temp immer noch 100000000 Ich habe eine Funktion geschrieben, womit man die Eorzea Zeit auslesen "kann" leider ist die Variable zu groß z.b. 28602418340 PHP Code: function EorzeaTime() Er Berechnet die Zeit einmalig, kann Sie dann aber nicht mehr Aktualisieren, da die Ausgabe zum Berechnen zu groß ist. Also versuchte ich die Sache zu kürzen: PHP Code: function EorzeaTime() ezt1 = 28602418340 ezt2 = 30802340 ezt3 = 1339940 ezt4 = 43940 aber auch die zweite Funktion um den String zu kürzen schlägt leider fehl, weil er ja am Anfang die Große Zahl hat (11-12 stellen). Besteht die Möglichkeit dies Anzupassen oder eine Funktion in die API einzubauen? MAHA RE: EorzeaTime - HansW - 01-22-2014 das hat nichts mit der API zu tun, du verwendest ausschließlich LUA code. Was genau ist denn die Zahl die du da ausrechnest. Ich weiss was ezora time ist, aber wie kommst du auf die Formel und was soll die Zahl darstellen ? os.time() ist das aktuelle Datum in Sekunden seit 1970. RE: EorzeaTime - MAHA - 01-23-2014 hoi, ja die Ezora Time ist die Aktuelle Zeit "os.time() * 20.571428571" z.B. Aktuelle Zeit: 06:10:4 os.time() = 1390457442 Ezora Zeit: 07:05:49 os.time() * 20.571428571 = 28603695949.675 Diese Zeit brauch man um zu schauen ab wann ich was Farmen kann. Wenn Du Natürlich einen anderen Weg kennst der Funktioniert, dann nehme ich den gerne :) MAHA RE: EorzeaTime - HansW - 01-23-2014 wie gesagt, du multiplizierst ein Datum , keine Uhrzeit. Das macht nicht wirklich viel Sinn. Auch wenn das Ergebnis vieleicht stimmt ist es nicht verwunderlich das du einen Überlauf bekommst. RE: EorzeaTime - MAHA - 01-23-2014 jein ich Multipliziere eine Zahl ;) das Problem ist die Übergabe der Zahl vom LUA Script zur API Du kannst MAX bis 16777216 berechnen danach ist Schluss. hier ein kleines Script zum Testen. PHP Code: ATest= { } Ich Denke mal das Du in C# Programmierst, und Die Variable in ein Float übergibst? schau mal hier Why does a float variable stop incrementing at 16777216 Ich hoffe das Hilft Dir. Kann Dir aber auch eine Funktion in C# oder VBnet geben um Die Zeit zu Berechnen. Bin selber von Beruf Anwendungsentwickler und will nur Helfen, denn ich mag eure Arbeit sehr. MAHA RE: EorzeaTime - Shaolin2 - 01-23-2014 local time = os.date('*t') damit bekommst doch glaub eine Tabelle zurück die das Datum und die Zeit schon aufsplittet. time.hour time.min time.sec damit dürftest du dann rechnen können. notfalls alles wieder auf sec hoch rechnen wenn das für deine Formel dann besser passt. RE: EorzeaTime - TauTau - 01-24-2014 die OS-Time dürften ja Unix-ticks sein so wie's aussieht, d.h. da ist Datum und Uhrzeit enthalten. Evtl könnte man das Datum vorher rausrechnen, da das ja nicht gebraucht wird... RE: EorzeaTime - MAHA - 01-27-2014 Hi Ho, also ich hab noch keine Lösung gefunden, womit ich das Problem umgehen kann. man muss leider erst die Unix Time Multiplizieren, damit das Ergebnis stimmt. wenn jemand eine andere Formel kennt nehme ich diese auch :) Im Anhang die Source und exe (VBNET) für die ausgabe der Eorzea Zeit. @HansW kannst Du nicht eine Funktion direkt in die API einbauen dann wäre das Problem erledigt. Gruss MAHA RE: EorzeaTime - Shaolin2 - 01-27-2014 nein bin auch noch auf keine formel gekommen die mit os.date und der reinen echten Uhrzeit arbeitet. es gibt zwar ne umrechnung wie viel echtzeit Eorzea Zeiten haben http://ffxiv.gamerescape.com/wiki/Time aber hatte noch keine zeit darüber zu sinnieren wie man das in LUA umsetzt mit dem was wir haben RE: EorzeaTime - MAHA - 01-27-2014 trotzdem würde ich HansW bitten es in die API einzubauen Vieeeelen Dank Leider funktionierte die LUA Formel am nächsten Tag nicht mehr :( Gruss MAHA |