User:Darkfrei/script: Difference between revisions

From Official Factorio Wiki
Jump to navigation Jump to search
Line 2: Line 2:
This creates 9 crude oil patches randomly without collisions:
This creates 9 crude oil patches randomly without collisions:


<syntaxhighlight lang="lua">
  /c local position = nil
  /c local position = nil
  for i=1,9 do
  for i=1,9 do
Line 9: Line 10:
   end
   end
  end
  end
</syntaxhighlight>


=== Respawn enemies ===
=== Respawn enemies ===

Revision as of 21:13, 5 November 2019

Add new oil patch

This creates 9 crude oil patches randomly without collisions:

 /c local position = nil
 for i=1,9 do
   position = game.player.surface.find_non_colliding_position("crude-oil", game.player.position, 0, i/2+1.5)
   if position then 
     game.player.surface.create_entity({name="crude-oil", amount=5000, position=position})
   end
 end

Respawn enemies

This creates one respawner every 32x32 tiles:

/c local surface = game.player.surface
for c in surface.get_chunks() do
  local position = surface.find_non_colliding_position("biter-spawner", {x=c.x*32+16, y=c.y*32+16}, 10, 3)
  if position and surface.is_chunk_generated(c) then
    surface.create_entity{name="biter-spawner", position=position}
  end
end


Print all mods with versions to the log file

For data stage:

 local mod_list = {}
 for i, v in pairs (mods) do
   table.insert (mod_list, i .. '_' ..v )
 end
 log ('mods: ' .. serpent.line (mod_list))