2025-02-12 18:46:27 -05:00
mod eac ;
mod more_auth ;
mod versioner ;
mod maintenancer ;
mod game_quality ;
mod login_flags ;
mod load_analytics ;
mod platform_config ;
mod tier_banding ;
mod cube_list ;
mod special_items ;
mod premium_config ;
mod palette_town ;
mod client_config ;
mod crf_config ;
mod weapon_stats ;
mod movement_stats ;
mod power_bar_stats ;
mod damage_boost_stats ;
mod battle_arena_config ;
mod cpu_limits_config ;
mod cosmetic_config ;
mod taunts_config ;
mod all_customisations_info ;
2025-02-23 16:10:21 -05:00
// some social requests must complete here
mod tech_points ;
mod cube_inventory ;
mod player_level ;
mod balance_info ;
mod premium_duration ;
mod tutorial_status ;
mod user_perms ;
mod garage_slots ;
mod robopass_season ;
mod owned_cosmetics ;
mod dev_message ;
mod custom_games_maps ;
mod avatar_info ;
mod custom_game_session ;
mod user_xp ;
mod garage_upgrades ;
mod game_event_params ;
mod garage_bay_uuid ;
mod tech_tree_data ;
mod item_shop_bundles ;
2025-03-01 16:22:57 -05:00
mod robot_customisations ;
mod player_data ;
mod player_robopass ;
mod weapon_upgrades ;
mod player_rank ;
mod ab_test_group ;
mod league_limits ;
mod crf_limits ;
mod robot_mastery_settings ;
mod player_started_purchase ;
mod custom_games_team ;
mod custom_games_invite ;
mod chat_settings ;
mod prebuilt_robots ;
mod prebuilt_colours ;
mod robopass_preview_items ;
mod singleplayer_campaigns ;
mod purchases ;
mod building_xp_config ;
mod weapon_rating_static ;
mod weapon_xp_static ;
mod machine ;
mod machine_colour ;
mod last_completed_campaign ;
mod daily_quests ;
mod cube_awards ;
mod robot_sanction ;
mod building_xp ;
2025-03-02 09:52:44 -05:00
mod reconnect_game ;
2025-03-15 17:21:18 -04:00
mod regen_config ;
mod pageantry ;
mod signup_time ;
mod validate_machine ;
2025-03-18 16:47:11 -04:00
mod game_mode_config ;
mod score_multipliers_config ;
mod player_robot_rank ;
2025-03-29 22:08:08 -04:00
mod weapon_order ;
2025-05-10 13:19:35 -04:00
mod garage_slot_limit ;
mod garage_slot_add ;
mod garage_slots_order ;
mod garage_slot_select ;
2025-05-11 12:09:23 -04:00
mod garage_slot_dismantle ;
mod garage_slot_upgrade ;
2025-05-17 23:06:07 -04:00
mod crf_earnings ;
mod crf_list_query ;
mod crf_vehicle_data ;
mod crf_purchase ;
2025-05-18 21:52:03 -04:00
mod crf_upload ;
2025-05-25 12:26:08 -04:00
mod avatar_set_custom ;
mod avatar_set ;
2025-05-26 21:30:28 -04:00
mod garage_slot_controls ;
mod garage_slot_set_customisations ;
2025-05-31 15:36:33 -04:00
mod garage_slot_name ;
2025-05-31 16:33:34 -04:00
mod garage_slot_copy ;
2025-07-22 18:27:41 -04:00
mod steam_promo ;
2026-01-01 08:07:32 -05:00
mod campaign_save_result ;
2026-01-01 20:34:12 -05:00
mod item_shop_purchase ;
2026-01-03 11:19:24 -05:00
mod code_redeem ;
2026-01-04 16:43:36 -05:00
mod crf_rate_vehicle ;
2025-02-12 18:46:27 -05:00
use polariton_server ::operations ::OperationsHandler ;
2025-03-09 16:28:03 -04:00
pub fn handler ( init_ctx : & crate ::InitConfig ) -> OperationsHandler < crate ::UserTy > {
2025-02-12 18:46:27 -05:00
OperationsHandler ::new ()
2025-06-14 17:57:34 -04:00
. modify ( oj_rc_core ::polariton ::RcOpModifier )
2025-04-06 11:00:37 -04:00
. add ( eac ::EacChallengeIgnorer )
. add ( more_auth ::MoreLobbyAuth )
2026-01-04 21:36:11 -05:00
. add ( versioner ::version_teller ( & init_ctx . cubes ))
2025-04-06 11:00:37 -04:00
. add ( maintenancer ::MaintenanceModeTeller )
. add ( game_quality ::QualityConfigTeller )
. add ( login_flags ::UserFlagsTeller )
. add ( polariton_server ::operations ::Ack ::< 132 , _ > ::default ()) // verify user level
. add ( load_analytics ::NoAnalytics )
. add ( polariton_server ::operations ::Ack ::< 131 , _ > ::default ()) // analytics updated notification
2025-08-13 22:17:24 -04:00
. add ( platform_config ::platform_config_provider ( & init_ctx . cubes ))
2025-04-06 11:00:37 -04:00
. add ( tier_banding ::tiers_banding_provider ())
. add ( cube_list ::cube_list_provider ( & init_ctx . cubes ))
. add ( special_items ::special_item_list_provider ())
. add ( premium_config ::premium_config_provider ())
. add ( palette_town ::kanto ())
. add ( client_config ::client_config_provider ( & init_ctx . cubes ))
. add ( crf_config ::crf_config_provider ())
. add ( weapon_stats ::weapon_config_provider ( & init_ctx . cubes ))
. add ( movement_stats ::movement_config_provider ( & init_ctx . cubes ))
2025-08-17 15:03:30 -04:00
. add ( power_bar_stats ::power_bar_provider ( & init_ctx . cubes ))
2025-04-06 11:00:37 -04:00
. add ( damage_boost_stats ::damage_boost_provider ())
2025-08-30 21:36:01 -04:00
. add ( battle_arena_config ::battle_arena_config_provider ( & init_ctx . cubes , & init_ctx . factory , init_ctx . parsers . weapon_order (), init_ctx . parsers . cpu_counter ()))
2025-04-06 11:00:37 -04:00
. add ( cpu_limits_config ::cpu_config_provider ())
. add ( cosmetic_config ::cosmetic_limits_config_provider ())
. add ( taunts_config ::taunts_config_provider ())
. add ( all_customisations_info ::all_customisations_provider ())
. add ( tech_points ::tech_points_provider ())
. add ( cube_inventory ::cube_inv_provider ( & init_ctx . cubes ))
. add ( player_level ::player_level_info_provider ())
. add ( balance_info ::balance_wallet_provider ())
. add ( premium_duration ::premium_remaining_provider ())
. add ( tutorial_status ::tutorial_info_provider ())
. add ( user_perms ::user_rights_provider ())
. add ( garage_slots ::garage_slot_provider ())
. add ( robopass_season ::robopass_season_provider ())
. add ( owned_cosmetics ::owned_cosmetics_provider ())
. add ( owned_cosmetics ::selected_cosmetics_provider ())
. add ( dev_message ::dev_message_provider ( & init_ctx . cubes ))
. add ( custom_games_maps ::allowed_maps_provider ())
2025-05-25 12:26:08 -04:00
. add ( avatar_info ::avatar_get_provider ())
2025-04-06 11:00:37 -04:00
. add ( custom_game_session ::get_custom_session_provider ())
. add ( user_xp ::get_user_xp_provider ())
2025-05-11 12:09:23 -04:00
. add ( garage_upgrades ::garage_upgrades_provider ( & init_ctx . cubes ))
2025-05-27 22:07:04 -04:00
. add ( game_event_params ::event_system_params_provider ( & init_ctx . cubes ))
2025-04-06 11:00:37 -04:00
. add ( garage_bay_uuid ::garage_id_provider ())
. add ( tech_tree_data ::tech_tree_layout_provider ( & init_ctx . cubes ))
2026-01-01 20:34:12 -05:00
. add ( item_shop_bundles ::item_bundle_provider ( & init_ctx . cubes ))
2025-04-06 11:00:37 -04:00
. add ( robot_customisations ::bay_customisations_provider ())
. add ( player_data ::player_data_provider ())
. add ( player_robopass ::player_robopass_season_provider ())
. add ( weapon_upgrades ::weapons_upgrade_provider ( & init_ctx . cubes ))
. add ( polariton_server ::operations ::Ack ::< 172 , _ > ::default ()) // custom game change robot tier (param 67 is tier)
. add ( player_rank ::rank_provider ())
. add ( player_rank ::rank_static_provider ())
. add ( ab_test_group ::test_group_provider ())
. add ( league_limits ::league_battle_parameters_provider ())
. add ( crf_limits ::robot_shop_submission_infos_provider ())
. add ( robot_mastery_settings ::robot_mastery_settings_provider ())
. add ( player_started_purchase ::started_purchase_provider ())
. add ( custom_games_team ::team_setup_provider ())
. add ( polariton_server ::operations ::Ack ::< 152 , _ > ::default ()) // custom game player state changed (188 is desired state)
. add ( custom_games_invite ::pending_invite_provider ())
. add ( chat_settings ::chat_settings_provider ())
2025-05-29 20:55:36 -04:00
. add ( polariton_server ::operations ::Ack ::< 19 , _ > ::default ()) // save chat settings
2025-04-06 11:00:37 -04:00
. add ( prebuilt_robots ::garage_robot_data_provider ())
. add ( prebuilt_colours ::garage_colour_combo_provider ())
. add ( robopass_preview_items ::robopass_preview_provider ())
2025-12-02 17:08:42 -05:00
. add ( singleplayer_campaigns ::singleplayer_campaigns_provider ( init_ctx ))
2025-04-06 11:00:37 -04:00
. add ( purchases ::pending_purchases_provider ())
. add ( building_xp_config ::building_xp_config_provider ())
. add ( weapon_rating_static ::weapon_rating_provider ())
. add ( weapon_xp_static ::weapon_xp_provider ())
. add ( machine ::garage_machine_provider ())
. add ( machine_colour ::garage_machine_colour_provider ())
. add ( last_completed_campaign ::completed_campaign_provider ())
. add ( daily_quests ::player_daily_quests_provider ())
. add ( tech_points ::tech_points_awards_provider ())
. add ( cube_awards ::cube_awards_provider ())
. add ( robot_sanction ::robot_sanction_provider ())
. add ( building_xp ::building_xp_save_provider ())
. add ( robot_sanction ::all_robot_sanctions_provider ())
. add ( reconnect_game ::available_reconnect_provider ())
2025-07-20 21:24:43 -04:00
. add ( machine ::garage_machine_save_provider ( init_ctx . parsers . cpu_counter ()))
2025-04-06 11:00:37 -04:00
. add ( polariton_server ::operations ::Ack ::< 32 , _ > ::default ()) // TODO handle SaveMachineColorRequest instead of ignoring it
. add ( polariton_server ::operations ::Ack ::< 45 , _ > ::default ()) // TODO handle UpdateThumbnailVersionRequest instead of ignoring it
. add ( weapon_order ::weapon_order_provider ( & init_ctx . cubes ))
. add ( regen_config ::auto_regen_config_provider ( & init_ctx . cubes ))
. add ( pageantry ::after_battle_vote_thresholds_provider ( & init_ctx . cubes ))
. add ( signup_time ::user_signup_date_provider ())
. add ( validate_machine ::validate_robot_provider ())
. add ( game_mode_config ::game_mode_config_provider ( & init_ctx . cubes ))
. add ( score_multipliers_config ::tdm_ai_score_config_provider ())
. add ( player_robot_rank ::player_robot_rank_provider ())
. add ( validate_machine ::validate_campaign_robot_provider ())
2025-12-02 17:08:42 -05:00
. add ( singleplayer_campaigns ::singleplayer_complete_campaign_provider ( init_ctx ))
2026-01-01 08:07:32 -05:00
. add ( campaign_save_result ::campaign_save_awards_provider ())
2025-04-06 11:00:37 -04:00
. add ( singleplayer_campaigns ::singleplayer_save_complete_campaign_provider ()) // TODO handle UpdatePlayerCompletedCampaignWaveRequest saving
2025-05-10 13:19:35 -04:00
. add ( garage_slot_limit ::garage_slots_limit ( & init_ctx . cubes ))
. add ( garage_slot_add ::garage_slot_add_provider ())
. add ( garage_slots_order ::garage_slot_order_provider ())
. add ( garage_slot_select ::garage_slot_selector ())
2025-05-11 12:09:23 -04:00
. add ( garage_slot_dismantle ::garage_slot_dismantler ())
. add ( garage_slot_upgrade ::garage_slot_upgrage_provider ())
2025-05-17 23:06:07 -04:00
. add ( crf_earnings ::robot_shop_user_earnings_provider ())
. add ( crf_list_query ::crf_item_list_query_provider ( & init_ctx . factory ))
. add ( crf_vehicle_data ::crf_item_data_provider ( & init_ctx . factory ))
2025-07-20 21:24:43 -04:00
. add ( crf_purchase ::crf_copy_to_bay_provider ( & init_ctx . factory , init_ctx . parsers . weapon_order (), init_ctx . parsers . cpu_counter ()))
2025-05-18 21:52:03 -04:00
. add ( crf_upload ::crf_upload_provider ( & init_ctx . factory ))
2025-05-25 12:26:08 -04:00
. add ( avatar_set_custom ::custom_avatar_upload_handler ())
. add ( avatar_set ::avatar_set_provider ())
2025-05-26 21:30:28 -04:00
. add ( garage_slot_controls ::garage_slot_controls_provider ())
. add ( garage_slot_set_customisations ::garage_slot_customisation_provider ())
2025-05-31 15:36:33 -04:00
. add ( garage_slot_name ::garage_slot_rename_provider ())
2025-05-31 16:33:34 -04:00
. add ( garage_slot_copy ::garage_slot_copy_provider ())
2025-07-06 17:36:52 -04:00
. add ( polariton_server ::operations ::Ack ::< 12 , _ > ::default ()) // TODO handle UpdatePlayerDailyQuestProgressRequest instead of ignoring it
2026-01-04 16:43:36 -05:00
. add ( crf_rate_vehicle ::crf_rating_provider ( & init_ctx . factory ))
2025-12-13 16:10:45 -05:00
//.add(polariton_server::operations::Ack::<97, _>::default()) // TODO handle UpdateShopRobotOffsetRequest instead of ignoring it (this seems to break newly-uploaded vehicles for now)
2025-07-22 18:27:41 -04:00
. add ( steam_promo ::steam_promos_provider ())
2026-01-01 20:34:12 -05:00
. add ( item_shop_purchase ::item_purchase_provider ( & init_ctx . cubes ))
2026-01-03 11:19:24 -05:00
. add ( code_redeem ::code_redeem_provider ( & init_ctx . cubes ))
2025-02-12 18:46:27 -05:00
}