SRL Archive - Senior News and General

This Group is Great!


HyperSecret

2008-10-24 14:51:20

I've just been reading through posts throughout the forums (have nothing to do at work) and I have just noticed that we here in SSRL are all very mature and appreciate everything that is here at SRL and full use what we have. I love that this group gets along and doesn't post bullshit about other people on this forum (that don't deserve it).

Keep it up!


P.S. I don't really know if people will reply to this but I just thought I would point it out that we really are the greatest of the SRL.

Markus

2008-10-24 14:58:29

Ofcourse we are, we are seniors :D I'd trust you all with my P Hats, oh shit dont have yet, uhm, Santas :)

Boreas

2008-10-24 21:51:09

Yes the group has exceeded my expectations. Indeed, keep it up!

Narcle

2008-10-24 21:54:58

Hells yeah. Glad SSRL is very selective. Keeps the group tight and in good nature. <3

Bobarkinator

2008-10-25 00:24:56

I'm glad we are being tight on letting people in, the bigger a place gets, the more chance for corruption.

The Claw

2008-10-25 01:22:55

Haha yeah its great. Lately theres been some really good content being posted, like the sudoku solver, the ge merchanter, etc. I reckon we should get more of this sort of stuff in here…how about an SSRL only pest controller or something? I havent played for ages but after exams (3 weeks) I'm planning to get back into scripting and rs again.

I was actually going to make another thread about this but may as well just post it here - what other good ways of single player training/money making are there now on members? Like sudoku, etc. Let's brainstorm some ideas for scripts lol

Narcle

2008-10-25 02:06:26

From: The Claw
Haha yeah its great. Lately theres been some really good content being posted, like the sudoku solver, the ge merchanter, etc. I reckon we should get more of this sort of stuff in here…how about an SSRL only pest controller or something? I havent played for ages but after exams (3 weeks) I'm planning to get back into scripting and rs again.

I was actually going to make another thread about this but may as well just post it here - what other good ways of single player training/money making are there now on members? Like sudoku, etc. Let's brainstorm some ideas for scripts lol


*Cough* My work on it is on hold atm, but its a full Pest Controller (does portals etc.) only problem, its reflection base so hard to do any further testing / development atm.

I know two magic ones that have been floating around. I'll explain these two:

1. Get 65 construction and make Camelot tabs, and other tabs (known but not widely done due too Con lvl.)

2. Must complete Lunar Diplomacy for Lunar spells. There is a spell called "Humidify" it fills all vials in your inventory with water. I heard you can make like 300k+ an hour.

This is also supposedly faster then Alching as you get a fish bowl (left click empty) and just cast and empty over and over. Its very fast if u time it right (so i've heard). Also you get 65 magic XP (same as alching) and with the Steam staff you only need 1 Astral rune per cast. [Astral runes are always cheaper then Natures; 2/3rds the price on average]

Skills:
This is my ultimate goal. As many know they have disabled the ability to Alch in Pest Control however, I hear they haven't done this with Humidify. So eventually I want to get the Pest Controller + Humidify in combination. Run in, get 50 points, run up a tower and Humidify. Also you could Humidify when every you have down time; waiting in boat etc.

So yeah keep those in mind, and keep them on the down-low.

The Claw

2008-10-25 03:26:12

Wow, thats a REALLY good idea. Do you still get cash from pest control? Would it offset the price of casting the spells while waiting for the round to finish? The problem with this though, is as soon as you start doing it people will notice, copy, and then it will get disabled..unless humidify doesnt have an animation? I assume it would though.

Markus

2008-10-25 05:00:18

Bolt enchanter anyone? ;)
Diamond bolts -> 200k xp/hour, and we can get cheap sudoku runes :D If you buy for low and sell for mid, it's also nice profit :)

n3ss3s

2008-10-25 05:20:23

Well I suppose we could make a PC script, we do have

  • Tiles
  • Objs
  • NPCs
  • Interfaces, they work, but haven't been officially released :)

Markus

2008-10-25 05:21:09

How about we make a colour PC script? Really, how hard is it to walk to the portals and attack them i.e.?

The Claw

2008-10-25 05:25:36

We could, but personally I wouldnt want to spend hours scripting with colours, making sure theyre stable and all working, and then still risk my account getting lost or stuck somewhere, which is always a risk when developing traditional walking procedures…not on my main or any other members account, anyway.

Narcle

2008-10-25 06:38:51

Well my PC script has most of the stuff needed. I just need to make a main loop and record wins/loses etc.

For Humidify you see a rain cloud over your head… In the boat would be the only time they'd see it (wait boat). After words u'd be up on a tower or something out of sight.

The Claw

2008-10-25 08:00:27

Alright, cool. So now we have a good money makers (sudoku and GE merchanter) and hopefully in the future a good combat + mage trainer. What else? Red chinchompas? Fawki's master theiver updated? Farming scripts?

EvilChicken!

2008-10-25 08:32:04

Just reading through this thread proves how awesome SSRL is.

Thank you VERY much for allowing me to be a part of this, I appreciate it a huge lot.

Boreas

2008-10-25 11:40:23

Awhile back I was doing tabs (not cammy, only 53 construction), and with all the companies it was too hard to compete. But then again that was before GE. I didn't get far enough with the script to let it run without watching it, but I did arrange my house in a way that made it easy to find the butler. Let me know on MSN [email]boreas.srl@hotmail.com[/email] if you want a tour.

Are WFV still profitable?

Bolt enchanter sounds good. What GE functions do we have?

Here are my plans:
World 16 air crafter, with assisting, trading, and selling ess (to increase trade allowance)
Astral, ZMI, graahk nat, cosmic, crafters.
Summoning scripts to get up to graahk

Bobarkinator

2008-10-25 13:35:36

Do they still do the thing on World 16? I remember that's how I made my first 100k

Boreas

2008-10-25 13:39:16

Yea its a little different nowadays. Me too, I started my steel company using start up cash from air running.

pwnaz0r

2008-10-25 14:48:15

I was going to make summoning script. I think everyone here will agree that when members accounts are involved, you want to keep it as safe as possible, and to do that, I think reflection is a very good way. I would script it, SMART down = stopping that though :\

Smartzkid

2008-10-25 14:58:44

We need to make a separate GE include so we can easily buy/sell

pwnaz0r

2008-10-25 15:07:48

sounds good I can get started on that if anyone wants.

Narcle

2008-10-25 16:29:55

There's the 75k farming XP thing. Its more of a script challenge really. pwnz0r already mentioned it. The Sorcerers Garden, another project to partake at some time. I'd love to tackle that one, but would have to do a thieving script/update to get my thieving to 68.

There is also a possible way to auto slayer, but it would be a arduous script to make, as well as the prep for the account.

munk

2008-10-25 18:30:58

From: Smartzkid
We need to make a separate GE include so we can easily buy/sell


I have one almost finished :D

Smartzkid

2008-10-25 18:47:45

Epic win :)

pwnaz0r

2008-10-25 19:28:43

EDIT: Code moved here - http://www.villavu.com/forum/showthread.php?t=37272?

There's some I finished up today. Sorry munk didn't see your post before I made it all :p.

Anyways, it works nicely. Give it a try, I have to write more for buying and such, and I couldn't get my TPrice type to work, but that's quite alright :)

EDIT: Ha updated all the writeln's we used to find errors and I forgot to mention Boreas helped alot too (I always hate it when people don't credit properly :P).

EDIT EDIT: will post on SRL Development thread.

n3ss3s

2008-10-26 08:34:27

Somebody who is fucking genius, translate RSBot's interface explorer for SCAR so we can actually use them since we have the 2D functions now >.>

Bobarkinator

2008-10-26 14:16:28

From: n3ss3s
Somebody who is fucking genius, translate RSBot's interface explorer for SCAR so we can actually use them since we have the 2D functions now >.>


You will basically have to write you own because you aren't going to be able to convert that to scar :p

Narcle

2008-10-26 17:13:31

From: n3ss3s
Somebody who is fucking genius, translate RSBot's interface explorer for SCAR so we can actually use them since we have the 2D functions now >.>


Are you trying? I haven't even looked yet.

n3ss3s

2008-10-28 02:24:56

Are you trying?



import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.util.List;

import javax.swing.*;
import javax.swing.event.*;

import rsbot.table.*;

import com.speljohan.rsbot.bot.Bot;
import com.speljohan.rsbot.event.listeners.PaintListener;
import com.speljohan.rsbot.script.Script;
import com.speljohan.rsbot.script.wrappers.*;

public class InterfaceExplorer extends Script {
private HighlightInterface highlightInterface;
private JTreeTable table;
private InterfaceModel interfaceModel;

public InterfaceExplorer() {
LOG_SRC = "Interface Explr";
}

public String getAuthor() {
return "BAsh";
}

public String getName() {
return "Interface Explorer";
}

public double getVersion() {
return 2;
}

public String getScriptDescription() {
return "<html>\n"
+ "<head></head>\n"
+ "<body>\n"
+ "<center>"
+ "<h2>"
+ getName()
+ "</h2>"
+ "</center>\n"
+ "<p\n"
+ "<b>Author:</b> "
+ getAuthor()
+ "<p>\n"
+ "<b>Version:</b> "
+ getVersion()
+ "<p>\n"
+ "This script starts a window that allows the interfaces to be examined.\n<p>"
+ "The main tree of numbers are indexes for the parent interface: "
+ "RSInterface.getInterface([main]) <br>The subtrees are indexes of the child interfaces: "
+ "RSInterface.getInterface([main]).getChild([child]) or "
+ "RSInterface.getChildInterface([main],[child])\n<p>"
+ "A box is drawn on the main screen indicating where the interface is."
+ "</body>\n" + "</html>";
}

public String getScriptCategory() {
return "Development";
}

public int loop() {
// moveMouse(random(0, 765),random(0, 503));
// return random(1000,1500);
return -1;
}

public void cleanup() {
Bot.getEventManager().removeListener(PaintListener.class,
highlightInterface);
}

private class HighlightInterface implements ListSelectionListener,
PaintListener {
private Object select;

public void valueChanged(ListSelectionEvent e) {
int selected = table.getSelectedRow();
if (selected != -1) {
select = table.getTree().getPathForRow(selected)
.getLastPathComponent();
} else {
select = null;
}
}

public void onRepaint(Graphics render) {
if (select instanceof RSInterfaceChild) {
RSInterfaceChild inter = (RSInterfaceChild) select;
if (inter.isValid()) {
Rectangle rect = inter.getArea();
render.setColor(Color.ORANGE);
render.drawRect(rect.x, rect.y, rect.width, rect.height);
}
}
}
}

public boolean onStart(Map<String, String> map) {
final JFrame frame = new JFrame(
"Interface Explorer by BAsh LOL AFTERMATH WAS HERE OMGGGGGG GUN00000T");
interfaceModel = new InterfaceModel();
highlightInterface = new HighlightInterface();
Bot.getEventManager().addListener(PaintListener.class,
highlightInterface);
JButton button = new JButton("Update");
JButton search = new JButton("Search...");
JButton removeFilters = new JButton("Remove Filters");

JPanel buttonPanel = new JPanel(new FlowLayout());
buttonPanel.add(button);
buttonPanel.add(search);
buttonPanel.add(removeFilters);

final ActionListener al = new ActionListener() {
JScrollPane scroll;

public void actionPerformed(ActionEvent e) {
interfaceModel.load();
if (scroll != null) {
frame.remove(scroll);
}
table = new JTreeTable(interfaceModel);
table.getSelectionModel().addListSelectionListener(
highlightInterface);
table.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
scroll = new JScrollPane(table);
frame.add(scroll, BorderLayout.CENTER);
frame.pack();
}
};

removeFilters.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
interfaceModel.search = "";
al.actionPerformed(null);
}
});

search.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String search = JOptionPane.showInputDialog(frame,
"Whaddaya wanna search for? :3",
"Quest for the holy grail!",
JOptionPane.QUESTION_MESSAGE);
if (search == null) {
interfaceModel.search = "";
} else {
interfaceModel.search = search;
}
al.actionPerformed(null);
}
});

al.actionPerformed(null);
button.addActionListener(al);
frame.add(buttonPanel, BorderLayout.SOUTH);

frame.setResizable(true);
frame.pack();
frame.setVisible(true);
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
cleanup();
}
});
return true;
}

private static class InterfaceModel extends AbstractTreeTableModel {
String search = "";

private String[] cNames = new String[] { "Index", "Action", "Type",
"ModelID", "Text", "Actions", "Inventory" };

private List<RSInterface> inters = new ArrayList<RSInterface>();

public InterfaceModel() {
super(null);
root = this;
}

public void load() {
inters.clear();
RSInterface[] array = RSInterface.getAllInterfaces();
for (RSInterface inter : array) {
RSInterfaceChild[] children = inter.getChildren();
for (RSInterfaceChild child : children) {
if (child.getText().toLowerCase().contains(
search.toLowerCase())) {
;
inters.add(inter);
break;
}
}
}
}

public int getColumnCount() {
return cNames.length;
}

public String getColumnName(int column) {
return cNames[column];
}

public Object getValueAt(Object node, int column) {
if (node instanceof InterfaceModel) {
return column == 0 ? "Root" : "";
}
if (node instanceof RSInterface) {
RSInterface n = (RSInterface) node;
return column == 0 ? "[" + n.getIndex() + "]" : "";
}
if (node instanceof RSInterfaceChild) {
RSInterfaceChild n = (RSInterfaceChild) node;
switch (column) {
case 0:
return "[" + n.getIndex() + "]";
case 1:
return n.getActionType();
case 2:
return n.getType();
case 3:
return n.getModelID();
case 4:
return n.getText();
case 5:
return Arrays.toString(n.getActions());
case 6:
return Arrays.toString(n.getInventory());
}
}
return null;
}

public Object getChild(Object node, int index) {
if (node instanceof InterfaceModel) {
return inters.get(index);
}
if (node instanceof RSInterface) {
RSInterface n = (RSInterface) node;
return n.getChild(index);
}
return null;
}

public int getChildCount(Object node) {
if (node instanceof InterfaceModel) {
return inters.size();
}
if (node instanceof RSInterface) {
RSInterface n = (RSInterface) node;
return n.getChildCount();
}
return 0;
}

}
}


No.


Although if you want to maximize the ease of ripping that, you could like reverse KYAB, make SCAR send the shit to the GUI program.