y-shift by belt.animation cannot be defined

Bugs that are actually features.
Post Reply
User avatar
darkfrei
Smart Inserter
Smart Inserter
Posts: 2903
Joined: Thu Nov 20, 2014 11:11 pm
Contact:

y-shift by belt.animation cannot be defined

Post by darkfrei »

It's a little bit too complicate to explain this bug. Please try to understand me. :shock:

Normally you can add all graphics into the one file name and just say where is the first pixel of this graphics. It works great for entities, but not for belts.

As you can see, that data.raw["transport-belt"]["transport-belt"].animations has no starting points for rotated belts. You can download my mod darkfrei's new belt graphics where I found it.
Here is the file .\graphics\animations.png where is very big "y" shift, but it was hardcoded into game core. So I can't have same file without this spacing.

One of belts is also not rotated, but mirrored on the game side :o .
animations.png
animations.png (196.07 KiB) Viewed 456 times

posila
Factorio Staff
Factorio Staff
Posts: 5201
Joined: Thu Jun 11, 2015 1:35 pm
Contact:

Re: y-shift by belt.animation cannot be defined

Post by posila »

Hello, in 0.17 preferred belt animation defintion will be something like following

Code: Select all

basic_belt_animation_set = 
{
  animation_set =
  {
    filename = "__base__/graphics/entity/transport-belt/transport-belt.png",
    priority = "extra-high",
    width = 64,
    height = 64,
    frame_count = 16,
    direction_count = 18,
    hr_version =
    {
      filename = "__base__/graphics/entity/transport-belt/hr-transport-belt.png",
      priority = "extra-high",
      width = 128,
      height = 128,
      scale = 0.5,
      frame_count = 16,
      direction_count = 18
    }
  },
  
  horizontal_index = 1,
  vertical_index = 2,
  
  east_to_north_index = 3,
  north_to_east_index = 4,
  
  west_to_north_index = 5,
  north_to_west_index = 6,
  
  south_to_east_index = 7,
  east_to_south_index = 8,
  
  south_to_west_index = 9,
  west_to_south_index = 10,
 
  starting_south_index = 11,
  ending_south_index = 12,
  
  starting_west_index = 13,
  ending_west_index = 14,
  
  starting_north_index = 15,
  ending_north_index = 16,
  
  starting_east_index = 17,
  ending_east_index = 18,
  
  ending_patch = ending_patch_prototype
}
The current definition will be also loadable as is for better compatibility with existing mods.

As you can see, it is expected entire belt animation set to be in single spritesheet. That is true also for 0.16 to some extent, but for some reason, it still allows animations for different directions to be loaded from different files, but then you have to pad other spritesheets to match expected format.

Post Reply

Return to “Not a bug”