Tutorial problem

Place to get help with not working mods / modding interface.
matjojo
Filter Inserter
Filter Inserter
Posts: 338
Joined: Wed Jun 17, 2015 6:08 pm
Contact:

Tutorial problem

Post by matjojo »

So I was just trying to get into modding, when whilst doing the tutorial(link on bottom) I ran into this error:

Code: Select all

Error while loading entity prototype "bomber" (car): no such node (energy_per_hit_point) modifications: BomberTutorial
At first I went through the base game files seeking for the car entity to seek for what the node energy_per_hit_point would be. when This didn't work out (I couldn't find the car) I tried seeking on the forum. i came across one post kinda helping. But what he said would not work on the tutorial, beacuse he talked about adding it above the "light node", but that one I also don't have.
So here I am, with the question: Where should the node in question be added?(on what line.) And, what does this node do?




https://forums.factorio.com/wiki/inde ... g_Tutorial
daniel34
Global Moderator
Global Moderator
Posts: 2761
Joined: Thu Dec 25, 2014 7:30 am
Contact:

Re: Tutorial problem

Post by daniel34 »

You can find the prototype for the vanilla car in data\base\prototypes\entity\entities.lua starting from line 797.

Code: Select all

{
    type = "car",
    name = "car",
    icon = "__base__/graphics/icons/car.png",
    flags = {"pushable", "placeable-neutral", "player-creation", "placeable-off-grid"},
    minable = {mining_time = 1, result = "car"},
    max_health = 200,
    corpse = "medium-remnants",
    dying_explosion = "huge-explosion",
    energy_per_hit_point = 1,
    resistances =
[...]
I'm guessing that energy_per_hit_point was later added (0.11.18?) according to https://github.com/Dysoch/DyTech/issues/292
and is required for the car entity to load.
So just add that line somewhere in the car definition of your mod (the entity.lua file in step 4 of the tutorial).
The order of the nodes doesn't really matter, in this case adding it after the corpse node (line 805) should be fine.

I can't tell for sure (haven't tried it) but I think this node changes the amount of damage done when the car/tank/... crashes into other buildings.
quick links: log file | graphical issues | wiki
User avatar
semvoz
Inserter
Inserter
Posts: 30
Joined: Wed Jun 17, 2015 12:03 pm
Contact:

Re: Tutorial problem

Post by semvoz »

As of my understanding, entities, items, and other data definition are simple LUA table, and in that case associative array: we use string names as keys (e.g. {name = 'bomber'}).

Which means that as long as you use the right name at the right level (e.g. not in a sub array if it's an entity's prime attribute) it should be just fine.

Whichever the position you would still access the name property by its name like so:

Code: Select all

entity.name
Someone correct me if I'm wrong (still learning lua but doesn't sound so different from other languages at this level.
matjojo
Filter Inserter
Filter Inserter
Posts: 338
Joined: Wed Jun 17, 2015 6:08 pm
Contact:

Re: Tutorial problem

Post by matjojo »

daniel34 wrote:-snip-
The order of the nodes doesn't really matter, in this case adding it after the corpse node (line 805) should be fine.

I can't tell for sure (haven't tried it) but I think this node changes the amount of damage done when the car/tank/... crashes into other buildings.

thanks, I wasn't really sure as to where to add it, but as you said, the order does not matter. thanks!
Post Reply

Return to “Modding help”