Hercules halucinates guild member levels
Thread 1 "manaplus" hit Breakpoint 3.12, Being::setLevel (n=24, this=0x5555572fc9d0) at ./being/being.h:602
602 { mLevel = n; }
$226 = 24
#0 Being::setLevel (n=24, this=0x5555572fc9d0) at ./being/being.h:602
#1 EAthena::BeingRecv::processBeingVisible (msg=...) at net/eathena/beingrecv.cpp:578
#2 0x0000555555bcd21b in EAthena::Network::dispatchMessages (this=0x555556271120) at net/eathena/network.cpp:229
Thread 1 "manaplus" hit Breakpoint 3.14, Being::setLevel (n=60, this=0x5555572fc9d0) at ./being/being.h:602
602 { mLevel = n; }
$241 = 60
#0 Being::setLevel (n=60, this=0x5555572fc9d0) at ./being/being.h:602
#1 EAthena::GuildRecv::processGuildMemberList (msg=...) at net/eathena/guildrecv.cpp:279
#2 0x0000555555bcd21b in EAthena::Network::dispatchMessages (this=0x555556271120) at net/eathena/network.cpp:229
I'm not sure why Herc caches part/all of character attributes in guild_member record. Perhaps it's to see members outside of view?
see https://git.themanaworld.org/ml/hercules/-/blob/tmw2/src/map/clif.c?ref_type=heads#L8191
Couldn't find where the 60 comes from, either. I'm quite certain Hukot(Andulka) was around lvl 90 when I added her as guild newbie, and that is a level 19 position " GPOS_NEWBIE: 19". This is at least as far as serverdata is concerned.
Since guild_member is saved to SQL, it might be that level is not updated properly. I have been seeing the same number (60) since as long as I remember, in fact.