Just as a reminder - the robots-mod is quite active, but all the talking and discussion
has happened online on the ROBOTS-server, and not here on the forum.
Some suggestions:
* with the new technic-capabilities, it would be nice if the robots
could use/produce/convert the energycrystals from basic_machines.
* Option for take() and insert() to use a slot number instead of an item-spec.
* also new command "swap(slot1, slot2)
This could be used to re-arrange/sort the inventory.
(Also, a starting point to introduce the concept for 'sorting' when teaching programming)
* allow select() in the sandbox, to give access to the elements in ...
E.g. say() as opposed to print() only allows a single string,
so output of several items is awkward, e.g. say("a="..a.." b="..b).
With select(), users could write their own functions with a variable number of arguments.
* new command 'turtle-interpreter': "
ti(code)". E.g.
would do 3x "move.forward()", 4x "move.right()", then "activate.forward()".
* Maybe interpret uppercase commands as 'repeat command until error",
so the solution to the robot-challenge on the server could be written as
This would make coding for the remote-control much shorter and easier.
* Also, user-definable remote-control using this ti().
E.g. define_remote(spec) where spec is a table of strings
for button-text and turtle-command, like
{"TLEFT","<", "FWD","f", TRIGHT",">", ... "ACTION", "u1"}
with u1 calling a user-defined command.
* new command "
res,err = deploy.forward(code,id)".
This would work like place() and put a spawner (from inventory) in front of the robot,
load it with the program from the string code, optionally 'suggest' an id,
and return the id that was assigned (and an error-message, if any).
* Maybe add a new variable/function "
self.code()"
for giving the new robot the same code as the one doing the deploy().
This could be used to populate a gameboard with robots as gamepieces (with skins),
or for 'leapfrogging' robots building a long bridge.
* self.skin() needs to return a result that tells if the specified texture could be loaded.
If the server can write an error to the logfile, it should be able to tell the user too.
* Also, a method to get a list of textures on the server available as skins.
E.g. output that list to a book in the robot's library.
* same for self.playsound() - tell if soundfile could be found&played.
* User-definable, 'simple skins', e.g. just 8x8 with 16 colors (= icons)
would be nice enough, and might provide a starting point for kid's creativity.
E.g. using a robot with such a skin as a flag / coat-of-arms.