buym_def = TagDef("buym", blam_header('buym'), Struct('tagdata', dependency("forward", "snd!"), dependency("back", "snd!"), dependency("click_1", "snd!"), dependency("click_2", "snd!"), dependency("click_3", "snd!"), dependency("click_4", "snd!"), dependency("sound_7", "snd!"), dependency("cursor", "snd!"), dependency("sound_9", "snd!"), dependency("sound_10", "snd!"), dependency("sound_11", "snd!"), dependency("sound_12", "snd!"), dependency("sound_13", "snd!"), dependency("sound_14", "snd!"), dependency("sound_15", "snd!"), dependency("sound_16", "snd!"), dependency("sound_17", "snd!"), dependency("sound_18", "snd!"), dependency("sound_19", "snd!"), dependency("sound_20", "snd!"), dependency("select_magic", "snd!"), dependency("select_tech", "snd!"), dependency("assign_magic", "snd!"), dependency("assign_tech", "snd!"), dependency("sound_25", "snd!"), Pad(1344), dependency("sound_26", "snd!"), dependency("sound_27", "snd!"), dependency("sound_28", "snd!"), dependency("sound_29", "snd!"), SIZE=2000, ), ext=".buy_menu", endian=">" )
sLdT_unknown_3 = Struct("unknown_3", BytesRaw("unknown_0", SIZE=32, VISIBLE=False), h3_reflexive("unknown_1", sLdT_unknown_3_unknown_1), VISIBLE=False, ENDIAN=">", SIZE=44) sLdT_body = Struct("tagdata", BytesRaw("unknown_0", SIZE=4, VISIBLE=False), h3_reflexive("lightmap", sLdT_lightmap), BytesRaw("unknown_1", SIZE=24, VISIBLE=False), h3_reflexive("airprobes", sLdT_airprobe), h3_reflexive("unknown_2", sLdT_unknown_2), h3_reflexive("unknown_3", sLdT_unknown_3), BytesRaw("unknown_4", SIZE=12, VISIBLE=False), ENDIAN=">", SIZE=88) def get(): return sLdT_def sLdT_def = TagDef("sLdT", h3_blam_header('sLdT'), sLdT_body, ext=".%s" % h3_tag_class_fcc_to_ext["sLdT"], endian=">", tag_cls=H3Tag)
CASES={ 33: block_extension, 44: image_block }) gif_header = Struct( "gif_header", LUInt24("gif_sig", DEFAULT='FIG'), LUEnum24("version", ("Ver_87a", 'a78'), ("Ver_89a", 'a98'), DEFAULT='a98')) gif_logical_screen = Container( "gif_logical_screen", LUInt16("canvas_width"), LUInt16("canvas_height"), LBitStruct("flags", UBitInt("color_table_size", SIZE=3), Bit("sorted"), UBitInt("color_resolution", SIZE=3), Bit("color_table")), UInt8("bg_color_index"), UInt8("aspect_ratio"), BytearrayRaw("global_color_table", SIZE=color_table_size)) gif_def = TagDef("gif", gif_header, gif_logical_screen, WhileArray("data_blocks", SUB_STRUCT=data_block, CASE=has_next_data_block), UInt8("trailer", MIN=59, MAX=59, DEFAULT=';', EDITABLE=False, VISIBLE=False), ext=".gif", endian="<")
Timestamp32("date_modified"), SIZE=16) appearance = Container( "appearance", theme_name, widths_and_heights, padding, depths, colors, fonts, GUI_NAME="Appearance", COMMENT=( "\nThese settings control how everything looks. Colors, fonts, etc." "\nThese settings are what get saved to/loaded from style files.\n")) style_def = TagDef( "binilla_style", version_info, array_counts, appearance, ENDIAN='<', ext=".sty", ) style_version_def = TagDef(version_info) def get(): return style_def
"IHDR": ihdr_chunk, "PLTE": plte_chunk, "IDAT": idat_chunk, "IEND": iend_chunk, "cHRM": chrm_chunk, "gAMA": gama_chunk, "iCCP": iccp_chunk, "sBIT": sbit_chunk, "sRGB": srgb_chunk, "hIST": hist_chunk, "pHYs": phys_chunk, "tRNS": trns_chunk, "tIME": time_chunk, "iTXt": itxt_chunk, "tEXt": text_chunk, "zTXt": ztxt_chunk, } ) png_def = TagDef("png", StrRawLatin1("png_sig", DEFAULT='\x89PNG\x0D\x0A\x1A\x0A', EDITABLE=False, SIZE=8), WhileArray("chunks", SUB_STRUCT=chunk, CASE=has_next_chunk ), ext=".png", endian=">", tag_cls=PngTag )
"go_to", "activities", "activity", "posture", "activity_default", "special", ), Bool32( "behaviors7", "formation", "grunt_scared_by_elite", "stunned", "cure_isolation", "deploy_turret", ), h3_reflexive("special_movement", styl_special_movement), h3_reflexive("behavior_list", styl_behavior_list), ENDIAN=">", SIZE=92) def get(): return styl_def styl_def = TagDef("styl", h3_blam_header('styl'), styl_body, ext=".%s" % h3_tag_class_fcc_to_ext["styl"], endian=">", tag_cls=H3Tag)
SEnum16("anchor", *render_anchor), Bool16("secondary_map_flags", "unfiltered"), Struct("u_animation", INCLUDE=anim_src_func_per_pha_sca), Struct("v_animation", INCLUDE=anim_src_func_per_pha_sca), Struct("rotation_animation", INCLUDE=anim_src_func_per_pha_sca_rot), QStruct("rotation_center", INCLUDE=xy_float)), Pad(4), Float("zsprite_radius_scale"), SIZE=604) rain_body = Struct( "tagdata", Pad(36), reflexive("particle_types", particle_type, 8, DYN_NAME_PATH='.name'), SIZE=48, ) def get(): return rain_def rain_def = TagDef( "rain", blam_header("rain"), rain_body, ext=".weather_particle_system", endian=">", tag_cls=HekTag, )
# Definition generated from Assembly XML tag def # Date generated: 2018/12/03 04:56 # # revision: 1 author: Assembly # Generated plugin from scratch. # revision: 2 author: Moses_of_Egypt # Cleaned up and converted to SuPyr definition # #################################################### from ..common_descs import * from .objs.tag import * from supyr_struct.defs.tag_def import TagDef rwrd_body = Struct("tagdata", BytesRaw("unknown", SIZE=76, VISIBLE=False), ENDIAN=">", SIZE=76) def get(): return rwrd_def rwrd_def = TagDef("rwrd", h3_blam_header('rwrd'), rwrd_body, ext=".%s" % h3_tag_class_fcc_to_ext["rwrd"], endian=">", tag_cls=H3Tag)
skya_underwater = Struct("underwater", h3_string_id("name"), color_argb_float("color"), ENDIAN=">", SIZE=20) skya_body = Struct("tagdata", BytesRaw("unknown_0", SIZE=4, VISIBLE=False), h3_dependency("fog_bitmap"), Array("unknown_array", SUB_STRUCT=Float("unknown"), SIZE=7, VISIBLE=False), BytesRaw("unknown_1", SIZE=4, VISIBLE=False), h3_reflexive("atmosphere_properties", skya_atmosphere_propertie), h3_reflexive("underwater", skya_underwater), ENDIAN=">", SIZE=76) def get(): return skya_def skya_def = TagDef("skya", h3_blam_header('skya'), skya_body, ext=".%s" % h3_tag_class_fcc_to_ext["skya"], endian=">", tag_cls=H3Tag)
), Struct( "post_combat_actions", snd_dependency("celebration"), snd_dependency("check_body_enemy"), snd_dependency("check_body_friend"), snd_dependency("shooting_dead_enemy"), snd_dependency("shooting_dead_enemy_player"), Pad(64), ), Struct( "post_combat_chatter", snd_dependency("alone"), snd_dependency("unscathed"), snd_dependency("seriously_wounded"), snd_dependency("seriously_wounded_re"), snd_dependency("massacre"), snd_dependency("massacre_re"), snd_dependency("rout"), snd_dependency("rout_re"), ), SIZE=4112, ) udlg_def = TagDef("udlg", blam_header('udlg'), udlg_body, ext=".dialogue", endian=">", tag_cls=HekTag)
Bool16( "shader_model", "enabled", "apply_after_hud", ), Pad(2), Float("bloom_size"), Float("bloom_exposure"), Float("bloom_mix_amount", MIN=0.0, MAX=1.0), QStruct("bloom_minimum_color", INCLUDE=rgb_float), QStruct("bloom_maximum_color", INCLUDE=rgb_float), SIZE=40, ) sppg_body = Struct("tagdata", Pad(4), reflexive("bloom_globals", bloom_global, 1), SIZE=244) def get(): return sppg_def sppg_def = TagDef("sppg", blam_header_os('sppg'), sppg_body, ext=".shader_postprocess_globals", endian=">", tag_cls=HekTag)
#################################################### from ..common_descs import * from .objs.tag import * from supyr_struct.defs.tag_def import TagDef wgtz_screen_widget = Struct("screen_widget", h3_dependency("widget"), ENDIAN=">", SIZE=16) wgtz_body = Struct("tagdata", h3_dependency("shared_ui_globals"), h3_dependency("editable_settings"), h3_dependency("matchmaking_hopper_strings"), h3_reflexive("screen_widgets", wgtz_screen_widget), ENDIAN=">", SIZE=60) def get(): return wgtz_def wgtz_def = TagDef("wgtz", h3_blam_header('wgtz'), wgtz_body, ext=".%s" % h3_tag_class_fcc_to_ext["wgtz"], endian=">", tag_cls=H3Tag)
Pad(16), #Secondary map Struct("secondary_map", dependency("bitmap", "bitm"), SEnum16("anchor", *render_anchor), Bool16("flags", "unfiltered" ), Struct("u_animation", INCLUDE=anim_src_func_per_pha_sca), Struct("v_animation", INCLUDE=anim_src_func_per_pha_sca), Struct("rotation_animation", INCLUDE=anim_src_func_per_pha_sca_rot), QStruct("rotation_center", INCLUDE=xy_float), Pad(4), Float("zsprite_radius_scale"), ), SIZE=356, ) def get(): return part_def part_def = TagDef("part", blam_header("part", 2), part_body, ext=".particle", endian=">", tag_cls=HekTag, )
aes_key_data_192 = Container('aes_key_data', UInt32("bytelen", DEFAULT=24), StrHex("key", SIZE='.bytelen')) aes_key_data_256 = Container('aes_key_data', UInt32("bytelen", DEFAULT=32), StrHex("key", SIZE='.bytelen')) # ######################## # -- Main Structure -- # # ######################## keyblob_header = Struct("header", b_type, UInt8("b_ver", DEFAULT=2, MIN=2), Pad(2), ai_key_alg) key_data = Switch('key_data', DEFAULT=Void('key_data'), CASE='.header.ai_key_alg.enum_name', CASES={ "CALG_RSA_KEYX": rsa_key_data, "CALG_AES": aes_key_data, "CALG_AES_128": aes_key_data_128, "CALG_AES_192": aes_key_data_192, "CALG_AES_256": aes_key_data_256 }) keyblob_def = TagDef("keyblob", keyblob_header, key_data, ext=".bin", endian="<")
"dpad left", "dpad right", "start", "back", "left thumb button", "right thumb button", "left stick", "right stick"), hud_help_text_color, dependency("hud_messages", "hmt "), objective_colors, waypoint_parameters, reflexive("waypoint_arrows", waypoint_arrow, 16, DYN_NAME_PATH='.name'), Pad(80), hud_globals, hud_damage_indicators, time_running_out, time_out, Pad(40), dependency("carnage_report_bitmap", "bitm"), misc_hud_crap, SIZE=1104) def get(): return hudg_def hudg_def = TagDef( "hudg", blam_header("hudg"), hudg_body, ext=".hud_globals", endian=">", tag_cls=HekTag, )
SInt16("unknown", VISIBLE=False), SInt16("layer"), SInt16("widescreen_y_offset"), SInt16("widescreen_x_offset"), SInt16("widescreen_y_unknown"), SInt16("widescreen_x_unknown"), SInt16("standard_y_offset"), SInt16("standard_x_offset"), SInt16("standard_y_unknown"), SInt16("standard_x_unknown"), h3_dependency("animation"), h3_string_id("data_source_name"), h3_dependency("skin"), SInt32("row_count"), h3_reflexive("list_widget_items", lst3_list_widget_item), h3_dependency("up_arrow_bitmap"), h3_dependency("down_arrow_bitmap"), ENDIAN=">", SIZE=112) def get(): return lst3_def lst3_def = TagDef("lst3", h3_blam_header('lst3'), lst3_body, ext=".%s" % h3_tag_class_fcc_to_ext["lst3"], endian=">", tag_cls=H3Tag)
# For authors and copyright check AUTHORS.TXT # # Reclaimer is free software under the GNU General Public License v3.0. # See LICENSE for more information. # ''' This variant of the gametype tag is intended to allow easily creating a gametype from within Mozzarilla by just selecting the xbox_gametype def ''' from reclaimer.misc.defs.pc_gametype import xbox_gametype_header, settings,\ xbox_gametype_footer from reclaimer.misc.defs.objs.xbox_gametype import XboxGametypeTag from supyr_struct.defs.tag_def import TagDef def get(): return xbox_gametype_def xbox_gametype_def = TagDef( 'xbox_gametype', xbox_gametype_header, settings, xbox_gametype_footer, ext='.lst', endian='<', tag_cls=XboxGametypeTag, )
SInt16("app_offset_x"), SInt16("app_offset_y"), SInt16("sash_position"), SIZE=64 ) paths = Array("paths", SUB_STRUCT=path, SIZE=".array_sizes.path_count", NAME_MAP=("last_dir", "tagslist", "tags_dir", "data_dir"), VISIBLE=False ) column_widths = UInt16Array("column_widths", SIZE=".array_sizes.column_widths_size", VISIBLE=False ) fonts = Array("fonts", SUB_STRUCT=font, SIZE=".array_sizes.font_count", ) config_def = TagDef("refinery_config", config_header, array_sizes, app_window, paths, column_widths, fonts, ENDIAN='<', ext=".cfg", )
snde_body = Struct("tagdata", BytesRaw("unknown_0", SIZE=4, VISIBLE=False), SInt16("priority"), SInt16("unknown_1", VISIBLE=False), Float("room_intensity"), Float("room_intensity_high_frequency"), Float("room_rolloff"), Float("decay_time"), Float("decay_high_frequency_ratio"), Float("reflections_intensity", VISIBLE=False), Float("reflections_delay"), Float("reverb_intensity"), Float("reverb_delay"), Float("diffusion"), Float("density"), Float("high_frequency_refrence"), BytesRaw("unknown_2", SIZE=16, VISIBLE=False), ENDIAN=">", SIZE=72) def get(): return snde_def snde_def = TagDef("snde", h3_blam_header('snde'), snde_body, ext=".%s" % h3_tag_class_fcc_to_ext["snde"], endian=">", tag_cls=H3Tag)
# See LICENSE for more information. # from ...common_descs import * from ...hek.defs.objs.tag import HekTag from supyr_struct.defs.tag_def import TagDef efpp_attrs = Struct("efpp_attrs", Pad(12), QStruct("quad_tesselation", SInt16("x"), SInt16("y"), ORIENT='h'), from_to_zero_to_one("x_screen_bounds"), from_to_zero_to_one("y_screen_bounds"), SIZE=60) efpp_body = Struct("tagdata", efpp_attrs) def get(): return efpp_def efpp_def = TagDef("efpp", blam_header_os('efpp'), efpp_body, ext=".effect_postprocess", endian=">", tag_cls=HekTag)
h3_dependency("unknown"), h3_dependency("ctf_intro_ui"), h3_dependency("slayer_intro_ui"), h3_dependency("oddball_intro_ui"), h3_dependency("king_of_the_hill_intro_ui"), h3_dependency("sandbox_intro_ui"), h3_dependency("vip_intro_ui"), h3_dependency("juggernaut_intro_ui"), h3_dependency("territories_intro_ui"), h3_dependency("assault_intro_ui"), h3_dependency("infection_intro_ui"), ENDIAN=">", SIZE=524 ) mulg_body = Struct("tagdata", h3_reflexive("universal", mulg_universal), h3_reflexive("runtime", mulg_runtime), ENDIAN=">", SIZE=24 ) def get(): return mulg_def mulg_def = TagDef("mulg", h3_blam_header('mulg'), mulg_body, ext=".%s" % h3_tag_class_fcc_to_ext["mulg"], endian=">", tag_cls=H3Tag )
pphy_body = Struct( "tagdata", Bool32("flags", "flamethrower_particle_collision", "collides_with_structures", "collides_with_water_surface", "uses_simple_wind", "uses_damped_wind", "no_gravity"), # these next three are courtesy of Sparky. I had # no idea these existed till I looked in Eschaton. # kavawuvi figured out how to calculate them(see PphyTag) FlFloat("scaled_density", VISIBLE=False), FlFloat("water_gravity_scale", VISIBLE=False), FlFloat("air_gravity_scale", VISIBLE=False), Pad(16), Float("density", SIDETIP="g/mL", COMMENT=density_comment), #g/mL Float("air_friction"), Float("water_friction"), Float("surface_friction"), Float("elasticity"), SIZE=64) def get(): return pphy_def pphy_def = TagDef("pphy", blam_header('pphy'), pphy_body, ext=".point_physics", endian=">", tag_cls=PphyTag)
SIZE=16) rmdf_unknown_2 = Struct("unknown_2", BytesRaw("unknown", SIZE=16, VISIBLE=False), VISIBLE=False, ENDIAN=">", SIZE=16) rmdf_body = Struct("tagdata", h3_dependency("unknown_0", VISIBLE=False), h3_reflexive("methods", rmdf_method), h3_reflexive("unknown_1", rmdf_unknown_1), h3_reflexive("unknown_2", rmdf_unknown_2), h3_dependency("unknown_3", VISIBLE=False), h3_dependency("unknown_4", VISIBLE=False), BytesRaw("unknown_5", SIZE=8, VISIBLE=False), ENDIAN=">", SIZE=92) def get(): return rmdf_def rmdf_def = TagDef("rmdf", h3_blam_header('rmdf'), rmdf_body, ext=".%s" % h3_tag_class_fcc_to_ext["rmdf"], endian=">", tag_cls=H3Tag)
*grenade_types), reflexive("rasterizer_datas", rasterizer_data, 1), reflexive("interface_bitmaps", interface_bitmaps, 1), reflexive("cheat_weapons", cheat_weapon, 20, DYN_NAME_PATH='.weapon.filepath'), reflexive("cheat_powerups", cheat_powerup, 20, DYN_NAME_PATH='.powerup.filepath'), reflexive("multiplayer_informations", multiplayer_information, 1), reflexive("player_informations", player_information, 1), reflexive("first_person_interfaces", first_person_interface, 1), reflexive("falling_damages", falling_damage, 1), reflexive("materials", material, len(materials_list), *materials_list), reflexive("playlist_members", playlist_member, 20, DYN_NAME_PATH='.map_name'), SIZE=428) matg_def = TagDef("matg", blam_header_stubbs('matg', 3), matg_body, ext=".globals", endian=">")
h3_dependency("model"), h3_dependency("crate_object"), h3_dependency("collision_damage"), h3_reflexive("early_mover_properties", efsc_early_mover_propertie), h3_dependency("creation_effect"), h3_dependency("material_effects"), h3_dependency("melee_impact"), h3_reflexive("ai_properties", efsc_ai_propertie), h3_reflexive("functions", efsc_function), SInt16("hud_text_message_index"), SInt16("unknown_1", VISIBLE=False), h3_reflexive("attachments", efsc_attachment), h3_reflexive("widgets", efsc_widget), h3_reflexive("change_colors", efsc_change_color), h3_reflexive("predicted_resources", efsc_predicted_resource), h3_reflexive("multiplayer_object_properties", efsc_multiplayer_object_propertie), ENDIAN=">", SIZE=248) def get(): return efsc_def efsc_def = TagDef("efsc", h3_blam_header('efsc'), efsc_body, ext=".%s" % h3_tag_class_fcc_to_ext["efsc"], endian=">", tag_cls=H3Tag)
Bool32("flags", *unknown_flags_32), h3_string_id("name"), SInt16("unknown", VISIBLE=False), SInt16("layer"), SInt16("widescreen_y_bounds_min"), SInt16("widescreen_x_bounds_min"), SInt16("widescreen_y_bounds_max"), SInt16("widescreen_x_bounds_max"), SInt16("standard_y_bounds_min"), SInt16("standard_x_bounds_min"), SInt16("standard_y_bounds_max"), SInt16("standard_x_bounds_max"), h3_dependency("animation"), h3_dependency("strings"), h3_reflexive("text_widgets", bkey_text_widget), h3_reflexive("bitmap_widgets", bkey_bitmap_widget), ENDIAN=">", SIZE=84) def get(): return bkey_def bkey_def = TagDef("bkey", h3_blam_header('bkey'), bkey_body, ext=".%s" % h3_tag_class_fcc_to_ext["bkey"], endian=">", tag_cls=H3Tag)
# # revision: 1 author: Assembly # Generated plugin from scratch. # revision: 2 author: Moses_of_Egypt # Cleaned up and converted to SuPyr definition # #################################################### from ..common_descs import * from .objs.tag import * from supyr_struct.defs.tag_def import TagDef unic_body = Struct("tagdata", BytesRaw("unknown_0", SIZE=12, VISIBLE=False), h3_rawdata_ref("unknown_1"), UInt32("strings"), ENDIAN=">", SIZE=80) def get(): return unic_def unic_def = TagDef("unic", h3_blam_header('unic'), unic_body, ext=".%s" % h3_tag_class_fcc_to_ext["unic"], endian=">", tag_cls=H3Tag)
SEnum16('triggers_when', 'touched_by_player', 'destroyed' ), float_zero_to_one('call_value'), Pad(80), dependency("on", valid_event_effects), dependency("off", valid_event_effects), dependency("deny", valid_event_effects), ) ctrl_body = Struct("tagdata", obje_attrs, devi_attrs, ctrl_attrs, SIZE=792, ) def get(): return ctrl_def ctrl_def = TagDef("ctrl", blam_header('ctrl'), ctrl_body, ext=".device_control", endian=">", tag_cls=CtrlTag )
# Definition generated from Assembly XML tag def # Date generated: 2018/12/03 04:56 # # revision: 1 author: -DeToX- # Mapped plugin structure a new. # revision: 2 author: Moses_of_Egypt # Cleaned up and converted to SuPyr definition # #################################################### from ..common_descs import * from .objs.tag import * from supyr_struct.defs.tag_def import TagDef hlsl_body = Struct("tagdata", BytesRaw("unknown", SIZE=20, VISIBLE=False), ENDIAN=">", SIZE=20) def get(): return hlsl_def hlsl_def = TagDef("hlsl", h3_blam_header('hlsl'), hlsl_body, ext=".%s" % h3_tag_class_fcc_to_ext["hlsl"], endian=">", tag_cls=H3Tag)
}, { GUI_NAME: "4:2:0", NAME: "x2x0" }, { GUI_NAME: "4:2:2", NAME: "x2x2" }, { GUI_NAME: "4:4:4", NAME: "x4x4" }, )), ENDIAN="<", SIZE=76, WIDGET=Halo2BitmapTagFrame, ) def get(): return bitm_def bitm_def = TagDef("bitm", h2_blam_header('bitm'), bitm_body, ext=".%s" % h2_tag_class_fcc_to_ext["bitm"], endian="<", subdefs={'pixel_root': pixel_root})