View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0004166 | The Dark Mod | Def / Setup | public | 20.06.2015 16:00 | 05.10.2017 17:46 |
Reporter | sotha_sil | Assigned To | grayman | ||
Priority | normal | Severity | normal | Reproducibility | always |
Status | resolved | Resolution | fixed | ||
Product Version | TDM 2.03 | ||||
Target Version | TDM 2.06 | Fixed in Version | TDM 2.06 | ||
Summary | 0004166: Food does not give health | ||||
Description | Editor claims food should give 1 hp health back. It doesn't. http://forums.thedarkmod.com/topic/17210-possible-to-make-food-give-you-more-health/?p=373243 In a test, eating 25 applies does not change the health bar at all. | ||||
Steps To Reproduce | Test map is provided in attachment. Let the AI hurt you a bit, then kill him or use "killmonsters" to remove him. Eating apples does not change the health bar. | ||||
Tags | No tags attached. | ||||
Attached Files | |||||
related to | 0001882 | closed | Springheel | Edible food needs updating |
Hmm fixing the bug is straightforward enough but it might need a redesign instead. The script that controls eating tries to do something clever with food, to make it work like potions but without providing a separate definition for the healing effect. Healing potions and breath potions give back gradual healing according to settings held in a heal_def (defined in file tdm_healing.def), that specifies the total amount of healing, the amount per pulse, and the time intervals between heals. The food script tries to pass the name of the food item as the heal_def, and adds the spawnargs used by real heal_defs to the food itself (such as heal_amount), the idea being that the game will get its healing settings from the food item's spawnargs. The problem is that the healing code in game dll isn't looking for an individual entity identified by name. It looks for a class_name. So when given the name of an individual food item, it finds nothing. I tweaked the script so it passes the classname of the food instead of the name of the individual apple, and now the healing works. The problem with that fix is that if a mapper changes the "heal_amount" spawnarg on an individual apple, it'll be ignored because the game will get its settings from the inherited spawnargs, not from the mapper's tweaked settings on that one apple. That's not the way people expect spawnargs to behave. A better fix would be to make a 1-point heal_def in tdm_healing.def, and have the script apply that heal_def after picking up the "heal_amount" spawnarg from the individual apple and using it to multiply the effect of the 1-point heal-def. |
|
That works. "heal_amount" now does what people will expect. No other spawnargs from the heal_defs are in use on food (and they wouldn't have worked anyway) so it's safe to change the way it works. defs/tdm_healing.def (added a new "heal_food" def) script/tdm_equip_actions.script rev 14323 |
|
There doesn't seem to be a wiki article. The heal_amount spawnarg needs no explanation, but if there had been a wiki I'd have removed references to other heal_def spawnargs (such as healing over time). | |
Re-opened for further tweaks in 2.05. Extra info from Goldwell re missing spawnargs or inheritances in certain food defs: • The fish is actually missing the "equip_action_script" / "eat_it" spawnarg/value which is why when I frob it nothing happens.. again something I can add but probably worth mentioning. • the bread only needed the "heal_amount" spawn arg whereas the fish needed the "heal_amount" and the "equip_action_script" spawnarg |
|
Started discussion thread: http://forums.thedarkmod.com/topic/19103-edible-foods-and-giving-health/#entry411989 |
|
Corrected healing amounts for healthy foods. 1 - apple 1 - carrot 1 - pear 2 - turnip 4 - bread 3 - cake 2 - cheese wedge 12 - cheese wheel 1 - muffin 6 - mackeral 4 - bluefish Rev. 14934: tdm_healing.def tdm_moveable_food.def |
|
Those HP are given at the rate of 1 per second. You can't go over the player's allowed max health. | |
Updated new edible food HP gain. 1 - apple 1 - carrot 1 - pear 1 - turnip 1 - muffin 3 - bread 3 - cake 3 - cheese wedge 6 - cheese wheel 6 - mackeral 3 - bluefish |
|
Date Modified | Username | Field | Change |
---|---|---|---|
20.06.2015 16:00 | sotha_sil | New Issue | |
20.06.2015 16:00 | sotha_sil | File Added: food.map | |
20.06.2015 17:28 | SteveL | Note Added: 0007586 | |
20.06.2015 17:28 | SteveL | Assigned To | => SteveL |
20.06.2015 17:28 | SteveL | Status | new => assigned |
20.06.2015 17:40 | SteveL | Note Added: 0007587 | |
20.06.2015 17:48 | SteveL | Note Added: 0007588 | |
20.06.2015 17:48 | SteveL | Status | assigned => resolved |
20.06.2015 17:48 | SteveL | Fixed in Version | => TDM 2.04 |
20.06.2015 17:48 | SteveL | Resolution | open => fixed |
04.01.2016 18:45 | grayman | Fixed in Version | TDM 2.04 => TDM 2.05 |
04.01.2016 18:45 | grayman | Target Version | => TDM 2.05 |
25.04.2016 20:55 | SteveL | Note Added: 0008119 | |
25.04.2016 20:55 | SteveL | Status | resolved => assigned |
12.08.2016 21:18 | grayman | Resolution | fixed => open |
12.08.2016 21:18 | grayman | Fixed in Version | TDM 2.05 => |
25.11.2016 13:57 | grayman | Target Version | TDM 2.05 => TDM 2.06 |
15.02.2017 04:34 | grayman | Assigned To | SteveL => |
15.02.2017 04:34 | grayman | Status | assigned => new |
18.09.2017 15:04 | grayman | Assigned To | => grayman |
18.09.2017 15:04 | grayman | Status | new => assigned |
18.09.2017 15:05 | grayman | Note Added: 0009291 | |
19.09.2017 19:06 | grayman | Note Added: 0009304 | |
19.09.2017 19:06 | grayman | Status | assigned => resolved |
19.09.2017 19:06 | grayman | Resolution | open => fixed |
19.09.2017 19:06 | grayman | Fixed in Version | => TDM 2.06 |
19.09.2017 19:07 | grayman | Note Added: 0009305 | |
24.09.2017 18:19 | grayman | Note Added: 0009346 | |
05.10.2017 17:46 | nbohr1more | Relationship added | related to 0001882 |