Jump to content

delete character delay bug

closed

OverZero
2014-01-10 03:39:58
in my case
my char config is
char_del_delay: 86400 (24hr)

if use delete character
will show delay date (lilke 1/10)

but logout or login another character

it' will change delay in 1/1 and can't delete character

reigneil
2014-01-10 17:05:23
confirmed.
this is annoying because you have waited for nothing...

reigneil
2014-01-12 09:29:26
how to reproduce this fast: 2013-08-07aRagexe client
1. set your config in conf/char_athena.conf (or just used import/char_conf.txt) char_del_delay: 0
2. login your account choose what you want to delete and wait for a second until it becomes blue text.
3. now choose cancel or simple alt+f4 then login back.

you will notice that you cannot delete your character now, because delete button is disable.
and i think this is serious if your running a private server... hope this will fix soon

rayn
2014-01-15 02:11:58
this is confirmed by me as well.

i reverted back to my old deletion code which still works

reigneil
2014-01-18 07:33:20
i think the issue here are solve if you revert this part on char.c.
#if PACKETVER >= 20100803
#if PACKETVER > 201300000
	WBUFL(buf,124) = (p->delete_date?TOL(p->delete_date-time(NULL)):0);
#else
	WBUFL(buf,124) = TOL(p->delete_date);
#endif
	offset += 4;
#endif



to
#if PACKETVER >= 20100803
//#if PACKETVER > 201300000
	WBUFL(buf,124) = (p->delete_date?TOL(p->delete_date-time(NULL)):0);
//#else
	//WBUFL(buf,124) = TOL(p->delete_date);
//#endif
	offset += 4;
#endif


this will fix 2013 client but 2010 and up cause a bug because of WBUFL(buf,124) = (p->delete_date?TOL(p->delete_date-time(NULL)):0);

hope someone fix this issue without messing up 2013 or 2010 client.

EDIT:
this may also fix the this locked issue.
http://rathena.org/board/tracker/issue-8240-character-deletion/

reigneil
2014-01-20 06:51:37
i dont get the logic from the above data. maybe this would fix it.
#if PACKETVER >= 20100803 && PACKETVER < 20130000
	WBUFL(buf,124) = TOL(p->delete_date);
	offset += 4;
#else
	WBUFL(buf,124) = (p->delete_date?TOL(p->delete_date-time(NULL)):0);
	offset += 4;
#endif


correct me if i'm wrong.

Jey
2014-01-26 22:06:42
It's just a typo ^^
 src/char/char.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/char/char.c b/src/char/char.c
index 8212271..e610669 100644
--- a/src/char/char.c
+++ b/src/char/char.c
@@ -1922,7 +1922,7 @@ int mmo_char_tobuf(uint8* buffer, struct mmo_charstatus* p)
 	offset += MAP_NAME_LENGTH_EXT;
 #endif
 #if PACKETVER >= 20100803
-#if PACKETVER > 201300000
+#if PACKETVER > 20130000
 	WBUFL(buf,124) = (p->delete_date?TOL(p->delete_date-time(NULL)):0);
 #else
 	WBUFL(buf,124) = TOL(p->delete_date);



Lemongrass
2014-02-06 10:14:15
Fixxed in 27d270d.
×
×
  • Create New...