aboutsummaryrefslogtreecommitdiff
path: root/game/assets
diff options
context:
space:
mode:
author BrickPi <ajmach6@gmail.com>2024-01-19 22:52:24 +0100
committer BrickPi <ajmach6@gmail.com>2024-01-21 16:25:06 +0100
commit2940411cb33a64cd41c2d39ddf98aab54edc9f69 (patch)
tree8cefa44e20d3fd26f7ba083454ffdcbb43c1d05f /game/assets
parentfb2561bd998f211d2099f811a6b6b25a57118160 (diff)
Reorganise Asset File Structure
Diffstat (limited to 'game/assets')
-rw-r--r--game/assets/OpenVic.icnsbin0 -> 898447 bytes
-rw-r--r--game/assets/OpenVic.icobin0 -> 435509 bytes
-rw-r--r--game/assets/OpenVicLogo.pngbin0 -> 36650 bytes
-rw-r--r--game/assets/OpenVicLogo.png.import34
-rw-r--r--game/assets/audio/default_bus_layout.tres15
-rw-r--r--game/assets/audio/music/Brunels_Waltz_2.mp3bin0 -> 692484 bytes
-rw-r--r--game/assets/audio/music/Brunels_Waltz_2.mp3.import19
-rw-r--r--game/assets/audio/music/Deliverance.mp3bin0 -> 3500145 bytes
-rw-r--r--game/assets/audio/music/Deliverance.mp3.import19
-rw-r--r--game/assets/audio/music/The_Crown.mp3bin0 -> 6031818 bytes
-rw-r--r--game/assets/audio/music/The_Crown.mp3.import19
-rw-r--r--game/assets/audio/sfx/click.oggbin0 -> 7665 bytes
-rw-r--r--game/assets/audio/sfx/click.ogg.import19
-rw-r--r--game/assets/graphics/OpenVicFINALREALTRANS.pngbin0 -> 57587 bytes
-rw-r--r--game/assets/graphics/OpenVicFINALREALTRANS.png.import34
-rw-r--r--game/assets/graphics/globe.pngbin0 -> 48541 bytes
-rw-r--r--game/assets/graphics/globe.png.import34
-rw-r--r--game/assets/graphics/loading_screen.pngbin0 -> 1058949 bytes
-rw-r--r--game/assets/graphics/loading_screen.png.import34
-rw-r--r--game/assets/graphics/main_menu_background.pngbin0 -> 7817823 bytes
-rw-r--r--game/assets/graphics/main_menu_background.png.import34
-rw-r--r--game/assets/graphics/main_menu_border_paper.pngbin0 -> 4496997 bytes
-rw-r--r--game/assets/graphics/main_menu_border_paper.png.import34
-rw-r--r--game/assets/graphics/main_menu_button.pngbin0 -> 121864 bytes
-rw-r--r--game/assets/graphics/main_menu_button.png.import34
-rw-r--r--game/assets/graphics/ovgear.pngbin0 -> 37616 bytes
-rw-r--r--game/assets/graphics/ovgear.png.import34
-rw-r--r--game/assets/graphics/splash_end.pngbin0 -> 1264857 bytes
-rw-r--r--game/assets/graphics/splash_end.png.import34
-rw-r--r--game/assets/graphics/splash_image.pngbin0 -> 1756225 bytes
-rw-r--r--game/assets/graphics/splash_image.png.import34
-rw-r--r--game/assets/graphics/splash_startup.ogvbin0 -> 2964974 bytes
-rw-r--r--game/assets/graphics/theme/credits_menu.tres17
-rw-r--r--game/assets/graphics/theme/default_theme.tres78
-rw-r--r--game/assets/graphics/theme/game_session_menu.tres84
-rw-r--r--game/assets/graphics/theme/main_menu.tres202
-rw-r--r--game/assets/graphics/theme/main_menu_button_normal.tres10
-rw-r--r--game/assets/graphics/theme/options_menu.tres67
-rw-r--r--game/assets/localisation/README.md16
-rw-r--r--game/assets/localisation/credits.csv43
-rw-r--r--game/assets/localisation/credits.csv.import3
-rw-r--r--game/assets/localisation/locales/en_GB/goods.csv59
-rw-r--r--game/assets/localisation/locales/en_GB/goods.csv.import3
-rw-r--r--game/assets/localisation/locales/en_GB/mapmodes.csv15
-rw-r--r--game/assets/localisation/locales/en_GB/mapmodes.csv.import3
-rw-r--r--game/assets/localisation/locales/en_GB/menus.csv141
-rw-r--r--game/assets/localisation/locales/en_GB/menus.csv.import3
-rw-r--r--game/assets/localisation/locales/en_GB/provinces.csv245
-rw-r--r--game/assets/localisation/locales/en_GB/provinces.csv.import3
-rw-r--r--game/assets/localisation/locales/en_GB/regions.csv8
-rw-r--r--game/assets/localisation/locales/en_GB/regions.csv.import3
-rw-r--r--game/assets/localisation/locales/en_US/menus.csv60
-rw-r--r--game/assets/localisation/locales/en_US/menus.csv.import3
-rw-r--r--game/assets/localisation/locales/fr_FR/menus.csv60
-rw-r--r--game/assets/localisation/locales/fr_FR/menus.csv.import3
-rw-r--r--game/assets/localisation/locales/ru_RU/goods.csv59
-rw-r--r--game/assets/localisation/locales/ru_RU/goods.csv.import3
-rw-r--r--game/assets/localisation/locales/ru_RU/mapmodes.csv8
-rw-r--r--game/assets/localisation/locales/ru_RU/mapmodes.csv.import3
-rw-r--r--game/assets/localisation/locales/ru_RU/menus.csv119
-rw-r--r--game/assets/localisation/locales/ru_RU/menus.csv.import3
-rw-r--r--game/assets/localisation/quotes.txt40
62 files changed, 1795 insertions, 0 deletions
diff --git a/game/assets/OpenVic.icns b/game/assets/OpenVic.icns
new file mode 100644
index 0000000..7bf9475
--- /dev/null
+++ b/game/assets/OpenVic.icns
Binary files differ
diff --git a/game/assets/OpenVic.ico b/game/assets/OpenVic.ico
new file mode 100644
index 0000000..a90ede9
--- /dev/null
+++ b/game/assets/OpenVic.ico
Binary files differ
diff --git a/game/assets/OpenVicLogo.png b/game/assets/OpenVicLogo.png
new file mode 100644
index 0000000..3e01ae7
--- /dev/null
+++ b/game/assets/OpenVicLogo.png
Binary files differ
diff --git a/game/assets/OpenVicLogo.png.import b/game/assets/OpenVicLogo.png.import
new file mode 100644
index 0000000..41fceef
--- /dev/null
+++ b/game/assets/OpenVicLogo.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dtvtn4q1nyuf4"
+path="res://.godot/imported/OpenVicLogo.png-0aaf52efad17b32f948393254453e998.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/OpenVicLogo.png"
+dest_files=["res://.godot/imported/OpenVicLogo.png-0aaf52efad17b32f948393254453e998.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/audio/default_bus_layout.tres b/game/assets/audio/default_bus_layout.tres
new file mode 100644
index 0000000..d6f0c67
--- /dev/null
+++ b/game/assets/audio/default_bus_layout.tres
@@ -0,0 +1,15 @@
+[gd_resource type="AudioBusLayout" format=3 uid="uid://cquqx51trot64"]
+
+[resource]
+bus/1/name = &"MUSIC_BUS"
+bus/1/solo = false
+bus/1/mute = false
+bus/1/bypass_fx = false
+bus/1/volume_db = 0.0
+bus/1/send = &"Master"
+bus/2/name = &"SFX_BUS"
+bus/2/solo = false
+bus/2/mute = false
+bus/2/bypass_fx = false
+bus/2/volume_db = 0.0
+bus/2/send = &"Master"
diff --git a/game/assets/audio/music/Brunels_Waltz_2.mp3 b/game/assets/audio/music/Brunels_Waltz_2.mp3
new file mode 100644
index 0000000..307c232
--- /dev/null
+++ b/game/assets/audio/music/Brunels_Waltz_2.mp3
Binary files differ
diff --git a/game/assets/audio/music/Brunels_Waltz_2.mp3.import b/game/assets/audio/music/Brunels_Waltz_2.mp3.import
new file mode 100644
index 0000000..330150d
--- /dev/null
+++ b/game/assets/audio/music/Brunels_Waltz_2.mp3.import
@@ -0,0 +1,19 @@
+[remap]
+
+importer="mp3"
+type="AudioStreamMP3"
+uid="uid://jv2gmmla7efh"
+path="res://.godot/imported/Brunels_Waltz_2.mp3-17abdb438a46e962e0273b6ab39c7aa3.mp3str"
+
+[deps]
+
+source_file="res://assets/audio/music/Brunels_Waltz_2.mp3"
+dest_files=["res://.godot/imported/Brunels_Waltz_2.mp3-17abdb438a46e962e0273b6ab39c7aa3.mp3str"]
+
+[params]
+
+loop=false
+loop_offset=0
+bpm=0
+beat_count=0
+bar_beats=4
diff --git a/game/assets/audio/music/Deliverance.mp3 b/game/assets/audio/music/Deliverance.mp3
new file mode 100644
index 0000000..3e7b5b8
--- /dev/null
+++ b/game/assets/audio/music/Deliverance.mp3
Binary files differ
diff --git a/game/assets/audio/music/Deliverance.mp3.import b/game/assets/audio/music/Deliverance.mp3.import
new file mode 100644
index 0000000..637b69c
--- /dev/null
+++ b/game/assets/audio/music/Deliverance.mp3.import
@@ -0,0 +1,19 @@
+[remap]
+
+importer="mp3"
+type="AudioStreamMP3"
+uid="uid://b3l1dxak84lmw"
+path="res://.godot/imported/Deliverance.mp3-0264fb830021deee28ca32727509f775.mp3str"
+
+[deps]
+
+source_file="res://assets/audio/music/Deliverance.mp3"
+dest_files=["res://.godot/imported/Deliverance.mp3-0264fb830021deee28ca32727509f775.mp3str"]
+
+[params]
+
+loop=false
+loop_offset=0
+bpm=0
+beat_count=0
+bar_beats=4
diff --git a/game/assets/audio/music/The_Crown.mp3 b/game/assets/audio/music/The_Crown.mp3
new file mode 100644
index 0000000..c97f422
--- /dev/null
+++ b/game/assets/audio/music/The_Crown.mp3
Binary files differ
diff --git a/game/assets/audio/music/The_Crown.mp3.import b/game/assets/audio/music/The_Crown.mp3.import
new file mode 100644
index 0000000..bda61a3
--- /dev/null
+++ b/game/assets/audio/music/The_Crown.mp3.import
@@ -0,0 +1,19 @@
+[remap]
+
+importer="mp3"
+type="AudioStreamMP3"
+uid="uid://cvlvbcifaif0p"
+path="res://.godot/imported/The_Crown.mp3-b8423b4ee5c30ef0aca5eaf31e995301.mp3str"
+
+[deps]
+
+source_file="res://assets/audio/music/The_Crown.mp3"
+dest_files=["res://.godot/imported/The_Crown.mp3-b8423b4ee5c30ef0aca5eaf31e995301.mp3str"]
+
+[params]
+
+loop=false
+loop_offset=0
+bpm=0
+beat_count=0
+bar_beats=4
diff --git a/game/assets/audio/sfx/click.ogg b/game/assets/audio/sfx/click.ogg
new file mode 100644
index 0000000..db6685c
--- /dev/null
+++ b/game/assets/audio/sfx/click.ogg
Binary files differ
diff --git a/game/assets/audio/sfx/click.ogg.import b/game/assets/audio/sfx/click.ogg.import
new file mode 100644
index 0000000..9b38650
--- /dev/null
+++ b/game/assets/audio/sfx/click.ogg.import
@@ -0,0 +1,19 @@
+[remap]
+
+importer="oggvorbisstr"
+type="AudioStreamOggVorbis"
+uid="uid://ba28aehsahrqp"
+path="res://.godot/imported/click.ogg-3cad29b0a7122f4b91444dafe5dd3781.oggvorbisstr"
+
+[deps]
+
+source_file="res://assets/audio/sfx/click.ogg"
+dest_files=["res://.godot/imported/click.ogg-3cad29b0a7122f4b91444dafe5dd3781.oggvorbisstr"]
+
+[params]
+
+loop=false
+loop_offset=0
+bpm=0
+beat_count=0
+bar_beats=4
diff --git a/game/assets/graphics/OpenVicFINALREALTRANS.png b/game/assets/graphics/OpenVicFINALREALTRANS.png
new file mode 100644
index 0000000..446814f
--- /dev/null
+++ b/game/assets/graphics/OpenVicFINALREALTRANS.png
Binary files differ
diff --git a/game/assets/graphics/OpenVicFINALREALTRANS.png.import b/game/assets/graphics/OpenVicFINALREALTRANS.png.import
new file mode 100644
index 0000000..ca4dc46
--- /dev/null
+++ b/game/assets/graphics/OpenVicFINALREALTRANS.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dxys0wg0f0ic5"
+path="res://.godot/imported/OpenVicFINALREALTRANS.png-443dfc781007e99206ca1887ccc7c222.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/graphics/OpenVicFINALREALTRANS.png"
+dest_files=["res://.godot/imported/OpenVicFINALREALTRANS.png-443dfc781007e99206ca1887ccc7c222.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/graphics/globe.png b/game/assets/graphics/globe.png
new file mode 100644
index 0000000..f925d35
--- /dev/null
+++ b/game/assets/graphics/globe.png
Binary files differ
diff --git a/game/assets/graphics/globe.png.import b/game/assets/graphics/globe.png.import
new file mode 100644
index 0000000..66e8d25
--- /dev/null
+++ b/game/assets/graphics/globe.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://oirhxlyiogv8"
+path="res://.godot/imported/globe.png-40121d8f0a76141eff4542e4039b7b7f.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/graphics/globe.png"
+dest_files=["res://.godot/imported/globe.png-40121d8f0a76141eff4542e4039b7b7f.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/graphics/loading_screen.png b/game/assets/graphics/loading_screen.png
new file mode 100644
index 0000000..03e6945
--- /dev/null
+++ b/game/assets/graphics/loading_screen.png
Binary files differ
diff --git a/game/assets/graphics/loading_screen.png.import b/game/assets/graphics/loading_screen.png.import
new file mode 100644
index 0000000..71dcf20
--- /dev/null
+++ b/game/assets/graphics/loading_screen.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://doji17mxxmikl"
+path="res://.godot/imported/loading_screen.png-3c8df680e2159383ecaef618d5797afc.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/graphics/loading_screen.png"
+dest_files=["res://.godot/imported/loading_screen.png-3c8df680e2159383ecaef618d5797afc.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/graphics/main_menu_background.png b/game/assets/graphics/main_menu_background.png
new file mode 100644
index 0000000..7d64b9f
--- /dev/null
+++ b/game/assets/graphics/main_menu_background.png
Binary files differ
diff --git a/game/assets/graphics/main_menu_background.png.import b/game/assets/graphics/main_menu_background.png.import
new file mode 100644
index 0000000..867b71c
--- /dev/null
+++ b/game/assets/graphics/main_menu_background.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://dapuqgpjs56bs"
+path="res://.godot/imported/main_menu_background.png-f3284dcecedd52f772bd63910ac19827.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/graphics/main_menu_background.png"
+dest_files=["res://.godot/imported/main_menu_background.png-f3284dcecedd52f772bd63910ac19827.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/graphics/main_menu_border_paper.png b/game/assets/graphics/main_menu_border_paper.png
new file mode 100644
index 0000000..0693ce5
--- /dev/null
+++ b/game/assets/graphics/main_menu_border_paper.png
Binary files differ
diff --git a/game/assets/graphics/main_menu_border_paper.png.import b/game/assets/graphics/main_menu_border_paper.png.import
new file mode 100644
index 0000000..002765b
--- /dev/null
+++ b/game/assets/graphics/main_menu_border_paper.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://q25s41oavuxw"
+path="res://.godot/imported/main_menu_border_paper.png-cbcf0dc36994e5ae2aa92424bd0c6642.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/graphics/main_menu_border_paper.png"
+dest_files=["res://.godot/imported/main_menu_border_paper.png-cbcf0dc36994e5ae2aa92424bd0c6642.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/graphics/main_menu_button.png b/game/assets/graphics/main_menu_button.png
new file mode 100644
index 0000000..b84c8a3
--- /dev/null
+++ b/game/assets/graphics/main_menu_button.png
Binary files differ
diff --git a/game/assets/graphics/main_menu_button.png.import b/game/assets/graphics/main_menu_button.png.import
new file mode 100644
index 0000000..964f054
--- /dev/null
+++ b/game/assets/graphics/main_menu_button.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://c0p34i3d3b0pw"
+path="res://.godot/imported/main_menu_button.png-d4d0451b1b623ca9a691f8591605a5ec.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/graphics/main_menu_button.png"
+dest_files=["res://.godot/imported/main_menu_button.png-d4d0451b1b623ca9a691f8591605a5ec.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/graphics/ovgear.png b/game/assets/graphics/ovgear.png
new file mode 100644
index 0000000..d18b437
--- /dev/null
+++ b/game/assets/graphics/ovgear.png
Binary files differ
diff --git a/game/assets/graphics/ovgear.png.import b/game/assets/graphics/ovgear.png.import
new file mode 100644
index 0000000..204ae30
--- /dev/null
+++ b/game/assets/graphics/ovgear.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://hlouxrjm7pqy"
+path="res://.godot/imported/ovgear.png-4cba9c9fb71873ce0a4dcefb139d0fb0.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/graphics/ovgear.png"
+dest_files=["res://.godot/imported/ovgear.png-4cba9c9fb71873ce0a4dcefb139d0fb0.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=false
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/graphics/splash_end.png b/game/assets/graphics/splash_end.png
new file mode 100644
index 0000000..ac7b1da
--- /dev/null
+++ b/game/assets/graphics/splash_end.png
Binary files differ
diff --git a/game/assets/graphics/splash_end.png.import b/game/assets/graphics/splash_end.png.import
new file mode 100644
index 0000000..cc6620d
--- /dev/null
+++ b/game/assets/graphics/splash_end.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://deef5hufq0j61"
+path="res://.godot/imported/splash_end.png-a7c0b4199037c1eacdf4a8a0858a224f.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/graphics/splash_end.png"
+dest_files=["res://.godot/imported/splash_end.png-a7c0b4199037c1eacdf4a8a0858a224f.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=true
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/graphics/splash_image.png b/game/assets/graphics/splash_image.png
new file mode 100644
index 0000000..5f7cff9
--- /dev/null
+++ b/game/assets/graphics/splash_image.png
Binary files differ
diff --git a/game/assets/graphics/splash_image.png.import b/game/assets/graphics/splash_image.png.import
new file mode 100644
index 0000000..d541498
--- /dev/null
+++ b/game/assets/graphics/splash_image.png.import
@@ -0,0 +1,34 @@
+[remap]
+
+importer="texture"
+type="CompressedTexture2D"
+uid="uid://cgdnixsyh7bja"
+path="res://.godot/imported/splash_image.png-115d893c425a3d40a494ad3a64f97c4c.ctex"
+metadata={
+"vram_texture": false
+}
+
+[deps]
+
+source_file="res://assets/graphics/splash_image.png"
+dest_files=["res://.godot/imported/splash_image.png-115d893c425a3d40a494ad3a64f97c4c.ctex"]
+
+[params]
+
+compress/mode=0
+compress/high_quality=false
+compress/lossy_quality=0.7
+compress/hdr_compression=1
+compress/normal_map=0
+compress/channel_pack=0
+mipmaps/generate=true
+mipmaps/limit=-1
+roughness/mode=0
+roughness/src_normal=""
+process/fix_alpha_border=true
+process/premult_alpha=false
+process/normal_map_invert_y=false
+process/hdr_as_srgb=false
+process/hdr_clamp_exposure=false
+process/size_limit=0
+detect_3d/compress_to=1
diff --git a/game/assets/graphics/splash_startup.ogv b/game/assets/graphics/splash_startup.ogv
new file mode 100644
index 0000000..950d9a6
--- /dev/null
+++ b/game/assets/graphics/splash_startup.ogv
Binary files differ
diff --git a/game/assets/graphics/theme/credits_menu.tres b/game/assets/graphics/theme/credits_menu.tres
new file mode 100644
index 0000000..c07f1b6
--- /dev/null
+++ b/game/assets/graphics/theme/credits_menu.tres
@@ -0,0 +1,17 @@
+[gd_resource type="Theme" format=3 uid="uid://stfxt4hpsify"]
+
+[resource]
+BackButtonsMargin/base_type = &"MarginContainer"
+BackButtonsMargin/constants/margin_bottom = 10
+BackButtonsMargin/constants/margin_left = 20
+BackButtonsMargin/constants/margin_right = 20
+BackButtonsMargin/constants/margin_top = 10
+PersonLabel/base_type = &"Label"
+PersonLabel/constants/line_spacing = 10
+PersonLabel/font_sizes/font_size = 20
+ProjectLabel/base_type = &"Label"
+ProjectLabel/constants/line_spacing = 20
+ProjectLabel/font_sizes/font_size = 50
+RoleLabel/base_type = &"Label"
+RoleLabel/constants/line_spacing = 10
+RoleLabel/font_sizes/font_size = 30
diff --git a/game/assets/graphics/theme/default_theme.tres b/game/assets/graphics/theme/default_theme.tres
new file mode 100644
index 0000000..dd8d310
--- /dev/null
+++ b/game/assets/graphics/theme/default_theme.tres
@@ -0,0 +1,78 @@
+[gd_resource type="Theme" load_steps=6 format=3 uid="uid://b48ymrsp1q8sf"]
+
+[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_oe2hl"]
+content_margin_left = 4.0
+content_margin_top = 4.0
+content_margin_right = 4.0
+content_margin_bottom = 4.0
+bg_color = Color(0.1, 0.1, 0.1, 0.3)
+corner_radius_top_left = 3
+corner_radius_top_right = 3
+corner_radius_bottom_right = 3
+corner_radius_bottom_left = 3
+corner_detail = 5
+
+[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_35fls"]
+content_margin_left = 4.0
+content_margin_top = 4.0
+content_margin_right = 4.0
+content_margin_bottom = 4.0
+bg_color = Color(1, 1, 1, 0.75)
+draw_center = false
+border_width_left = 2
+border_width_top = 2
+border_width_right = 2
+border_width_bottom = 2
+corner_radius_top_left = 3
+corner_radius_top_right = 3
+corner_radius_bottom_right = 3
+corner_radius_bottom_left = 3
+corner_detail = 5
+expand_margin_left = 2.0
+expand_margin_top = 2.0
+expand_margin_right = 2.0
+expand_margin_bottom = 2.0
+
+[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_auvpk"]
+content_margin_left = 4.0
+content_margin_top = 4.0
+content_margin_right = 4.0
+content_margin_bottom = 4.0
+bg_color = Color(0.23, 0.23, 0.23, 0.6)
+corner_radius_top_left = 3
+corner_radius_top_right = 3
+corner_radius_bottom_right = 3
+corner_radius_bottom_left = 3
+corner_detail = 5
+
+[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_mxxc2"]
+content_margin_left = 4.0
+content_margin_top = 4.0
+content_margin_right = 4.0
+content_margin_bottom = 4.0
+bg_color = Color(0.1, 0.1, 0.1, 0.6)
+corner_radius_top_left = 3
+corner_radius_top_right = 3
+corner_radius_bottom_right = 3
+corner_radius_bottom_left = 3
+corner_detail = 5
+
+[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ewy26"]
+content_margin_left = 4.0
+content_margin_top = 4.0
+content_margin_right = 4.0
+content_margin_bottom = 4.0
+bg_color = Color(0, 0, 0, 0.6)
+corner_radius_top_left = 3
+corner_radius_top_right = 3
+corner_radius_bottom_right = 3
+corner_radius_bottom_left = 3
+corner_detail = 5
+
+[resource]
+ButtonContainer/base_type = &"Button"
+ButtonContainer/styles/disabled = SubResource("StyleBoxFlat_oe2hl")
+ButtonContainer/styles/focus = SubResource("StyleBoxFlat_35fls")
+ButtonContainer/styles/hover = SubResource("StyleBoxFlat_auvpk")
+ButtonContainer/styles/normal = SubResource("StyleBoxFlat_mxxc2")
+ButtonContainer/styles/pressed = SubResource("StyleBoxFlat_ewy26")
diff --git a/game/assets/graphics/theme/game_session_menu.tres b/game/assets/graphics/theme/game_session_menu.tres
new file mode 100644
index 0000000..df92aec
--- /dev/null
+++ b/game/assets/graphics/theme/game_session_menu.tres
@@ -0,0 +1,84 @@
+[gd_resource type="Theme" load_steps=11 format=3 uid="uid://cqrfmjt5yeti7"]
+
+[ext_resource type="StyleBox" uid="uid://blwilunhmyvpq" path="res://assets/graphics/theme/main_menu_button_normal.tres" id="1_7med2"]
+[ext_resource type="Script" path="res://src/Game/Theme/StyleBoxWithSound.gd" id="2_oj3dv"]
+[ext_resource type="AudioStream" uid="uid://bsldcs3l8s7ug" path="res://addons/kenney_ui_audio/click3.wav" id="3_j823n"]
+[ext_resource type="Texture2D" uid="uid://c0p34i3d3b0pw" path="res://assets/graphics/main_menu_button.png" id="4_lno5s"]
+
+[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_jvvyi"]
+content_margin_left = 20.0
+content_margin_top = 10.0
+content_margin_right = 20.0
+content_margin_bottom = 14.0
+texture = ExtResource("4_lno5s")
+modulate_color = Color(0.817521, 0.817521, 0.817521, 0.784314)
+
+[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_6ab1x"]
+draw_center = false
+border_width_left = 10
+border_width_top = 15
+border_width_right = 10
+border_width_bottom = 15
+border_color = Color(0, 0, 0, 0.584314)
+border_blend = true
+corner_radius_top_left = 5
+corner_radius_top_right = 5
+corner_radius_bottom_right = 5
+corner_radius_bottom_left = 5
+corner_detail = 20
+
+[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_jslj0"]
+content_margin_left = 20.0
+content_margin_top = 10.0
+content_margin_right = 20.0
+content_margin_bottom = 14.0
+texture = ExtResource("4_lno5s")
+modulate_color = Color(0.588235, 0.588235, 0.588235, 1)
+
+[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_l2rw3"]
+content_margin_left = 20.0
+content_margin_top = 10.0
+content_margin_right = 20.0
+content_margin_bottom = 14.0
+texture = ExtResource("4_lno5s")
+modulate_color = Color(0.85098, 0.85098, 0.85098, 1)
+
+[sub_resource type="StyleBox" id="StyleBox_ptkcj"]
+resource_local_to_scene = false
+resource_name = ""
+content_margin_left = -1.0
+content_margin_top = -1.0
+content_margin_right = -1.0
+content_margin_bottom = -1.0
+script = ExtResource("2_oj3dv")
+style_box = SubResource("StyleBoxTexture_l2rw3")
+sound = ExtResource("3_j823n")
+
+[sub_resource type="StyleBoxLine" id="StyleBoxLine_kaw4i"]
+color = Color(0.454902, 0.45098, 0.435294, 1)
+thickness = 2
+
+[resource]
+SessionButton/base_type = &"Button"
+SessionButton/colors/font_color = Color(0.87451, 0.87451, 0.87451, 1)
+SessionButton/colors/font_disabled_color = Color(0.87451, 0.87451, 0.87451, 0.501961)
+SessionButton/colors/font_focus_color = Color(0.94902, 0.94902, 0.94902, 1)
+SessionButton/colors/font_hover_color = Color(0.94902, 0.94902, 0.94902, 1)
+SessionButton/colors/font_hover_pressed_color = Color(1, 1, 1, 1)
+SessionButton/colors/font_outline_color = Color(1, 1, 1, 1)
+SessionButton/colors/font_pressed_color = Color(1, 1, 1, 1)
+SessionButton/colors/icon_disabled_color = Color(1, 1, 1, 0.4)
+SessionButton/colors/icon_focus_color = Color(0.94902, 0.94902, 0.94902, 1)
+SessionButton/colors/icon_hover_color = Color(0.94902, 0.94902, 0.94902, 1)
+SessionButton/colors/icon_hover_pressed_color = Color(1, 1, 1, 1)
+SessionButton/colors/icon_normal_color = Color(1, 1, 1, 1)
+SessionButton/colors/icon_pressed_color = Color(1, 1, 1, 1)
+SessionButton/styles/disabled = SubResource("StyleBoxTexture_jvvyi")
+SessionButton/styles/focus = SubResource("StyleBoxFlat_6ab1x")
+SessionButton/styles/hover = SubResource("StyleBoxTexture_jslj0")
+SessionButton/styles/normal = ExtResource("1_7med2")
+SessionButton/styles/pressed = SubResource("StyleBox_ptkcj")
+SessionPanel/base_type = &"Panel"
+SessionPanel/styles/panel = null
+SessionSeparator/base_type = &"HSeparator"
+SessionSeparator/styles/separator = SubResource("StyleBoxLine_kaw4i")
diff --git a/game/assets/graphics/theme/main_menu.tres b/game/assets/graphics/theme/main_menu.tres
new file mode 100644
index 0000000..d79184c
--- /dev/null
+++ b/game/assets/graphics/theme/main_menu.tres
@@ -0,0 +1,202 @@
+[gd_resource type="Theme" load_steps=32 format=3 uid="uid://qoi3oec48jp0"]
+
+[ext_resource type="Script" path="res://src/Game/Theme/StyleBoxCombinedTexture.gd" id="1_axke7"]
+[ext_resource type="Script" path="res://src/Game/Theme/TextureSetting.gd" id="2_7bwl2"]
+[ext_resource type="Texture2D" uid="uid://dapuqgpjs56bs" path="res://assets/graphics/main_menu_background.png" id="3_cpatd"]
+[ext_resource type="Texture2D" uid="uid://q25s41oavuxw" path="res://assets/graphics/main_menu_border_paper.png" id="4_sl60o"]
+[ext_resource type="Texture2D" uid="uid://c0p34i3d3b0pw" path="res://assets/graphics/main_menu_button.png" id="5_xj7ql"]
+[ext_resource type="StyleBox" uid="uid://blwilunhmyvpq" path="res://assets/graphics/theme/main_menu_button_normal.tres" id="6_dx0aj"]
+[ext_resource type="Script" path="res://src/Game/Theme/StyleBoxWithSound.gd" id="7_qo00e"]
+[ext_resource type="AudioStream" uid="uid://bsldcs3l8s7ug" path="res://addons/kenney_ui_audio/click3.wav" id="8_etuft"]
+
+[sub_resource type="Resource" id="Resource_hxpog"]
+script = ExtResource("2_7bwl2")
+texture = ExtResource("3_cpatd")
+draw_center = true
+texture_margin_left = 0.0
+texture_margin_top = 0.0
+texture_margin_right = 0.0
+texture_margin_bottom = 0.0
+expand_margin_left = 0.0
+expand_margin_top = 0.0
+expand_margin_right = 0.0
+expand_margin_bottom = 0.0
+axis_stretch_horizontal = 0
+axis_stretch_vertical = 0
+region_rect = Rect2(0, 0, 0, 0)
+modulate_color = Color(1, 1, 1, 1)
+content_margin_left = -1.0
+content_margin_top = -1.0
+content_margin_right = -1.0
+content_margin_bottom = -1.0
+
+[sub_resource type="Resource" id="Resource_c0k5l"]
+script = ExtResource("2_7bwl2")
+texture = ExtResource("4_sl60o")
+draw_center = true
+texture_margin_left = 0.0
+texture_margin_top = 0.0
+texture_margin_right = 0.0
+texture_margin_bottom = 0.0
+expand_margin_left = 0.0
+expand_margin_top = 0.0
+expand_margin_right = 0.0
+expand_margin_bottom = 0.0
+axis_stretch_horizontal = 0
+axis_stretch_vertical = 0
+region_rect = Rect2(0, 0, 0, 0)
+modulate_color = Color(1, 1, 1, 1)
+content_margin_left = -1.0
+content_margin_top = -1.0
+content_margin_right = -1.0
+content_margin_bottom = -1.0
+
+[sub_resource type="StyleBox" id="StyleBox_odacv"]
+resource_local_to_scene = false
+resource_name = ""
+content_margin_left = -1.0
+content_margin_top = -1.0
+content_margin_right = -1.0
+content_margin_bottom = -1.0
+script = ExtResource("1_axke7")
+texture_settings = Array[ExtResource("2_7bwl2")]([SubResource("Resource_hxpog"), SubResource("Resource_c0k5l")])
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_8sqd6"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_xf6qr"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_1w6b1"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_7j42t"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_3fk2j"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_3jrfj"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_1qwxu"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_myxhv"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_kmfi1"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_1qcrh"]
+
+[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_dd2b8"]
+content_margin_left = 20.0
+content_margin_top = 10.0
+content_margin_right = 20.0
+content_margin_bottom = 14.0
+texture = ExtResource("5_xj7ql")
+modulate_color = Color(0.817521, 0.817521, 0.817521, 0.784314)
+
+[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_2txce"]
+draw_center = false
+border_width_left = 10
+border_width_top = 15
+border_width_right = 10
+border_width_bottom = 15
+border_color = Color(0, 0, 0, 0.584314)
+border_blend = true
+corner_radius_top_left = 5
+corner_radius_top_right = 5
+corner_radius_bottom_right = 5
+corner_radius_bottom_left = 5
+corner_detail = 20
+
+[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_3efxh"]
+content_margin_left = 20.0
+content_margin_top = 10.0
+content_margin_right = 20.0
+content_margin_bottom = 14.0
+texture = ExtResource("5_xj7ql")
+modulate_color = Color(0.588235, 0.588235, 0.588235, 1)
+
+[sub_resource type="StyleBoxTexture" id="StyleBoxTexture_l2rw3"]
+content_margin_left = 20.0
+content_margin_top = 10.0
+content_margin_right = 20.0
+content_margin_bottom = 14.0
+texture = ExtResource("5_xj7ql")
+modulate_color = Color(0.85098, 0.85098, 0.85098, 1)
+
+[sub_resource type="StyleBox" id="StyleBox_uuspe"]
+resource_local_to_scene = false
+resource_name = ""
+content_margin_left = -1.0
+content_margin_top = -1.0
+content_margin_right = -1.0
+content_margin_bottom = -1.0
+script = ExtResource("7_qo00e")
+style_box = SubResource("StyleBoxTexture_l2rw3")
+sound = ExtResource("8_etuft")
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_xdtca"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_o5r8v"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_aan0b"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_4j6j5"]
+
+[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_spejd"]
+
+[resource]
+BackgroundPanel/base_type = &"PanelContainer"
+BackgroundPanel/styles/panel = SubResource("StyleBox_odacv")
+BottomMargin/base_type = &"MarginContainer"
+BottomMargin/constants/margin_bottom = 10
+BottomMargin/constants/margin_left = 50
+BottomMargin/constants/margin_right = 50
+ChecksumLabel/base_type = &"Button"
+ChecksumLabel/colors/font_color = Color(0.247059, 0.392157, 1, 1)
+ChecksumLabel/colors/font_hover_pressed_color = Color(0.247059, 0.392157, 1, 1)
+ChecksumLabel/colors/font_pressed_color = Color(0.247059, 0.392157, 1, 1)
+ChecksumLabel/constants/h_separation = 0
+ChecksumLabel/constants/outline_size = 0
+ChecksumLabel/styles/disabled = SubResource("StyleBoxEmpty_8sqd6")
+ChecksumLabel/styles/focus = SubResource("StyleBoxEmpty_xf6qr")
+ChecksumLabel/styles/hover = SubResource("StyleBoxEmpty_1w6b1")
+ChecksumLabel/styles/normal = SubResource("StyleBoxEmpty_7j42t")
+ChecksumLabel/styles/pressed = SubResource("StyleBoxEmpty_3fk2j")
+CommitLabel/base_type = &"Button"
+CommitLabel/colors/font_hover_color = Color(0.360784, 0.360784, 0.360784, 1)
+CommitLabel/colors/font_hover_pressed_color = Color(0.215686, 0.215686, 0.215686, 1)
+CommitLabel/colors/font_pressed_color = Color(0.215686, 0.215686, 0.215686, 1)
+CommitLabel/constants/h_separation = 0
+CommitLabel/constants/outline_size = 0
+CommitLabel/styles/disabled = SubResource("StyleBoxEmpty_3jrfj")
+CommitLabel/styles/focus = SubResource("StyleBoxEmpty_1qwxu")
+CommitLabel/styles/hover = SubResource("StyleBoxEmpty_myxhv")
+CommitLabel/styles/normal = SubResource("StyleBoxEmpty_kmfi1")
+CommitLabel/styles/pressed = SubResource("StyleBoxEmpty_1qcrh")
+TitleButton/base_type = &"Button"
+TitleButton/colors/font_color = Color(0.87451, 0.87451, 0.87451, 1)
+TitleButton/colors/font_disabled_color = Color(0.87451, 0.87451, 0.87451, 0.501961)
+TitleButton/colors/font_focus_color = Color(0.94902, 0.94902, 0.94902, 1)
+TitleButton/colors/font_hover_color = Color(0.94902, 0.94902, 0.94902, 1)
+TitleButton/colors/font_hover_pressed_color = Color(1, 1, 1, 1)
+TitleButton/colors/font_outline_color = Color(1, 1, 1, 1)
+TitleButton/colors/font_pressed_color = Color(1, 1, 1, 1)
+TitleButton/colors/icon_disabled_color = Color(1, 1, 1, 0.4)
+TitleButton/colors/icon_focus_color = Color(1, 1, 1, 1)
+TitleButton/colors/icon_hover_color = Color(1, 1, 1, 1)
+TitleButton/colors/icon_hover_pressed_color = Color(1, 1, 1, 1)
+TitleButton/colors/icon_normal_color = Color(1, 1, 1, 1)
+TitleButton/colors/icon_pressed_color = Color(1, 1, 1, 1)
+TitleButton/font_sizes/font_size = 16
+TitleButton/styles/disabled = SubResource("StyleBoxTexture_dd2b8")
+TitleButton/styles/focus = SubResource("StyleBoxFlat_2txce")
+TitleButton/styles/hover = SubResource("StyleBoxTexture_3efxh")
+TitleButton/styles/normal = ExtResource("6_dx0aj")
+TitleButton/styles/pressed = SubResource("StyleBox_uuspe")
+VersionLabel/base_type = &"Button"
+VersionLabel/colors/font_hover_color = Color(0.360784, 0.360784, 0.360784, 1)
+VersionLabel/colors/font_hover_pressed_color = Color(0.215686, 0.215686, 0.215686, 1)
+VersionLabel/colors/font_pressed_color = Color(0.215686, 0.215686, 0.215686, 1)
+VersionLabel/constants/h_separation = 0
+VersionLabel/constants/outline_size = 0
+VersionLabel/styles/disabled = SubResource("StyleBoxEmpty_xdtca")
+VersionLabel/styles/focus = SubResource("StyleBoxEmpty_o5r8v")
+VersionLabel/styles/hover = SubResource("StyleBoxEmpty_aan0b")
+VersionLabel/styles/normal = SubResource("StyleBoxEmpty_4j6j5")
+VersionLabel/styles/pressed = SubResource("StyleBoxEmpty_spejd")
diff --git a/game/assets/graphics/theme/main_menu_button_normal.tres b/game/assets/graphics/theme/main_menu_button_normal.tres
new file mode 100644
index 0000000..fe54f1d
--- /dev/null
+++ b/game/assets/graphics/theme/main_menu_button_normal.tres
@@ -0,0 +1,10 @@
+[gd_resource type="StyleBoxTexture" load_steps=2 format=3 uid="uid://blwilunhmyvpq"]
+
+[ext_resource type="Texture2D" uid="uid://c0p34i3d3b0pw" path="res://assets/graphics/main_menu_button.png" id="1_o43lq"]
+
+[resource]
+content_margin_left = 20.0
+content_margin_top = 10.0
+content_margin_right = 20.0
+content_margin_bottom = 14.0
+texture = ExtResource("1_o43lq")
diff --git a/game/assets/graphics/theme/options_menu.tres b/game/assets/graphics/theme/options_menu.tres
new file mode 100644
index 0000000..91c6ee4
--- /dev/null
+++ b/game/assets/graphics/theme/options_menu.tres
@@ -0,0 +1,67 @@
+[gd_resource type="Theme" load_steps=8 format=3 uid="uid://fbxssqcg1s0m"]
+
+[ext_resource type="Script" path="res://src/Game/Theme/StyleBoxCombinedTexture.gd" id="1_6eqg5"]
+[ext_resource type="Script" path="res://src/Game/Theme/TextureSetting.gd" id="2_d0e1t"]
+[ext_resource type="Texture2D" uid="uid://dapuqgpjs56bs" path="res://assets/graphics/main_menu_background.png" id="3_t863y"]
+[ext_resource type="Texture2D" uid="uid://q25s41oavuxw" path="res://assets/graphics/main_menu_border_paper.png" id="4_ljte1"]
+
+[sub_resource type="Resource" id="Resource_hxpog"]
+script = ExtResource("2_d0e1t")
+texture = ExtResource("3_t863y")
+draw_center = true
+texture_margin_left = 0.0
+texture_margin_top = 0.0
+texture_margin_right = 0.0
+texture_margin_bottom = 0.0
+expand_margin_left = 0.0
+expand_margin_top = 0.0
+expand_margin_right = 0.0
+expand_margin_bottom = 0.0
+axis_stretch_horizontal = 0
+axis_stretch_vertical = 0
+region_rect = Rect2(0, 0, 0, 0)
+modulate_color = Color(1, 1, 1, 1)
+content_margin_left = -1.0
+content_margin_top = -1.0
+content_margin_right = -1.0
+content_margin_bottom = -1.0
+
+[sub_resource type="Resource" id="Resource_c0k5l"]
+script = ExtResource("2_d0e1t")
+texture = ExtResource("4_ljte1")
+draw_center = true
+texture_margin_left = 0.0
+texture_margin_top = 0.0
+texture_margin_right = 0.0
+texture_margin_bottom = 0.0
+expand_margin_left = 0.0
+expand_margin_top = 0.0
+expand_margin_right = 0.0
+expand_margin_bottom = 0.0
+axis_stretch_horizontal = 0
+axis_stretch_vertical = 0
+region_rect = Rect2(0, 0, 0, 0)
+modulate_color = Color(1, 1, 1, 1)
+content_margin_left = -1.0
+content_margin_top = -1.0
+content_margin_right = -1.0
+content_margin_bottom = -1.0
+
+[sub_resource type="StyleBox" id="StyleBox_lm8by"]
+resource_local_to_scene = false
+resource_name = ""
+content_margin_left = -1.0
+content_margin_top = -1.0
+content_margin_right = -1.0
+content_margin_bottom = -1.0
+script = ExtResource("1_6eqg5")
+texture_settings = Array[ExtResource("2_d0e1t")]([SubResource("Resource_hxpog"), SubResource("Resource_c0k5l")])
+
+[resource]
+BackgroundPanel/base_type = &"PanelContainer"
+BackgroundPanel/styles/panel = SubResource("StyleBox_lm8by")
+TabMargin/base_type = &"MarginContainer"
+TabMargin/constants/margin_bottom = 150
+TabMargin/constants/margin_left = 180
+TabMargin/constants/margin_right = 180
+TabMargin/constants/margin_top = 150
diff --git a/game/assets/localisation/README.md b/game/assets/localisation/README.md
new file mode 100644
index 0000000..909e380
--- /dev/null
+++ b/game/assets/localisation/README.md
@@ -0,0 +1,16 @@
+# Localisation
+
+This folder contains localisations for in-game text. Each sub-folder must be named with a standard locale code, e.g. `en_GB`, to which the localisations contained within it shall apply (Godot's supported locale codes are listed [here](https://docs.godotengine.org/en/latest/tutorials/i18n/locales.html)). These folders contain `.csv` files where each line is interpreted as a semicolon-separated key-value pair. Empty lines allow for spacing out/separating sections, and any further entries beyond the first two on a line are ignored, which can be used to add comments at the end of lines. Lines with their key and value empty are skipped, allowing free-standing comments with no preceeding localisation, but lines with only one of their key or value empty, while not loaded as a localisation, will still result in warnings about incomplete entries.
+
+```
+;; Example Localisation Comment
+EXAMPLE_KEY;Example Value
+ANOTHER_EXAMPLE;Another Example; This is a comment
+
+;; Entries with empty keys/values are skipped but can still produce warnings
+THIS;; produces a warning!
+;As; does this!
+;; This doesn't!
+BUT_THIS_DOES
+AND_THIS;
+```
diff --git a/game/assets/localisation/credits.csv b/game/assets/localisation/credits.csv
new file mode 100644
index 0000000..c5cd021
--- /dev/null
+++ b/game/assets/localisation/credits.csv
@@ -0,0 +1,43 @@
+Title,OpenVic
+Project Lead,FakeByte
+Project Lead,joethepro36
+Project Lead,Catylist
+Project Lead,patrick c
+Project Lead,ZincLadder
+Vice Lead,hop311
+Community Manager,Catylist
+Project Management,JackRalph96
+Developer,Dekaizer
+Developer,forn
+Developer,ItsLateHere
+Developer,kai the demon dignitary
+Developer,KarneeKarnay
+Developer,Marty
+Developer,Orwellian
+Developer,Spartan322
+Developer,TheRedKing247
+Developer,VictoriaMFD
+Developer,2ko
+Developer,BrickPi
+Developer,Catze
+Developer,CyberTropic
+Developer,Masterchef
+Developer,Punkrocky
+Developer,RonPaul2020
+Developer,Vercix
+Developer,wyrm
+Developer,Youri
+Artist,dolt
+Artist,Enigmatic
+Artist,JunkJen
+Artist,jΛk
+Artist,PeuPeu
+Artist,qazdr6
+Artist,ThatEvilOne
+Artist,Bon Marche
+Artist,kingscott84
+Artist,spacemarine658
+Artist,Tupinamba
+Music,MOOp
+Music,Ale-
+Special Thanks,Spudgun
diff --git a/game/assets/localisation/credits.csv.import b/game/assets/localisation/credits.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/credits.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/en_GB/goods.csv b/game/assets/localisation/locales/en_GB/goods.csv
new file mode 100644
index 0000000..9d41b6a
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/goods.csv
@@ -0,0 +1,59 @@
+
+;; Good Categories
+good_category_military;Military
+good_category_raw;Raw
+good_category_industrial;Industrial
+good_category_consumer;Consumer
+
+;; Goods
+good_ammunition;Ammunition
+good_small_arms;Small Arms
+good_artillery;Artillery
+good_canned_food;Canned Food
+good_tanks;Tanks
+good_aeroplanes;Aeroplanes
+
+good_coal;Coal
+good_cotton;Cotton
+good_dye;Dye
+good_iron;Iron
+good_oil;Oil
+good_precious_metal;Precious Metal
+good_rubber;Rubber
+good_silk;Silk
+good_sulphur;Sulphur
+good_timber;Timber
+good_tropical_wood;Tropical Wood
+good_wool;Wool
+
+good_steel;Steel
+good_cement;Cement
+good_machine_parts;Machine Parts
+good_glass;Glass
+good_fuel;Fuel
+good_fertilizer;Fertilizer
+good_explosives;Explosives
+good_clipper_convoys;Clipper Convoys
+good_steamer_convoys;Steamer Convoys
+good_electric_gears;Electric Gears
+good_fabric;Fabric
+good_lumber;Lumber
+
+good_paper;Paper
+good_cattle;Cattle
+good_fish;Fish
+good_fruit;Fruit
+good_grain;Grain
+good_tobacco;Tobacco
+good_tea;Tea
+good_coffee;Coffee
+good_opium;Opium
+good_automobiles;Automobiles
+good_telephones;Telephones
+good_wine;Wine
+good_liquor;Liquor
+good_regular_clothes;Regular Clothes
+good_luxury_clothes;Luxury Clothes
+good_furniture;Furniture
+good_luxury_furniture;Luxury Furniture
+good_radios;Radio
diff --git a/game/assets/localisation/locales/en_GB/goods.csv.import b/game/assets/localisation/locales/en_GB/goods.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/goods.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/en_GB/mapmodes.csv b/game/assets/localisation/locales/en_GB/mapmodes.csv
new file mode 100644
index 0000000..f3e6417
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/mapmodes.csv
@@ -0,0 +1,15 @@
+
+;; Test Mapmodes
+mapmode_province;Province
+mapmode_region;Region
+mapmode_terrain;Terrain
+mapmode_political;Political
+mapmode_index;Index
+mapmode_terrain_type;Terrain Type
+mapmode_rgo;RGO
+mapmode_infrastructure;Infrastructure
+mapmode_population;Population Density
+mapmode_culture;Nationality
+mapmode_religion;Religion
+mapmode_adjacencies;Adjacencies
+mapmode_port;Ports
diff --git a/game/assets/localisation/locales/en_GB/mapmodes.csv.import b/game/assets/localisation/locales/en_GB/mapmodes.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/mapmodes.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/en_GB/menus.csv b/game/assets/localisation/locales/en_GB/menus.csv
new file mode 100644
index 0000000..08ac0fe
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/menus.csv
@@ -0,0 +1,141 @@
+
+;; Error Messages
+ERROR_ASSET_PATH_NOT_FOUND;Failed to find Victoria II!
+ERROR_ASSET_PATH_NOT_FOUND_MESSAGE;OpenVic couldn't find a copy of Victoria II installed on your computer! If you do have Victoria II installed, please specify the path to your game directory with the "search-path" command line option.
+
+;; Main Menu
+MAINMENU_TITLE;OpenVic
+MAINMENU_NEW_GAME;New Game
+MAINMENU_CONTINUE;Continue
+MAINMENU_MULTIPLAYER;Multiplayer
+MAINMENU_OPTIONS;Options
+MAINMENU_CREDITS;Credits
+MAINMENU_EXIT;Exit
+MAINMENU_CHECKSUM;Checksum {checksum}
+
+;; Options
+OPTIONS_RESET;R
+OPTIONS_BACK;X
+
+;; General Tab
+OPTIONS_GENERAL;General
+OPTIONS_GENERAL_SAVEFORMAT;Savegame Format
+OPTIONS_GENERAL_BINARY;Binary
+OPTIONS_GENERAL_TEXT;Text
+OPTIONS_GENERAL_AUTOSAVE;Autosave Interval
+OPTIONS_GENERAL_AUTOSAVE_MONTHLY;Monthly
+OPTIONS_GENERAL_AUTOSAVE_BIMONTHLY;Bi-Monthly
+OPTIONS_GENERAL_AUTOSAVE_YEARLY;Yearly
+OPTIONS_GENERAL_AUTOSAVE_BIYEARLY;Bi-Yearly
+OPTIONS_GENERAL_AUTOSAVE_NEVER;Never
+OPTIONS_GENERAL_LANGUAGE;Language
+
+;; Video Tab
+OPTIONS_VIDEO;Video
+
+OPTIONS_VIDEO_RESOLUTION;Resolution
+OPTIONS_VIDEO_RESOLUTION_DIMS;{width}x{height}
+OPTIONS_VIDEO_RESOLUTION_DIMS_DEFAULT;{width}x{height} (Default)
+OPTIONS_VIDEO_RESOLUTION_DIMS_NAMED;{width}x{height} ({name})
+OPTIONS_VIDEO_RESOLUTION_DIMS_NAMED_DEFAULT;{width}x{height} ({name}, Default)
+
+OPTIONS_VIDEO_RESOLUTION_3840x2160;4K
+OPTIONS_VIDEO_RESOLUTION_2560x1080;UW1080p
+OPTIONS_VIDEO_RESOLUTION_1920x1080;1080p
+OPTIONS_VIDEO_RESOLUTION_1280x720;720p
+
+OPTIONS_VIDEO_SCREEN_MODE;Screen Mode
+OPTIONS_VIDEO_FULLSCREEN;Fullscreen
+OPTIONS_VIDEO_BORDERLESS;Borderless
+OPTIONS_VIDEO_WINDOWED;Windowed
+
+OPTIONS_VIDEO_MONITOR_SELECTION;Monitor Selection
+OPTIONS_VIDEO_MONITOR;Monitor {index}
+
+OPTIONS_VIDEO_REFRESH_RATE;Refresh Rate
+OPTIONS_VIDEO_REFRESH_RATE_TOOLTIP;Only change from VSYNC if you are having issues with screen tearing.
+
+OPTIONS_VIDEO_QUALITY;Quality Preset
+OPTIONS_VIDEO_QUALITY_LOW;Low
+OPTIONS_VIDEO_QUALITY_MEDIUM;Medium
+OPTIONS_VIDEO_QUALITY_HIGH;High
+OPTIONS_VIDEO_QUALITY_ULTRA;Ultra
+OPTIONS_VIDEO_QUALITY_CUSTOM;Custom
+
+OPTIONS_VIDEO_GUI_SCALE;Gui Scaling Factor
+
+OPTIONS_VIDEO_REVERT_DIALOG_TITLE;Keep Video Changes?
+OPTIONS_VIDEO_REVERT_DIALOG_TEXT;Reverting changes in {time} seconds...
+
+;; Sound Tab
+OPTIONS_SOUND;Sound
+MASTER_BUS;Master Volume
+MUSIC_BUS;Music Volume
+SFX_BUS;SFX Volume
+OPTIONS_SOUND_EXPLODE_EARS;Explode Eardrums on Startup?
+
+OPTIONS_CONTROLS;Controls
+OPTIONS_OTHER;Other
+
+;; Credits Menu
+CREDITS_BACK;Back to Main Menu
+
+;; Game Lobby
+GAMELOBBY_START;Start Game
+GAMELOBBY_BACK;Back
+GAMELOBBY_SESSION_TAG;Session Tag
+GAMELOBBY_SELECT_ALL;All
+GAMELOBBY_DELETE_DIALOG_TITLE;Delete {file_name}
+GAMELOBBY_DELETE_DIALOG_TEXT;Are you sure you want to delete {file_name}?
+GAMELOBBY_SESSIONTAG_DIALOG_TITLE;Override {session_tag}
+GAMELOBBY_SESSIONTAG_DIALOG_TEXT;Are you want to override {session_tag} as a previous session?
+
+;; Game Session Menu
+GAMESESSIONMENU_SAVE;Save Game
+GAMESESSIONMENU_LOAD;Load Game
+GAMESESSIONMENU_OPTIONS;Options
+GAMESESSIONMENU_MAINMENU;Resign
+GAMESESSIONMENU_QUIT;Quit
+GAMESESSIONMENU_CLOSE;Close
+
+GAMESESSIONMENU_MAINMENU_DIALOG_TITLE;Resign Game
+GAMESESSIONMENU_MAINMENU_DIALOG_TEXT;Are you sure you want to resign and return to the main menu?
+GAMESESSIONMENU_QUIT_DIALOG_TITLE;Quit Game
+GAMESESSIONMENU_QUIT_DIALOG_TEXT;Are you sure you want to quit and return to desktop?
+
+;; Save Load Menu
+SAVELOADMENU_SAVE_TITLE;Save Menu
+SAVELOADMENU_LOAD_TITLE;Load Menu
+SAVELOADMENU_SAVE_BUTTON;Save
+SAVELOADMENU_LOAD_BUTTON;Load
+
+SAVELOADMENU_DELETE_DIALOG_TITLE;Delete {file_name}
+SAVELOADMENU_DELETE_DIALOG_TEXT;Are you sure you want to delete {file_name}?
+SAVELOADMENU_OVERWRITE_DIALOG_TITLE;Overwrite {file_name}
+SAVELOADMENU_OVERWRITE_DIALOG_TEXT;Are you want to overwrite {file_name}?
+
+SAVELOADMENU_SESSION;Session:
+
+SAVELOADMENU_TABSELECTIONTABBAR_ALL;All
+
+DIALOG_OK;OK
+DIALOG_CANCEL;Cancel
+DIALOG_SAVE_AND_RESIGN;Save and Resign
+DIALOG_SAVE_AND_QUIT;Save and Quit
+
+;; Province Overview Panel
+province_MISSING;No Province
+region_MISSING;No Region
+LIFE_RATING_TOOLTIP;Liferating: {life_rating}
+terrain_type_MISSING;No Terrain Type
+total_population_MISSING;No Population
+PROVINCE_POPULATION_TOOLTIP;Province population
+rgo_name_MISSING;No RGO
+building_MISSING;No Building
+building_fort;Fort
+building_naval_base;Naval Base
+building_railroad;Railroad
+EXPAND_PROVINCE_BUILDING;Expand
+
+;; Pie Chart
+PIECHART_TOOLTIP_NO_DATA;No data
diff --git a/game/assets/localisation/locales/en_GB/menus.csv.import b/game/assets/localisation/locales/en_GB/menus.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/menus.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/en_GB/provinces.csv b/game/assets/localisation/locales/en_GB/provinces.csv
new file mode 100644
index 0000000..39cdae7
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/provinces.csv
@@ -0,0 +1,245 @@
+
+;; Europe
+prov_britain;Britain
+prov_ireland;Ireland
+prov_iceland;Iceland
+prov_corsica;Corsica
+prov_sardinia;Sardinia
+prov_sicily;Sicily
+prov_malta;Malta
+prov_cyprus;Cyprus
+prov_greenland;Greenland
+prov_baleares;Balearic Islands
+prov_gotland;Gotland
+prov_crete;Crete
+prov_jan_mayen;Jan Mayen
+prov_faroes;Faroe Islands
+prov_mann;Isle of Mann
+prov_shetlands;Shetlands
+prov_orkney;Orkney
+prov_channel_islands;Channel Islands
+prov_madiera;Madiera
+prov_canarias;Canarias
+prov_sjaeland;Sjaeland
+prov_bornholm;Bornholm
+prov_bear_island;Bear Island
+prov_pantelleria;Pantelleria
+prov_iberia;Iberia
+prov_scandinavia;Scandinavia
+prov_jutland;Jutland
+prov_fyn;Fyn
+prov_hiiumaa;Hiiumaa
+prov_saaremaa;Saaremaa
+prov_italy;Italy
+prov_elba;Elba
+prov_france;France
+prov_netherlands;Netherlands
+prov_belgium;Belgium
+prov_luxembourg;Luxembourg
+prov_switzerland;Switzerland
+prov_balkans;Balkans
+prov_crimea;Crimea
+prov_germany;Germany
+prov_poland;Poland
+prov_baltics;Baltics
+prov_finland;Finland
+prov_aland;Åland
+prov_ukraine;Ukraine
+prov_russia;Russia
+
+;; North America
+prov_north_america;North America
+prov_cuba;Cuba
+prov_bermuda;Bermuda
+prov_jamaica;Jamaica
+prov_hispaniola;Hispaniola
+prov_aleutians;Aleutian Islands
+prov_bahamas;Bahamas
+prov_turks_and_caicos;Turks and Caicos
+prov_puerto_rico;Puerto Rico
+prov_barbados;Barbados
+prov_grenada;Grenada
+prov_st_vincent;St Vincent
+prov_st_lucia;St Lucia
+prov_martinique;Martinique
+prov_dominica;Dominica
+prov_guadeloupe;Guadeloupe
+prov_montserrat;Montserrat
+prov_antigua;Antigua
+prov_barbuda;Barbuda
+prov_st_kitts;St Kitts
+prov_west_virgin_islands;West Virgin Islands
+prov_east_virgin_islands;East Virgin Islands
+prov_cayman_islands;Cayman Islands
+prov_angulia;Angulia
+prov_central_america;Central America
+prov_mexico;Mexico
+
+;; Canada
+prov_victoria;Victoria
+prov_calgary;Calgary
+prov_saskatoon;Saskatoon
+prov_winnipeg;Winnipeg
+prov_ottawa;Ottawa
+prov_quebec;Quebec
+prov_new_brunswick;New Brunswick
+prov_prince_edward_island;Prince Edward Island
+prov_nova_scotia;Nova Scotia
+prov_labrador;Labrador
+prov_newfoundland;Newfoundland
+prov_whitehorse;Whitehorse
+prov_yellowknife;Yellowknife
+prov_iqaluit;Iqaluit
+
+;; South America
+prov_south_america;South America
+prov_galapagos;Galapagos
+prov_falklands;Falklands
+prov_south_georgia;South Georgia
+
+;; Africa
+prov_africa;Africa
+prov_madagascar;Madagascar
+prov_socotra;Socotra
+prov_mauritius;Mauritius
+prov_reunion;Réunion
+prov_comoros;Comoros
+prov_sao_tome;Sao Tome
+prov_fernando_po;Fernando Po
+prov_cape_verde;Cape Verde
+prov_ascension;Ascension
+prov_st_helena;St Helena
+prov_tristan_da_cunha;Tristan da Cunha
+prov_seychelles;Seychelles
+prov_prince_edward_islands;Prince Edward Islands
+prov_kerguelen_islands;Kerguelen Islands
+prov_heard_island;Heard Island
+prov_egypt;Egypt
+prov_morocco;Morocco
+
+;; Asia
+prov_middle_east;Middle East
+prov_ceylon;Ceylon
+prov_formosa;Formosa
+prov_sakhalin;Sakhalin
+prov_maldives;Maldives
+prov_hainan;Hainan
+prov_hokkaido;Hokkaido
+prov_diego_garcia;Diego Garcia
+prov_philippines;Philippines
+prov_india;India
+prov_andamans;Andaman Islands
+prov_nicobar_islands;Nicobar Islands
+prov_indochina;Indochina
+prov_korea;Korea
+prov_okinawa;Okinawa
+prov_yaeyama;Yaeyama
+prov_kyushu;Kyushu
+prov_shikoku;Shikoku
+prov_japan;Japan
+prov_kurils;Kuril Islands
+prov_manchuria;Manchuria
+prov_china;China
+prov_central_asia;Central Asia
+prov_siberia;Siberia
+prov_iran;Iran
+prov_anatolia;Anatolia
+
+;; Oceania
+prov_oceania;Oceania
+prov_indonesia;Indonesia
+prov_north_island;North Island
+prov_south_island;South Island
+prov_tasmania;Tasmania
+prov_australia;Australia
+prov_hawaii;Hawaii
+
+;; Lakes
+prov_aral_sea;Aral Sea
+prov_caspian_sea;Caspian Sea
+prov_lake_ladoga;Lake Ladoga
+prov_lake_ontario;Lake Ontario
+prov_lake_erie;Lake Erie
+prov_lake_huron;Lake Huron
+prov_lake_michigan;Lake Michigan
+prov_lake_superior;Lake Superior
+prov_lake_baikal;Lake Baikal
+prov_lake_woods;Lake of the Woods
+prov_lake_manitoba;Lake Manitoba
+prov_reindeer_lake;Reindeer Lake
+prov_lake_ronge;Lac la Ronge
+prov_lake_athabasca;Lake Athabasca
+prov_great_slave_lake;Great Slave Lake
+prov_great_bear_lake;Great Bear Lake
+
+;; Seas and Oceans
+prov_azov_sea;Sea of Azov
+prov_black_sea;Black Sea
+prov_marmara_sea;Sea of Marmara
+prov_agean_sea;Agean Sea
+prov_ionian_sea;Ionian Sea
+prov_adriatic_sea;Adriatic Sea
+prov_tyrrhenian_sea;Tyrrhenian Sea
+prov_east_mediterranean;East Mediterranean Sea
+prov_central_mediterranean;Central Mediterranean Sea
+prov_west_mediterranean;West Mediterranean Sea
+prov_ligurian_sea;Ligurian Sea
+prov_balearic_sea;Balearic Sea
+prov_alboran_sea;Alboran Sea
+prov_gulf_bothnia;Gulf of Bothnia
+prov_gulf_finland;Gulf of Finland
+prov_gulf_riga;Gulf of Riga
+prov_baltic_sea;Baltic Sea
+prov_danish_straits;Danish Straits
+prov_english_channel;English Channel
+prov_irish_sea;Irish Sea
+prov_biscay_bay;Bay of Biscay
+prov_north_sea;North Sea
+prov_red_sea;Red Sea
+prov_arabian_sea;Arabian Sea
+prov_persian_gulf;Persian Gulf
+prov_andaman_sea;Andaman Sea
+prov_bay_bengal;Bay of Bengal
+prov_okhotsk_sea;Sea of Okhotsk
+prov_japan_sea;Sea of Japan
+prov_east_china_sea;East China Sea
+prov_south_china_sea;South China Sea
+prov_philippine_sea;Philippine Sea
+prov_celebes_sea;Celebes Sea
+prov_java_sea;Java Sea
+prov_banda_sea;Banda Sea
+prov_arafura_sea;Arafura Sea
+prov_gulf_mexico;Gulf of Mexico
+prov_caribbean_sea;Caribbean Sea
+prov_mozambique_channel;Mozambique Channel
+prov_zanj_sea;Sea of Zanj
+prov_kara_sea;Kara Sea
+prov_barents_sea;Barents Sea
+prov_norwegian_sea;Norwegian Sea
+prov_greenland_sea;Greenland Sea
+prov_labrador_sea;Labrador Sea
+prov_hudson_bay;Hudson Bay
+prov_gulf_st_lawrence;Gulf of St Lawrence
+prov_gulf_alaska;Gulf of Alaska
+prov_gulf_california;Gulf of California
+prov_east_siberian_sea;East Siberian Sea
+prov_sargasso_sea;Sargasso Sea
+prov_gulf_guinea;Gulf of Guinea
+prov_celtic_sea;Celtic Sea
+prov_argentine_sea;Argentine Sea
+prov_chilean_sea;Chilean Sea
+prov_north_atlantic;North Atlantic Ocean
+prov_central_atlantic;Central Atlantic Ocean
+prov_south_atlantic;South Atlantic Ocean
+prov_indian_ocean;Indian Ocean
+prov_great_australian_bight;Great Australian Bight
+prov_tasman_sea;Tasman Sea
+prov_coral_sea;Coral Sea
+prov_melanesia;Melanesia
+prov_micronesia;Micronesia
+prov_polynesia;Polynesia
+prov_north_pacific;North Pacific Ocean
+prov_south_pacific;South Pacific Ocean
+prov_bering_sea;Bering Sea
+prov_chukchi_sea;Chukchi Sea
+prov_beaufort_sea;Beaufort Sea
diff --git a/game/assets/localisation/locales/en_GB/provinces.csv.import b/game/assets/localisation/locales/en_GB/provinces.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/provinces.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/en_GB/regions.csv b/game/assets/localisation/locales/en_GB/regions.csv
new file mode 100644
index 0000000..70abd1c
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/regions.csv
@@ -0,0 +1,8 @@
+
+;; Regions
+region_europe;Europe
+region_north_america;North America
+region_south_america;South America
+region_africa;Africa
+region_asia;Asia
+region_oceania;Oceania
diff --git a/game/assets/localisation/locales/en_GB/regions.csv.import b/game/assets/localisation/locales/en_GB/regions.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/en_GB/regions.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/en_US/menus.csv b/game/assets/localisation/locales/en_US/menus.csv
new file mode 100644
index 0000000..1312f3b
--- /dev/null
+++ b/game/assets/localisation/locales/en_US/menus.csv
@@ -0,0 +1,60 @@
+
+;; Main Menu
+MAINMENU_TITLE;OpenVic
+MAINMENU_NEW_GAME;New Game
+MAINMENU_CONTINUE;Continue
+MAINMENU_MULTIPLAYER;Multiplayer
+MAINMENU_OPTIONS;Options
+MAINMENU_CREDITS;Credits
+MAINMENU_EXIT;Exit
+MAINMENU_CHECKSUM;Checksum {checksum}
+
+;; Options
+OPTIONS_RESET;R
+OPTIONS_BACK;X
+
+;; General Tab
+OPTIONS_GENERAL_SAVEFORMAT;Savegame Format
+OPTIONS_GENERAL_BINARY;Binary
+OPTIONS_GENERAL_TEXT;Text
+OPTIONS_GENERAL_AUTOSAVE;Autosave Interval
+OPTIONS_GENERAL_AUTOSAVE_MONTHLY;Monthly
+OPTIONS_GENERAL_AUTOSAVE_BIMONTHLY;Bi-Monthly
+OPTIONS_GENERAL_AUTOSAVE_YEARLY;Yearly
+OPTIONS_GENERAL_AUTOSAVE_BIYEARLY;Bi-Yearly
+OPTIONS_GENERAL_AUTOSAVE_NEVER;Never
+OPTIONS_GENERAL_LANGUAGE;Language
+
+;; Video Tab
+OPTIONS_VIDEO_RESOLUTION;Resolution
+OPTIONS_VIDEO_SCREEN_MODE;Screen Mode
+OPTIONS_VIDEO_FULLSCREEN;Fullscreen
+OPTIONS_VIDEO_BORDERLESS;Borderless
+OPTIONS_VIDEO_WINDOWED;Windowed
+OPTIONS_VIDEO_MONITOR_SELECTION;Monitor Selection
+OPTIONS_VIDEO_REFRESH_RATE;Refresh Rate
+OPTIONS_VIDEO_REFRESH_RATE_TOOLTIP;Only change from VSYNC if you are having issues with screen tearing.
+OPTIONS_VIDEO_QUALITY;Quality Preset
+OPTIONS_VIDEO_GUI_SCALE;Gui Scaling Factor
+OPTIONS_VIDEO_REVERT_DIALOG_TITLE;Keep Video Changes?
+OPTIONS_VIDEO_REVERT_DIALOG_TEXT;Reverting changes in ({time})
+
+;; Sound Tab
+MASTER_BUS;Master Volume
+MUSIC_BUS;Music Volume
+SFX_BUS;SFX Volume
+
+;; Credits Menu
+CREDITS_BACK;Back to Main Menu
+
+;; Game Lobby
+GAMELOBBY_START;Start Game
+GAMELOBBY_BACK;Back
+
+;; Game Session Menu
+GAMESESSIONMENU_SAVE;Save Game
+GAMESESSIONMENU_LOAD;Load Game
+GAMESESSIONMENU_OPTIONS;Options
+GAMESESSIONMENU_MAINMENU;Resign
+GAMESESSIONMENU_QUIT;Quit
+GAMESESSIONMENU_CLOSE;Close
diff --git a/game/assets/localisation/locales/en_US/menus.csv.import b/game/assets/localisation/locales/en_US/menus.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/en_US/menus.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/fr_FR/menus.csv b/game/assets/localisation/locales/fr_FR/menus.csv
new file mode 100644
index 0000000..fe0c5c4
--- /dev/null
+++ b/game/assets/localisation/locales/fr_FR/menus.csv
@@ -0,0 +1,60 @@
+
+;; Main Menu
+MAINMENU_TITLE;OpenVic
+MAINMENU_NEW_GAME;Nouveau Jeu
+MAINMENU_CONTINUE;Continuer
+MAINMENU_MULTIPLAYER;Multijouer
+MAINMENU_OPTIONS;Options
+MAINMENU_CREDITS;Credits
+MAINMENU_EXIT;Quitter
+MAINMENU_CHECKSUM;Somme de contrôle {checksum}
+
+;; Options
+OPTIONS_RESET;R
+OPTIONS_BACK;X
+
+;; General Tab
+OPTIONS_GENERAL_SAVEFORMAT;Format de Sauvegarde
+OPTIONS_GENERAL_BINARY;Binaire
+OPTIONS_GENERAL_TEXT;Texte
+OPTIONS_GENERAL_AUTOSAVE;Intervalle d'Enregistrement Automatique
+OPTIONS_GENERAL_AUTOSAVE_MONTHLY;Mensuel
+OPTIONS_GENERAL_AUTOSAVE_BIMONTHLY;Bimensuel
+OPTIONS_GENERAL_AUTOSAVE_YEARLY;Annuel
+OPTIONS_GENERAL_AUTOSAVE_BIYEARLY;Bisannuel
+OPTIONS_GENERAL_AUTOSAVE_NEVER;Jamais
+OPTIONS_GENERAL_LANGUAGE;Langue
+
+;; Video Tab
+OPTIONS_VIDEO_RESOLUTION;Résolution
+OPTIONS_VIDEO_SCREEN_MODE;Mode Écran
+OPTIONS_VIDEO_FULLSCREEN;Plein Écran
+OPTIONS_VIDEO_BORDERLESS;Sans Bordure
+OPTIONS_VIDEO_WINDOWED;Fenêtré
+OPTIONS_VIDEO_MONITOR_SELECTION;Sélection du Moniteur
+OPTIONS_VIDEO_REFRESH_RATE;Taux de Rafraîchissement
+OPTIONS_VIDEO_REFRESH_RATE_TOOLTIP;Ne changez de VSYNC que si vous rencontrez des problèmes de déchirement d'écran.
+OPTIONS_VIDEO_QUALITY;Préréglage de la Qualité
+OPTIONS_VIDEO_GUI_SCALE;Mise à échelle de l'Interface Graphique
+OPTIONS_VIDEO_REVERT_DIALOG_TITLE;Maintenir la résolution?
+OPTIONS_VIDEO_REVERT_DIALOG_TEXT;Reverserai la résolution en {time} secondes...
+
+;; Sound Tab
+MASTER_BUS;Volume Principal
+MUSIC_BUS;Volume de la Musique
+SFX_BUS;Volume d'Effets Spéciaux
+
+;; Credits Menu
+CREDITS_BACK;Retour au Menu Principal
+
+;; Game Lobby
+GAMELOBBY_START;Démarrer Jeu
+GAMELOBBY_BACK;Retourner
+
+;; Game Session Menu
+GAMESESSIONMENU_SAVE;Sauvegarder la Partie
+GAMESESSIONMENU_LOAD;Charger la Partie
+GAMESESSIONMENU_OPTIONS;Options
+GAMESESSIONMENU_MAINMENU;Démissionner
+GAMESESSIONMENU_QUIT;Quitter
+GAMESESSIONMENU_CLOSE;Fermer
diff --git a/game/assets/localisation/locales/fr_FR/menus.csv.import b/game/assets/localisation/locales/fr_FR/menus.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/fr_FR/menus.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/ru_RU/goods.csv b/game/assets/localisation/locales/ru_RU/goods.csv
new file mode 100644
index 0000000..3f8a30c
--- /dev/null
+++ b/game/assets/localisation/locales/ru_RU/goods.csv
@@ -0,0 +1,59 @@
+
+;; Good Categories
+good_category_military;Военные товары
+good_category_raw;Сырье
+good_category_industrial;Промышленные товары
+good_category_consumer;Потребительские товары
+
+;; Goods
+good_ammunition;Боеприпасы
+good_small_arms;Стрелковое оружие
+good_artillery;Артиллерия
+good_canned_food;Консервы
+good_tanks;Танки
+good_aeroplanes;Самолеты
+
+good_coal;Уголь
+good_cotton;Хлопок
+good_dye;Красители
+good_iron;Железо
+good_oil;ГСМ
+good_precious_metal;Драгоценные металлы
+good_rubber;Резина
+good_silk;Шелк
+good_sulphur;Сера
+good_timber;Древесина
+good_tropical_wood;Тропическое дерево
+good_wool;Шерсть
+
+good_steel;Сталь
+good_cement;Цемент
+good_machine_parts;Механические детали
+good_glass;Стекло
+good_fuel;Топливо
+good_fertilizer;Удобрения
+good_explosives;Взрывчатка
+good_clipper_convoys;Конвои Клипперов
+good_steamer_convoys;Конвои Пароходов
+good_electric_gears;Электродетали
+good_fabric;Ткань
+good_lumber;Пиломатериалы
+
+good_paper;Бумага
+good_cattle;Скот
+good_fish;Рыба
+good_fruit;Фрукты
+good_grain;Зерно
+good_tobacco;Табак
+good_tea;Чай
+good_coffee;Кофе
+good_opium;Опиум
+good_automobiles;Автомобили
+good_telephones;Телефоны
+good_wine;Вино
+good_liquor;Спирт
+good_regular_clothes;Обычная одежда
+good_luxury_clothes;Роскошная одежда
+good_furniture;Мебель
+good_luxury_furniture;Роскошная мебель
+good_radios;Радио
diff --git a/game/assets/localisation/locales/ru_RU/goods.csv.import b/game/assets/localisation/locales/ru_RU/goods.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/ru_RU/goods.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/ru_RU/mapmodes.csv b/game/assets/localisation/locales/ru_RU/mapmodes.csv
new file mode 100644
index 0000000..946f29f
--- /dev/null
+++ b/game/assets/localisation/locales/ru_RU/mapmodes.csv
@@ -0,0 +1,8 @@
+
+;; Test Mapmodes
+mapmode_province;Провинции
+mapmode_region;Регионы
+mapmode_terrain;Ландшафт
+mapmode_index;Индекс
+mapmode_rgo;ДП
+mapmode_infrastructure;Инфраструктура
diff --git a/game/assets/localisation/locales/ru_RU/mapmodes.csv.import b/game/assets/localisation/locales/ru_RU/mapmodes.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/ru_RU/mapmodes.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/locales/ru_RU/menus.csv b/game/assets/localisation/locales/ru_RU/menus.csv
new file mode 100644
index 0000000..76605d3
--- /dev/null
+++ b/game/assets/localisation/locales/ru_RU/menus.csv
@@ -0,0 +1,119 @@
+
+;; Main Menu
+MAINMENU_TITLE;OpenVic
+MAINMENU_NEW_GAME;Новая игра
+MAINMENU_CONTINUE;Продолжить
+MAINMENU_MULTIPLAYER;Сетевая игра
+MAINMENU_OPTIONS;Настройки
+MAINMENU_CREDITS;Титры
+MAINMENU_EXIT;Выйти из игры
+MAINMENU_CHECKSUM;Контрольная сумма {checksum}
+
+;; Options
+OPTIONS_RESET;R
+OPTIONS_BACK;X
+
+;; General Tab
+OPTIONS_GENERAL;Основные настройки
+OPTIONS_GENERAL_SAVEFORMAT;Формат игровых сохранений
+OPTIONS_GENERAL_BINARY;Двоичный код
+OPTIONS_GENERAL_TEXT;Текст
+OPTIONS_GENERAL_AUTOSAVE;Частота автосохранений
+OPTIONS_GENERAL_AUTOSAVE_MONTHLY;Каждый месяц
+OPTIONS_GENERAL_AUTOSAVE_BIMONTHLY;Каждые два месяца
+OPTIONS_GENERAL_AUTOSAVE_YEARLY;Раз в год
+OPTIONS_GENERAL_AUTOSAVE_BIYEARLY;Каждые два года
+OPTIONS_GENERAL_AUTOSAVE_NEVER;Никогда
+OPTIONS_GENERAL_LANGUAGE;Язык
+
+;; Video Tab
+OPTIONS_VIDEO;Настройки видео
+OPTIONS_VIDEO_RESOLUTION;Разрешение экрана
+OPTIONS_VIDEO_RESOLUTION_DIMS;{width}x{height}
+OPTIONS_VIDEO_RESOLUTION_DIMS_DEFAULT;{width}x{height} (Default)
+OPTIONS_VIDEO_RESOLUTION_DIMS_NAMED;{width}x{height} ({name})
+OPTIONS_VIDEO_RESOLUTION_DIMS_NAMED_DEFAULT;{width}x{height} ({name}, Default)
+OPTIONS_VIDEO_SCREEN_MODE;Экранный режим
+OPTIONS_VIDEO_FULLSCREEN;Полноэкранный
+OPTIONS_VIDEO_BORDERLESS;Окно без рамок
+OPTIONS_VIDEO_WINDOWED;Оконный
+OPTIONS_VIDEO_MONITOR_SELECTION;Выбор монитора
+OPTIONS_VIDEO_MONITOR;Monitor {index}
+OPTIONS_VIDEO_REFRESH_RATE;Частота обновления
+OPTIONS_VIDEO_REFRESH_RATE_TOOLTIP;Изменяйте данный параметр с VSYNC, только в том случае, если вы наблюдаете проблемы с разрывом экрана.
+OPTIONS_VIDEO_QUALITY;Заданные настройки качества
+OPTIONS_VIDEO_QUALITY_LOW;Низкие
+OPTIONS_VIDEO_QUALITY_MEDIUM;Средние
+OPTIONS_VIDEO_QUALITY_HIGH;Высокие
+OPTIONS_VIDEO_QUALITY_ULTRA;Ультра
+OPTIONS_VIDEO_QUALITY_CUSTOM;Настраиваемые
+OPTIONS_VIDEO_GUI_SCALE;Масштабирование графического интерфейса
+OPTIONS_VIDEO_REVERT_DIALOG_TITLE;Сохранить данное разрешение?
+OPTIONS_VIDEO_REVERT_DIALOG_TEXT;Возврат к предыдущей настройке через {time} секунд...
+
+;; Sound Tab
+OPTIONS_SOUND;Звук
+MASTER_BUS;Общая громкость
+MUSIC_BUS;Громкость музыки
+SFX_BUS;Громкость звуковых эффектов
+OPTIONS_SOUND_EXPLODE_EARS;Лопнули барабанные перепонки на запуске?
+
+OPTIONS_CONTROLS;Настройки контроллера
+OPTIONS_OTHER;Другие настройки
+
+;; Credits Menu
+CREDITS_BACK;Вернуться в главное меню
+
+;; Game Lobby
+GAMELOBBY_START;Начать игру
+GAMELOBBY_BACK;Назад
+GAMELOBBY_SESSION_TAG;Метка сессии
+GAMELOBBY_SELECT_ALL;Все
+GAMELOBBY_DELETE_DIALOG_TITLE;Удалить {file_name}
+GAMELOBBY_DELETE_DIALOG_TEXT;Вы уверены, что хотите удалить {file_name}?
+GAMELOBBY_SESSIONTAG_DIALOG_TITLE;Переопределить {session_tag}
+GAMELOBBY_SESSIONTAG_DIALOG_TEXT;Вы хотите переопределить {session_tag} как предыдущий сеанс?
+
+;; Game Session Menu
+GAMESESSIONMENU_SAVE;Сохранить игру
+GAMESESSIONMENU_LOAD;Загрузить игру
+GAMESESSIONMENU_OPTIONS;Найстройки
+GAMESESSIONMENU_MAINMENU;Выйти в главное меню
+GAMESESSIONMENU_QUIT;Завершить игру
+GAMESESSIONMENU_CLOSE;Закрыть
+
+GAMESESSIONMENU_MAINMENU_DIALOG_TITLE;Выйти в главное меню
+GAMESESSIONMENU_MAINMENU_DIALOG_TEXT;Вы действительно хотите выйти из текущего сценария в главное меню игры?
+GAMESESSIONMENU_QUIT_DIALOG_TITLE;Завершить игру
+GAMESESSIONMENU_QUIT_DIALOG_TEXT;Вы уверены, что хотите выйти на рабочий стол?
+
+;; Save Load Menu
+SAVELOADMENU_SAVE_TITLE;Сохранить игру
+SAVELOADMENU_LOAD_TITLE;Загрузить игру
+SAVELOADMENU_SAVE_BUTTON;Сохранить
+SAVELOADMENU_LOAD_BUTTON;Загрузить
+
+SAVELOADMENU_DELETE_DIALOG_TITLE;Удалить {file_name}
+SAVELOADMENU_DELETE_DIALOG_TEXT;Вы уверены, что хотите удалить {file_name}?
+SAVELOADMENU_OVERWRITE_DIALOG_TITLE;Перезаписать {file_name}
+SAVELOADMENU_OVERWRITE_DIALOG_TEXT;Вы уверены, что хотите перезаписать {file_name}?
+
+SAVELOADMENU_SESSION;Session:
+
+SAVELOADMENU_TABSELECTIONTABBAR_ALL;Все
+
+DIALOG_OK;Ок
+DIALOG_CANCEL;Отменить
+DIALOG_SAVE_AND_RESIGN;Сохраниться и выйти в главное меню
+DIALOG_SAVE_AND_QUIT;Сохраниться и выйти из игры
+
+;; Province Overview Panel
+province_MISSING;Нет провинции
+region_MISSING;Нет региона
+LIFE_RATING_TOOLTIP;Уровень жизни: {life_rating}
+rgo_MISSING;Нет ДП
+building_MISSING;Нет здания
+building_fort;Форт
+building_naval_base;Морская база
+building_railroad;Железная дорога
+EXPAND_PROVINCE_BUILDING;Расширить
diff --git a/game/assets/localisation/locales/ru_RU/menus.csv.import b/game/assets/localisation/locales/ru_RU/menus.csv.import
new file mode 100644
index 0000000..8dd0c09
--- /dev/null
+++ b/game/assets/localisation/locales/ru_RU/menus.csv.import
@@ -0,0 +1,3 @@
+[remap]
+
+importer="keep"
diff --git a/game/assets/localisation/quotes.txt b/game/assets/localisation/quotes.txt
new file mode 100644
index 0000000..49af5b5
--- /dev/null
+++ b/game/assets/localisation/quotes.txt
@@ -0,0 +1,40 @@
+"The great questions of the day will not be settled by means of speeches and majority decisions but by iron and blood." - Otto von Bismarck
+"BrickPi is cool" - BrickPi
+"God is on the side with best artillery" - Emperor Napoleon Bonaparte
+"History repeats itself, first as tragedy, second as farce" - Karl Marx
+"These English are a strange people, and their General a wonderful man. They came here in the morning, looked at the Pettah walls, walked over it, killed all the garrison, and returned to breakfast! What can withstand them?" - Unknown Maratha chief
+"England has no eternal friends, England has no perpetual enemies, England has only eternal and perpetual interests." - Henry John Temple
+"The essence of war is violence, moderation in war is imbecility." - Admiral Jackie Fisher
+"Die hard 57th, die hard!" - Colonel William Inglis
+"In politics evils should be remedied, not revenged." - Emperor Napoleon III
+"The great questions of the day will not be settled by means of speeches and majority decisions but by iron and blood." - Otto von Bismarck
+"Ten million ignorances do not constitute one knowledge." - Klemens von Metternich
+"Let him who loves his country in his heart, and not his lips only, follow me." - Guiseppe Garibaldi
+"Revere the Emperor, expel the barbarians!" - Japanese nativist rallying cry
+"The three great elements of modern civilization, gunpowder, printing, and the Protestant religion." - Thomas Carlyle
+"It is well that war is so terrible, otherwise we should grow too fond of it." - General Robert E. Lee
+"War is cruelty, and you cannot refine it." - General William T. Sherman
+"God Almighty has set before me two great objects: the suppression of the slave trade and the reformation of manners." - William Wilberforce
+"All the business of war, and indeed all the business of life, is to endeavour to find out what you don't know by what you do; that's what I called "guessing what was at the other side of the hill." - Field Marshal Arthur Wellesley
+"Publish and be damned!" - Field Marshal Arthur Wellesley
+"Never interrupt your enemy when he is making a mistake." - Emperor Napoleon Bonaparte
+"Centuries have elapsed since schools were first established because learning was viewed as the exclusive province of the samurai and his superiors, farmers, artisans, merchants and women have neglected it altogether. There shall, in the future, be no community with an illiterate family, nor a family with an illiterate person. Hereafter every man shall, of his own accord, subordinate all other matters to the education of his children." - Emperor Meiji
+"No battle plan ever survives contact with the enemy" - Field Marshal Von Moltke the Elder
+"There is no retreat from here, men. You must die where you stand." - Field Marshal Colin Campbell
+"We are not interested in the possibilities of defeat; they do not exist." - Queen Victoria
+"In a hundred years to come my people will not be fit for liberty. They do not know what it is. Despotism is the proper government for them." - General Antonio De Santa Anna
+"I saw society cut into two: those who possessed nothing, united in a common greed; those who possessed something, united in a common terror. There were no bonds, no sympathy between these two great sections." - Alexis de Tocqueville
+"You may live to see man-made horrors beyond your comprehension." - Nikola Tesla
+"The wars of people will be more terrible than those of kings" - Winston Churchill
+"This is not peace! It is an armistace for 20 years!" - Field Marshall Ferdinand Foch
+"Here they come, black as hell and thick as grass!" - Unknown Soldier, Rorke's Drift
+"The lack of money is the root of all evil." - Mark Twain
+"It is not the size of the dog in the fight, it's the size of the fight in the dog." - Mark Twain
+"Suppose you were an idiot, and suppose you were a member of Congress; but I repeat myself." - Mark Twain
+"Patriotism is supporting your country all the time, and your government when it deserves it." Mark Twain
+"There is no distinctly American criminal class - except Congress" - Mark Twain
+"We have the best government money can buy." - Mark Twain
+"There are lies, damned lies and statistics." Mark Twain
+"One day the great European War will come out of some damned foolish thing in the Balkans." - Otto von Bismarck
+"...it was resolved, That England was too pure an Air for Slaves to breath in." - Cartwright's Case (1569) 11 Elizabeth; 2 Rushworth's Coll 468
+"Governments may think and say as they like, but force cannot be eliminated, and it is the only real and unanswerable power. We are all told that the pen is mightier than the sword, but I know which of these weapons I would choose." - Major Adrian Carton de Wiart