From d9ef1cd12e994299f72050d632629dc6865502b9 Mon Sep 17 00:00:00 2001 From: chardub Date: Thu, 6 Mar 2025 18:57:43 -0500 Subject: [PATCH] Promps users for updating spritepack files --- Data/Map106.rxdata | Bin 24743 -> 24983 bytes Data/Map647.rxdata | Bin 29962 -> 29808 bytes Data/MapInfos.rxdata | Bin 42773 -> 42773 bytes Data/Scripts/052_AddOns/HttpCalls.rb | 7 ++++--- Data/Scripts/052_AddOns/MultiSaves.rb | 24 ++++++++++++++++++------ Data/Scripts/DownloadedSettings.rb | 6 +++--- Data/System.rxdata | Bin 31698 -> 31697 bytes Graphics/Titles/loading_screen.png | Bin 12917 -> 24651 bytes 8 files changed, 25 insertions(+), 12 deletions(-) diff --git a/Data/Map106.rxdata b/Data/Map106.rxdata index a303eed83754fbe5978dc6832cac71bfd131e012..ed07b5331767f3d6e6419b71136b96296b164d38 100644 GIT binary patch literal 24983 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 delta 5131 zcmeHLTW=dh6!yC9+Hn$J5<77&PBt4miQ6p*^_gFQDv!`_ z&gDDbImaK}6>fhc+|&Xs8FfP~>6L52t+x+seS2zm*pDJ)Kvi4hZ+P7Y|Ky$FO7eqA z->y-`bz0shi^s8tT_RjFmCtj5$M(O68hnc@8Ned;VGsP~Yjua=K8JgL+4US4PGy#R zb{_`)j8&F?rpuf=Z|C>?1xK=DGrGgJd;J9{j!hbT{o>A7WC|4^>uwB>Iv*d=Kkg=wd@s&uI(K37>$*3|_Kmvpe&03gq} zd^3R0`%u71+(Kc<-V66Q3IqE)*i8>i5%&U_m-nV)Su~&_*$=vj8X9C)!4=6YO6AZH z95|dsBiK*ANF=+{S@diU9m0NeIBQrH%7@uKj{_1!jH<@)pRZ0A8o9K~p;VS{{DGadDQ1LEnb7-~Cn!%#;YYTN3+(A(xYUA)D0fv< zJ*O7e7q4J_Wp%zZBG1ZcINIrYdJ>g*jOfOMEQz(Ghj()jGgyl`tBnRfs zjgL>D2|SFB;0`p2n=u$|KnVTw+imyNsq%M3|OjBXHDK!G$7j ze3rZ@H?W;U$+SIJWBWm{y&r6E1=~g3!ff~3(kH<}7{F!tc<6_PVAFg<-ioJy#i*jM zGf5;q2?T2d?qg0u4}x7aGT2!oL!lnmX}`sLUvQicIohTHAC{$MwOqz(g(<|Yr$tOz zTdV()%yva5+^2OXFDgZKX+tSvWqD1lZv9(kwh09W@tFEe!^yuU{FZg{Ll zcCXI5>)oR@>oSo(F5`4ViV@3o*1f@=q4UheTt=(YApNOvM<|Djs$}#N+$bIw_a-lY zLAH9@JJ}6flc%FGPnE_xNU}FvkIH~n_fpdkJ&13^UlMM6Y$}5ex0r5aA%AIiliGT(TH%4K++{3=~9q%Ef`$j zAe?UIk{eN(u{(E(5A^oGqE=+z84a2M(_fdkN!XL|E($!p?{hAOMyU?9@3qmqS$Jxw zUCekl^YlEU;#=HaEfwHQt5ig6&--l8+n=r09t}5MbV$dIV2L=ywBQvCbihF-6TasT z0OBOS#*z}NZJabk+~wR(`a0w}w&)StEMn|jWY+k;T{s9Ilk<#<$!dI+rZ+9^95hWA z^J?eAU|FsQL1~~d~tD^>l^8fQcXTSd*|3fMnMVx!UP0CNufH(-b6UsoOo8!;c zWZ238t2vzWtPCIvi6|`qjoW8_C2gN`HSM!G6#T0~0IG~MR)bdos>V^f8a(eNSs56D zylcflM;S1+46srFqsvQXDER0CWxIWS`M9#7&Xx4CQd&`gzMQc#hLmFh9>P+cA*D)S zUEB7VPd}|p)w6R7?Cb!3nFc$9xXEE>wZArpREG&-sMPxtQ2fu!px{dw;UV>(g diff --git a/Data/Map647.rxdata b/Data/Map647.rxdata index 2517d7217b1dba3ce14a1677c256870bb2430e3f..f1c79ec8cfec6df4bc9d8fb53f7eb8e54934f366 100644 GIT binary patch literal 29808 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 f;7jr8??KX^o5UX^9msC5A`Tmi*R4A%ev delta 29 lcmbPwj%n&SrVU#Xm@Y9+-j<-mC^GqG!cj)I&GQq>Tmixj42l2% diff --git a/Data/Scripts/052_AddOns/HttpCalls.rb b/Data/Scripts/052_AddOns/HttpCalls.rb index 350e12556..f785824b8 100644 --- a/Data/Scripts/052_AddOns/HttpCalls.rb +++ b/Data/Scripts/052_AddOns/HttpCalls.rb @@ -43,6 +43,7 @@ def download_file(url, saveLocation) return saveLocation else echoln _INTL("Failed to download file {1}", url) + echoln caller end return nil rescue MKXPError, Errno::ENOENT => error @@ -72,6 +73,7 @@ def fetch_sprite_from_web(url, destinationPath) return true end echoln "Failed to download #{url}" + echoln caller return false rescue MKXPError => e echoln "MKXPError: #{e.message}" @@ -85,8 +87,7 @@ def fetch_sprite_from_web(url, destinationPath) end def download_spritesheet(pif_sprite, dest) - #return nil if requestRateExceeded?(Settings::CUSTOMSPRITES_RATE_LOG_FILE,Settings::CUSTOMSPRITES_ENTRIES_RATE_TIME_WINDOW,Settings::CUSTOMSPRITES_RATE_MAX_NB_REQUESTS) - return nil if requestRateExceeded?(Settings::CUSTOMSPRITES_RATE_LOG_FILE, 60, 15) + return nil if requestRateExceeded?(Settings::CUSTOMSPRITES_RATE_LOG_FILE,Settings::CUSTOMSPRITES_ENTRIES_RATE_TIME_WINDOW,Settings::CUSTOMSPRITES_RATE_MAX_NB_REQUESTS) case pif_sprite.type when :AUTOGEN return @@ -420,8 +421,8 @@ def requestRateExceeded?(logFile, timeWindow, maxRequests, update_log_file = tru # Write the updated log back to the file if update_log_file File.write(logFile, request_timestamps.join("\n")) - echoln "Rate limiting: Current: #{request_timestamps.size}, Max: #{maxRequests}" end + echoln "Rate limiting: Current: #{request_timestamps.size}, Max: #{maxRequests}" rateLimitExceeded = request_timestamps.size > maxRequests return rateLimitExceeded end diff --git a/Data/Scripts/052_AddOns/MultiSaves.rb b/Data/Scripts/052_AddOns/MultiSaves.rb index 6c8c00518..1299ec08f 100644 --- a/Data/Scripts/052_AddOns/MultiSaves.rb +++ b/Data/Scripts/052_AddOns/MultiSaves.rb @@ -379,9 +379,22 @@ class PokemonLoadScreen def check_for_spritepack_update() $updated_spritesheets = [] if !$updated_spritesheets if new_spritepack_was_released() - reset_updated_spritesheets_cache() - $updated_spritesheets = [] - end + pbFadeOutIn() { + return if !downloadAllowed?() + should_update = pbConfirmMessage("A new spritepack was released. Would you like to let the game update your game's sprites automatically?") + if should_update + updateCreditsFile() + updateOnlineCustomSpritesFile() + reset_updated_spritesheets_cache() + spritesLoader = BattleSpriteLoader.new + spritesLoader.clear_sprites_cache(:CUSTOM) + spritesLoader.clear_sprites_cache(:BASE) + + $updated_spritesheets = [] + pbMessage("Data files updated. New sprites will now be downloaded as you play!") + end + } + end end def reset_updated_spritesheets_cache() @@ -426,9 +439,7 @@ class PokemonLoadScreen def pbStartLoadScreen updateHttpSettingsFile - updateCreditsFile updateCustomDexFile - updateOnlineCustomSpritesFile newer_version = find_newer_available_version if newer_version pbMessage(_INTL("Version {1} is now available! Please use the game's installer to download the newest version. Check the Discord for more information.", newer_version)) @@ -444,6 +455,7 @@ class PokemonLoadScreen pbMessage(_INTL("{1} new custom sprites were imported into the game", $game_temp.nb_imported_sprites.to_s)) end checkEnableSpritesDownload + $game_temp.nb_imported_sprites = nil copyKeybindings() save_file_list = SaveData::AUTO_SLOTS + SaveData::MANUAL_SLOTS @@ -507,11 +519,11 @@ class PokemonLoadScreen @scene.pbEndScene Game.load(@save_data) $game_switches[SWITCH_V5_1] = true + check_for_spritepack_update() ensureCorrectDifficulty() setGameMode() initialize_alt_sprite_substitutions() $PokemonGlobal.autogen_sprites_cache = {} - check_for_spritepack_update() preload_party(@save_data[:player]) return when cmd_new_game diff --git a/Data/Scripts/DownloadedSettings.rb b/Data/Scripts/DownloadedSettings.rb index ff4ddc427..9a9487a12 100644 --- a/Data/Scripts/DownloadedSettings.rb +++ b/Data/Scripts/DownloadedSettings.rb @@ -32,8 +32,8 @@ module Settings BASE_POKEMON_SPRITESHEET_TRUE_SIZE_URL = "https://infinitefusion.net/customsprites/spritesheets/spritesheets_base/" CUSTOM_FUSIONS_SPRITESHEET_TRUE_SIZE_URL = "https://infinitefusion.net/customsprites/spritesheets/spritesheets_custom/" - CUSTOMSPRITES_RATE_MAX_NB_REQUESTS = 5 #Nb. requests allowed in each time window - CUSTOMSPRITES_ENTRIES_RATE_TIME_WINDOW = 120 # In seconds + CUSTOMSPRITES_RATE_MAX_NB_REQUESTS = 15 #Nb. requests allowed in each time window + CUSTOMSPRITES_ENTRIES_RATE_TIME_WINDOW = 60 # In seconds MAX_NB_SPRITES_TO_DOWNLOAD_AT_ONCE =5 #POKEDEX ENTRIES @@ -44,7 +44,7 @@ module Settings AI_ENTRIES_RATE_LOG_FILE = 'Data/pokedex/rate_limit.log' # Path to the log file #Spritepack - NEWEST_SPRITEPACK_MONTH = 2 + NEWEST_SPRITEPACK_MONTH = 4 NEWEST_SPRITEPACK_YEAR = 2025 diff --git a/Data/System.rxdata b/Data/System.rxdata index 2ae67d064e008977504d7d9d7f5b497937e61d6c..17ce3170cd078e608be7d39eb30a53704d5d2b9c 100644 GIT binary patch delta 27 jcmccgo$=y##tn~USeV~1b#Hzlb1<5zooVyx3Uy`xz8ef7 delta 28 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 literal 12917 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