Results 1 to 13 of 13

Thread: Opinions about a plugin I'm considering

  1. #1
    Join Date
    Feb 2009
    Location
    Nebraska
    Posts
    68
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default Opinions about a plugin I'm considering

    First, hi, I'm a noob, nice to meet you all.

    I've been playing RS on-and-off for a few months and recently loaded up SCAR to see if it was interesting. Turns out it is, so I'm thinking about writing some tools for it.

    I'm not really interested in leveling up characters quickly or amassing millions of coins, instead I'm interested in making my time playing the game less tedious. So my interest in autoing is in making a utility that can do certain tasks for me, but not necessarily completely unattended.

    I'd like to be able to, for example, talk to another player while I'm running a mining, and to tell the script to pause while I perform some interaction. There is some capability for this already, but in the few scripts I've used it's a little hit-and-miss.

    I'd also like to have a sort of 'runner' tool. Say I'm down by Lumbridge Swamp and I want to go to the GE, it's tedious to walk there, so I'd like to be able to easily instruct a tool to walk there for me, without having to do any further setup (I know, there are other ways to get around, this is just an example).

    I'm curious if others would be interested in such a tool, and if something similar already exists. I have some tentative ideas for a plugin, but I don't want to reinvent this if someone already has something going.

    edit: Forgot to mention, the plugin would mostly be focused on providing a few support functions for SRL-based scripts that would be computationally prohibitive to do in script.

  2. #2
    Join Date
    Oct 2007
    Location
    #srl
    Posts
    6,102
    Mentioned
    39 Post(s)
    Quoted
    62 Post(s)

    Default

    Quote Originally Posted by Grippy View Post



    I'd also like to have a sort of 'runner' tool. Say I'm down by Lumbridge Swamp and I want to go to the GE, it's tedious to walk there, so I'd like to be able to easily instruct a tool to walk there for me, without having to do any further setup (I know, there are other ways to get around, this is just an example).

    I'm curious if others would be interested in such a tool, and if something similar already exists. I have some tentative ideas for a plugin, but I don't want to reinvent this if someone already has something going.
    NiCbaZ and MySelf have both already made this using Reflection.

  3. #3
    Join Date
    Sep 2006
    Location
    New Jersey, USA
    Posts
    5,347
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    Good idea, but it's really easy to do with reflection. Whenever I need such a tool for relocating an army, I just code it from scratch; that's how easy it is.

    A good procedure with a list of common places and good walking system would be appreciated by many, though. If its coded well, it could become very popular.
    Interested in C# and Electrical Engineering? This might interest you.

  4. #4
    Join Date
    Feb 2009
    Location
    Nebraska
    Posts
    68
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by N C D S View Post
    NiCbaZ and MySelf have both already made this using Reflection.
    A link to more information would be appreciated. Unfortunately I'm not even a junior yet, so I perhaps will have to wait. I do look forward to checking out your work.

    I should also mention that I prefer to do this without using Reflection. I have nothing against Reflection, but I like the idea of the challenge of doing the 'heavy lifting' completely through visual methods. I might use Reflection for automatically detecting failure, but I'd like to avoid it for the actual work.

    I want to avoid Reflection mostly as a personal challenge. The project is supposed to be fun and imposing this restriction helps to keep me thinking in different ways. A bit like the field of constrained writing, sometimes it's just more interesting to not use the most efficient tool

  5. #5
    Join Date
    Feb 2009
    Location
    Nebraska
    Posts
    68
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by Smartzkid View Post
    A good procedure with a list of common places and good walking system would be appreciated by many, though. If its coded well, it could become very popular.
    That is part of the plan. I'd like to include a sort of map of various efficient ways to get from place to place as a network of nodes. Each interconnect would have a number of metrics included with it, such as travel time, resources required and cost. This would allow the tool to be useful for new characters as well as those that have greater access to travel options.

    For example, the low cost path from Lumbridge to the GE for a low level player would most likely simply be a path consisting of a number of 'walk' nodes along a direct path (not necessarily the road). For a member account with a little more experience it might be faster to make a dugout to boat half way, then walk the rest. A member with sufficient agility might boat all the way to the tunnel shortcut northwest of the GE.

    The resources metric on a node interconnect would specify what the character would need to use the route. A basic walking route might require no resources (or might be restricted to a certain level, to avoid highwaymen for example), or it might require an axe and a woodcutting level of 12, or perhaps it requires a Skull sceptre and has an associated cost of one Skull sceptre charge.

    Such a system of intelligent auto-walking would remove a lot of the pain involved in doing various tasks, without completely removing the player from the game, as with, for example, a power-leveler script. It would make doing some quests more fun, as the tedium of running around trying to figure something out (if doing the quest without a walk-through as a guide) would be less of an issue.

    (BTW, sorry about the multiple posts, I'm leveling up my post count )

  6. #6
    Join Date
    Sep 2008
    Location
    Chicago
    Posts
    224
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    That's a good idea...and i've thought about makeing something like that before...but it just seems like it would be too much work.

    Mabye it would be possible with reflection, but walking without reflection is pretty hard and I just don't think it would be possible.

  7. #7
    Join Date
    Feb 2009
    Location
    Nebraska
    Posts
    68
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by Heysus View Post
    Mabye it would be possible with reflection, but walking without reflection is pretty hard and I just don't think it would be possible.
    I have an idea about that which, if it works, should let me walk anywhere nearly as reliably as with Reflection, but without touching the client software. It'll take some work and won't be script-based (the hard parts be in the plugin), but only because it would be too slow, in principle you could do it purely in script.

  8. #8
    Join Date
    Sep 2006
    Location
    New Jersey, USA
    Posts
    5,347
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    http://www.villavu.com/forum/showthr...?t=7179?t=8272

    A very good read, I think you will find that.
    Interested in C# and Electrical Engineering? This might interest you.

  9. #9
    Join Date
    Sep 2008
    Location
    Chicago
    Posts
    224
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by Smartzkid View Post
    http://www.villavu.com/forum/showthr...?t=7179?t=8272

    A very good read, I think you will find that.
    In the members section

  10. #10
    Join Date
    Feb 2009
    Location
    Nebraska
    Posts
    68
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Quote Originally Posted by Smartzkid View Post
    http://www.villavu.com/forum/showthr...?t=7179?t=8272

    A very good read, I think you will find that.
    Would love to review it, alas, I'm only a Jr. for now.
    Guess I could apply, I imagine I can scrape together a reasonable script.

  11. #11
    Join Date
    Sep 2006
    Location
    New Jersey, USA
    Posts
    5,347
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    Copied with permission (SRL Member News: Project Preview- WebWalker - 03-17-2007):

    Quote Originally Posted by Boreas View Post
    I wasn't planning on making this thread until I had more of it done, but it's my 2000th post, so I wanted to post more than 'you forgot setupsrl' hehe.

    At the moment (March 17) we (Avaphi and I) don't have as much done as I would like to have had before making an alpha release, so consider this a preview. I am also posting this now because this you will be able to add to this project, and this way you can be thinking/working on your additions as soon as possible.

    Anyway, a few of you know about WebWalker, but for those who don't, here is a short explanation. WebWalker will be a web of 'stations' spread out across the map, with walking paths joining them together.

    Each station will have a detector function, which will return true when you are around that station. The paths will be walker functions, that are shorter and easier to write than city to city walkers. They can contain their own internal failsafe checkpoints, and of course have the station detector for the destination, so you will know when you get there.

    This web design will allow you to wander around until the script recognizes that you are at a station, and then you will be able to walk to any other station. When this fails, there is always teleport to lumby, which of course will be a station. This design also allows (when there are enough stations and paths) for more than one route from point A to point B. Also, this design allows for expansion, as more stations and paths are added, the better it is.

    For now, please keep this members only. Contributing to this project is members only, because most people that can write a walker can get into members. Using WebWalker may or may not be members only, I will decide that when there is enough done that it can be used.

    If you are interested in contributing, then read on.

    Like SRL, you will able to add what you want to your copy, but I will only post versions with working functions. I will think about a way for you to submit contributions so that they can be voted on or something.

    The main functions will be

    function RoutePicker (StartStation, EndStation:integer):array of integer;
    function WalkRoute(Route:array of integer) : boolean;
    function WhereAmI: integer;

    Then each path will have its own function (returning a boolean if successful), and each station will have its own station detection function. The above 3 functions will combine them.

    Each station has a unique number, which I will assign to it once you have submitted it. They will also have an x,y relative to lumbridge tele point, measured in pixels on a jpeg.This can be approximate, RoutePicker just needs it to know it's going in the right direction. They will also each have a unique name, and I'll write function NameToNumber(Name:string):integer to make using RoutePicker easier. BTW, you don't have to use RoutePicker, you can manually give WalkRoute your own list of stations.

    IMPORTANT: Each station detector function will start with a FindSymbol. If want to go to a place with out a symbol, you will need to go the nearest station with WebWalker, and then go the rest of the way on your own. You can write detectors for places without symbols, but these will be checkpoints/failsafes within paths. This is because WhereAmI will work by detecting whether there is a symbol on the minimap, any symbol. Then it will determine which symbol, and look through the appropriate station detectors, which will be arrange in a case by symbol.

    When writing station detectors, start with a symbol, and then get more specific, such as there are 2 doors nearby. Use stacked ifs with result:=false breaks. So as soon as it finds a condition that is not true, it will result false, and only result true if it all conditions result true. This step design will allow station detectors to be combined efficiently.
    For example, imagine there were only 3 churn symbols
    Station 1 has churn symbol, water symbol, and 2 doors
    Station 2 has churn symbol, water symbol, and no doors
    Station 3 has churn symbol, no water symbol
    All others have no churn symbols

    First the churn symbol would be determined, so WhereAmI would look at the branch with those 3. Then, it would see the water symbol and go down another level in the 'tree'. Then it would count the doors. If this is confusing, basically what I am saying is check one condition after another, going from simple to complicated to narrow it down.

    (Hint: when writing detectors that start with a symbol that there only a few of (churn is a good example, tree is a bad example) all you have to do is eliminate the others.)

    When writing paths, just make sure its a boolean function that returns false if it gets lost, and only returns true if the station detector of the destination returns true. Even though these paths will be shorter than city to city walkers, you should still use as many failsafes and checkpoints a possible.

    Keep in mind that I will not add stations until they have at least one path to it from another known station. This means it will start from lumby and spread out. Also keep in mind that paths are one way, that is the path from station 1 to station 2 is a separate function to the one from station 2 to station 1.

    BTW, it would be nice if everything was autocolor. I'm working on ladder atm, door is done, road and dirt road is done, pretty sure water works.

    I will announce when the framework is finished, so don't feel rushed to complete paths and station detectors. As I said, I just wanted to give you notice so that you could think about it.

    Please feel free to ask any questions, as I probably haven't explained things fully.

    [/2000th post ]
    Interested in C# and Electrical Engineering? This might interest you.

  12. #12
    Join Date
    Feb 2009
    Location
    Nebraska
    Posts
    68
    Mentioned
    0 Post(s)
    Quoted
    0 Post(s)

    Default

    Thank you!

    Very nice. How's that project progressing?

    It is very similar to what I'm thinking, but I'm going outside SRL for some of the work (mostly because I want to play with a specific technique).

    There is substantial overlap in the walking paths portion of the two projects. I may be able to take advantage of some of that work. Has there been any discussion about the format for the data specifying the paths?

  13. #13
    Join Date
    Sep 2006
    Location
    New Jersey, USA
    Posts
    5,347
    Mentioned
    1 Post(s)
    Quoted
    3 Post(s)

    Default

    Sadly, it died not long after its creation. It did create some very interesting ideas, though.

    http://www.villavu.com/forum/showthr...?t=7680?t=8796
    http://www.villavu.com/forum/showthr...?t=4917?t=5744


    Boreas never released the actual code, as it seemingly was never completed. If you PM/MSN him, I'm sure he will give it to you if he still has it.
    Interested in C# and Electrical Engineering? This might interest you.

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. Your Opinions
    By Home in forum OSR Help
    Replies: 1
    Last Post: 12-01-2007, 06:23 PM
  2. In Need Of Opinions
    By cathering_ in forum OSR Help
    Replies: 9
    Last Post: 10-10-2007, 11:30 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
  •