Issue information

Issue ID
#6708
Status
Fixed
Severity
None
Started
Hercules Elf Bot
Sep 18, 2012 13:53
Last Post
malufett
Feb 21, 2013 18:13
Confirmation
N/A

Hercules Elf Bot - Sep 18, 2012 13:53

Originally posted by [b]Choko Designoper[/b]
[b]How to reproduce the issue:[/b]
[list=1]
[*]Create a new homunculus.
[*]Try to level it up to the max level [b][color=#ff0000]WITHOUT[/color] logging out or using *@homlvl.[/b]
[*]Before you can reach level 99 the map server will close.
[/list]
using rAthena r16785.

This post has been edited by Choko Designoper on Sep 19, 2012 0:12

Hercules Elf Bot - Sep 19, 2012 13:58

Originally posted by [b]Choko Designoper[/b]
[attachment=3617:homunculus.fix.patch]

No one wants to confirm. Anyway I attached my fix if anyone cares to look into it.

This post has been edited by Choko Designoper on Sep 19, 2012 14:31

Hercules Elf Bot - Sep 26, 2012 23:04

Originally posted by [b]Ind[/b]
[quote name='Choko Designoper' timestamp='1348063118' post='14564']
[attachment=3617:homunculus.fix.patch]No one wants to confirm. Anyway I attached my fix if anyone cares to look into it.
[/quote]
I was unable to reproduce -- got a vanil, raised server rates, leveled it normally by it killing monsters -- took about 10min to get to 99 with the raised rates, no crashes. am i missing some step in order to reproduce?

KyleZ - Feb 6, 2013 2:13

[quote name="Hercules Elf Bot" timestamp="1348700675"]
Originally posted by [b]Ind[/b][quote post="14564" timestamp="1348063118"]I was unable to reproduce -- got a vanil, raised server rates, leveled it normally by it killing monsters -- took about 10min to get to 99 with the raised rates, no crashes. am i missing some step in order to reproduce?[/quote][/quote]


There was a server freeze problem caused by Homunculus leveling up.

I used manual fix, so not sure if it's fixed alrealy. (it's from rA, but I couldn't find the original post

@Ind

It seems that rate wasn't enough. Say your hom is Lv 98, 50%. You have to make sure next kill is enough to level up to Lv 100. [code=:0] merc_hom_levelup(hd) ; } while(hd->homunculus.exp > hd->exp_next && hd->exp_next != 0 ); [/code]

Since normal Homs can't lvl up to 100, and Lv 100 exp isn't 0. Therefore, an infinite loop starts.

KyleZ - Feb 18, 2013 6:11

here is the origin post from rA
[url="http://rathena.org/board/tracker/issue-7106-experience-above-max-int-for-homunculus-causing-map-server-to-freeze/"]http://rathena.org/board/tracker/issue-7106-experience-above-max-int-for-homunculus-causing-map-server-to-freeze/[/url]

KyleZ - Feb 21, 2013 14:35

rA had this fixed @17147.

maybe we can merge it.

malufett - Feb 21, 2013 16:34

ok..lemme do the fix...

:meow:

malufett - Feb 21, 2013 18:13

Fixed @ [url="https://github.com/HerculesWS/Hercules/commit/84926b94e869a19f08a7a25df15b4c677316cd32"]https://github.com/HerculesWS/Hercules/commit/84926b94e869a19f08a7a25df15b4c677316cd32[/url]

:meow: