SRL Archive - Outdated / Broken

[R]X-Fighter[Pro] - AIO combat


Flight

2011-09-27 12:14:12


SRL Stats Page

Description:
X-Fighter; your combat aid for anything, anywhere, any time. Max your combat stats, gain your profit from drops, and spend more time outdoors! :spongebob:


Features:
  • AIO combat with user-defined NPCs (by names)
  • Special-attack handling (more details below)
  • Any-item looting
  • Eats any food
  • Summoning support [Bunyip, Fire/Ice/Moss Titan, Unicorn Stallion] (More details below)
  • Fast target recognition
  • Out of food failsafes to keep you safe
  • Solid break system (By Echo_) with cool graphics!
  • World switching option (Switch worlds after every break)
  • SRL Stats
  • Updated On-Screen progress report

Special attacks:
  • When you've reached enough special energy to use a special attack (based on the weapon, the script will already know which weapon needs how much) your primary weapon will be replaced by your "SpecWeapon" and special attacks activated, then shortly after your weapons are switched back to primary weapons/shields.
  • If you're using a primary weapon + shield and a 2-handed special weapon the script will re-equip both after performing a special attack

Familiars:
  • When your health drops below "HealAt" (%) the script will cast the healing scroll (based on your familiar) until you've reached 'HealTo' (%)
  • If you don't have a familiar summoned the script will summon a new familiar and then proceed to heal you until you've reached you've reached 'HealTo'
  • If you've run out of Summon points and need a new familiar summoned for healing, AND you have "UseSummonPotion" enabled, the script will take a sip of your Summoning Potion, summon another familiar, and then proceed to heal you.
  • If you've run out of pouches/summon potions, you'll eat the user-defined food, if you've run out of everything including food, the script will safely log you out and shut down.
  • If your familiar doesn't have enough Special Points to perform a heal, you'll eat food instead.

Ok, I think that covers it all… Anyone who's reading this obviously has enough knowledge of scripts that I won't have to explain any other settings in detail, they're all well-explained within the script already. If you've any problems or come across any errors please let me know. Above all, enjoy it, and post your progress reports here. :)

~Cheerz, Flight

Simtoon

2011-09-27 12:18:48

Bones to Peaches?

Flight

2011-09-27 12:22:26

That's a thought, but it might conflict alot with the user's looting settings.

Jakkle

2011-09-27 12:58:25

Grate job flight, nice to see the pro version here :) I ain't doing any fighting atm but when I get round to getting fighting levs up, this is 100% what I'll be using.

I seen you said about you wanting people to make much more out of this and I was thinking of making a AIO slayer script. It's going to be a big project (huge infact).

I really want to make a slayer script that will check what task there is already or go to the selected slayer master to get one. Then go to where the things you need to slay are, bank if needs be and returns back to slaying. Then I would make it so it goes back to the selected slayer master to get a new task, when finished. Check the bank for what is needed, if not the right equipment in bank then buy from slayer master, go to creatures to slay.
Obviously at first it will be the low lev task master then I will move on to the next. I have been thinking about this for a long time and now seeing this grate fighter to use as a base for it is going to make it alot easier to do.

This is a dream of mine I've wanted to do ever since I came back to this site and thought it was quite impossible before. With reflections improvements tho and even more to come I think it will now be much more possible to do what I've wanted to do.

Edit: Oh and grats on this release and 20 scripts :D :thumbsup:

Camaro'

2011-09-27 14:49:41

I plan on using this for 99 strength.

Coh3n

2011-09-27 15:31:38

Is there any kind of banking? Or does it just go until you're out of food?

Looks nice, though. :)

Awkwardsaw

2011-09-27 17:07:08

potions por favor :)

Flight

2011-09-27 20:43:03

@Coh3n:
Nah there's no banking, I don't see how that would work for an AIO fighter. That's what I was talking about earlier in the post, I'd like to see people make something specific out of this, the hard part is done. Yes, goes until you've run out of pouches, scrolls, and food.

@Awkwardsaw:
Yes potions will probably come later on, I've seen they're in request.

nickrules

2011-09-27 21:04:43

Can ID's be left blank for pickup?

Suggestions:
[INDENT]I'm running this on an f2p account, so it obviously won't have a special. But the script still switches to the weapons tab and moves the mouse where the bar should be. (I added " if SpecialWepName = '' then exit else " to the beginning of ActivateSpec)

Have a 'max dist' value for NPC dot clicking. The bot nearly got stuck right clicking the same passive NPC, but I was watching.

That having been said, check the NPCs name before clicking them. I'm going out on a limb and assuming that this is possible with reflection. Possibly make it a setting, so that those who don't need it won't waste those delicious MSs

[INDENT]edit: This problem only existed because the NPC it went to had the name of the NPC I was training on in it.[/INDENT][/INDENT]

Will add more if I find anything.

Flight

2011-09-27 21:23:06

From: nickrules
Can ID's be left blank for pickup?


I don't see why not.

From: nickrules

Suggestions:
[INDENT]I'm running this on an f2p account, so it obviously won't have a special. But the script still switches to the weapons tab and moves the mouse where the bar should be. (I added " if SpecialWepName = '' then exit else " to the beginning of ActivateSpec)


Or you could set "UseSpecials" to False, I figured that should have been obvious…

From: nickrules

Have a 'max dist' value for NPC dot clicking. The bot nearly got stuck right clicking the same passive NPC, but I was watching.


Go a little more in dept on that, what do you mean by passive NPC?

From: nickrules

That having been said, check the NPCs name before clicking them. I'm going out on a limb and assuming that this is possible with reflection. Possibly make it a setting, so that those who don't need it won't waste those delicious MSs


This is checked, look at the script…

if atTile(npcs[index].Tile, [npcs[index].Name], ['Attack'], npcs[index].Height/2, 5) then

The second and third parameter are both string arrays for uptext checking. Honestly, nickrules, these are questions I'd expect from the public scripts section from people who don't have enough knowledge to look through the script and see why it's done the way it is. I'm a bit disappointed they're coming from an SRL Member.

nickrules

2011-09-27 21:49:09

From: Flight
Honestly, nickrules, these are questions I'd expect from the public scripts section from people who don't have enough knowledge to look through the script and see why it's done the way it is. I'm a bit disappointed they're coming from an SRL Member.


First of all, I didn't ask to be put here. I was put here automagically for a mediocre include I made for MSI. Quite frankly, I'm as surprised and disappointed as you are. The bar has gotten lower…. to say the least. Don't get me wrong though, I'm not complaining that I'm a here, just surprised.

Second of all, I made the post, and looked into it, then looked into it again. I didn't find the latter problem for awhile after making the post (poor commenting coupled with the fact that I never code in reflection), and then I went on to fix it. There's no need to get your panties in a bunch over a simple error I made, and then corrected.

Coh3n

2011-09-28 00:46:41

From: Flight
@Coh3n:
Nah there's no banking, I don't see how that would work for an AIO fighter. That's what I was talking about earlier in the post, I'd like to see people make something specific out of this, the hard part is done. Yes, goes until you've run out of pouches, scrolls, and food.
Ah okay. If you were interested, you could add a system where users kind of create their own banking part. I mean, you'd have to have the banking methods (open bank, withdraw, etc.), but I'm sure there's a way for the user to customize where to bank. May be a lot harder than it sounds though.

From: Flight
Honestly, nickrules, these are questions I'd expect from the public scripts section from people who don't have enough knowledge to look through the script and see why it's done the way it is. I'm a bit disappointed they're coming from an SRL Member.
Sometimes it's tough to read other people's code. I wouldn't expect you to take a look at MSI and immediately know why things are done the way they are. It's is sometimes easier to point things out to the developer, rather than take a look yourself. ;)

mormonman

2011-09-28 02:32:13

I'm still thoroughly surprised that you still release scripts without the keystone of srl(imo): multiplayer. I strongly suggest that you learn how and apply it.

Flight

2011-09-28 04:36:51

I build my own scripts in my own style, don't you? I've never made nor used an army, so multi-player isn't a factor to me.

Don't be so quick to assume that I don't know how.

cause

2011-10-05 22:59:41

Looks great man, I will definitely use this, any suggestions for pure training in mems?

noidea

2011-10-08 00:00:11

Hi, I started using this.
Here are some suggestions:
Have it check if the inv is full before attempting to pick stuff up.
It doesn't pick up items if the ID isnt in the list :/ I thought it would pick them up with only the name.
An option for burying bones?
An option for reequipping arrows?

Also, in the strong hold, maybe theres a way to not have it attack creatures that arnt in your section. No what I mean? I know its not really your fault, but its pretty suspicious if you're sitting there clicking other monsters that you cant reach.

Also any tips on training range f2p? ive got 50 range & def.

Flight

2011-10-08 01:03:58

Some good suggestions.

The full inventory for item looting I had already but apparently lost it when I downgraded the looting procedure. I've re-added it in V1.1 along with potions. Burying bones, that's a possibility, but it would require some heavy modifications to looting and full inventory detection. I might give that a try but it's not high priority. Re-equipping arrows I can surely do, but I think that would best be specified by the users (ReEquip arrows / ArrowType).

Also the custom specified region I plan on throwing in. If the user wishes, they can specify a tile box region to fight in, no more, no less. I'll probably also add a WalkBack option as well.

mormonman

2011-10-08 13:30:22

From: noidea
Also, in the strong hold, maybe theres a way to not have it attack creatures that arnt in your section. No what I mean? I know its not really your fault, but its pretty suspicious if you're sitting there clicking other monsters that you cant reach.


R_CanReach is perfect for this.

P1nky

2011-10-12 04:06:03

sorry this may be off topic but what does AIO stand for?

Harry

2011-10-12 04:12:27

All In One.

Flight

2011-10-12 22:44:58

From: P1nky
sorry this may be off topic but what does AIO stand for?


I didn't know either, but I saw lots of people with AIO in their scripts relating to multiple types/locations, so I put 2 and 2 together.

kingarabian

2011-10-13 02:30:50

All In One.

Flight

2011-10-13 08:35:46

From: mormonman
R_CanReach is perfect for this.


Have you tested those functions with NPC's or just objects? I've tested this multiple times and it always returns false, I even used "R_PathLengthBetween" both besides an NPC and on the other side of a rock walk from that NPC, both results in -1 distance. IsObject is set to False, and I set it to true just for laughs, same results either way. Any ideas?

mormonman

2011-10-13 16:01:02

From: Flight
Have you tested those functions with NPC's or just objects? I've tested this multiple times and it always returns false, I even used "R_PathLengthBetween" both besides an NPC and on the other side of a rock walk from that NPC, both results in -1 distance. IsObject is set to False, and I set it to true just for laughs, same results either way. Any ideas?


My Blood Pact script uses CanReach with an npc's tile for some pretty important logic.

Flight

2011-10-13 22:26:52


for index := 0 to high(npcs) do
begin
if Not (npcs[index].InCombat) then
begin
if R_CanReach(npcs[index].Tile, False) then
begin

Do you see anything I might have done wrong there? In this instance, R_CanReach will always return False with a path distance of -1, when the (npcs[index]) is literally standing beside me. I wonder if it has anything to do with the Plane? I'm underground when I've tested this, but I looked through 'R_GetCollisionMap' and the Plane is hooked/considered as well. So I'm a bit lost…

mormonman

2011-10-13 23:37:18

It might just be the new plugin stuffing it up. I'll look into it later.

TomTuff

2011-10-15 23:32:09

Prayer potion + quick prayer support? :)