align proxy boost gates with upstream cleanup
align proxy boost gates with upstream cleanup
This commit is contained in:
@@ -2817,7 +2817,8 @@ static asio::awaitable<void> on_10_main_menu(shared_ptr<Client> c, uint32_t item
|
||||
send_message_box(c, "$C6This ship option is only for Blue Burst.");
|
||||
break;
|
||||
}
|
||||
if ((c->listener_port == 19145) || (c->listener_port == 19146)) {
|
||||
if ((c->listener_port == 12000) || (c->listener_port == 12001) ||
|
||||
(c->listener_port == 19145) || (c->listener_port == 19146)) {
|
||||
c->selected_blueballz_tier = -1;
|
||||
co_await send_auto_patches_if_needed(c);
|
||||
co_await enable_save_if_needed(c);
|
||||
@@ -2827,7 +2828,7 @@ static asio::awaitable<void> on_10_main_menu(shared_ptr<Client> c, uint32_t item
|
||||
}
|
||||
break;
|
||||
}
|
||||
send_reconnect(c, s->connect_address_for_client(c), 19145);
|
||||
send_reconnect(c, s->connect_address_for_client(c), 12000);
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -3120,21 +3121,18 @@ static asio::awaitable<void> on_10_proxy_destinations(shared_ptr<Client> c, uint
|
||||
c->channel->disconnect();
|
||||
} else {
|
||||
// PSO Peeps: boosted clients may not enter Vanilla/Hardcore.
|
||||
// PC v2 receives boosted BattleParams via the patch server. DC/GC can be
|
||||
// boosted either by old boosted-disc listener ports or by the PSO Peeps XP
|
||||
// client-function patch, which sets HAS_PSO_PEEPS_XP_PATCH.
|
||||
// DC/GC can be boosted either by old boosted-disc listener ports or by
|
||||
// PSO Peeps XP client-function patches, which set HAS_PSO_PEEPS_XP_PATCH.
|
||||
const bool is_vanilla_or_hardcore_dest =
|
||||
(dest->second == 19203 || dest->second == 19230 || dest->second == 19530);
|
||||
const bool is_boosted_disc =
|
||||
(c->listener_port == 9105 || c->listener_port == 9110 ||
|
||||
c->listener_port == 9201 || c->listener_port == 9202 ||
|
||||
c->listener_port == 19105 || c->listener_port == 19110);
|
||||
const bool is_pc_v2_boosted = (c->version() == Version::PC_V2);
|
||||
const bool has_psopeeps_xp_patch =
|
||||
c->check_flag(Client::Flag::HAS_PSO_PEEPS_XP_PATCH);
|
||||
|
||||
if (is_vanilla_or_hardcore_dest &&
|
||||
(is_boosted_disc || is_pc_v2_boosted || has_psopeeps_xp_patch)) {
|
||||
(is_boosted_disc || has_psopeeps_xp_patch)) {
|
||||
send_message_box(c,
|
||||
"$C6Vanilla and Hardcore are not available\n"
|
||||
"while boosted XP is active.\n\n"
|
||||
|
||||
@@ -2487,25 +2487,10 @@ static asio::awaitable<void> on_pick_up_item_generic(
|
||||
// TODO: Figure out what the actual max range is; 30 is an overestimate
|
||||
double dist2 = fi->pos.dist2(c->pos);
|
||||
if (dist2 > 900.0) {
|
||||
const bool allow_dcv2_falz_pickup_distance_recovery =
|
||||
is_request &&
|
||||
(c->version() == Version::DC_V2) &&
|
||||
(l->episode == Episode::EP1) &&
|
||||
(floor == 0x0E) &&
|
||||
(fi->from_obj == nullptr) &&
|
||||
(fi->from_ene == nullptr) &&
|
||||
fi->visible_to_client(c->lobby_client_id);
|
||||
|
||||
if (allow_dcv2_falz_pickup_distance_recovery) {
|
||||
l->log.warning_f(
|
||||
"DC V2 Falz floor item pickup distance recovery: Player {} picking up {:08X}; dist2={} item_floor={} player_floor={}",
|
||||
client_id, item_id, dist2, static_cast<uint64_t>(floor), static_cast<uint64_t>(c->floor));
|
||||
} else {
|
||||
l->log.warning_f("Player {} requests to pick up {:08X}, but it is too far away (dist2={})",
|
||||
client_id, item_id, dist2);
|
||||
l->add_item(floor, fi);
|
||||
co_return;
|
||||
}
|
||||
l->log.warning_f("Player {} requests to pick up {:08X}, but it is too far away (dist2={})",
|
||||
client_id, item_id, dist2);
|
||||
l->add_item(floor, fi);
|
||||
co_return;
|
||||
}
|
||||
|
||||
try {
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsV2EXP5xDC"
|
||||
.meta name="V2 5x"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Dreamcast V2 EXP"
|
||||
|
||||
.versions 2OEF
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsV2EXP_enabled"
|
||||
.meta name="10x XP"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Dreamcast V2 XP boost — applies across all difficulties (server dispatches per-difficulty tables on each area transition)."
|
||||
|
||||
.versions 2OEF
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsV2EXP_enabled"
|
||||
.meta name="5x XP"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Dreamcast V2 XP boost — applies across all difficulties (server dispatches per-difficulty tables on each area transition)."
|
||||
|
||||
.versions 2OEF
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsEP1EXP10x"
|
||||
.meta name="EP1 10x"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Sets EP1 enemy EXP\nto 10x for GC crossplay"
|
||||
|
||||
.versions 3OE2 3OJ5
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsEP1EXP5x"
|
||||
.meta name="EP1 5x"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Sets EP1 enemy EXP\nto 5x for GC crossplay"
|
||||
|
||||
.versions 3OE2 3OJ5
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
.meta key="PsoPeepsEP2EXP10x"
|
||||
.meta name="EP2 10x"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Sets EP2 enemy EXP\nto 10x for GC crossplay"
|
||||
|
||||
.versions 3OE2 3OJ5
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsEP2EXP10xJP"
|
||||
.meta name="EP2 10x"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Sets EP2 enemy EXP\nto 10x for GC crossplay"
|
||||
|
||||
.versions 3OJ5
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsEP2EXP10xUS"
|
||||
.meta name="EP2 10x"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Sets EP2 enemy EXP\nto 10x for GC crossplay"
|
||||
|
||||
.versions 3OE2
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
.meta key="PsoPeepsEP2EXP5x"
|
||||
.meta name="EP2 5x"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Sets EP2 enemy EXP\nto 5x for GC crossplay"
|
||||
|
||||
.versions 3OE2 3OJ5
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsEP2EXP5xJP"
|
||||
.meta name="EP2 5x"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Sets EP2 enemy EXP\nto 5x for GC crossplay"
|
||||
|
||||
.versions 3OJ5
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsEP2EXP5xUS"
|
||||
.meta name="EP2 5x"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Sets EP2 enemy EXP\nto 5x for GC crossplay"
|
||||
|
||||
.versions 3OE2
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
.meta visibility="menu"
|
||||
.meta key="PsoPeepsV2EXP_enabled"
|
||||
.meta name="10x XP"
|
||||
.meta client_flag="0x0000200000000000"
|
||||
.meta description="Dreamcast V2 XP boost — applies across all difficulties (server dispatches per-difficulty tables on each area transition)."
|
||||
|
||||
.versions 2OEF
|
||||
|
||||
Reference in New Issue
Block a user