SphereCommunity
Effect 2038 - Printable Version

+- SphereCommunity (https://forum.spherecommunity.net)
+-- Forum: General Discussion (/Forum-General-Discussion)
+--- Forum: UO/Sphere Discussion (/Forum-UO-Sphere-Discussion)
+--- Thread: Effect 2038 (/Thread-Effect-2038)



Effect 2038 - Ordoñez - 02-10-2017 03:14 AM

From time to time, drugaddicts like me go back to bad times, and start to script again.

Recently i've been scripting some kind of "definitive characters death" for encouraging players to have descendence that may inherit and improve beyond ingame parents generation values.

The problem comes when you set definitive death values higher than "19 January 2038 04:14:07" or... in other words 7FFFFFFF in SERV.RTICKS value...

You still got time for a fix, so no hurry. Just telling!

Thanks for the Job Guys.

PD.: XuN, Recuerdos de GM Unnamed, por si aún te acuerdas xD


RE: Effect 2038 - Coruja - 02-10-2017 09:19 AM

try using the latest build, I changed SERV.RTIME value on source from 'unsigned long' (max value: 2147483647 / 0x7FFFFFFF) to 'unsigned long long' (max value: 9223372036854775807 / 0x7FFFFFFFFFFFFFFF)


RE: Effect 2038 - Ordoñez - 02-10-2017 08:47 PM

Thankyou, I guess I need 64 bits based OS for this, right? it makes an error of GetTickCount64() in Kernel32.dll

EDIT: I'm thinking about it, and another plausible fix, without need of changing variable size, it's to get RTICKS=0 different to "1 January 1970 01:00:00" (dont know why does Sphereserver get that date as 0 point, and why its 01:00:00 and not 00:00:00) and make "seteable" to any date past or future you want, instead of your system actual date.