From 6e013fa0ad3da39ba56c383c08368f3f6f455a9d Mon Sep 17 00:00:00 2001 From: MobiusDev <8391001+MobiusDevelopment@users.noreply.github.com> Date: Wed, 2 Aug 2017 18:56:21 +0000 Subject: [PATCH] New Race Track arena zone. Contributed by Stayway. --- .../dist/game/data/html/default/30995-1.htm | 19 +++ .../dist/game/data/html/default/30995-2.htm | 94 ++++++++++++ .../dist/game/data/html/default/30995-3.htm | 42 ++++++ .../dist/game/data/html/default/30995-4.htm | 52 +++++++ .../dist/game/data/html/default/30995-5.htm | 74 ++++++++++ .../dist/game/data/html/default/30995-6.htm | 80 ++++++++++ .../dist/game/data/html/default/30995-7.htm | 29 ++++ .../dist/game/data/html/default/30995-8.htm | 25 ++++ .../dist/game/data/html/default/30995-9.htm | 56 +++++++ .../dist/game/data/html/default/30995.htm | 15 ++ .../dist/game/data/html/observation/31031.htm | 10 +- .../scripts/ai/others/ArenaManager/31225.html | 10 -- .../scripts/ai/others/ArenaManager/31226.html | 10 -- .../ai/others/ArenaManager/ArenaManager.java | 139 ------------------ .../dist/game/data/spawns/Dion/Dion.xml | 1 - .../dist/game/data/zones/no_bookmark.xml | 9 -- .../dist/game/data/zones/no_summon_friend.xml | 8 - .../dist/game/data/zones/zone.xml | 57 ++----- L2J_Mobius_Classic/readme.txt | 10 +- 19 files changed, 505 insertions(+), 235 deletions(-) create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995-1.htm create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995-2.htm create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995-3.htm create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995-4.htm create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995-5.htm create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995-6.htm create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995-7.htm create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995-8.htm create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995-9.htm create mode 100644 L2J_Mobius_Classic/dist/game/data/html/default/30995.htm delete mode 100644 L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/31225.html delete mode 100644 L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/31226.html delete mode 100644 L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/ArenaManager.java diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995-1.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995-1.htm new file mode 100644 index 0000000000..4962bdf3a2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995-1.htm @@ -0,0 +1,19 @@ +

+
+In a monster race eight monsters race at the same time. If you guess which monster is expected to finish first and buy that monster's race ticket, based upon the odds to win you will receive an appropriate amount of Adena.
+How the Race WorksMonster races run every 20 minutes in real time.
+How to Participate
+You can purchase a monster race ticket through a race manager NPC. Only between 18 minutes before the start of a race until 3 minutes before the race begins can you buy a ticket for the applicable race. When you purchase a ticket through a race manager, you can find out the names of the participating monsters and their current statistics. Three minutes before a race starts, the race manager will stop ticket sales and announce the monsters' individual odds for the current race.
+Betting
+There are two types of race betting. The Win bet means that you back a particular monster to win 1st place. The Place bet means that you will have to guess the 1st and 2nd place monsters, regardless of who finishes first or second.
+Win + * Among the entire betting amount for Win betting, after subtracting the race track's own share of profit, the amount left will be your total winnings. Three minutes before the race, each monster's expected odds are announced. Each Win ticket's dividend amount is calculated by multiplying the odds by the price of a ticket. The odds are never less than 1. + * The prize money does not get transferred to the next race.
+Place + * Place betting is a way of betting when you correctly guess the two monsters who will finish first and second regardless of their order. The method of calculating the dividend amount is the same as Win betting. + * Currently place betting is not available.
+End of Race
+When a race is over, the race manager will shout the results of the race. You can trade your ticket for Adena by speaking to a race manager NPC. Check the Winning Information Data to find out the types of bets and total winnings for the race you bet on, as well as your win status and prize amount. If you won, you can receive your prize money thorough a race manager NPC. If you did not win, a race manager will buy back your ticket for a small amount of money.
+If a server goes down while tickets are being sold, or while a race is in progress, the race will be cancelled. You can receive a full refund for your ticket for a cancelled race through a race manager.
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995-2.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995-2.htm new file mode 100644 index 0000000000..f7d606a36d --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995-2.htm @@ -0,0 +1,94 @@ + +
Monster Race Betting To Win (Race # 1race) + + +
+ + + + + + + + +
Lane SelectionName of RacerRatingOdds
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1Mob1&$745;13%
2Mob2&$745;6%
3Mob3&$747;4%
4Mob4&$745;12%
5Mob5&$745;14%
6Mob6&$745;13%
7Mob7&$745;13%
8Mob8&$746;14%
+ + + + + + + + + + +
Select Lane : No1
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995-3.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995-3.htm new file mode 100644 index 0000000000..19fd6fafda --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995-3.htm @@ -0,0 +1,42 @@ + +
Monster Race Betting To Win (Race # 1race) + + +
+ + + + + + + +
Lane SelectionRacer's Name RatingOdds
+ + + + + + + + +
0placeMob1&$745;13%
+ + + +
Select Bet Amount + , + , + , + , +
+ + + + + + + + + +
Purchase Price : 0adena
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995-4.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995-4.htm new file mode 100644 index 0000000000..bcd1f0d520 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995-4.htm @@ -0,0 +1,52 @@ + +
Monster Race Single Ticket Purchase (Race # 1race) + + +
+ + + + + + + +
Lane SelectionRacer's NameRatingOdds
+ + + + + + + + +
0placeMob1&$745;13%
+ + + + + + + + + + + + + + + + + +
Bet Amount
Bet Amount 0adena Adena
Tax 0tax Adena
Total 0total Adena

+
If the information is correct, please click Confirm.

+ + + + + + + + + +
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995-5.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995-5.htm new file mode 100644 index 0000000000..b9729e01b0 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995-5.htm @@ -0,0 +1,74 @@ + +
Monster Race Betting To Win View Odds (Race # 1race ) + + +
+ + + + + + +
LaneRacer's NameOdds
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
No.1Mob1&$804;
No.2Mob2&$804;
No.3Mob3&$804;
No.4Mob4&$804;
No.5Mob5&$804;
No.6Mob6&$804;
No.7Mob7&$804;
No.8Mob8&$804;
+ + + + + + + + + + +
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995-6.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995-6.htm new file mode 100644 index 0000000000..0d845cb665 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995-6.htm @@ -0,0 +1,80 @@ + +
Participating Monsters + + +
+ + + + + + + +
LaneRacer's NameRatingOdds
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
1Mob1&$747;12%
2Mob2&$745;6%
3Mob3&$746;3%
4Mob4&$747;7%
5Mob5&$747;4%
6Mob6&$747;14%
7Mob7&$747;26%
8Mob8&$745;5%
+ + + + + + + + +
\ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995-7.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995-7.htm new file mode 100644 index 0000000000..a058e0e0b3 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995-7.htm @@ -0,0 +1,29 @@ + +
Confirm Monster Race Bet / Calculate Winnings
+ + + + + +
Winnings for a Race.LaneBet Amount
+ + + + + + +
1 Number100 Adena
+ + + + +
1 Page
+ + + + + + + + +
\ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995-8.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995-8.htm new file mode 100644 index 0000000000..ebbcf542b2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995-8.htm @@ -0,0 +1,25 @@ + +
Confirm Monster Race Bet / Calculate Winnings
+ + + + + + +
Race #19090
+Lane 1
+Bet: 100 adena
+1st place: Lane [4]
+Odds:[0.01] +
+ + + + + + + + + +
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995-9.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995-9.htm new file mode 100644 index 0000000000..ac1201d6f2 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995-9.htm @@ -0,0 +1,56 @@ + +
View Monster Race Results
+ + + + +
Race Number1st Finish2nd FinishOdds Rate for Win Bet
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
7 th8 Lane 1 Lane0.00 Times
6 th4 Lane 8 Lane0.00 Times
5 th7 Lane 2 Lane0.00 Times
4 th6 Lane 8 Lane0.00 Times
3 th4 Lane 1 Lane0.00 Times
2 th1 Lane 8 Lane0.00 Times
1 th7 Lane 6 Lane0.00 Times
+ + + + + + + + + +
+ \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/default/30995.htm b/L2J_Mobius_Classic/dist/game/data/html/default/30995.htm new file mode 100644 index 0000000000..87f69a8bb5 --- /dev/null +++ b/L2J_Mobius_Classic/dist/game/data/html/default/30995.htm @@ -0,0 +1,15 @@ + + +
Monster Race Manager
+ + + + + + + + + +
+ + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/html/observation/31031.htm b/L2J_Mobius_Classic/dist/game/data/html/observation/31031.htm index ce5cbd1ed2..1c3da2c1a4 100644 --- a/L2J_Mobius_Classic/dist/game/data/html/observation/31031.htm +++ b/L2J_Mobius_Classic/dist/game/data/html/observation/31031.htm @@ -2,11 +2,11 @@ - + - - - - + + + + \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/31225.html b/L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/31225.html deleted file mode 100644 index c7db37a6e3..0000000000 --- a/L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/31225.html +++ /dev/null @@ -1,10 +0,0 @@ -Arena Manager:
-Way to go! Hooray! Hooray!!!
-(Be careful! CP/HP will not get recovered inside the fence.)

- - - - - - - \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/31226.html b/L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/31226.html deleted file mode 100644 index 00422ae4b3..0000000000 --- a/L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/31226.html +++ /dev/null @@ -1,10 +0,0 @@ -Arena Director:
-Play the game according to the rules! The loser should be silent!
-What? Unfair? Then, why don't you hold your tongue and give it another try!

- - - - - - - \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/ArenaManager.java b/L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/ArenaManager.java deleted file mode 100644 index 8a3160a362..0000000000 --- a/L2J_Mobius_Classic/dist/game/data/scripts/ai/others/ArenaManager/ArenaManager.java +++ /dev/null @@ -1,139 +0,0 @@ -/* - * This file is part of the L2J Mobius project. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ -package ai.others.ArenaManager; - -import com.l2jmobius.gameserver.model.StatsSet; -import com.l2jmobius.gameserver.model.actor.L2Npc; -import com.l2jmobius.gameserver.model.actor.instance.L2PcInstance; -import com.l2jmobius.gameserver.model.holders.SkillHolder; -import com.l2jmobius.gameserver.model.itemcontainer.Inventory; -import com.l2jmobius.gameserver.model.zone.ZoneId; -import com.l2jmobius.gameserver.network.SystemMessageId; - -import ai.AbstractNpcAI; - -/** - * Arena Manager AI. - * @author St3eT - */ -public final class ArenaManager extends AbstractNpcAI -{ - // NPCs - private static final int[] ARENA_MANAGER = - { - 31226, // Arena Director (MDT) - 31225, // Arena Manager (Coliseum) - }; - // Skills - private static final SkillHolder[] BUFFS = - { - new SkillHolder(6805, 1), // Arena Empower - new SkillHolder(6806, 1), // Arena Acumen - new SkillHolder(6807, 1), // Arena Concentration - new SkillHolder(6808, 1), // Arena Might - new SkillHolder(6804, 1), // Arena Wind Walk - new SkillHolder(6812, 1), // Arena Berserker Spirit - }; - private static final SkillHolder CP_RECOVERY = new SkillHolder(4380, 1); // Arena: CP Recovery - private static final SkillHolder HP_RECOVERY = new SkillHolder(6817, 1); // Arena HP Recovery - // Misc - private static final int CP_COST = 1000; - private static final int HP_COST = 1000; - private static final int BUFF_COST = 2000; - - private ArenaManager() - { - addStartNpc(ARENA_MANAGER); - addTalkId(ARENA_MANAGER); - addFirstTalkId(ARENA_MANAGER); - } - - @Override - public String onAdvEvent(String event, L2Npc npc, L2PcInstance player) - { - switch (event) - { - case "CPrecovery": - { - if (player.getAdena() >= CP_COST) - { - takeItems(player, Inventory.ADENA_ID, CP_COST); - getTimers().addTimer("CPrecovery_delay", 2000, npc, player); - } - else - { - player.sendPacket(SystemMessageId.YOU_DO_NOT_HAVE_ENOUGH_ADENA); - } - break; - } - case "HPrecovery": - { - if (player.getAdena() >= HP_COST) - { - takeItems(player, Inventory.ADENA_ID, HP_COST); - getTimers().addTimer("HPrecovery_delay", 2000, npc, player); - } - else - { - player.sendPacket(SystemMessageId.YOU_DO_NOT_HAVE_ENOUGH_ADENA); - } - break; - } - case "Buff": - { - if (player.getAdena() >= BUFF_COST) - { - takeItems(player, Inventory.ADENA_ID, BUFF_COST); - npc.setTarget(player); - for (SkillHolder skill : BUFFS) - { - npc.doCast(skill.getSkill()); - } - } - else - { - player.sendPacket(SystemMessageId.YOU_DO_NOT_HAVE_ENOUGH_ADENA); - } - break; - } - } - return super.onAdvEvent(event, npc, player); - } - - @Override - public void onTimerEvent(String event, StatsSet params, L2Npc npc, L2PcInstance player) - { - if ((player != null) && !player.isInsideZone(ZoneId.PVP)) - { - if (event.equals("CPrecovery_delay")) - { - npc.setTarget(player); - npc.doCast(CP_RECOVERY.getSkill()); - } - else if (event.equals("HPrecovery_delay")) - { - npc.setTarget(player); - npc.doCast(HP_RECOVERY.getSkill()); - } - } - } - - public static void main(String[] args) - { - new ArenaManager(); - } -} \ No newline at end of file diff --git a/L2J_Mobius_Classic/dist/game/data/spawns/Dion/Dion.xml b/L2J_Mobius_Classic/dist/game/data/spawns/Dion/Dion.xml index 7234efadde..19f4087512 100644 --- a/L2J_Mobius_Classic/dist/game/data/spawns/Dion/Dion.xml +++ b/L2J_Mobius_Classic/dist/game/data/spawns/Dion/Dion.xml @@ -95,7 +95,6 @@ - diff --git a/L2J_Mobius_Classic/dist/game/data/zones/no_bookmark.xml b/L2J_Mobius_Classic/dist/game/data/zones/no_bookmark.xml index 53173044a6..b40e46defd 100644 --- a/L2J_Mobius_Classic/dist/game/data/zones/no_bookmark.xml +++ b/L2J_Mobius_Classic/dist/game/data/zones/no_bookmark.xml @@ -28,15 +28,6 @@ - - - - - - - - - diff --git a/L2J_Mobius_Classic/dist/game/data/zones/no_summon_friend.xml b/L2J_Mobius_Classic/dist/game/data/zones/no_summon_friend.xml index a6b09689a0..557b88d494 100644 --- a/L2J_Mobius_Classic/dist/game/data/zones/no_summon_friend.xml +++ b/L2J_Mobius_Classic/dist/game/data/zones/no_summon_friend.xml @@ -18,14 +18,6 @@ - - - - - - - - diff --git a/L2J_Mobius_Classic/dist/game/data/zones/zone.xml b/L2J_Mobius_Classic/dist/game/data/zones/zone.xml index 713f2d1c2a..c5ee4bbb51 100644 --- a/L2J_Mobius_Classic/dist/game/data/zones/zone.xml +++ b/L2J_Mobius_Classic/dist/game/data/zones/zone.xml @@ -1,55 +1,16 @@ - - - - - + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/L2J_Mobius_Classic/readme.txt b/L2J_Mobius_Classic/readme.txt index e0030816f4..647a47f8be 100644 --- a/L2J_Mobius_Classic/readme.txt +++ b/L2J_Mobius_Classic/readme.txt @@ -19,7 +19,7 @@ What is done -Parsed NPC droplists from L2Wiki -Further manual NPC corrections from L2Wiki -Basic Tutorial quest --Added 153 quest scripts +-Added 156 quest scripts -Village Master AI scripts -Fixed skill levels to match retail -Added new class mounts @@ -30,11 +30,13 @@ What is done -Dimensional Merchant updates -Retail gatekeeper teleports -Admin menu teleport and shop cleanups +-Blacksmith NPC updates +-New Race Track arena zone Custom work -Newbie Helper NPC location info -Newbie Helper buff support until 40 level --ClassMaster (Test Server Helper) NPCs +-Test Server Helper NPCs TODO list -Parse retail monster spawns by zone @@ -42,8 +44,6 @@ TODO list -Retail NPC buylists -Test quests and update rewards -Giran Luxury Shop updates --New Race Track arena --Blacksmith NPC updates -Floran Agricultural Area clan halls --Test Castle Sieges and Merc stats +-Test castle sieges -Whisper of Dreams quests