SRL Archive - MSI Archives

Spells Feedback


nickrules

2011-03-14 20:57:00

What spells do people want?

We have the two alchs, We'll probably want superheat, Charge orb maybe? I'll do my best to get as many working as possible, but will probably need to buy an account.

suggested so far:
  • Wind Rush
  • Curse
  • Stun Soul runes not supported
  • Superheat
  • Teleport - All F2P + Camelot have been added
  • Getting the animations for all this - Nope.

NCDS

2011-03-14 21:04:57

We already use 'MSI_IsAnimating' function to detect whether a spell is being cast, which uses marpis' PixelShift. It work's pretty good honestly.

Gu3st...

2011-03-14 21:07:16

Why make it that advanced?
Just wait the CastTime?

nickrules

2011-03-14 21:16:13

Well now I feel stupid.

I'll just fix the first post now…

E: can someone change the title to something more relevant too? I don't have modly privileges to the magic board >_>

NCDS

2011-03-14 21:24:15

From: nickrules
Well now I feel stupid.

I'll just fix the first post now…

E: can someone change the title to something more relevant too? I don't have modly privileges to the magic board >_>


Let me know if you wanted something different.

Flight

2011-03-14 21:30:39

I believe a cheap source of magic training is that new'ish wind spell that only requires air runes (or air staff for unlimited), stunning, cursing. Of course you'd used these spells on a more reclusive NPC with like iron armor on for extremely low magic bonus.

Coh3n

2011-03-15 02:15:08

I like the idea of a super heater or teleporter. Teleporter would be almost exactly the same as an alcher, and a super heater would require extra work to banking, but when NCDS finishes cooking, that banking function will be finished.

NCDS

2011-03-15 13:52:56

From: Coh3n
I like the idea of a super heater or teleporter. Teleporter would be almost exactly the same as an alcher, and a super heater would require extra work to banking, but when NCDS finishes cooking, that banking function will be finished.


Once I do up a function to click the *Skill* All button in the chat box everything will be ready for testing. I'm just looking for the most efficient way to go about it.

nickrules

2011-03-15 22:46:19

Add an 'extra' value to the TSpell? That way you can do:
Blahblah
Extra := @DoBank;
Blahblah

NCDS

2011-03-15 22:48:34

From: nickrules
Add an 'extra' value to the TSpell? That way you can do:
Blahblah
Extra := @DoBank;
Blahblah


The banking is already done. I just haven't committed it yet as I'm finishing the rest of the cooking.

All I need to do now is write up a function to click the "Cook All" option in the chat box. It takes some thinking because I would like to make just one function able to do the same thing for all skills to be added.

nickrules

2011-03-15 22:53:41

From: NCDS
The banking is already done. I just haven't committed it yet as I'm finishing the rest of the cooking.

All I need to do now is write up a function to click the "Cook All" option in the chat box. It takes some thinking because I would like to make just one function able to do the same thing for all skills to be added.


Nonono, what that would be for is CALLING the banking procedure for the spells that need it.

Unless you're saying you already did that…?

NCDS

2011-03-15 22:55:14

From: nickrules
Nonono, what that would be for is CALLING the banking procedure for the spells that need it.

Unless you're saying you already did that…?


Yeah, I just added a 'GetMaterials' boolean to the TScript. it can easily be changed if necessary but it works just fine.

nickrules

2011-03-15 22:57:44

Well my mind is now blown :P

Coh3n

2011-03-16 15:04:25

From: NCDS
Once I do up a function to click the *Skill* All button in the chat box everything will be ready for testing. I'm just looking for the most efficient way to go about it.

Skill All button?

NCDS

2011-03-16 16:20:22

From: Coh3n
Skill All button?


When you click the fish in your Inv, then click a Range, an 'Icon' of the item you selected appears in the ChatBox. By default, when you click the Icon it will 'Cook All' of the item.

This same method is used for many skills, but the way the Icons appear are different, which makes covering them all with one function a bit more difficult.

If I have to I'll make it just work for cooking and when the time comes see if I can get it to work with all skills, otherwise just make skill specific functions.

Have to see how it goes later I guess. :redface:

Coh3n

2011-03-16 16:31:47

Oh yeah I know what you mean. I've ran into that in a couple. of my private scripts. What i did was make a function to detect the screen that pops up, then mouseBox where necessary. I'm on my phone now but I can post it when I get home.

nickrules

2011-03-26 00:38:21

After re-remembering this thread, I began work on it. Now, the question is, what teleports do we want?

@Coh3n/Generally knowledgeable person: How do I use the stats variable thingamadoo? :S

Gu3st...

2011-03-26 09:07:48

I vote for all f2p teleports at least :)

E: + As Flight said, Camelot should be added too, so all p2p teleports that doesn't require any new runes should be added too, perhaps?

Flight

2011-03-26 09:15:59

Camelot teleporting is a very popular one, as all you need is an airstaff and law runes, no other elemental runes required. Maybe that's an answer for your "WHERE?". ;)

nickrules

2011-03-26 15:42:47

TSpells and constants finished. Now I need animations, and I wont be able to do camelot. I also would need to be told how to make them :P

Coh3n

2011-03-26 19:24:31

From: nickrules
TSpells and constants finished. Now I need animations, and I wont be able to do camelot. I also would need to be told how to make them :P

All the animations are the same for teleports, unless that's changed recently. Also, are you using git to develop this? It's easiest to fork the main repository then send a pull request when you're finished.

For the alching animation, I used this script to record the pixel shift around a certain box and it worked pretty well.

program new;
{$i srl/srl.scar}

var
x, y, t: Integer;
b: TBox;
a: TIntegerArray;
begin
SetupSRL;
ClearDebug;

b := IntToBox(MSCX - 30, MSCY - 50, MSCX + 30, MSCY + 15);

x := 623;
y := 276;

repeat
Mouse(x, y, 0, 0, True);
Wait(RandomRange(300, 500));
Mouse(x, y, 0, 0, True);
Wait(500);
SetLength(a, t + 1);
a[t] := PixelShift(b, 500);
Wait(1500);
Writeln(IntToStr(a[t]));
Inc(t);
case Length(a) of
1..3: MakeCompass('n');
4..6: MakeCompass('e');
7..8: MakeCompass('s');
9..10: MakeCompass('w');
end;
until(Length(a) >= 10);
end.

Gu3st...

2011-03-26 20:17:38

Do we really need to get the animation? :/

IPwnz

2011-03-26 21:15:45

From: Zyt3x
Do we really need to get the animation? :/


Agreed, couldn't you just do a quick color check in a box around the player for those blue and purple colors in each teleport?

NCDS

2011-03-26 22:23:45

From: Zyt3x
Do we really need to get the animation? :/


I think it should be checked at least to make sure the spell wast cast. I'm not too familiar with the actual teleport animation, but I believe the minimap goes black when your teleporting (I could very well be wrong). However, if that's the case then we do PixelShift check to make sure it was cast correctly (possibly even not needed, but an extra failsafe) then wait until the MM is not black and the spell is available to be cast again.

This post could be completely wrong (I'm rather intoxicated :redface:), but I'll actually check out the teleport animation a little later and adjust my post if necessary.

Coh3n

2011-03-27 06:51:57

From: Zyt3x
Do we really need to get the animation? :/


From: IPwnz
Agreed, couldn't you just do a quick color check in a box around the player for those blue and purple colors in each teleport?


From: NCDS
I think it should be checked at least to make sure the spell wast cast. I'm not too familiar with the actual teleport animation, but I believe the minimap goes black when your teleporting (I could very well be wrong). However, if that's the case then we do PixelShift check to make sure it was cast correctly (possibly even not needed, but an extra failsafe) then wait until the MM is not black and the spell is available to be cast again.

This post could be completely wrong (I'm rather intoxicated :redface:), but I'll actually check out the teleport animation a little later and adjust my post if necessary.

You guys can do whatever you want if you think it'll work. I just suggested animations because that's what I used for alching and it worked quite well.

Gu3st...

2011-03-27 07:05:30

I, for one, would be okay with a variable in TSpell that holds information about how long it takes to perform the spell. Animations would work too, but the problem is that we have to do that for every spell we want to use, and we'll eventually go tired of making spell animation checks.. :redface:

**BANNED The Man

2011-03-27 09:06:34

TL;DR
do:

if CharacterAnimating then
Wait(100);

Echo_

2011-03-27 09:52:13

From: Dynamite
TL;DR
do:

if CharacterAnimating then
Wait(100);


Doesn't MSI rely upon color for the most part though while CharacterAnimating is a reflection function?

Gu3st...

2011-03-27 10:36:38

From: Echo_
Doesn't MSI rely upon color for the most part though while CharacterAnimating is a reflection function?
Correct

Coh3n

2011-03-27 14:39:02

From: Zyt3x
I, for one, would be okay with a variable in TSpell that holds information about how long it takes to perform the spell. Animations would work too, but the problem is that we have to do that for every spell we want to use, and we'll eventually go tired of making spell animation checks.. :redface:

That's no excuse. :p Look at our item records…

And it's not like one person is adding every spell in the game at one time, just like we aren't adding every item in the game at one time. A couple spells will be added here and there, and over time, we'll have support for more. But I like having a wait time in the record for a minimum time for the function to wait, but we would still need something to compensate for lag.

nickrules

2011-03-27 16:25:17

Whatever, I'll get the animations when I have time.

As for git, I don't have it, nor do I know how to use it (obviously). And I don't completely understand why I would need it :S

Coh3n

2011-03-27 16:28:31

From: nickrules
Whatever, I'll get the animations when I have time.

As for git, I don't have it, nor do I know how to use it (obviously). And I don't completely understand why I would need it :S

You don't need it, but I would highly recommend it. It makes it much much easier for your changes to be added to the include through pull requests via git-hub.

I can simply merge the main repository with your fork and BAM, all your changes are added to the repository. Much, much easier than you posting everything you changed, then me having to manually add everything. It takes some time to get used to, but this is the guide I used to get started.

IPwnz

2011-03-27 19:18:18

From: nickrules
Whatever, I'll get the animations when I have time.

As for git, I don't have it, nor do I know how to use it (obviously). And I don't completely understand why I would need it :S


Also if you want I can help you out over MSN, my email address is [email]torpedojost@gmail.com[/email] :)