Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: January 8th Alpha Updates #1067

Merged
merged 15 commits into from
Jan 8, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions data/src/pack/varp.pack
Original file line number Diff line number Diff line change
Expand Up @@ -171,8 +171,8 @@
170=mouse_buttons
171=chat_effects
172=auto_retaliate
173=player_run
174=temp_run
173=run
174=varp_174
175=junglepotion_progress
176=dragon_progress
177=dragon_planks
Expand Down
2 changes: 1 addition & 1 deletion data/src/scripts/_test/scripts/cheats/cheat_energy.rs2
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
if_close;
if (p_finduid(uid) = true) {
healenergy(10000); // 100=1%, 1000=10%, 10000=100%
%player_run = ^player_run_on;
p_run(^player_run_on);
mes("Run energy restored");
} else {
@please_finish;
Expand Down
4 changes: 4 additions & 0 deletions data/src/scripts/_unpack/all.varp
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ protect=no

[frozen]

// not perm: https://youtu.be/HAeh4qE3WJ4?t=34
[attackstyle]
transmit=yes

Expand Down Expand Up @@ -111,6 +112,7 @@ type=boolean
[newcomers_pos]
transmit=yes

// not perm: https://runescape.wiki/w/Update:Game_Improvements
[attackstyle_magic]
transmit=yes

Expand Down Expand Up @@ -201,6 +203,8 @@ scope=perm
[elena_progress]
scope=perm

[varp_174]

[varp_189]

[varp_190]
Expand Down
2 changes: 1 addition & 1 deletion data/src/scripts/areas/area_camelot/scripts/sir_gawain.rs2
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ if(%grail_progress > ^grail_not_started & %grail_progress < ^grail_complete) {
~chatplayer("<p,quiz>Galahad? Who is he?");
~chatnpc("<p,neutral>He used to be one of the Knights of the Round Table, but he mysteriously disappeared many years ago.");
~chatplayer("<p,neutral>Why would he quit being a Knight?");
~chatnpc("<p,sad>|That is a good question.");
~chatnpc("<p,sad>That is a good question.");
~chatnpc("<p,sad>I'm afraid I don't have the answer.");
return;
}
Expand Down
25 changes: 10 additions & 15 deletions data/src/scripts/areas/area_draynor/scripts/traiborn.rs2
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
[opnpc1,traiborn]
if (%demon_progress < 3 | %demon_progress > 29 | inv_total(inv, demon_traiborn_key) > 0) {
@traiborn_dialogue;
} else if (%demon_progress = 29 & inv_total(inv, demon_traiborn_key) < 1){
if (%demon_progress = ^demon_got_traiborn_key & inv_total(inv, demon_traiborn_key) < 1 & inv_total(bank, demon_traiborn_key) < 1){
@demon_slayer_traiborn_lost_key;
} else if (%demon_progress < ^demon_find_bones | %demon_progress >= ^demon_got_traiborn_key) {
@traiborn_dialogue;
} else {
@demon_slayer_traiborn_bones_dialogue;
}
Expand All @@ -20,21 +20,21 @@ if(inv_total(inv, bones) < 1) {
}

[label,demon_slayer_traiborn_give_bones]
if(inv_total(inv, bones) > 0 & %demon_progress > 2 & %demon_progress < 28) {
if(%demon_progress >= ^demon_find_bones & %demon_progress < ^demon_got_traiborn_key & inv_total(inv, bones) > 0) {
if_close();
inv_del(inv, bones, 1);
mes("You give Traiborn a set of bones.");
~update_demon_progress;
p_delay(1);
%demon_progress = calc(%demon_progress + 1);
@demon_slayer_traiborn_give_bones;
} else {
@demon_slayer_traiborn_stop_giving_bones;
}

[proc,traiborn_dialogue_options](int $demon_progress)(int)
if ($demon_progress < 2 | %demon_progress > 28) {
if (%demon_progress < ^demon_key_hunt | %demon_progress >= ^demon_got_traiborn_key) {
return(~p_choice2("What's a thingummywut?", 1, "Teach me to be a mighty and powerful wizard.", 2));
} else if ($demon_progress = 2) {
} else if ($demon_progress < ^demon_silverlight) {
return (~p_choice3("What's a thingummywut?", 1, "Teach me to be a mighty and powerful wizard.", 2, "I need to get a key given to you by Sir Prysin.", 3));
}

Expand Down Expand Up @@ -77,7 +77,7 @@ if ($option = 1) {
[label,demon_slayer_traiborn_lost_key]
~chatplayer("<p,sad>I've lost the key you gave to me.");
~chatnpc("<p,confused>Yes I know, it was returned to me. If you want it back you're going to have to collect another 25 sets of bones.");
~set_demon_progress(3);
%demon_progress = ^demon_find_bones;

[label,traiborn_teach_me]
~chatnpc("<p,shock>Wizard eh? You don't want any truck with that sort. They're not to be trusted. That's what I've heard anyways.");
Expand Down Expand Up @@ -143,9 +143,7 @@ if ($option = 1) {
~chatplayer("<p,neutral>I'll help get the bones for you.");
~chatnpc("<p,happy>Ooh that would be very good of you.");
~chatplayer("<p,neutral>Okay, I'll speak to you when I've got some bones.");
if (%demon_progress = 2) {
~update_demon_progress;
}
%demon_progress = ^demon_find_bones;
}

[label,demon_slayer_traiborn_be_off_keys_around]
Expand Down Expand Up @@ -191,7 +189,7 @@ if ($option = 1) {
}

[label,demon_slayer_traiborn_stop_giving_bones]
if (%demon_progress = 28) {
if (%demon_progress = ^demon_got_traiborn_key) {
~chatnpc("<p,happy>Hurrah! That's all 25 sets of bones.");
@demon_slayer_traiborn_incantation;
} else {
Expand All @@ -210,8 +208,5 @@ p_delay(2);
mes("Traiborn hands you a key");
inv_add(inv, demon_traiborn_key, 1);
p_delay(2);
if (%demon_progress = 28) {
~update_demon_progress;
}
~chatplayer("<p,happy>Thank you very much.");
~chatnpc("<p,happy>Not a problem for a friend of Sir What's-his-face.");
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ switch_int(%priest_progress) {

[label,father_aereck_default]
~chatnpc("<p,happy>Welcome to the church of holy Saradomin.");
switch_int (~p_choice3("Who's Saradomin?", 1, "Nice place you've got here.", 2, "I'm looking for a quest.", 3)) {
switch_int (~p_choice3("Who's Saradomin?", 1, "Nice place you've got here.", 2, "I'm looking for a quest!", 3)) {
case 1 :
~chatplayer("<p,quiz>Who's Saradomin?");
~chatnpc("<p,shock>Surely you have heard of the god, Saradomin?");
Expand Down Expand Up @@ -48,7 +48,7 @@ switch_int (~p_choice3("Who's Saradomin?", 1, "Nice place you've got here.", 2,
~chatnpc("<p,happy>Thank you. The problem is, there is a ghost in the church graveyard: I would like you to get rid of it.");
~chatnpc("<p,happy>If you need any help, my friend Father Urhney is an expert on ghosts.");
~chatnpc("<p,happy>I believe he is currently living as a hermit. He has a little shack somewhere in the swamps south of here. I'm sure if you told him that I sent you he'd be willing to help.");
~chatnpc("<p,happy>My name is father Aereck by the way.|Pleased to meet you.");
~chatnpc("<p,happy>My name is Father Aereck by the way.|Pleased to meet you.");
~chatplayer("<p,happy>Likewise.");
~chatnpc("<p,neutral>Take care travelling through the swamps.|I have heard they can be quite dangerous.");
~chatplayer("<p,happy>I will, thanks.");
Expand All @@ -60,7 +60,7 @@ switch_int (~p_choice3("Who's Saradomin?", 1, "Nice place you've got here.", 2,
~chatnpc("<p,neutral>Have you got rid of the ghost yet?");
switch_int (%priest_progress) {
case ^priest_started :
~chatplayer("<p,sad>I can't find father Urhney at the moment.");
~chatplayer("<p,sad>I can't find Father Urhney at the moment.");
~chatnpc("<p,happy>Well, to get to the swamp he is in you need to go round the back of the castle. The swamp is on the otherside of the fence to the south.");
~chatnpc("<p,happy>You'll have to go through the wood to the west to get round the fence. Then you'll have to go right into the eastern depths of the swamp.");
case ^priest_spoken_urhney :
Expand Down
4 changes: 4 additions & 0 deletions data/src/scripts/areas/area_varrock/scripts/aubury.rs2
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ if(%runemysteries_progress = ^runemysteries_given_package) {
}
}

[opnpcu,aubury]
if(last_useitem = research_package & %runemysteries_progress = ^runemysteries_received_package) @aubury_package;
~displaymessage(^dm_default);

[label,aubury_shop] ~openshop_activenpc;

[label,aubury_no]
Expand Down
5 changes: 3 additions & 2 deletions data/src/scripts/areas/area_varrock/scripts/captain_rovin.rs2
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ if ($option = 1) {
~chatplayer("<p,neutral>It's not them who are going to fight the demon, it's me.");
~chatnpc("<p,shock>What, all by yourself? How are you going to do that?");
~chatplayer("<p,neutral>I'm going to use the powerful sword Silverlight, which I believe you have one of the keys for?");
// RSC let you repeat this OSRS is what added blocks
~chatnpc("<p,quiz>Yes you are right. Here you go.");
if_close();
p_delay(2);
Expand All @@ -54,8 +55,8 @@ if ($option = 1) {
}

[proc,demon_slayer_captain_rovin_dialogue_options]()(int)
if (%demon_progress < 2 | %demon_progress = ^demon_complete) {
if (%demon_progress < ^demon_key_hunt | %demon_progress >= ^demon_silverlight) {
return(~p_choice2("I am one of the palace guards.", 1, "What about the King?", 2));
} else if (%demon_progress > 1 & %demon_progress < ^demon_complete) {
} else if (%demon_progress >= ^demon_key_hunt & %demon_progress < ^demon_silverlight) {
return(~p_choice3("I am one of the palace guards.", 1, "What about the King?", 2, "Yes I know, but this is important.", 3));
}
47 changes: 30 additions & 17 deletions data/src/scripts/areas/area_varrock/scripts/gypsy.rs2
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[opnpc1,gypsy]
if (%demon_progress = 0) {
if (%demon_progress = ^demon_not_started) {
@demon_slayer_not_started_gypsy;
} else if (%demon_progress = 1) {
} else if (%demon_progress = ^demon_talked_gypsy) {
~chatnpc("<p,neutral>How goes the quest?");
~chatplayer("<p,happy>I'm still working on it.");
~chatnpc("<p,happy>Well if you need any advice I'm always here, young one.");
Expand All @@ -16,22 +16,23 @@ if (%demon_progress = 0) {
} else if ($option = 4) {
@demon_slayer_gypsy_stop_calling_me_that;
}
} else if (%demon_progress > 2 & %demon_progress < ^demon_complete) {
if (inv_total(inv, silverlight) < 1 & inv_getobj(worn, 3) ! silverlight) {
~chatnpc("<p,neutral>How goes the quest?");
~chatplayer("<p,happy>I have found Sir Prysin. Unfortunately, I haven't got the sword yet. He made it complicated for me!");
~chatnpc("<p,neutral>Ok, hurry, we haven't much time.");
} else if (%demon_progress < ^demon_silverlight) {

def_int $option = ~p_choice2("What is the magical incantation?", 1, "Well I'd better press on with it.", 2);
if ($option = 1) {
@demon_slayer_gypsy_incantation;
} else {
@demon_slayer_gypsy_press_on_with_it;
}
~chatnpc("<p,neutral>How goes the quest?");
~chatplayer("<p,happy>I have found Sir Prysin. Unfortunately, I haven't got the sword yet. He made it complicated for me!");
~chatnpc("<p,neutral>Ok, hurry, we haven't much time.");

def_int $option = ~p_choice2("What is the magical incantation?", 1, "Well I'd better press on with it.", 2);
if ($option = 1) {
@demon_slayer_gypsy_incantation;
} else {
@demon_slayer_gypsy_press_on_with_it;
}
} else if(%demon_progress = ^demon_silverlight){
~chatnpc("<p,neutral>How goes the quest?");
~chatplayer("<p,happy>I have the sword now.|I just need to kill the demon, I think.");
~chatnpc("<p,happy>Yep, that's right.");
// RSC doesn't give these options bus OSRS does. Might as well be nice
def_int $option = ~p_choice3("What is the magical incantation?", 1, "Well I'd better press on with it.", 2, "Where can I find the demon?", 3);
if ($option = 1) {
@demon_slayer_gypsy_incantation;
Expand All @@ -41,7 +42,6 @@ if (%demon_progress = 0) {
~chatplayer("<p,quiz>Where can I find the demon?");
~chatnpc("<p,neutral>Just head south and you should find the stone circle just outside the city gate.");
}
}
} else if (%demon_progress = ^demon_complete) {
~chatnpc("<p,neutral>Greetings young one.");
~chatnpc("<p,happy>You're a hero now. That was a good bit of demonslaying.");
Expand Down Expand Up @@ -100,6 +100,14 @@ if ($option = 1) {
}

[label,demon_slayer_gypsy_how_old_are_you]
if (%demon_progress = ^demon_not_started){
@demon_slayer_gypsy_how_old_are_you_pre_quest;
}
else{
@demon_slayer_gypsy_how_old_are_you_post_quest;
}

[label,demon_slayer_gypsy_how_old_are_you_pre_quest]
~chatnpc("<p,quiz>Older than you imagine.");
def_int $option = ~p_choice3("Believe me, I have a good imagination.", 1, "How do you know how old I think you are?", 2, "Oh, pretty old then.", 3);
if ($option = 1) {
Expand Down Expand Up @@ -134,9 +142,13 @@ if ($option = 1) {
~chatnpc("<p,angry>Yes I'm old! Don't rub it in.");
}

[label,demon_slayer_gypsy_money_for_fortune]
def_int $option = ~p_choice2("Ok, here you go.", 1, "Oh you want me to pay. No thanks.", 2);
[label,demon_slayer_gypsy_how_old_are_you_post_quest]
~chatnpc("<p,neutral>Count the number of legs of the chairs in the blue moon inn");
~chatnpc("<p,neutral>And multiply that number by seven.");
~chatplayer("<p,neutral>Errr yeah whatever.");

[label,demon_slayer_gypsy_money_for_fortune]
def_int $option = ~p_choice2("Ok, here you go.", 1, "Oh you want me to pay. No thanks.", 2);
if ($option = 1) {
@demon_slayer_gypsy_quest_start;
} else if ($option = 2) {
Expand Down Expand Up @@ -223,7 +235,8 @@ if ($option = 1) {
~chatnpc("<p,happy>By reciting the correct magical incantation, and thrusting Silverlight into Delrith while he was newly summoned, Wally was able to imprison Delrith in the stone block in the centre of the circle.");
~chatnpc("<p,sad>Delrith will come forth from the stone circle again.");
~chatnpc("<p,sad>I would imagine an evil sorcerer is already starting on the rituals to summon Delrith as we speak.");
~update_demon_progress;
%demon_progress = ^demon_talked_gypsy;
~send_quest_progress(questlist:demon, %demon_progress, ^demon_complete);
@demon_slayer_gypsy_more_info;

[label,demon_slayer_gypsy_more_info]
Expand Down
Loading
Loading