Jump to content




== gtRemote == (GUI Turtle Remote)

lua turtle wireless

29 replies to this topic

#1 Dog

  • Members
  • 1,179 posts
  • LocationEarth orbit

Posted 08 April 2014 - 04:03 PM

Here's my take on a turtle remote for ComputerCraft 1.63+ advanced wireless pocket computers.

- Turtles running the host program will show up in the remote list automatically when in range and drop off the list when out of range.
- The remote can theoretically list and manage over 20,000 turtles (21 turtles/page, 999 pages).
- Turtles can be 'driven' (mouse or keyboard), place and break blocks, attack, equip tools, engrave and place signs, and output redstone on their front.
- Turtles can run arbitrary programs of your choosing (with command line arguments)!
- Turtles can be 'locked' and 'unlocked' with a password - when locked they will ignore all commands except status queries and the unlock command.
- Turtles can have their name/computer label, description, and assigned color changed from the remote (in case you don't like the choices you made during setup).
- The name you give a turtle will also be assigned to the turtle's computer label - this makes visually identifying listed turtles much easier.
- Turtles will attempt to get a GPS fix on startup and the position data can be refreshed from the remote.
- Position data can be exported to Lyqyd's pocketgps to help zero in on any wayward turtles.

I hope people find as much enjoyment playing with this as I've had making it.

Please note: gtRemote is NOT compatible with ComputerCraft 1.74 or ComputerCraftEdu 1.74 or the combined CC/CCEdu 1.74 jar. This includes modpacks that use these versions [e.g. Tekkit Legends]

Take note: as of version 2.0.00 all passwords are hashed/salted with Anvarins' pbkdf2/SHA256 and all communications are encrypted with SquidDev's AES and Alex Kloss' base64.

Screenshots

Installation and Requirements

Instructions

Update History

Similar programs:
ControlMe by HPWebcamAble
GUI Turtle Control Program by jakejakey
Remote Control GUI by Ninja8370
Remote Controle for Turtle by CodeMonkey42
RoxRC by Roxforbraynz

As always, my sincere thanks to everyone who made this possible; with a special thank you to the following:
- CometWolf who helped sort out some of my messy code
- theoriginalbit who helped me get a grasp on ternary and truth tables
- Anvarins for his pbkdf2/SHA256 hashing function
- SquidDev for his AES encryption/decryption function
- Alex Kloss for his base64 encoding/decoding function

Edited by Dog, 30 August 2018 - 05:52 PM.


#2 Dave-ee Jones

  • Members
  • 456 posts
  • LocationVan Diemen's Land

Posted 11 April 2014 - 11:52 PM

The best turtle remote program I have seen! It looks amazing! I may just try this out...(I don't try out many turtle programs)

#3 Agoldfish

  • Members
  • 451 posts
  • LocationSome Fish Bowl in Ohio.

Posted 12 April 2014 - 12:06 AM

TL;DR What is the redstone feature in the remote screen?

#4 Dog

  • Members
  • 1,179 posts
  • LocationEarth orbit

Posted 12 April 2014 - 12:16 AM

@ AutoLocK - very high praise, thank you :) Give it a whirl and let me know what you think. Also, don't forget you can press F1 in the program to get basic help (for List, Remote, and Inventory screens)

@Agoldfish - that toggles redstone output on the front of the turtle. It can be used to trigger a finish line in turtle races; or simply drive a turtle up behind a 'friend', place a TNT and hit the redstone output, then back the turtle away. It just seemed like there could be some uses for it, so I threw it in. Now that I think of it, it could be useful for TNT mining/blasting - mine a few blocks in then set a TNT and back out.

Edited by Dog, 12 April 2014 - 01:10 AM.


#5 JohnSmith41Junk

  • Members
  • 32 posts

Posted 17 April 2014 - 01:52 PM

View PostDog, on 12 April 2014 - 12:16 AM, said:

Now that I think of it, it could be useful for TNT mining/blasting - mine a few blocks in then set a TNT and back out.
Can a turtle back out fast enough for that?

#6 CometWolf

  • Members
  • 1,283 posts

Posted 17 April 2014 - 02:37 PM

Seeing as turtles are blast proof, it wouldn't really matter >.>

Edited by CometWolf, 17 April 2014 - 02:37 PM.


#7 apemanzilla

  • Members
  • 1,421 posts

Posted 17 April 2014 - 03:15 PM

View PostCometWolf, on 17 April 2014 - 02:37 PM, said:

Seeing as turtles are blast proof, it wouldn't really matter >.>
I'm fairly sure turtles are NOT blast proof by default.

#8 CometWolf

  • Members
  • 1,283 posts

Posted 17 April 2014 - 03:18 PM

I coulda sworn i read somewhere they were. I just tested though, they're not lol.

#9 apemanzilla

  • Members
  • 1,421 posts

Posted 17 April 2014 - 03:20 PM

View PostCometWolf, on 17 April 2014 - 03:18 PM, said:

I coulda sworn i read somewhere they were. I just tested though, they're not lol.
Yeah... There was a misc. peripherals turtle that was though. Shielded turtle i think.

#10 Dog

  • Members
  • 1,179 posts
  • LocationEarth orbit

Posted 17 April 2014 - 04:59 PM

I ran a couple of tests (to ensure my memory wasn't misinforming me - I'm pretty sure I've done the same thing using GoochGuy's turtle remote) and verified that turtles can, indeed, back away fast enough to avoid the explosion. I also discovered on my first test that TNT doesn't stay in the air once it's activated - that was fun to clean up :P Although I guess that could be used to 'make' a turtle 'bomber'...

Edited by Dog, 17 April 2014 - 06:47 PM.


#11 trepnick

  • Members
  • 3 posts

Posted 20 April 2014 - 03:11 AM

How about a remote shell? doesn't even need to be complex at all, just send the string entered and run it on the turtle. That way a turtle can run any program installed on it, not just excavate or tunnel. I'd love to run my turtles on this, but I use custom mining programs and a logging program, etc.

Also, does this work correctly with infinite fuel?

#12 Dog

  • Members
  • 1,179 posts
  • LocationEarth orbit

Posted 20 April 2014 - 10:20 PM

A remote shell is a good idea. Give me some time to come up with a nice way to integrate that into the UI and I'll see what I can come up with.

As for unlimited fuel - yes this program can handle infinite fuel :)



EDIT: Done! Turtles can now run arbitrary programs with command line arguments. Simply right click the black box in the middle of the directional control arrows.

Edited by Dog, 21 April 2014 - 01:27 PM.


#13 CastleMan2000

  • Members
  • 195 posts
  • LocationThe trashcan where all Undertale trash is

Posted 21 April 2014 - 05:45 PM

This is a really good program, but I think there are 3 things that could make it even better: first, having a key or button to dig and or place from the main control, and second, the ability to see where blocks are around your turtle, i.e. a little indicator that uses the three basic turtle.detect() commands, and third, the ability to use break and place in all three directions (Up, down, and forward).

Edited by CastleMan2000, 21 April 2014 - 05:50 PM.


#14 Dog

  • Members
  • 1,179 posts
  • LocationEarth orbit

Posted 21 April 2014 - 07:20 PM

@CastleMan2000,

Those are good ideas (I even considered all of them while developing the program)...sadly, trying to 'fit them in' wouldn't be easy. My general feeling is that gtRemote is 'done' (it does everything I wanted). Having said that, I'd like to address your ideas individually and explain why I *probably* won't develop those features for the program...

I agree with you that it would be (very) convenient to have break and place buttons somewhere on the remote screen, the problem becomes where to put them (or do I double up button functions and add right click, then eventually middle click, etc.?). Too many multi-function buttons and the program isn't simple/easy to 'just use' any more (the same for a screen cluttered with too many buttons). All of my programs suffer a little from that problem and I'm trying to minimize that. If I can come up with a solution that makes me happy then I will probably implement this - but don't count on it happening.

Being able to break/place in all three available directions was also something I considered - ultimately I decided that the scope of what I was trying to do wasn't that broad and choose not to develop those features. I *may* revisit this in the future, but for now it's not on the to-do list.

The idea of using turtle.detect() and providing some kind of indicator is also something I kicked around for a bit. Ultimately I decided against it. This is something that I keep thinking about and I *may* eventually implement detection for the front of the turtle.

I realize those aren't the answers you wanted to hear, but as I said; while none of those ideas are currently planned, it's possible I may reconsider them down the line.

Edited by Dog, 21 April 2014 - 07:22 PM.


#15 CastleMan2000

  • Members
  • 195 posts
  • LocationThe trashcan where all Undertale trash is

Posted 21 April 2014 - 07:44 PM

Okay, I understand. But if you are going to consider it, how about a "sliding switch" with three positions, that then indicates up, forward or down, and then make tunnel and excavate right-click functions, replacing their original buttons with break and place, or just delegating them to the terminal feature?

#16 Dog

  • Members
  • 1,179 posts
  • LocationEarth orbit

Posted 21 April 2014 - 07:48 PM

Good ideas, all of them. Thanks, CastleMan2000! The 3-way switch idea is a possibility - the next time I sit down with gtRemote I'll take another look at this stuff. I can't promise it'll happen, but I'll see if I can up with something workable that makes me happy.

Edited by Dog, 21 April 2014 - 07:50 PM.


#17 CastleMan2000

  • Members
  • 195 posts
  • LocationThe trashcan where all Undertale trash is

Posted 21 April 2014 - 07:49 PM

Okay, thanks! :)

#18 Dog

  • Members
  • 1,179 posts
  • LocationEarth orbit

Posted 18 May 2014 - 08:28 PM

Noteworthy update:

gtRemote and gtHost both updated to 1.1.00.

Complete re-write of the polling and list management in gtRemote - no more flickering screens or 'dead' clicks. See the OP for download info - make sure to grab both gtRemote and gtHost for the fixes.

#19 TheDavster

  • Members
  • 6 posts

Posted 24 May 2014 - 09:18 PM

I think it would be good for servers if turtles had passwords, (the same goes for cc10,) sorry if anyone has suggested this before me.

#20 Dog

  • Members
  • 1,179 posts
  • LocationEarth orbit

Posted 25 May 2014 - 12:16 AM

Hey, TheDavster - you are the first to suggest it. I originally designed gtRemote and cc10 for convenience more than security, but I can see how passwords would be useful. I'll take a look at gtRemote and cc10 and see if there's a way to add password support that I'm happy with. No promises that it'll happen, but I'll see if I can come up with something. Thanks for the suggestion!


EDIT: Done and done. Basic password support has been added to both gtRemote and cc10. Enjoy :)

Edited by Dog, 25 May 2014 - 05:36 AM.






1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users