Thread: Apollo

Page 34 of 34 FirstFirst ... 24323334
Results 331 to 340 of 340
  1. #331  
    Ich bin ein Sicherheitsexperte
    K2's Avatar
    Join Date
    Oct 2010
    Posts
    802
    Thanks given
    801
    Thanks received
    193
    Rep Power
    403
    Hey Major, can I get a quick TL;DR on what is driving the move to kotlin?
    Respectfully,

    Steve Kreitzer
    Engineer, Blackspoke
    [email protected]
    "Those who care will always make a way."
    Reply With Quote  
     

  2. #332  
    SERGEANT OF THE MASTER SERGEANTS MOST IMPORTANT PERSON OF EXTREME SERGEANTS TO THE MAX!

    cube's Avatar
    Join Date
    Jun 2007
    Posts
    8,871
    Thanks given
    1,854
    Thanks received
    4,745
    Rep Power
    5000
    Quote Originally Posted by K2 View Post
    Hey Major, can I get a quick TL;DR on what is driving the move to kotlin?
    https://github.com/apollo-rsps/apoll...ment-298901107

    Attached image

    Reply With Quote  
     

  3. Thankful user:


  4. #333  
    Ich bin ein Sicherheitsexperte
    K2's Avatar
    Join Date
    Oct 2010
    Posts
    802
    Thanks given
    801
    Thanks received
    193
    Rep Power
    403
    Quote Originally Posted by S Quare Quxx View Post
    Thanks! Exactly what I was looking for. May have some spare time to lend a hand.
    Respectfully,

    Steve Kreitzer
    Engineer, Blackspoke
    [email protected]
    "Those who care will always make a way."
    Reply With Quote  
     

  5. #334  
    🍥🍥🍥


    Join Date
    Dec 2008
    Posts
    1,702
    Thanks given
    664
    Thanks received
    293
    Rep Power
    621
    the kotlin branch is very nice!
    Reply With Quote  
     

  6. #335  


    Major's Avatar
    Join Date
    Jan 2011
    Posts
    2,997
    Thanks given
    1,293
    Thanks received
    3,556
    Rep Power
    5000
    update (asynchronous actions via coroutines) https://github.com/apollo-rsps/apoll...ment-330641310
    Reply With Quote  
     

  7. #336  
    Registered Member
    Tamatea's Avatar
    Join Date
    Aug 2010
    Posts
    1,317
    Thanks given
    401
    Thanks received
    357
    Rep Power
    2457
    Quote Originally Posted by Major View Post
    update (asynchronous actions via coroutines) https://github.com/apollo-rsps/apoll...ment-330641310
    Very much inspired and excited watching the development of this.
    Spoiler for sig too large:


    Attached image
    Attached image
    Reply With Quote  
     

  8. #337  


    Major's Avatar
    Join Date
    Jan 2011
    Posts
    2,997
    Thanks given
    1,293
    Thanks received
    3,556
    Rep Power
    5000
    Wrote a shop DSL, in kotlin:

    Code:
    shop("Aubury's Rune Shop.") {
        operated by "Aubury"
    
        category("runes") {
            sell(5000) of {
                -"Earth"
                -"Water"
                -"Fire"
                -"Air"
                -"Mind"
                -"Body"
            }
    
            sell(250) of {
                -"Chaos"
                -"Death"
            }
        }
    }
    
    shop("Lowe's Archery Emporium.") {
        operated by "Lowe"
    
        category("arrows") {
            sell(2000) of "Bronze"
            sell(1500) of "Iron"
            sell(1000) of "Steel"
            sell(800) of "Mithril"
            sell(600) of "Adamant"
        }
    
        category("normal weapons", affix = nothing) {
            sell(4) of "Shortbow"
            sell(4) of "Longbow"
            sell(2) of "Crossbow"
        }
    
        category("shortbows") {
            sell(3) of "Oak"
            sell(2) of "Willow"
            sell(1) of "Maple"
        }
    
        category("longbows") {
            sell(3) of "Oak"
            sell(2) of "Willow"
            sell(1) of "Maple"
        }
    }
    
    shop("Horvik's Armour Shop.") {
        operated by "Horvik"
    
        category("chainbody") {
            sell(5) of "Bronze"
            sell(3) of "Iron"
            sell(3) of "Steel"
            sell(1) of "Mithril"
        }
    
        category("platebody") {
            sell(3) of "Bronze"
    
            sell(1) of {
                -"Iron"
                -"Steel"
                -"Black"
                -"Mithril"
            }
        }
    
        sell(1) of {
            -"Iron platelegs"
            -"Studded body"
            -"Studded chaps"
        }
    }
    
    shop("Thessalia's Fine Clothes.") {
        operated by "Thessalia"
    
        category("apron") {
            sell(3) of "White"
            sell(1) of "Brown"
        }
    
        category("leather", affix = prefix) {
            sell(12) of "Body"
            sell(10) of "Gloves"
            sell(10) of "Boots"
        }
    
        category("skirt") {
            sell(5) of "Pink"
            sell(3) of "Black"
            sell(2) of "Blue"
        }
    
        sell(4) of "Cape"
        sell(5) of "Silk"
    
        sell(3) of {
            -"Priest gown"(428)
            -"Priest gown"(426)
        }
    }
    
    shop("Varrock General Store.") {
        operated by "Shopkeeper"(522) and "Shop assistant"(523)
    
        sell(5) of "Pot"
        sell(2) of "Jug"
        sell(2) of "Shears"
        sell(3) of "Bucket"
        sell(2) of "Bowl"
        sell(2) of "Cake tin"
        sell(2) of "Tinderbox"
        sell(2) of "Chisel"
        sell(5) of "Hammer"
        sell(5) of "Newcomer map"
    }
    
    shop("Varrock Swordshop.") {
        operated by "Shopkeeper"(551) and "Shop assistant"(552)
    
        category("swords") {
            sell(5) of "Bronze"
            sell(4) of "Iron"
            sell(4) of "Steel"
            sell(3) of "Black"
            sell(3) of "Mithril"
            sell(2) of "Adamant"
        }
    
        category("longswords") {
            sell(4) of "Bronze"
            sell(3) of "Iron"
            sell(3) of "Steel"
            sell(2) of "Black"
            sell(2) of "Mithril"
            sell(1) of "Adamant"
        }
    
        category("daggers") {
            sell(10) of "Bronze"
            sell(6) of "Iron"
            sell(5) of "Steel"
            sell(4) of "Black"
            sell(3) of "Mithril"
            sell(2) of "Adamant"
        }
    }
    
    shop("Zaff's Superior Staffs!") {
        operated by "Zaff"
    
        category("staves", affix = nothing) {
            sell(5) of {
                -"Battlestaff"
                -"Staff"
                -"Magic staff"
            }
    
            sell(2) of {
                -"Staff of air"
                -"Staff of water"
                -"Staff of earth"
                -"Staff of fire"
            }
        }
    }
    Reply With Quote  
     

  9. Thankful users:


  10. #338  


    Major's Avatar
    Join Date
    Jan 2011
    Posts
    2,997
    Thanks given
    1,293
    Thanks received
    3,556
    Rep Power
    5000
    As part of our move to Kotlin we have a bunch of easy issues over on Github. If you'd like to get involved in development you can also join our slack (link's in the github readme) - we'll be happy to mentor/assist anyone working on issues.

    The two ones we're most interested in closing would be:
    Reply With Quote  
     

  11. Thankful user:


  12. #339  
    Blurite

    Corey's Avatar
    Join Date
    Feb 2012
    Age
    26
    Posts
    1,491
    Thanks given
    1,245
    Thanks received
    1,729
    Rep Power
    5000
    Quote Originally Posted by Major View Post
    Wrote a shop DSL, in kotlin:

    Code:
    shop("Aubury's Rune Shop.") {
        operated by "Aubury"
    
        category("runes") {
            sell(5000) of {
                -"Earth"
                -"Water"
                -"Fire"
                -"Air"
                -"Mind"
                -"Body"
            }
    
            sell(250) of {
                -"Chaos"
                -"Death"
            }
        }
    }
    
    shop("Lowe's Archery Emporium.") {
        operated by "Lowe"
    
        category("arrows") {
            sell(2000) of "Bronze"
            sell(1500) of "Iron"
            sell(1000) of "Steel"
            sell(800) of "Mithril"
            sell(600) of "Adamant"
        }
    
        category("normal weapons", affix = nothing) {
            sell(4) of "Shortbow"
            sell(4) of "Longbow"
            sell(2) of "Crossbow"
        }
    
        category("shortbows") {
            sell(3) of "Oak"
            sell(2) of "Willow"
            sell(1) of "Maple"
        }
    
        category("longbows") {
            sell(3) of "Oak"
            sell(2) of "Willow"
            sell(1) of "Maple"
        }
    }
    
    shop("Horvik's Armour Shop.") {
        operated by "Horvik"
    
        category("chainbody") {
            sell(5) of "Bronze"
            sell(3) of "Iron"
            sell(3) of "Steel"
            sell(1) of "Mithril"
        }
    
        category("platebody") {
            sell(3) of "Bronze"
    
            sell(1) of {
                -"Iron"
                -"Steel"
                -"Black"
                -"Mithril"
            }
        }
    
        sell(1) of {
            -"Iron platelegs"
            -"Studded body"
            -"Studded chaps"
        }
    }
    
    shop("Thessalia's Fine Clothes.") {
        operated by "Thessalia"
    
        category("apron") {
            sell(3) of "White"
            sell(1) of "Brown"
        }
    
        category("leather", affix = prefix) {
            sell(12) of "Body"
            sell(10) of "Gloves"
            sell(10) of "Boots"
        }
    
        category("skirt") {
            sell(5) of "Pink"
            sell(3) of "Black"
            sell(2) of "Blue"
        }
    
        sell(4) of "Cape"
        sell(5) of "Silk"
    
        sell(3) of {
            -"Priest gown"(428)
            -"Priest gown"(426)
        }
    }
    
    shop("Varrock General Store.") {
        operated by "Shopkeeper"(522) and "Shop assistant"(523)
    
        sell(5) of "Pot"
        sell(2) of "Jug"
        sell(2) of "Shears"
        sell(3) of "Bucket"
        sell(2) of "Bowl"
        sell(2) of "Cake tin"
        sell(2) of "Tinderbox"
        sell(2) of "Chisel"
        sell(5) of "Hammer"
        sell(5) of "Newcomer map"
    }
    
    shop("Varrock Swordshop.") {
        operated by "Shopkeeper"(551) and "Shop assistant"(552)
    
        category("swords") {
            sell(5) of "Bronze"
            sell(4) of "Iron"
            sell(4) of "Steel"
            sell(3) of "Black"
            sell(3) of "Mithril"
            sell(2) of "Adamant"
        }
    
        category("longswords") {
            sell(4) of "Bronze"
            sell(3) of "Iron"
            sell(3) of "Steel"
            sell(2) of "Black"
            sell(2) of "Mithril"
            sell(1) of "Adamant"
        }
    
        category("daggers") {
            sell(10) of "Bronze"
            sell(6) of "Iron"
            sell(5) of "Steel"
            sell(4) of "Black"
            sell(3) of "Mithril"
            sell(2) of "Adamant"
        }
    }
    
    shop("Zaff's Superior Staffs!") {
        operated by "Zaff"
    
        category("staves", affix = nothing) {
            sell(5) of {
                -"Battlestaff"
                -"Staff"
                -"Magic staff"
            }
    
            sell(2) of {
                -"Staff of air"
                -"Staff of water"
                -"Staff of earth"
                -"Staff of fire"
            }
        }
    }
    Only just seen this, looks hot as fuck.
    I may try and find time to contribute.
    Attached image
    Reply With Quote  
     

  13. #340  


    Major's Avatar
    Join Date
    Jan 2011
    Posts
    2,997
    Thanks given
    1,293
    Thanks received
    3,556
    Rep Power
    5000
    Sneak peak at what the dialogue plugin looks like when ported to kotlin:

    Code:
    conversation("Runescape Guide tutorial") {
    
        npc dialogue "Greetings" `for` "Runescape Guide" { player ->
            animation { calm }
    
            text {
                if (player.tutorial_island_progress == TutorialIsland.not_started) {
                    -"""
                        Greetings! I see you are a new arrival to this land. My job is to welcome all new
                        visitors. So welcome!
                     """
                    player.tutorial_island_progress = TutorialIsland.talk_to_people
                } else {
                    -"Welcome back."
                }
    
                -"""
                    You have already learned the first thing you need to succeed in this world: talking to people!
    
                    You will find many inhabitants of this world have useful things to say to you. By clicking on them
                    with your mouse you can talk to them.
    
                    I would also suggest reading through some of the supporting information on the website. There you can
                    find maps, a bestiary, and much more.
                 """
            }
    
            on `continue` { "To continue" }
        }
    
        npc dialogue "To continue" `for` "Runescape Guide" { player ->
            animation { calm }
    
            text {
                -"""
                    To continue the tutorial go through that door over there, and speak to your first instructor.
                 """
            }
    
            on close {
                if (player.tutorial_island_progress < TutorialIsland.runescape_guide_finished) {
                    TutorialIsland.sendInstruction(player)
                    player.send(RunescapeGuide.REMOVE_NPC_HINT)
    
                    player.send(RunescapeGuide.DOOR_HINT)
                    player.tutorial_island_progress = TutorialIsland.runescape_guide_finished
                }
            }
        }
    
        statement dialogue "Talk to guide" {
            text {
                -"""
                    You need to talk to the Runescape Guide before you are allowed to proceed through this door.
                 """
            }
    
            on close {
                TutorialIsland.sendInstruction(player)
            }
        }
    
    }
    At a later date we'll be using kotlin's coroutines in the dialogue plugin so various actions block (like waiting for the player to 'click here to continue', or select an option), so they'll be even better after that.

    edit: decided this was shit so itll be a lot better eventually
    Last edited by Major; 07-16-2019 at 08:29 PM.
    Reply With Quote  
     

  14. Thankful users:


Page 34 of 34 FirstFirst ... 24323334

Thread Information
Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)


User Tag List

Similar Threads

  1. Apollo
    By Graham in forum Projects
    Replies: 658
    Last Post: 10-03-2011, 06:56 AM
  2. Apollo's Winged Sandals!
    By discipl3 in forum Models
    Replies: 9
    Last Post: 10-05-2009, 01:05 AM
  3. [530]: Apollo Framework - Project Development Thread
    By blakeman8192 in forum Projects
    Replies: 122
    Last Post: 02-27-2009, 01:41 AM
  4. Apollo Item Image DB
    By Zachera in forum Tools
    Replies: 2
    Last Post: 06-18-2008, 04:06 PM
  5. Replies: 5
    Last Post: 10-02-2007, 09:06 PM
Posting Permissions
  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •