Fully Programmable Computers Suggestion

    Joined
    Jul 31, 2013
    Messages
    30
    Reaction score
    3
    i like all the ideas and suggestions that are about putting programmable Computers keep bring ideas to the table and this feature could be noticed by the developers :) i hope
     
    Joined
    Aug 1, 2013
    Messages
    252
    Reaction score
    0
    • Legacy Citizen 2
    • Legacy Citizen
    Is an excellent suggestion - I myself prefer the block idea, because I know next to nothing about programming anything, besides that such is possible.

    But at the same time, it allows some leeway for those who DO know how to program.



    A further suggestion, which is kinda the reverse of your idea, in a way... - allow people who do know Lua to program blocks which can then be downloaded and used by other players - basically this makes it possible for most anything to be programmed, and at the same time for anyone to have access to that programming, without necessarily having to understand Lua - assuming the programming block placement/interaction bit isn\'t overly complex...
     
    Joined
    Aug 24, 2013
    Messages
    76
    Reaction score
    0
    • Legacy Citizen
    I like ComputerCraft, I like Starmade, I therefore must love this idea. :)

    Now I need turtleships that build other turtleships and my galactic domination will commence!

    If someone other than whatshisname that made ComputerCraft makes this please keep it in Lua, I almost understand that language, and really don\'t want to start learning another.

    The gui idea sounds okay... if a bit restricting. It\'s not exactly hard to grab a program from the forum and stick it in a folder is it? Assuming of course a program similar to what you want the turtle to do exists.

    If it is made without turtles it will not be ComputerCraft imo, besides Turtle AIs are so much cooler than Bobbie AIs :p
     
    Joined
    Jul 31, 2013
    Messages
    30
    Reaction score
    3
    heres the link to the reddit version: http://www.reddit.com/r/Starmade/comments/1lgo0r/suggestion_fully_programmable_computers/
     
    Joined
    Aug 22, 2013
    Messages
    38
    Reaction score
    0
    I am kinda mixed on that, I am a fairly skilled dcpu16 asm programmer, but the power of the dcpu16 is mighty and will give programmers a huge advantage. If the dcpu16 is added, then it and all the hardware should also be added and in a way that non-programmers can do just as good in starmade as programmers without need of the dcpu.
     
    Joined
    Jul 31, 2013
    Messages
    30
    Reaction score
    3
    Cryptix yeah i think too but putting computercraft and notch\'s vision 10x0c you could have 3 levels of programming language from block code like scratch and then to lua for basic/medium/Advanced Programmers and then dcpu for medium/advance programmers maybe just two levels of programming block code and lua but you descide
     
    Joined
    Aug 15, 2013
    Messages
    52
    Reaction score
    0
    • Legacy Citizen
    reason: it takes a MASSIVE load off the server.

    A Lua interpreter thread can easily be spawned for each craft, and a limit of one Lua thread per structure prevents accidental (or intentional) overload. Extending Lua with an in-game API is easy, Lua is already a well-established language outside of gaming, and a Lua interpreter can run in native code instead of the VM.

    Compare this to an original in-game programming system. You\'re likely to have a LOT of glaring inefficiencies in the interpretation, it\'ll be running in the VM (bad idea!), and it\'s likely to undergo a lot of changes throughout playtesting that will alter craft behavior and take a lot of work from Schema to maintain. It\'s considered bad practice in programming to reinvent the wheel this way.



    My ideal implementation would include a terminal block and a memory block. The terminal is your interface into the computer, allowing you to save and load programs with storage disks and issue commands to the Lua CLI, almost identically to in ComputerCraft. The memory block simply increases the computer memory on a ship (or station), which sets a limit to the largest Lua script that can run. This prevents dishonest players trying to bog down a server by creating self-duplicating code or the like; anything which exceeds a certain server-configurable memory limit per block is simply not executed.
     
    Joined
    Aug 22, 2013
    Messages
    38
    Reaction score
    0
    I like that idea. Just do lua with configurable limitations. As far as asm goes, if asm was implemented then asm programmers would rule starmade, there is no lua script or scratch script that can out preform a powerful asm code, and asm code is impossible to program in for those who don\'t know how yet.
     
    Joined
    Jul 28, 2013
    Messages
    3
    Reaction score
    0
    there is always the option to create an external program which takes a block built code and translates in into real code to paste or save into starmade for those who have very little programming skills. (sorry for lack of terminology)
     
    Joined
    Jul 28, 2013
    Messages
    13
    Reaction score
    4
    it remindes me of admin commands and it is simple enough to where everyone can use it. also using advanced scripts in a similar manner ie) roam_sector (x,y,z) (+/- #) (x/y/z)

    where as (x,y,z) is the current sector or the anchor point for the command and (+/- #) is the direction and ammount in that direction you want it to roam and (x/y/z) is the plane you want the roaming to happen in

    ie) roam_sector -23 5 15 -5 y

    a bit longer now....

    roam_sector (x,y,z) (+/- #) (x/y/z),detected_(enemy/neutral/ally/faction#)_msg_(cmd/hail/greeting)_give (words desired) ,give_distance ####,repeat_at ###

    whereas detected_(enemy/neutral/ally/faction#) is when the AI detects the specific given and msg_(cmd/hail/greeting)_give is the given message to the specifics detected and give_distance ####, is the distance away at which the first message will be sent and repeat_at ### is the distance which the message will be repeated

    ie) roam_sector 33 -9 12 5 x,detected_neutral_msg_hail from whence you came you shall remain until you are complete again, give_distance 1000,repeat_at 800

    and the list could go on

    also a \"comma\" ( , ) issues a new command but is still part of the origional script so long as it is not set as a \"new command\" via no comma or just an all out new line/script
     
    Joined
    Jul 28, 2013
    Messages
    13
    Reaction score
    4
    it remindes me of admin commands and it is simple enough to where everyone can use it. also using advanced scripts in a similar manner ie) roam_sector (x,y,z) (+/- #) (x/y/z)

    where as (x,y,z) is the current sector or the anchor point for the command and (+/- #) is the direction and ammount in that direction you want it to roam and (x/y/z) is the plane you want the roaming to happen in

    ie) roam_sector -23 5 15 -5 y

    a bit longer now....

    roam_sector (x,y,z) (+/- #) (x/y/z),detected_(enemy/neutral/ally/faction#)_msg_(cmd/hail/greeting)_give (words desired) ,give_distance ####,repeat_at ###

    whereas detected_(enemy/neutral/ally/faction#) is when the AI detects the specific given and msg_(cmd/hail/greeting)_give is the given message to the specifics detected and give_distance ####, is the distance away at which the first message will be sent and repeat_at ### is the distance which the message will be repeated

    ie) roam_sector 33 -9 12 5 x,detected_neutral_msg_hail from whence you came you shall remain until you are complete again, give_distance 1000,repeat_at 800

    and the list could go on

    also a \"comma\" ( , ) issues a new command but is still part of the origional script so long as it is not set as a \"new command\" via no comma or just an all out new line/script
     
    Joined
    Jul 28, 2013
    Messages
    13
    Reaction score
    4
    roam_sector (x,y,z) (+/- #) (x/y/z),detected_(enemy/neutral/ally/faction#)_msg_(cmd/hail/greeting)_give (words desired) ,give_distance ####,repeat_at ###,engage_at ####

    whereas engage_at #### is the distance in which the AI will begin its attack

    ie) roam_sector 5 45 -23 -4 z,detected_enemy_msg_cmd_give live long you will not, give_distance 1200, repeat_at 800,engage_at 500