mse version: 2.0.0 game: magic short name: Vikings full name: Kaldheim Showcase icon: card-sample.png installer group: magic/m15 style/normal cards position hint: 095 version: 2024-09-01 depends on: package: magic.mse-game version: 2014-06-25 depends on: package: magic-default-image.mse-include version: 2007-09-23 depends on: package: magic-modules.mse-include version: 2024-10-01 depends on: package: magic-mana-large.mse-symbol-font version: 2007-09-23 depends on: package: magic-mana-small.mse-symbol-font version: 2007-09-23 depends on: package: magic-mainframe-extras.mse-include version: 2007-09-23 card width: 375 card height: 523 card dpi: 150 ####### images from digiman ############################################################## Extra scripts init script: # Load scripts for image box include file: /magic-default-image.mse-include/scripts # Should hybrids have a grey name? mask_hybrid_with_land := { styling.grey_hybrid_name } #Should multicolor lands with basic land types have a colored name? mask_multi_land_with_color := { styling.colored_multicolor_land_name } template_prefix := [ card: "" card2: "legend/" pt: "" stamp: "/magic-modules.mse-include/stamps/backs/375 round/" ubstamp: "/magic-modules.mse-include/stamps/backs/375 ub/" identity: "/magic-modules.mse-include/indicators/" ] template_suffix := [ card: "card.png" card2: "card.png" pt: "pt.png" stamp: "stamp.png" ubstamp: "stamp.png" identity: "identity.png" ] template := { template_prefix[type] + input + template_suffix[type] } land_template := { template_prefix[type] + (if input == "a" then "c" else input) + template_suffix[type] } # Use land templates for previews because they show more contrast hybrid_previews := "land,hybrid" legend_background := { color_background(type:"card2", base_hybrid:card_hybrid) } card_ptbox := { color_background(type:"pt", base_hybrid:card_hybrid) } # Use the normal tap symbol mana_t := { if styling.tap_symbol == "old" then "old" else if styling.tap_symbol == "diagonal T" then "older" else "new" } # Use guild mana symbols? guild_mana := { styling.use_guild_mana_symbols } # Is the card a promo card? is_promo := { styling.promo } is_legend := {set.auto_legends and lang_setting("is_legendary")(card.super_type) } mana_sort := { if styling.unsorted_casting_cost then input else sort_text@(order: "XYZI[0123456789]HSCA(WUBRG)")() } ancestral_mana := { styling.ancestral_mana_symbols } watermark_include := "/magic-modules.mse-include/watermarks" is_unsorted := {styling.remove_from_autocount} chop_top := {to_number(pull_comma_array(styling.text_chops, cell:0, end:false))} chop_bot := {to_number(pull_comma_array(styling.text_chops, cell:1, end:false))} chop_correction := { chop_bot() } shrink_type := {if styling.shrink_typeline_text != "" then to_number(styling.shrink_typeline_text) else 0} shrink_name := {if styling.shrink_name_text != "" then to_number(styling.shrink_name_text) else 0} use_main_rarity := { contains(set.mainframe_rarity_name, match: ".png")} un_png := replace@(match:".png", replace: "") is_vehicle := {lang_setting("is_vehicle")(card.sub_type)} card_stamp_offset_top_1 := {1} include file: /magic-modules.mse-include/loyalty/init_script loyalty_abilities_count_real := loyalty_abilities_count loyalty_abilities_count := { if mainframe_walker() then loyalty_abilities_count_real(instance:instance, active:active) else 0 }@(active:false, instance:1) mainframe_walker := { lang_setting("is_planeswalker")(card.type) } loyalty_textbox_mask := {"walker_mask.png"} alias_offset_top_1 := { if is_legend() then 4 else -8 } alias_mask_1 := { "alias_mask.png" } alias_colors := { [ w: rgb(242, 239, 233), u: rgb(20, 110, 161), b: rgb(47, 45, 43), r: rgb(202, 55, 18), g: rgb(16, 134, 68), a: rgb(214, 216, 216), m: rgb(229, 191, 66), c: rgb(148, 114, 95) ][input] } ############################################################## Set info fields set info style: symbol: variation: name: invertedcommon border radius: 0.10 fill type: solid fill color: rgb(255,255,255) border color: rgb(0,0,0) ############################################################## Extra style options styling field: type: text name: text chops description: Format as "X,Y". Shrinks textbox X pixels from the top and Y from bottom. styling field: type: text name: shrink name text description: Shrinks name X pixels styling field: type: text name: shrink typeline text description: Shrinks type X pixels styling field: type: boolean name: remove from autocount description: Removes the automatic card number for specific cards, to allow for overcounted cards like in Planeswalker Decks. initial: no include file: /magic-modules.mse-include/stamps/styling_fields styling field: type: choice name: number of textboxes description: Number of textboxes for abilities and passives. MODIFY CONTENTS OF TEXTBOXES IF THIS HAS TROUBLE UPDATING AFTER BEING CHANGED. choice: automatic choice: 1 choice: 2 choice: 3 choice: 4 choice: 5 choice: 6 choice: 7 choice: 8 initial: automatic styling field: type: text name: move separators description: Moves the limits between abilities down by this many pixels. Use negatives to move up. Formatted as "1,2,3,4,5" styling field: type: text name: move loyalty costs description: Moves loyalty costs down by this many pixels. Use negatives to move up. Formatted as "1,2,3,4,5,6" styling field: type: text name: textbox opacity percentage description: Set the opacity percentage for textboxes. Opaque is 100, transparent is 0, default is 70. styling field: type: color name: textbox color description: Use the specified color for the textbox background. choice: name: black color: rgb(0,0,0) choice: name: white color: rgb(255,255,255) initial: rgb(255,255,255) styling field: type: text name: stripes opacity percentage description: Set the opacity percentage for stripes separating abilities. Opaque is 100, transparent is 0, default is 40. styling field: type: color name: stripes color description: Use the specified color for the textbox background. choice: name: black color: rgb(0,0,0) choice: name: white color: rgb(255,255,255) initial: rgb(0,0,0) styling field: type: color name: rule text color description: Use the specified color for the rule text. choice: name: black color: rgb(0,0,0) choice: name: white color: rgb(255,255,255) initial: rgb(0,0,0) styling field: type: boolean name: grey hybrid name description: Use a grey background for the name and type line on hybrid cards. This is done on real cards. styling field: type: boolean name: unsorted casting cost description: Disables automatic mana symbol sorting. initial: no styling field: type: boolean name: ancestral mana symbols description: Enables ancestral's modified generic mana. initial: no styling field: type: boolean name: colored multicolor land name description: Use a colored background for the name and type on multicolor land cards with a basic land type. This is done on real cards. styling field: type: boolean name: use guild mana symbols description: Use the Ravnica guild symbols instead of the official half/half circles for hybrid mana. initial: no styling field: type: choice name: tap symbol description: What tap and untap symbols should be used on cards? initial: modern choice: modern choice: old choice: diagonal T styling field: type: package choice name: text box mana symbols match: magic-mana-*.mse-symbol-font initial: magic-mana-small.mse-symbol-font styling field: type: choice name: center text description: When to center text (short text only means only on one-line cards with no flavor text) choice: always choice: short text only choice: never initial: never styling field: type: boolean name: promo description: Is this card a promo card, with the "P" rarity? initial: no styling field: type: boolean name: masterpiece description: Is this card a Masterpiece? initial: no styling field: type: boolean name: inverted common symbol description: Should the common rarity symbol be inverted, like in Coldsnap? initial: no styling field: type: package choice name: overlay description: Should there be an overlay applied, such as foil? match: magic-overlay-*.mse-include required: false styling style: use guild mana symbols: choice images: yes: /magic-mana-small.mse-symbol-font/mana_guild_rg.png no: /magic-mana-small.mse-symbol-font/mana_rg.png tap symbol: render style: both choice images: modern: /magic-mana-large.mse-symbol-font/mana_t.png old: /magic-mana-large.mse-symbol-font/mana_t_old.png diagonal T: /magic-mana-large.mse-symbol-font/mana_t_older.png center text: render style: both choice images: always: /magic.mse-game/icons/center-all-text.png short text only: /magic.mse-game/icons/center-short-text.png never: /magic.mse-game/icons/center-no-text.png inverted common symbol: choice images: no: { symbol_variation(symbol: set.symbol, variation: "common") } yes: { symbol_variation(symbol: set.symbol, variation: "invertedcommon") } ############################################################## Card fields include file: /magic-modules.mse-include/corners/card_fields include file: /magic-modules.mse-include/information/card_fields include file: /magic-modules.mse-include/stamps/card_fields include file: /magic-modules.mse-include/stamps/stamp_back include file: /magic-modules.mse-include/watermarks/card_fields include file: /magic-modules.mse-include/separators/card_fields include file: /magic-modules.mse-include/loyalty/card_fields include file: /magic-modules.mse-include/alias/card_fields card style: ############################# Background stuff border color: left: 0 top : 0 width: 375 height: 523 radius: 18 left width: 17 right width: 17 top width: 17 bottom width: 18 z index: 1 mask: {if is_legend() then "border_legend.png" else "border_mask.png"} card color: left: 0 top: 0 width: 375 height: 523 z index: 0 render style: image popup style: in place image: { if is_legend() then legend_background() else card_background() } mask: {(if is_legend() then "legend/" else "") + "framemask.png"} ############################# Name line name: left: 26 top: {if is_legend() then 33 else 22} right: { 341 - card_style.casting_cost.content_width } height: {23 - 0.5*shrink_name()} alignment: bottom shrink-overflow padding bottom: 0 z index: 900 font: name: Beleren Bold size: {15 - shrink_name()} color: white casting cost: right: 346 top: {if is_legend() then 33 else 22} width: { max(30, card_style.casting_cost.content_width) + 5 } height: 23 alignment: middle right font: name: MPlantin size: 15 symbol font: name: magic-mana-large size: 15 alignment: middle right always symbol: true z index: 920 padding top: 0 ############################# Image image: left: 39 top: {if is_legend() then 60 else 48} width: 297 height: {if is_legend() then 243 else 255} z index: -1 default: {default_image(card.card_color)} mask: {(if is_legend() then "legend/") + "imagemask.png"} ############################# Card type indicator: left: 26 top: 308 width: 17 height: 17 z index: 920 render style: image visible: { has_identity() } image: { module_identity() } type: left: { if has_identity() then "46" else "28" } top: {shrink_type() + 305 } width: { (if has_identity() then "290" else "310") - max(22,card_style.rarity.content_width) } height: { 20 - shrink_type() } alignment: top shrink-overflow z index: 900 padding top: 2 font: name: Beleren Bold size: {13 - shrink_type()} color: white separator color: red rarity: right: 344 top: 308 width: 44 height: 22 z index: 950 render style: image alignment: middle right include file: /magic-modules.mse-include/rarities/choice_images ############################# Text box text: left: { if mainframe_walker() then 35 else 29 } top: {338-(-chop_top())} width: 314 bottom: {477-chop_bot()} font: name: MPlantin italic name: MPlantin-Italic size: 14 scale down to: 6 color: black symbol font: name: { styling.text_box_mana_symbols } size: 14 scale down to: 6 alignment: script: if (styling.center_text == "short text only" and not contains(match:"\n", card.rule_text) and card.flavor_text == "" and card_style.text.content_lines <= 2) or styling.center_text == "always" then "middle center" else "middle left" z index: 900 padding left: 6 padding right: 4 line height hard: {if is_modal(card.rule_text) then 0.9 else 1.2 } line height line: 1.5 line height soft: 0.9 line height hard max: {if is_modal(card.rule_text) then 1.0 else 1.3 } line height line max: 1.6 ############################# PT pt: z index: 900 left: 293 top: 468 width: { if mainframe_walker() then 0 else 60 } height: 28 alignment: center middle shrink-overflow font: name: Beleren Bold size: 15 color: black separator color: red ############################################################## Extra card fields extra card field: type: choice name: pt box script: card.card_color editable: false save value: false extra card field: type: choice name: foil layer choice: foil save value: false editable: false extra card field: type: choice name: vehicle overlay choice: overlay editable: false save value: false show statistics: false extra card style: pt box: left: 285 top: 460 width: { if mainframe_walker() then 0 else 77 } height: 43 z index: 840 visible: { card.pt != "" } render style: image image: { if is_vehicle() then "vpt.png" else module_ptbox() } foil layer: left: 0 top : 0 width: 375 height: 523 z index: 1050 render style: image image: {if styling.overlay == "" then nil else styling.overlay + "/overlay.png"} mask: { if is_rare() then "foil_mask_rare.png" else "foil_mask.png" } vehicle overlay: left: 0 top: 0 width: 375 height: 523 render style: image image: {(if is_legend() then "legend/" else "") + "voverlay.png" } z index: 0 visible: {is_vehicle()}