Jump to content
Frequently Asked Questions
  • Are you not able to open the client? Try following our getting started guide
  • Still not working? Try downloading and running JarFix
  • Help! My bot doesn't do anything! Enable fresh start in client settings and restart the client
  • How to purchase with PayPal/OSRS/Crypto gold? You can purchase vouchers from other users
  • Try asking for help in the chatbox
  • New concept: Scripting with Kotlin


    Dioxin
     Share

    Recommended Posts

    Kotlin is a new language by JetBrains.

    It compiles to Java bytecode, allowing seemless interoperability.

    It comes bundled with loads of features that Java does not have and does not encourage a programming style.

    This allows developers to create APIs targeted for specific audiences.

    7f1afa960f1842f0d1c05f464692d227.png


    The main motive is to reduce boilerplate code.

    This reduces the learning curve for writing scripts.

    With boilerplate code removed, scripting will seem a lot less overwhelming.

     

    Beginners will be able to script efficiently.

    Due to it's simplicity, there is less room for mistake.

    A reference can be created which would require less cognition to understand than Java.

    Beginners can push out more efficient scripts without extra effort.

    82eeda8edae0603a9733b38cba49377e.png

    GUIs don't need to be so fustrating.

    In this style, you are passed everything you need.

    Thread consistency between Swing components is handled for you.

    Passing user entered values to your script is made easy.

     

    6223419c82734b0bb5511acdf064d3d3.png

     

    Scripts should be easy to expand.

    Different execution styles for domain specific execution.

    Actions can be extended and distributed to help lower verbosity further.

    Seasoned developers could create new script types to expose their own styles.

     

    149344a26b3bc3b5862f5d4f95c31cc3.png

     

    Like any language, it takes some "getting used to".

    Don't let this detour you.

    Within about a day, you could become quite familiar with it.

    Once familiar, you can push out highly scaled scripts in short amounts of time.

    The strength of Kotlin's compiler allows for powerful language features.

    __________________________________

    What do you guys think? PM me if you're interested in the source behind it all.

    Edited by Dioxin
    Link to comment
    Share on other sites

    Interesting, so another Simba/something to make code simple for people who didnt take the time to learn. NO.

    Why should someone have to learn Java to write a script for RuneScape? We're all stoked that we don't have to write applications in assembly thanks to simplifications, so I don't see the big deal.

     

    If the simplicity of my style doesn't appeal to you, more complex styles could be created for developers who want more control over their scripts. The features of Kotlin allow you to do things you couldn't normally do in Java. It's a powerful language, which can be used by beginners and experts

    Edited by Dioxin
    Link to comment
    Share on other sites

    Why should someone have to learn Java to write a script for RuneScape? We're all stoked that we don't have to write applications in assembly thanks to simplifications, so I don't see the big deal.

     

    If the simplicity of my style doesn't appeal to you, more complex styles could be created for developers who want more control over their scripts. The features of Kotlin allow you to do things you couldn't normally do in Java. It's a powerful language, which can be used by beginners and experts

    I understand that this could help newer people to program these scripts, but i want you to take a quick look at "Simba" and look how far they made it, and other plain text programming languages. People need to learn WHAT is behind the code, not simple words, there are limitations to that.

    Link to comment
    Share on other sites

    I understand that this could help newer people to program these scripts, but i want you to take a quick look at "Simba" and look how far they made it, and other plain text programming languages. People need to learn WHAT is behind the code, not simple words, there are limitations to that.

    If you think about it, we don't know what is behind most of the things we do. Pressing the power button on your TV, you don't know exactly how the circuits works to make your TV turn on. You probably don't know the instructions of every CPU out there, thanks to higher leveled languages, or maybe things that are even closer, such as exactly how Java manages memory or optimizes code at runtime.

     

    Knowing what goes on behind the scenes isn't as important as you are making it seem. I'm not saying it has no benefits, I'm saying it's not needed. I mean, that's like saying all scripters need to learn how everything works within the bot client and the API it exposes. I'm sure plenty are grateful for not having to write their own webwalker, thanks to abstractions.

    Edited by Dioxin
    Link to comment
    Share on other sites

    I understand that this could help newer people to program these scripts, but i want you to take a quick look at "Simba" and look how far they made it, and other plain text programming languages. People need to learn WHAT is behind the code, not simple words, there are limitations to that.

    Pascal is disgusting. OP is just demonstrating how to write scripts in a different programming language. Demonizing creative ways to lower the barrier to script writing because "you should be able to write it in assembler first" is just ridiculous.

    Link to comment
    Share on other sites

    Pascal is disgusting. OP is just demonstrating how to write scripts in a different programming language. Demonizing creative ways to lower the barrier to script writing because "you should be able to write it in assembler first" is just ridiculous.

    I'm not saying this at all. You are insinuating that I am saying everyone should learn the MOST basic of the languages and work their way up. No, I'm saying that people who are looking to shortcut it out with just plain text language like that, as in. "MyPlayer.Use("Rune Axe").YewTree; Thats like saying a doctor can make someone feel better by merely saying what you have without giving you medicine. What happens when you need to write part of a script and they dont have the plain text version of it. Now your screwed. Limits are way more on this than it would be writing in java, where literally the only limitations is runescape itself. Im done arguing here. I don't expect this to go very far anyway.

    Link to comment
    Share on other sites

    I'm not saying this at all. You are insinuating that I am saying everyone should learn the MOST basic of the languages and work their way up. No, I'm saying that people who are looking to shortcut it out with just plain text language like that, as in. "MyPlayer.Use("Rune Axe").YewTree; Thats like saying a doctor can make someone feel better by merely saying what you have without giving you medicine. What happens when you need to write part of a script and they dont have the plain text version of it. Now your screwed. Limits are way more on this than it would be writing in java, where literally the only limitations is runescape itself. Im done arguing here. I don't expect this to go very far anyway.

    "interface" "class" "void" "if" "do" "while" "for", we write methods that express verbs such as execute(), run(), attack(), we write classes that represent nouns. The leap towards "plain text" languages has been going on for a while, and I wouldn't really say it's a bad thing

    Link to comment
    Share on other sites

    Again, done arguing, I just think its a slap to the face to the scripters/programmers who are in school and are taking/took the time to learn the languages.

    You don't think I've dedicated time learning? I don't feel it's a slap in the face at all. You are actually doing it right now (using a simplified version of something complex in order to carry out your goals).

     

    Scripters should focus primarily on RuneScape/botting aspects (antibans, quickest xp/profit, ect..) - it's what they do best, it's what they want to do. Programmers should focus making it easier for those scripters to do what they need. Think of it like a mechanic creates a stove for the chef to cook food. You could be both, but with this you wouldn't be forced to. Explicit stated it best: forcing a scripter to program prevents certain people (who don't care to make their own stand-alone app) from exposing their great ideas

    Edited by Dioxin
    Link to comment
    Share on other sites

     Share

    ×
    ×
    • Create New...

    Important Information

    We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.