This paper provides a bridge between the classical tiling theory and cellular automata on one side, and the complex neighborhood self-assembling situations that exist in practice, on the other side. A neighborhood N is a finite set of pairs (i, j) Z2 , indicating that the neighbors of a position (x, y) are the positions (x + i, y + j) for (i, j) N. This includes classical neighborhoods of size four, as well as arbitrarily complex neighborhoods. A generalized tile system consists of a set of tiles, a neighborhood, and a relation which dictates which are the "admissible" neighboring tiles of a given tile. Thus, in correctly formed assemblies, tiles are assigned positions of the plane in accordance to this relation. We prove that any path filled with tiles defined in a given but arbitrary neighborhood (a zipper) can be simulated by a simple "ribbon" of microtiles. A ribbon is a special kind of polyomino, consisting of a non-self-crossing rectilinear sequence of tile...