Fix tracker unlist condition to not include stationary and game update

This commit is contained in:
Kaan Soral
2025-10-07 21:49:38 +03:00
parent a9064c0b14
commit 687bd5f05e
9 changed files with 94 additions and 60 deletions
+12 -1
View File
@@ -114,10 +114,14 @@ if is_production:
#maps["desertland"]["key"]="jayson_desertland_copy" #maps["desertland"]["key"]="jayson_desertland_copy"
pass pass
game_version=822 game_version=825
SALES=4+5+388+5101+125/20 #donation+manual+macos+steam+sales SALES=4+5+388+5101+125/20 #donation+manual+macos+steam+sales
update_notes=[ update_notes=[
"Last Update [August 7th]", "Last Update [August 7th]",
"Halloween Event!",
"20% more shells with purchases during the spooky season!",
"New server blessing system to generate income",
"PR: Make slenderman warp more often #160",
"PR: improve date functions #176", "PR: improve date functions #176",
"PR: simplify distance calculation #179", "PR: simplify distance calculation #179",
"PR: Fix display of Orb of Adventures #183", "PR: Fix display of Orb of Adventures #183",
@@ -125,6 +129,13 @@ update_notes=[
"PR: Fix display of Frozen to correctly show speed reduction, fix value in G.conditions.poisoned to reflect actual frequency multiplier #188", "PR: Fix display of Frozen to correctly show speed reduction, fix value in G.conditions.poisoned to reflect actual frequency multiplier #188",
"PR: Explanations for all conditions #189", "PR: Explanations for all conditions #189",
"PR: Stop orbs from spamming game events #190", "PR: Stop orbs from spamming game events #190",
"PR: New 'spawns' mechanic #192",
"PR: Allow a quantity of items to drop from chests #193",
"PR: Home server specific drops #194",
"PR: Hallo-ween boss incentives #195",
"PR: Compoundable spooky amulet #196",
"PR: Amulet of Spooks Fix #197",
"PR: Fix for new spawn mechanic #198"
] ]
ip_to_subdomain={ #IMPORTANT: SPECIAL PAGE RULES ARE NEEDED: https://dash.cloudflare.com/b6f5a13bded5fdd273e4a1cd3777162d/adventure.land/page-rules - uss1 / eus1 was best ip_to_subdomain={ #IMPORTANT: SPECIAL PAGE RULES ARE NEEDED: https://dash.cloudflare.com/b6f5a13bded5fdd273e4a1cd3777162d/adventure.land/page-rules - uss1 / eus1 was best
"35.187.255.184":"asia1", "35.187.255.184":"asia1",
+1 -1
View File
@@ -534,7 +534,7 @@ maps={
{"id":"monsterhunter","position":[126,-413]}, {"id":"monsterhunter","position":[126,-413]},
{"id":"mcollector","position":[81,-283,1]}, {"id":"mcollector","position":[81,-283,1]},
#{"id":"newyear_tree","position":[64,-88]}, #xmas #{"id":"newyear_tree","position":[64,-88]}, #xmas
{"id":"favors","position":[20,20]}, {"id":"favors","position":[79,-47]},
], ],
"monsters":[ "monsters":[
#square #square
+1 -1
View File
@@ -1,4 +1,4 @@
extra_shells=0 extra_shells=20
multipliers={ multipliers={
"extra_shells":extra_shells, "extra_shells":extra_shells,
"shells_to_gold":32000, "shells_to_gold":32000,
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -49,7 +49,7 @@
</div> </div>
{% if extra_shells %} {% if extra_shells %}
<div class="pui mainpui" style="border: 4px solid gray; padding: 12px; background: black; font-size: 36px; color: gray; text-align: left; margin-top: 5px; width: 404px; color: white"> <div class="pui mainpui" style="border: 4px solid gray; padding: 12px; background: black; font-size: 36px; color: gray; text-align: left; margin-top: 5px; width: 404px; color: white">
<span style='color: #B2161C'>Lunar New Year Bonus:</span> <span style='color: #008E3A'>{{extra_shells}}%</span> Extra Shells with Every Purchase! <span style='color: #50B795'>Event Bonus:</span> <span style='color: #008E3A'>{{extra_shells}}%</span> Extra Shells with Every Purchase!
{#<span style='color: #7C89A7'>Cyber Days Bonus:</span> <span style='color: #008E3A'>{{extra_shells}}%</span> Extra Shells with Every Purchase!#} {#<span style='color: #7C89A7'>Cyber Days Bonus:</span> <span style='color: #008E3A'>{{extra_shells}}%</span> Extra Shells with Every Purchase!#}
</div> </div>
{% endif %} {% endif %}
+1 -1
View File
@@ -1332,7 +1332,7 @@ function init_socket(args)
else add_log("Note: Game dynamics and drops aren't final, they are evolving with every update","gray"); else add_log("Note: Game dynamics and drops aren't final, they are evolving with every update","gray");
if(data.blessed_by) if(data.blessed_by)
{ {
add_log("This server has been blessed by "+data.blessed_by,"#8F70D8"); add_chat("","This server has been blessed by "+data.blessed_by,"#8F70D8");
} }
// add_log("Warning: A Chrome bug is causing memory leaks, very small but it adds up. They patched the bug, however, that patch didn't make it to our browsers yet","#E08583"); // add_log("Warning: A Chrome bug is causing memory leaks, very small but it adds up. They patched the bug, however, that patch didn't make it to our browsers yet","#E08583");
$(".charactername").html(character.name); $(".charactername").html(character.name);
+1 -1
View File
@@ -2203,7 +2203,7 @@ function render_tracker()
html+="</div>"; html+="</div>";
html+="<div class='trackers trackerm'>"; html+="<div class='trackers trackerm'>";
object_sort(G.monsters,"hpsort").forEach(function(e){ object_sort(G.monsters,"hpsort").forEach(function(e){
if((e[1].stationary || e[1].cute) && !e[1].achievements || e[1].unlist) return; if((e[1].unlist || e[1].cute) && !e[1].achievements || e[1].unlist) return;
var count=(tracker.monsters[e[0]]||0)+(tracker.monsters_diff[e[0]]||0),color="#50ADDD"; var count=(tracker.monsters[e[0]]||0)+(tracker.monsters_diff[e[0]]||0),color="#50ADDD";
if(tracker.max.monsters[e[0]] && tracker.max.monsters[e[0]][0]>count) if(tracker.max.monsters[e[0]] && tracker.max.monsters[e[0]][0]>count)
{ {
+24 -5
View File
@@ -176,7 +176,7 @@ var events = {
pinkgoo: 0, // every N minutes - 60 pinkgoo: 0, // every N minutes - 60
snowman: 20 * 60, // 1200 normally - 60 - at sprocess_game_data snowman: 20 * 60, // 1200 normally - 60 - at sprocess_game_data
egghunt: 0, // every N minutes - 60 egghunt: 0, // every N minutes - 60
halloween: false, halloween: true,
// RANDOM // RANDOM
goblin: false, goblin: false,
goldenbat: 160000, goldenbat: 160000,
@@ -2072,7 +2072,12 @@ function drop_something(player, monster, share) {
}); });
} }
// Home-server monster-specific drops // Home-server monster-specific drops
if (player.p.home && player.p.home === region + server_name && D.drops.monsters_home_server[monster.type] && player.tskin != "konami") { if (
player.p.home &&
player.p.home === region + server_name &&
D.drops.monsters_home_server[monster.type] &&
player.tskin != "konami"
) {
D.drops.monsters_home_server[monster.type].forEach(function (item) { D.drops.monsters_home_server[monster.type].forEach(function (item) {
let itemShouldDrop = shouldItemDrop(item); let itemShouldDrop = shouldItemDrop(item);
if (itemShouldDrop || mode.drop_all) { if (itemShouldDrop || mode.drop_all) {
@@ -4712,7 +4717,8 @@ function init_io() {
for (var name in data.drops) { for (var name in data.drops) {
register_table(data.drops[name]); register_table(data.drops[name]);
} }
for (var name in data.drops_home) { //include home tables for (var name in data.drops_home) {
//include home tables
register_table(data.drops_home[name]); register_table(data.drops_home[name]);
} }
for (var name in data.maps) { for (var name in data.maps) {
@@ -7048,6 +7054,11 @@ function init_io() {
bless_loop(); bless_loop();
discord_call(player.name + " blessed " + region + " " + server_name); discord_call(player.name + " blessed " + region + " " + server_name);
realm_broadcast("server_message", {
message: player.name + " blessed " + region + " " + server_name,
color: "#8F70D8",
});
}, },
); );
success_response({ success: false, in_progress: true }); success_response({ success: false, in_progress: true });
@@ -12046,7 +12057,11 @@ function update_instance(instance) {
if (!is_same(player, get_player(monster.target), true)) return; if (!is_same(player, get_player(monster.target), true)) return;
monster.last[name] = new Date(); monster.last[name] = new Date();
const spot = safe_xy_nearby(player.map, player.x + Math.random() * 20 - 10, player.y + Math.random() * 20 - 10); const spot = safe_xy_nearby(
player.map,
player.x + Math.random() * 20 - 10,
player.y + Math.random() * 20 - 10,
);
if (!spot) return; if (!spot) return;
new_monster(instance.name, { new_monster(instance.name, {
@@ -12072,7 +12087,11 @@ function update_instance(instance) {
const player = get_player(pname); const player = get_player(pname);
if (player && !player.npc && distance(monster, player) < 400) { if (player && !player.npc && distance(monster, player) < 400) {
if (is_same(player, get_player(monster.target), true)) { if (is_same(player, get_player(monster.target), true)) {
const spot = safe_xy_nearby(player.map, player.x + Math.random() * 20 - 10, player.y + Math.random() * 20 - 10); const spot = safe_xy_nearby(
player.map,
player.x + Math.random() * 20 - 10,
player.y + Math.random() * 20 - 10,
);
if (spot) { if (spot) {
new_monster(instance.name, { new_monster(instance.name, {
type: name, type: name,
+13 -9
View File
@@ -1905,34 +1905,38 @@ function event_loop() {
if (events.halloween) { if (events.halloween) {
var s = get_monster("slenderman"); var s = get_monster("slenderman");
if (s) { if (s) {
var p = false; var should_warp = false;
for (var id in projectiles) { for (var id in projectiles) {
if (projectiles[id].target == s) { if (projectiles[id].target == s) {
p = true; should_warp = true;
} }
} }
if (!s.last_jump || msince(s.last_jump) > 2) { if (!s.last_jump || msince(s.last_jump) > 2) {
p = true; should_warp = true;
} }
if (!should_warp)
for (var name in instances[s.in].players) { for (var name in instances[s.in].players) {
var player = instances[s.in].players[name]; var player = instances[s.in].players[name];
if (p || (!player.s.invis && distance(player, s) < 600)) { if (p || (!player.s.invis && distance(player, s) < 600)) {
should_warp = true;
break;
}
}
if (should_warp) {
xy_emit(s, "disappear", { id: s.id }); xy_emit(s, "disappear", { id: s.id });
delete instances[s.in].monsters[s.id]; delete instances[s.in].monsters[s.id];
s.oin = s.in = s.map = random_one(["spookytown", "halloween", "cave"]); s.oin = s.in = s.map = random_one(["spookytown", "halloween", "cave"]);
instances[s.in].monsters[s.id] = s; instances[s.in].monsters[s.id] = s;
var p = random_place(s.map); var pl = random_place(s.map);
s.moving = false; s.moving = false;
s.abs = true; s.abs = true;
s.map_def.boundary = [p.x, p.y, p.x, p.y]; s.map_def.boundary = [pl.x, pl.y, pl.x, pl.y];
s.map_def.i = s.map; s.map_def.i = s.map;
s.x = p.x; s.x = pl.x;
s.y = p.y; s.y = pl.y;
s.u = true; s.u = true;
s.cid++; s.cid++;
s.last_jump = new Date(); s.last_jump = new Date();
break;
}
} }
} }
} }