Jump to content




Wooden Turtle


25 replies to this topic

#21 Buho

  • Members
  • 110 posts

Posted 10 January 2014 - 10:23 AM

I've been thinking more about this. You all make great points.

And reading the suggestions in this forum, responses fall into two categories: it can already be done, or a peripheral can be made for that. On the first category, I'm actually pretty impressed with what turtles can already do. They're player-simulators with the ability to move, mine, compare, think, and place. What more can there be?

Well, the turtles move more like blocks than players. We can exist at a fractional x,y,z location but turtles cannot. You might see them move smoothly but I think that's an animation trick to mask their constantly integer block location. One of the "features" above was that players or zombies could nudge the wooden turtle. I'd like to expand on that. Make a wooden turtle like a mob instead of a block. That means it cannot levitate. Give it new API functionality:
  • float, float, float turtle.accelerate(float, float) --x, z, also returns current values, useful for determining "at rest on ground"
  • float, float, float turtle.velocity()
  • bool turtle.jump() --attempts a vertical acceleration of a certain amount, will only fail if in the air not touching the ground
  • float, float, float turtle.heading(float, float, float) --target yaw, pitch, roll, turn is at a constant rate, also returns current values
Think about the Slime Block that will be introduced in MC 1.8! 1337 parkour turtles, anyone? How about a Wooden TNT Turtle where you can control your own creeper?

Those are some back-of-the-napkin API ideas to get the idea across. I think a mob-like turtle is sufficiently different from the block-like iron turtle to make this a compelling suggestion. It opens up an entirely different world of programming problems in Minecraft. It also makes sense that it is destructible, as mobs are destructible, too, and likewise with floating in water. It probably shouldn't have a diamond pick. Maybe make wooden turtles unable to mine but only interact (like Adventure mode).

#22 awsmazinggenius

  • Members
  • 930 posts
  • LocationCanada

Posted 10 January 2014 - 11:48 AM

What do you mean by "float"? If you mean the numbers with decimal points, we don't have them in Lua. We have one "number" type, which stores integers and floating-point numbers. Otherwise, these are decent ideas.

#23 Buho

  • Members
  • 110 posts

Posted 11 January 2014 - 09:42 AM

AWS, I understand there's just one "number" type, I was illustrating the kind of data that is being passed around.

Thinking more on this, I'm a bit concerned this isn't even possible in Minecraft, at least at the detail I outlined above. These calculations have to happen server-side and Minecraft is not a physics simulator. It's limited to ticks, 1/20s. I guess the thing to do is match the Wooden Turtle's ability to the inputs available to a player communicating to a server. turtle.forward() doesn't quite cut it, as a player can press forward for 1 tick and nudge himself forward a hair. Maybe turtle.forward(seconds) that can be combined in the next line with turtle.left(seconds) to move diagonally a certain amount.

Also, I'm thinking the Wooden Turtle needs to see, sense its environment better/faster than iron turtle block detection. Like a player can see the horizon, except not that far for the turtle. A long time ago I wrote Java code to control a tank in a 2D arena that had tread, gun, and radar (of only a small FOV), which could all be controlled independently to strafe, detect the enemy, and shoot independently. I'm wondering if a limited-range 3D radar/sonar can be installed on the Wooden Turtle. I'm not sure of how to read this input, though. A 3D table in memory of block locations, a virtual map of the environment the turtle is sitting in? Again, even if this were done, I have a feeling that turtle programs to read this and make sense of it will lag the server too much -- Minecraft isn't a physics simulator.

One final thought: What's the use of a Wooden Turtle as described here? This is all movement-based and iron turtles can move very reliably and precisely. I think that question shows a Survival mode mindset. What about Adventure mode? Again I bring up that Java tank game where you wrote AI to outsmart another programmer's AI. A Wooden Turtle could be an excellent learning environment to learn how to programmatically move around in real space with physics. After all, real-world robots have to deal with these issues. It seems Dan is pushing heavily into the education area, and this might fit in with his vision.

#24 awsmazinggenius

  • Members
  • 930 posts
  • LocationCanada

Posted 11 January 2014 - 12:34 PM

I do agree that this would be a challenge for programmers,and I like the idea, but I just don't see it being implemented into ComputerCraft, at least not currently. With the new advanced turtles, turtles almost need their own creative tab because there are so many variants of them now (this is one of the things I am thinking of suggesting). With the hopefully upcoming ComputerCraftEdu, assuming this is used in (more) schools, it could also make for a great lesson of problem-solving, where you have to make the wooden turtle accomplish a certain task, while working with the constraints it has.

#25 aaa

  • Members
  • 53 posts

Posted 14 January 2014 - 12:17 AM

Destroying and placing blocks like player is an interressing feature, allowing cactus farming.

#26 Csstform

  • Members
  • 410 posts
  • LocationU.S.A.

Posted 14 January 2014 - 01:52 PM

View Postawsmazinggenius, on 11 January 2014 - 12:34 PM, said:

I do agree that this would be a challenge for programmers,and I like the idea, but I just don't see it being implemented into ComputerCraft, at least not currently. With the new advanced turtles, turtles almost need their own creative tab because there are so many variants of them now (this is one of the things I am thinking of suggesting). With the hopefully upcoming ComputerCraftEdu, assuming this is used in (more) schools, it could also make for a great lesson of problem-solving, where you have to make the wooden turtle accomplish a certain task, while working with the constraints it has.
Suggest it to engineer - he's making peripherals so maybe it could be a test of sorts.
http://www.computerc...ou-want-to-see/

Edited by Csstform, 14 January 2014 - 01:55 PM.






1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users