а чем плох вариант с расчетом со времени убийства? единственное что понадобится поле "урон". убили, сбрасываем хп на 0, урон тоже на 0, фиксируем время убийства. если оно зафиксировано то рассчитываем текущее хп по функции времени минус урон. если меньше либо равно 0 то опять все сбрасываем (убили). функция времени должна быть ограничена потолком 100