Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal


  • Content Count

  • Joined

  • Last visited

  • Days Won


Log last won the day on August 12

Log had the most liked content!

About Log

  • Rank
    Junior Member

Profile Information

  • Gender
    Not Telling

Recent Profile Visitors

1569 profile views
  1. Log

    Drone Pathfinding?

    Depends on the size of the known area. At a distance of 1-2 chunks, A* or JPS work quite well even on a 1 tier CPU. A* requires a lot more memory, but its heuristics are better for drones.
  2. I own black magic. Сan determine the block hardness in one scan, at any distance. Maybe I'll write a post explaining how to do it.
  3. I know an easy way to find out the hardness of a block at any distance in one scan. Accuracy 99.31% When move the robot a couple of blocks, the accuracy will be 100%.
  4. Yes, this program is outdated. here is fixed https://pastebin.com/eZkdDK7N
  5. That is mighty easy. computer.pullSignal = nil
  6. local function compass() local sides = {2, 1, 3, 0} -- links of cardinal points, for raw data local D = nil for s = 1, #sides do if robot.detect(3) or robot.place(3) then -- check for block in front side local A = geolyzer.scan(-1, -1, 0, 3, 3, 1) -- scan blocks around the robot robot.swing(3) local B = geolyzer.scan(-1, -1, 0, 3, 3, 1) for n = 2, 8, 2 do if math.ceil(B[n])-math.ceil(A[n])<0 then -- check the difference between two scans D = sides[n/2] -- set the direction break end end else -- turn if there is no block robot.turn(true) end end return D -- return the direction end local min, max = 2.2, 40 -- minimum hardness selected to capture lead ore from IC2 local border = nil local X, Y, Z = 0, 0, 0 local function scan(xx, zz) -- 8x8 block scan local raw, index = geolyzer.scan(xx, zz, -1, 8, 8, 1), 1 for z = zz, zz+7 do for x = xx, xx+7 do if raw[index] >= min and raw[index] <= max then -- add ore coordinates to list -- coords of the geolyzer will be converted to local coords of robot table.insert(WORLD.x, X+x) table.insert(WORLD.y, Y-1) table.insert(WORLD.z, Z+z) elseif raw[index] < -0.31 then -- if a block with a negative hardness is detected, set the flag to end scanning border = Y end index = index + 1 end end end local quads = {{-7, -7}, {-7, 1}, {1, -7}, {1, 1}} while not border do if robot.move(0) then Y = Y - 1 end for q = 1, 4 do scan(table.unpack(quads[q])) end end
  7. Robot can determine the facing using the geolizer. And you can scan 16x16 blocks at a time, as I did.
  8. Program and library for building GPS network. https://github.com/DOOBW/OC-GPS Download: wget https://raw.githubusercontent.com/DOOBW/OC-GPS/master/usr/bin/gps.lua /bin/gps.lua wget https://raw.githubusercontent.com/DOOBW/OC-GPS/master/usr/lib/gps.lua /lib/gps.lua The functionality is the same as in the ComputerCraft. Additional command "flash" allows to upload firmware to EEPROM. When the coordinates are precisely determined, when flashing the position of the microcontroller can be omitted - at the first start it will determine its position from neighboring satellites and save on EEPROM. GPS network startup example.
  9. Update Added ability to work with solar panels. When the energy level falls below 30 percent, the robot climbs to the surface and charges from the built-in solar panel. There is a check of time of day and weather conditions.
  10. Log


    This bug has already been fixed You need update the mod to the latest version.
  11. There are quite a few games, but their do not post them on this forum. For example: simple RPG Or flappy bird
  12. I fixed it. Download the file again, please. The error was due to the computer.beep(), which is not compatible with the old versions OpenComputers. P. S. Instead of batteries, I advise you to use the experience upgrade or additional generator
  13. Such objects are just tables, they must be processed in the correct sequence. players = component.debug.getPlayers() -- get a players list for i = 1, players.n do print(players[i]) -- display the name of the next player end player = component.debug.getPlayer(players[1]) -- get player proxy by name from list world = player.getWorld() -- get the proxy of the world in which the player is located print(world.getDimensionName()) -- print the name of the world -- Or you can get everything at once players = component.debug.getPlayers() for i = 1, players.n do print(players[i], component.debug.getPlayer(players[i]).getWorld().getDimensionName()) end
  14. There are variables in the code that can be customized chunks - how many chunks need to be processed min and max - the minimum and maximum hardness of mined blocks port - port for interaction with the robot (if a wireless card is installed)
  15. I present you a program for a robot that allows you to mine ore without going down into the caves. Robot, using a geolyzer, can find and mine ore. All features are not yet implemented, so I ask you to test and inform me about a bugs. Requirements: Computer case (tier II or III) Inventory Upgrade (more the better) Inventory Controller Upgrade Hard Disk Drive EEPROM with Lua BIOS Geolyzer RAM (tier I or higher) CPU (any) Hover Upgrade (tier I) Diamond pickaxe or equivalent tool Optional: Crafting Upgrade Wireless Network Card or Linked Card Solar Generator Upgrade Battery Upgrade Experience Upgrade Chunkloader Upgrade Generator Upgrade Enderchest from EnderStorage mod Installing: Download and save the file as init.lua wget https://raw.githubusercontent.com/DOOBW/geominer/master/miner.lua init.lua Put this file in to root directory of the hard disc. Add the disk when crafting a robot. Place the robot on a solid blocks platform. Give the robot a pickaxe Place a container and the charger near the robot. Press the power button and enjoy a process.
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.