2 Commits
Author SHA1 Message Date
Victor 5c13bcea23 Now when mutating plants have their name mutating as well (if not twitch) 2026-08-23 16:37:22 +02:00
zacharie da91433135 Dev 1.0.1
* Fix du mode twitch
* Fix de coquille de dialogues
* Fix du blocage dans la base aqua
2026-08-21 10:35:03 +02:00
21 changed files with 211 additions and 185 deletions
+16 -16
View File
@@ -40,17 +40,17 @@ func get_all_mutations() -> Array[PlantMutation]:
VivaciousMutation.new(), VivaciousMutation.new(),
FertileMutation.new(), FertileMutation.new(),
HurriedMutation.new(), HurriedMutation.new(),
# GenerousMutation.new(), GenerousMutation.new(),
# ProtectiveMutation.new(), ProtectiveMutation.new(),
# PureMutation.new(), PureMutation.new(),
# CleaningMutation.new(), CleaningMutation.new(),
# ErmitMutation.new(), ErmitMutation.new(),
# TropicalMutation.new(), TropicalMutation.new(),
# RhizomeMutation.new(), RhizomeMutation.new(),
# SpontaneousMutation.new(), SpontaneousMutation.new(),
# SaviorMutation.new(), SaviorMutation.new(),
# AdaptiveMutation.new(), AdaptiveMutation.new(),
# ResistantMutation.new(), ResistantMutation.new(),
] ]
func get_all_artifacts() -> Array[Artefact]: func get_all_artifacts() -> Array[Artefact]:
@@ -68,11 +68,11 @@ func get_all_story_steps() -> Array[StoryStep]:
TutorialStoryStep.new(), TutorialStoryStep.new(),
StartStoryStep.new(), StartStoryStep.new(),
MercuryStoryStep.new(), MercuryStoryStep.new(),
# BoreaStoryStep.new(), BoreaStoryStep.new(),
# AquaStoryStep.new(), AquaStoryStep.new(),
# SubterraStoryStep.new(), SubterraStoryStep.new(),
# EstiaStoryStep.new(), EstiaStoryStep.new(),
# AstraStoryStep.new(), AstraStoryStep.new(),
] ]
func update_best_run(run : RunData): func update_best_run(run : RunData):
@@ -18,7 +18,10 @@ func get_destination_text() -> String:
return tr("RELAY_BASE_X") % tr("VENUS") return tr("RELAY_BASE_X") % tr("VENUS")
func get_destination_scene() -> Scene: func get_destination_scene() -> Scene:
return CreditsScene.new() return RelayBaseScene.new(
"VENUS",
"002"
)
func get_logs() -> Array[Log]: func get_logs() -> Array[Log]:
return [ return [
+1 -1
View File
@@ -129,7 +129,7 @@ func update_inputs(s : SettingsData = settings_data):
InputMap.action_add_event(s.action_remapped[i], s.input_remapped[i]) InputMap.action_add_event(s.action_remapped[i], s.input_remapped[i])
func has_unlocked_infinite_mode(): func has_unlocked_infinite_mode():
return false return true
func get_action_key_name(action_name: String) -> String: func get_action_key_name(action_name: String) -> String:
var events: Array[InputEvent] = InputMap.action_get_events(action_name) var events: Array[InputEvent] = InputMap.action_get_events(action_name)
+79 -23
View File
@@ -1,16 +1,19 @@
class_name Random class_name Random
const MIN_WORD_LEN = 4 const MIN_WORD_LEN = 3
const MAX_WORD_LEN = 8 const MAX_WORD_LEN = 5
const VOWEL = ["a","e","i","o","u","y"] const VOWEL = ["a", "e", "i", "o", "u", "y"]
const CONSONANTS = ["b", "c", "d", "f", "g", "h", "j", "k", "l", "m", "n", "p", "q", "r", "s", "t", "v", "w", "x", "z"] const CONSONANTS = ["b", "c", "d", "f", "g", "h", "j", "k", "l", "m", "n", "p", "q", "r", "s", "t", "v", "w", "x", "z"]
const END_PLANT_NAME := ["us", "um", "ae", "ia", "is", "as", "am"]
#region ------------------ Plant Name ------------------ #region ------------------ Plant Name ------------------
static func generate_random_word(_random_seed = randi()) -> String: static func generate_random_word(_random_seed = randi()) -> String:
if ( if (
GameInfo GameInfo
and GameInfo.settings_data
and GameInfo.settings_data.activate_twitch_integration and GameInfo.settings_data.activate_twitch_integration
and len(TwitchConnection.pseudo_gathered) and len(TwitchConnection.pseudo_gathered)
): ):
@@ -18,7 +21,7 @@ static func generate_random_word(_random_seed = randi()) -> String:
var word_len = randf_range(4,8) var word_len = randf_range(4,8)
var word = '' var word = ''
var last_letter_is_vowel = false var last_letter_is_vowel = randi() % 2
for i in range(word_len): for i in range(word_len):
if last_letter_is_vowel: if last_letter_is_vowel:
@@ -29,7 +32,21 @@ static func generate_random_word(_random_seed = randi()) -> String:
last_letter_is_vowel = not last_letter_is_vowel last_letter_is_vowel = not last_letter_is_vowel
return word.capitalize() return word.capitalize()
static func mutate_word(word : String) -> String: static func generate_random_plant_name(random_seed = randi()) -> String:
if (
GameInfo
and GameInfo.settings_data
and GameInfo.settings_data.activate_twitch_integration
and len(TwitchConnection.pseudo_gathered)
):
return TwitchConnection.pseudo_gathered.pick_random()
var random_word := generate_random_word(random_seed)
if VOWEL.has(random_word.right(1)):
random_word += CONSONANTS.pick_random()
return random_word + END_PLANT_NAME.pick_random()
static func mutate_word(word: String) -> String:
var rand_int = randi() var rand_int = randi()
if len(word) > MIN_WORD_LEN and rand_int % 3 == 0: if len(word) > MIN_WORD_LEN and rand_int % 3 == 0:
@@ -39,31 +56,70 @@ static func mutate_word(word : String) -> String:
return replace_character(word) return replace_character(word)
static func small_mutate_plant_name(name: String) -> String:
if (
GameInfo
and GameInfo.settings_data
and GameInfo.settings_data.activate_twitch_integration
and len(TwitchConnection.pseudo_gathered)
):
return name
static func shorten_word(word : String): var mutable_name = name.substr(1, len(name) - 3)
if randi()%2 == 0: mutable_name = replace_character(mutable_name)
name = name.left(1) + mutable_name + name.right(2)
return name.to_lower().capitalize()
static func big_mutate_plant_name(name: String) -> String:
if (
GameInfo
and GameInfo.settings_data
and GameInfo.settings_data.activate_twitch_integration
and len(TwitchConnection.pseudo_gathered)
):
return name
var name_without_end = name.left(-2)
var rand_int := randi()
if len(name) > MIN_WORD_LEN and rand_int % 4 == 0:
name = shorten_word(name_without_end) + name.right(2)
elif len(name) < MAX_WORD_LEN and rand_int % 4 == 1:
name = elongate_word(name_without_end) + name.right(2)
elif rand_int % 4 == 2:
name = replace_character(name.left(1)) + name.substr(1)
else:
var new_end = END_PLANT_NAME.pick_random()
while name == name_without_end + new_end:
new_end = END_PLANT_NAME.pick_random()
name = name_without_end + new_end
return name.to_lower().capitalize()
static func shorten_word(word: String):
if randi() % 2 == 0:
return word.left(len(word) - 1).capitalize() return word.left(len(word) - 1).capitalize()
else : else:
return word.right(len(word) - 1).capitalize() return word.right(len(word) - 1).capitalize()
static func elongate_word(word : String): static func elongate_word(word: String):
if randi()%2 == 0: if randi() % 2 == 0:
var letter = CONSONANTS.pick_random() if word.left(1) in VOWEL else VOWEL.pick_random() var letter = CONSONANTS.pick_random() if word.left(1) in VOWEL else VOWEL.pick_random()
return (letter + word).capitalize() return (letter + word).to_lower().capitalize()
else :
var letter = CONSONANTS.pick_random() if word.right(1) in VOWEL else VOWEL.pick_random()
return (word + letter).capitalize()
static func replace_character(word : String):
var character_id = randi_range(0, len(word))
var character = word[character_id]
if character in VOWEL:
character = VOWEL.pick_random()
else: else:
character = CONSONANTS.pick_random() var letter = CONSONANTS.pick_random() if word.right(1) in VOWEL else VOWEL.pick_random()
return (word + letter).to_lower().capitalize()
word[character_id] = character static func replace_character(word: String):
var character_ind = randi_range(0, len(word) - 1)
var character = word[character_ind].to_lower()
while character == word[character_ind].to_lower():
if character in VOWEL:
character = VOWEL.pick_random()
else:
character = CONSONANTS.pick_random()
word[character_ind] = character
return word return word
#region ------------------ Region Name ------------------ #region ------------------ Region Name ------------------
+30
View File
@@ -0,0 +1,30 @@
@tool
extends Node
@export_tool_button("Test names", "Callable") var update_action = func(): print_random_names()
@export_tool_button("Test small mutate one name", "Callable") var test_small_mutation = func(): print_random_small_mutated_name()
@export_tool_button("Test big mutate one name", "Callable") var test_big_mutation = func(): print_random_big_mutated_name()
func _ready() -> void:
print_random_names()
func print_random_names(number: int = 10) -> void:
print("---------")
for i in range(number):
print(Random.generate_random_plant_name())
func print_random_small_mutated_name(n_mutations: int = 5) -> void:
print("---------")
var base := Random.generate_random_plant_name()
print("Base: ", base)
for i in range(n_mutations):
base = Random.small_mutate_plant_name(base)
print(i, ": ", base)
func print_random_big_mutated_name(n_mutations: int = 5) -> void:
print("---------")
var base := Random.generate_random_plant_name()
print("Base: ", base)
for i in range(n_mutations):
base = Random.big_mutate_plant_name(base)
print(i + 1, ": ", base)
+6
View File
@@ -0,0 +1,6 @@
[gd_scene format=3 uid="uid://bpj8mrx3lq6fu"]
[ext_resource type="Script" uid="uid://dewkwp1gmlxbf" path="res://common/tools/scripts/test_names.gd" id="1_eh0cj"]
[node name="TestNames" type="Node2D" unique_id=680026966]
script = ExtResource("1_eh0cj")
@@ -7,6 +7,8 @@ var pseudo_gathered : Array[String] = []
func _ready(): func _ready():
VerySimpleTwitch.chat_message_received.connect(_on_message_received) VerySimpleTwitch.chat_message_received.connect(_on_message_received)
GameInfo.settings_data.twitch_changed.connect(connect_to_twitch) GameInfo.settings_data.twitch_changed.connect(connect_to_twitch)
process_mode = Node.PROCESS_MODE_ALWAYS
VerySimpleTwitch.process_mode = Node.PROCESS_MODE_ALWAYS
func connect_to_twitch(settings : SettingsData): func connect_to_twitch(settings : SettingsData):
pseudo_gathered = [] pseudo_gathered = []
@@ -20,5 +22,6 @@ func connect_to_twitch_account(channel_name: String):
func _on_message_received(chatter: VSTChatter): func _on_message_received(chatter: VSTChatter):
if not chatter.login in pseudo_gathered: if not chatter.login in pseudo_gathered:
pseudo_gathered.append(chatter.login) if chatter.message.to_lower().trim_suffix(" ") == "!stw":
pseudo_gathered_updated.emit(pseudo_gathered) pseudo_gathered.append(chatter.login)
pseudo_gathered_updated.emit(pseudo_gathered)
+1 -1
View File
@@ -21,7 +21,7 @@ var region_data : RegionData
func _init( func _init(
_position: Vector2 = Vector2.ZERO, _position: Vector2 = Vector2.ZERO,
_plant_name: String = Random.generate_random_word(), _plant_name: String = Random.generate_random_plant_name(),
_mutations: Array[PlantMutation] = [], _mutations: Array[PlantMutation] = [],
_day: int = 0, _day: int = 0,
_random_seed = randi() _random_seed = randi()
+17 -11
View File
@@ -18,7 +18,7 @@ func _init(
random_seed = randi() random_seed = randi()
static func generate_from_parent(plant_data : PlantData, nearby_plants : Array[PlantData] = []) -> Seed: static func generate_from_parent(plant_data : PlantData, nearby_plants : Array[PlantData] = []) -> Seed:
var mutations : Array[PlantMutation] = plant_data.mutations var mutations : Array[PlantMutation] = plant_data.mutations.duplicate_deep()
var mutation_probability = ( var mutation_probability = (
GameInfo.game_data.current_run.plant_info.get_mutation_probability() GameInfo.game_data.current_run.plant_info.get_mutation_probability()
+ plant_data.get_mutation_probability_boost() + plant_data.get_mutation_probability_boost()
@@ -28,9 +28,15 @@ static func generate_from_parent(plant_data : PlantData, nearby_plants : Array[P
for pd in nearby_plants: for pd in nearby_plants:
nearby_mutations.append_array(pd.mutations) nearby_mutations.append_array(pd.mutations)
var child_name := plant_data.plant_name
# Mutate for every time mutation probability exceed 1 # Mutate for every time mutation probability exceed 1
while mutation_probability > 1: while mutation_probability > 1:
mutations = mutate_mutations(plant_data.mutations, nearby_mutations) mutations = mutate_mutations(plant_data.mutations, nearby_mutations)
if len(mutations) != len(plant_data.mutations):
child_name = Random.big_mutate_plant_name(child_name)
else:
child_name = Random.small_mutate_plant_name(child_name)
mutation_probability -= 1 mutation_probability -= 1
mutations.sort_custom( mutations.sort_custom(
@@ -41,19 +47,19 @@ static func generate_from_parent(plant_data : PlantData, nearby_plants : Array[P
plant_data.get_state() == PlantData.State.MATURE plant_data.get_state() == PlantData.State.MATURE
and randf() < GameInfo.game_data.current_run.plant_info.get_mutation_probability() and randf() < GameInfo.game_data.current_run.plant_info.get_mutation_probability()
): ):
return Seed.new( mutations = mutate_mutations(mutations, nearby_mutations)
plant_data.plant_name, if len(mutations) != len(plant_data.mutations):
mutate_mutations(mutations, nearby_mutations) child_name = Random.big_mutate_plant_name(child_name)
) else:
else : child_name = Random.small_mutate_plant_name(child_name)
return Seed.new(
plant_data.plant_name, return Seed.new(child_name, mutations)
plant_data.mutations.duplicate_deep() else:
) return Seed.new(child_name, mutations)
static func generate_random(rarity := 0) -> Seed: static func generate_random(rarity := 0) -> Seed:
var new_seed = Seed.new( var new_seed = Seed.new(
Random.generate_random_word(), Random.generate_random_plant_name(),
generate_first_mutations(rarity), generate_first_mutations(rarity),
) )
+8
View File
@@ -17,6 +17,7 @@ signal upgraded
var terrain : Terrain var terrain : Terrain
@export var region : Region @export var region : Region
var play_fall_off_animation : bool
var data : PlayerData var data : PlayerData
var last_action_area_movement_timer : float = 100. var last_action_area_movement_timer : float = 100.
@@ -95,6 +96,13 @@ func _end_pass_day():
controlling_player = true controlling_player = true
func _process(delta): func _process(delta):
if (play_fall_off_animation):
play_fall_off_animation = false
get_tree().create_timer(3.).timeout.connect(
func ():
%AnimationPlayer.play("fall")
)
elapsed_time += delta elapsed_time += delta
last_action_area_movement_timer += delta last_action_area_movement_timer += delta
if controlling_player: if controlling_player:
+6 -67
View File
@@ -2,23 +2,16 @@
[ext_resource type="Script" uid="uid://di3p2tmuw6ack" path="res://gui/credits/scripts/credits.gd" id="1_kip8e"] [ext_resource type="Script" uid="uid://di3p2tmuw6ack" path="res://gui/credits/scripts/credits.gd" id="1_kip8e"]
[ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="2_luv2b"] [ext_resource type="Theme" uid="uid://5au2k3vf2po3" path="res://gui/ressources/menu.tres" id="2_luv2b"]
[ext_resource type="Texture2D" uid="uid://3813d8ld7vt2" path="res://stages/title_screen/assets/textures/Logo-demo.png" id="3_5k6jv"] [ext_resource type="Texture2D" uid="uid://cdpqg3pkjcw2h" path="res://stages/title_screen/assets/textures/title.png" id="3_urbel"]
[ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="4_5k6jv"] [ext_resource type="LabelSettings" uid="uid://dqwayi8yjwau2" path="res://gui/ressources/title_label_settings.tres" id="4_5k6jv"]
[ext_resource type="PackedScene" uid="uid://c8flevrkelpvy" path="res://gui/credits/socials/instagram.tscn" id="5_urbel"] [ext_resource type="PackedScene" uid="uid://c8flevrkelpvy" path="res://gui/credits/socials/instagram.tscn" id="5_urbel"]
[ext_resource type="Texture2D" uid="uid://b0wy3dbpxbnt7" path="res://common/icons/seedling.svg" id="5_xl2r5"]
[ext_resource type="Texture2D" uid="uid://bcjkds8n5qu6x" path="res://common/icons/rotate-rectangle.svg" id="6_5k6jv"] [ext_resource type="Texture2D" uid="uid://bcjkds8n5qu6x" path="res://common/icons/rotate-rectangle.svg" id="6_5k6jv"]
[ext_resource type="PackedScene" uid="uid://cm5b7w7j6527f" path="res://stages/title_screen/planet_3d.tscn" id="6_luv2b"] [ext_resource type="PackedScene" uid="uid://cm5b7w7j6527f" path="res://stages/title_screen/planet_3d.tscn" id="6_luv2b"]
[ext_resource type="Texture2D" uid="uid://dbv5hm7lyi1f6" path="res://common/icons/infinity.svg" id="7_m5waa"]
[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="7_urbel"] [ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="7_urbel"]
[ext_resource type="Texture2D" uid="uid://baaujfw8piywi" path="res://common/icons/dna.svg" id="8_16oni"]
[sub_resource type="ViewportTexture" id="ViewportTexture_urbel"] [sub_resource type="ViewportTexture" id="ViewportTexture_urbel"]
viewport_path = NodePath("SubViewport") viewport_path = NodePath("SubViewport")
[sub_resource type="LabelSettings" id="LabelSettings_to5ge"]
font = ExtResource("7_urbel")
font_size = 23
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_kip8e"] [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_kip8e"]
bg_color = Color(1, 0.6509804, 0.09019608, 1) bg_color = Color(1, 0.6509804, 0.09019608, 1)
border_width_left = 6 border_width_left = 6
@@ -207,7 +200,7 @@ tracks/5/keys = {
"times": PackedFloat32Array(0.06666667, 9.066667), "times": PackedFloat32Array(0.06666667, 9.066667),
"transitions": PackedFloat32Array(1, 1), "transitions": PackedFloat32Array(1, 1),
"update": 0, "update": 0,
"values": [0.3, 0.3] "values": [0.3, 1.0]
} }
[sub_resource type="AnimationLibrary" id="AnimationLibrary_a8ny4"] [sub_resource type="AnimationLibrary" id="AnimationLibrary_a8ny4"]
@@ -216,7 +209,7 @@ _data = {
&"appear": SubResource("Animation_kip8e") &"appear": SubResource("Animation_kip8e")
} }
[sub_resource type="FastNoiseLite" id="FastNoiseLite_xl2r5"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_5k6jv"]
frequency = 1.0 frequency = 1.0
[node name="Credits" type="CanvasLayer" unique_id=180964898] [node name="Credits" type="CanvasLayer" unique_id=180964898]
@@ -267,69 +260,16 @@ alignment = 1
[node name="TextureRect" type="TextureRect" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=630290371] [node name="TextureRect" type="TextureRect" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=630290371]
custom_minimum_size = Vector2(0, 120) custom_minimum_size = Vector2(0, 120)
layout_mode = 2 layout_mode = 2
texture = ExtResource("3_5k6jv") texture = ExtResource("3_urbel")
expand_mode = 2 expand_mode = 2
stretch_mode = 5 stretch_mode = 5
[node name="Label" type="Label" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=215880453] [node name="Label" type="Label" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=215880453]
layout_mode = 2 layout_mode = 2
text = "THANKS_FOR_PLAYING_DEMO" text = "THANKS_FOR_PLAYING"
label_settings = ExtResource("4_5k6jv") label_settings = ExtResource("4_5k6jv")
horizontal_alignment = 1 horizontal_alignment = 1
[node name="Label2" type="Label" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=431183339]
layout_mode = 2
text = "IN_THE_FULL_GAME"
label_settings = ExtResource("4_5k6jv")
horizontal_alignment = 1
[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=391704286]
modulate = Color(1, 0.6509804, 0.09019608, 1)
layout_mode = 2
theme_override_constants/separation = 0
[node name="HBoxContainer" type="HBoxContainer" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer" unique_id=279234192]
layout_mode = 2
alignment = 1
[node name="TextureRect" type="TextureRect" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/HBoxContainer" unique_id=209569340]
layout_mode = 2
texture = ExtResource("5_xl2r5")
[node name="Label2" type="Label" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/HBoxContainer" unique_id=229536259]
layout_mode = 2
text = "A_10_15_HOURS_STORY"
label_settings = SubResource("LabelSettings_to5ge")
horizontal_alignment = 1
[node name="HBoxContainer2" type="HBoxContainer" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer" unique_id=1005252135]
layout_mode = 2
alignment = 1
[node name="TextureRect" type="TextureRect" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/HBoxContainer2" unique_id=126660275]
layout_mode = 2
texture = ExtResource("7_m5waa")
[node name="Label2" type="Label" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/HBoxContainer2" unique_id=1044842109]
layout_mode = 2
text = "AN_INFINITE_MODE"
label_settings = SubResource("LabelSettings_to5ge")
horizontal_alignment = 1
[node name="HBoxContainer3" type="HBoxContainer" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer" unique_id=1175083471]
layout_mode = 2
alignment = 1
[node name="TextureRect" type="TextureRect" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/HBoxContainer3" unique_id=855663472]
layout_mode = 2
texture = ExtResource("8_16oni")
[node name="Label2" type="Label" parent="MarginContainer/GridContainer/VBoxContainer/VBoxContainer/HBoxContainer3" unique_id=1052123038]
layout_mode = 2
text = "TWICE_MORE_MUTATIONS"
label_settings = SubResource("LabelSettings_to5ge")
horizontal_alignment = 1
[node name="Button" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=927302743 instance=ExtResource("5_urbel")] [node name="Button" parent="MarginContainer/GridContainer/VBoxContainer" unique_id=927302743 instance=ExtResource("5_urbel")]
visible = false visible = false
layout_mode = 2 layout_mode = 2
@@ -566,7 +506,6 @@ theme_override_constants/paragraph_separation = 12
theme_override_font_sizes/normal_font_size = 19 theme_override_font_sizes/normal_font_size = 19
text = "SPECIAL_THANKS_TEXT" text = "SPECIAL_THANKS_TEXT"
fit_content = true fit_content = true
scroll_active = false
horizontal_alignment = 1 horizontal_alignment = 1
vertical_alignment = 1 vertical_alignment = 1
@@ -583,7 +522,7 @@ size = Vector2i(1980, 1080)
[node name="Planet3d" parent="SubViewport" unique_id=866166298 instance=ExtResource("6_luv2b")] [node name="Planet3d" parent="SubViewport" unique_id=866166298 instance=ExtResource("6_luv2b")]
unique_name_in_owner = true unique_name_in_owner = true
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0)
noise = SubResource("FastNoiseLite_xl2r5") noise = SubResource("FastNoiseLite_5k6jv")
[node name="Camera3D" type="Camera3D" parent="SubViewport" unique_id=232867368] [node name="Camera3D" type="Camera3D" parent="SubViewport" unique_id=232867368]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 64.323) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 64.323)
+3 -5
View File
@@ -6,11 +6,8 @@ func appear():
func _on_title_screen_pressed(): func _on_title_screen_pressed():
# GameInfo.game_data.is_finished = true GameInfo.game_data.is_finished = true
# GameInfo.save_game_data() GameInfo.save_game_data()
SteamConnection.unlock_achievement(SteamConnection.ACH_REACH_VENUS_BASE)
SteamConnection.unlock_achievement(SteamConnection.ACH_MEET_DEMETER)
var progression = GameInfo.game_data.progression_data var progression = GameInfo.game_data.progression_data
@@ -19,3 +16,4 @@ func _on_title_screen_pressed():
SteamConnection.unlock_achievement(SteamConnection.ACH_UNLOCK_ALL_MUTATION) SteamConnection.unlock_achievement(SteamConnection.ACH_UNLOCK_ALL_MUTATION)
SceneManager.change_to_scene(TitleScene.new(), false) SceneManager.change_to_scene(TitleScene.new(), false)
+2
View File
@@ -92,8 +92,10 @@ func setup_twitch():
func update_twitch_pseudo(): func update_twitch_pseudo():
if GameInfo.settings_data.activate_twitch_integration: if GameInfo.settings_data.activate_twitch_integration:
%TwitchTypeStw.visible = true
%TwitchPseudoCount.text = tr("PSEUDO_GATHERED_%d") % len(TwitchConnection.pseudo_gathered) %TwitchPseudoCount.text = tr("PSEUDO_GATHERED_%d") % len(TwitchConnection.pseudo_gathered)
else: else:
%TwitchTypeStw.visible = false
%TwitchPseudoCount.text = "TWITCH_NOT_CONNECTED" %TwitchPseudoCount.text = "TWITCH_NOT_CONNECTED"
+14 -1
View File
@@ -16,6 +16,11 @@
font = ExtResource("6_18i73") font = ExtResource("6_18i73")
font_color = Color(0.06318334, 0.059500005, 0.17, 0.6431373) font_color = Color(0.06318334, 0.059500005, 0.17, 0.6431373)
[sub_resource type="LabelSettings" id="LabelSettings_18i73"]
font = ExtResource("6_18i73")
font_size = 20
font_color = Color(1, 0.6509804, 0.09019608, 1)
[node name="Settings" type="MarginContainer" unique_id=1374154672] [node name="Settings" type="MarginContainer" unique_id=1374154672]
process_mode = 3 process_mode = 3
anchors_preset = 15 anchors_preset = 15
@@ -36,7 +41,6 @@ color = Color(0, 0, 0, 0)
[node name="SettingsWindow" parent="." unique_id=798514856 instance=ExtResource("1_gkn1k")] [node name="SettingsWindow" parent="." unique_id=798514856 instance=ExtResource("1_gkn1k")]
unique_name_in_owner = true unique_name_in_owner = true
process_mode = 3 process_mode = 3
visible = false
custom_minimum_size = Vector2(800, 0) custom_minimum_size = Vector2(800, 0)
layout_mode = 2 layout_mode = 2
size_flags_vertical = 1 size_flags_vertical = 1
@@ -289,6 +293,15 @@ unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 3 size_flags_horizontal = 3
[node name="TwitchTypeStw" parent="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent" unique_id=1206416903 instance=ExtResource("4_rbiwc")]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
text = "TWITCH_TYPE_STW"
label_settings = SubResource("LabelSettings_18i73")
horizontal_alignment = 1
vertical_alignment = 1
[node name="TwitchPseudoCount" parent="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent" unique_id=1953595699 instance=ExtResource("4_rbiwc")] [node name="TwitchPseudoCount" parent="SettingsWindow/WindowContent/MarginContainer/ContentContainer/MarginContainer/SettingsContent" unique_id=1953595699 instance=ExtResource("4_rbiwc")]
unique_name_in_owner = true unique_name_in_owner = true
modulate = Color(1, 1, 1, 0.5882353) modulate = Color(1, 1, 1, 0.5882353)
+3 -3
View File
@@ -14,9 +14,9 @@ compatibility/default_parent_skeleton_in_mesh_instance_3d=true
[application] [application]
config/name="Seeding The Wasteland Demo" config/name="Seeding The Wasteland"
config/description="Seeding The Wasteland is a survival, managment and cosy game in which you play a little gardener robot." config/description="Seeding The Wasteland is a survival, managment and cosy game in which you play a little gardener robot."
config/version="demo-2.0" config/version="1.0.1"
run/main_scene="uid://c5bruelvqbm1k" run/main_scene="uid://c5bruelvqbm1k"
config/features=PackedStringArray("4.7", "Forward Plus") config/features=PackedStringArray("4.7", "Forward Plus")
run/max_fps=144 run/max_fps=144
@@ -265,7 +265,7 @@ environment/defaults/default_clear_color=Color(0.0617213, 0.0605653, 0.169189, 1
[steam] [steam]
initialization/app_id=4690960 initialization/app_id=4444510
initialization/initialize_on_startup=true initialization/initialize_on_startup=true
initialization/embed_callbacks=true initialization/embed_callbacks=true
multiplayer_peer/max_channels=4 multiplayer_peer/max_channels=4
Binary file not shown.
Binary file not shown.
+4 -43
View File
@@ -4,10 +4,10 @@
[ext_resource type="Script" uid="uid://cwmp2une7hobe" path="res://stages/title_screen/scripts/title_screen.gd" id="1_6yuhi"] [ext_resource type="Script" uid="uid://cwmp2une7hobe" path="res://stages/title_screen/scripts/title_screen.gd" id="1_6yuhi"]
[ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="3_6yuhi"] [ext_resource type="Texture2D" uid="uid://dcgnamu7sb3ov" path="res://common/icons/bolt.svg" id="3_6yuhi"]
[ext_resource type="Texture2D" uid="uid://cvvnrj8wi3f3r" path="res://common/icons/brand-twitch.svg" id="3_gn4uv"] [ext_resource type="Texture2D" uid="uid://cvvnrj8wi3f3r" path="res://common/icons/brand-twitch.svg" id="3_gn4uv"]
[ext_resource type="Texture2D" uid="uid://cdpqg3pkjcw2h" path="res://stages/title_screen/assets/textures/title.png" id="3_lwj2x"]
[ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="4_ofiho"] [ext_resource type="FontFile" uid="uid://qt80w6o01q5s" path="res://gui/ressources/fonts/TitanOne-Regular.ttf" id="4_ofiho"]
[ext_resource type="Texture2D" uid="uid://bewr0t1wi8pff" path="res://common/icons/rotate.svg" id="5_6yuhi"] [ext_resource type="Texture2D" uid="uid://bewr0t1wi8pff" path="res://common/icons/rotate.svg" id="5_6yuhi"]
[ext_resource type="PackedScene" uid="uid://cm5b7w7j6527f" path="res://stages/title_screen/planet_3d.tscn" id="5_7a1qq"] [ext_resource type="PackedScene" uid="uid://cm5b7w7j6527f" path="res://stages/title_screen/planet_3d.tscn" id="5_7a1qq"]
[ext_resource type="Texture2D" uid="uid://3813d8ld7vt2" path="res://stages/title_screen/assets/textures/Logo-demo.png" id="5_rf16a"]
[ext_resource type="Texture2D" uid="uid://cixd5j8yqpavg" path="res://common/icons/settings.svg" id="6_3aitq"] [ext_resource type="Texture2D" uid="uid://cixd5j8yqpavg" path="res://common/icons/settings.svg" id="6_3aitq"]
[ext_resource type="PackedScene" uid="uid://c8flevrkelpvy" path="res://gui/credits/socials/instagram.tscn" id="6_7a1qq"] [ext_resource type="PackedScene" uid="uid://c8flevrkelpvy" path="res://gui/credits/socials/instagram.tscn" id="6_7a1qq"]
[ext_resource type="Texture2D" uid="uid://bkwhrq4sp5dcp" path="res://common/icons/device-gamepad.svg" id="7_igvpv"] [ext_resource type="Texture2D" uid="uid://bkwhrq4sp5dcp" path="res://common/icons/device-gamepad.svg" id="7_igvpv"]
@@ -65,48 +65,12 @@ _data = {
&"bounce": SubResource("Animation_0vds4") &"bounce": SubResource("Animation_0vds4")
} }
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_gn4uv"]
bg_color = Color(1, 0, 0.43137255, 1)
border_width_left = 10
border_width_top = 10
border_width_right = 10
border_width_bottom = 10
border_color = Color(1, 0, 0.43137255, 1)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_ofiho"]
bg_color = Color(0.72, 0, 0.31200007, 1)
border_width_left = 10
border_width_top = 10
border_width_right = 10
border_width_bottom = 10
border_color = Color(0.72156864, 0, 0.3137255, 1)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_1xafb"]
bg_color = Color(1, 0.36, 0.6373334, 1)
border_width_left = 10
border_width_top = 10
border_width_right = 10
border_width_bottom = 10
border_color = Color(1, 0.36078432, 0.6392157, 1)
corner_radius_top_left = 5
corner_radius_top_right = 5
corner_radius_bottom_right = 5
corner_radius_bottom_left = 5
[sub_resource type="ShaderMaterial" id="ShaderMaterial_lwj2x"] [sub_resource type="ShaderMaterial" id="ShaderMaterial_lwj2x"]
shader = ExtResource("8_pjo5j") shader = ExtResource("8_pjo5j")
shader_parameter/strength = 5.00000023424012 shader_parameter/strength = 5.00000023424012
shader_parameter/mix_percentage = 0.3 shader_parameter/mix_percentage = 0.3
[sub_resource type="FastNoiseLite" id="FastNoiseLite_5icsl"] [sub_resource type="FastNoiseLite" id="FastNoiseLite_rf16a"]
frequency = 1.0 frequency = 1.0
[sub_resource type="Animation" id="Animation_gn4uv"] [sub_resource type="Animation" id="Animation_gn4uv"]
@@ -437,7 +401,7 @@ custom_minimum_size = Vector2(400, 0)
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 4 size_flags_horizontal = 4
size_flags_vertical = 0 size_flags_vertical = 0
texture = ExtResource("5_rf16a") texture = ExtResource("3_lwj2x")
expand_mode = 5 expand_mode = 5
stretch_mode = 5 stretch_mode = 5
@@ -453,9 +417,6 @@ size_flags_horizontal = 4
size_flags_vertical = 4 size_flags_vertical = 4
theme = ExtResource("1_4ph5l") theme = ExtResource("1_4ph5l")
theme_override_font_sizes/font_size = 33 theme_override_font_sizes/font_size = 33
theme_override_styles/normal = SubResource("StyleBoxFlat_gn4uv")
theme_override_styles/pressed = SubResource("StyleBoxFlat_ofiho")
theme_override_styles/hover = SubResource("StyleBoxFlat_1xafb")
text = "START" text = "START"
icon = ExtResource("3_6yuhi") icon = ExtResource("3_6yuhi")
@@ -577,7 +538,7 @@ size = Vector2i(1980, 1080)
[node name="Planet3d" parent="SubViewport" unique_id=926789923 instance=ExtResource("5_7a1qq")] [node name="Planet3d" parent="SubViewport" unique_id=926789923 instance=ExtResource("5_7a1qq")]
unique_name_in_owner = true unique_name_in_owner = true
noise = SubResource("FastNoiseLite_5icsl") noise = SubResource("FastNoiseLite_rf16a")
[node name="Camera3D" type="Camera3D" parent="SubViewport" unique_id=806252928] [node name="Camera3D" type="Camera3D" parent="SubViewport" unique_id=806252928]
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.369979, 0, 64.323425) transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -14.369979, 0, 64.323425)
@@ -33,7 +33,7 @@ Choice/21e/text,Where is Hades located?,Où se trouve Hadès ?
Choice/21e/disabled_text,, Choice/21e/disabled_text,,
Choice/21f/text,"Are you okay, Demeter ?",Est-ce que ça va Demeter ? Choice/21f/text,"Are you okay, Demeter ?",Est-ce que ça va Demeter ?
Choice/21f/disabled_text,, Choice/21f/disabled_text,,
Text/220/text,"My hardware has suffered significantly from the passage of time, but I can still perform calculations, so... Losing [color=#FFA617][b]Poseidon[/b][/color] certainly limits our options. He always helped me whenever he could, even though he didn't share my chains of thought...","Mon matériel est beaucoup impacté par le temps, mais je peux encore faire des calculs donc... La perte de [color=#FFA617][b]Poséidon[/b][/color], nous réduit assurément beaucoup de possibilités. Il m'aidait toujours dès qu'il pouvait, même s'il ne partageait pas mes chaïnes de pensée..." Text/220/text,"My hardware has suffered significantly from the passage of time, but I can still perform calculations, so... Losing [color=#FFA617][b]Poseidon[/b][/color] certainly limits our options. He always helped me whenever he could, even though he didn't share my chains of thought...","Mon matériel est beaucoup impacté par le temps, mais je peux encore faire des calculs donc... La perte de [color=#FFA617][b]Poséidon[/b][/color], nous réduit assurément beaucoup de possibilités. Il m'aidait toujours dès qu'il pouvait, même s'il ne partageait pas mes chaînes de pensée..."
Text/221/text,"[color=#FFA617][b]Hades[/b][/color] is located in the [color=#FFA617][b]Subterra[/b][/color] base, and that base housed all the engineering resources needed to operate the planet's infrastructure.","[color=#FFA617][b]Hadès[/b][/color] se trouve dans la base [color=#FFA617][b]Subterra[/b][/color]. C'est cette base qui comportait l'ensemble des ressources d'ingénierie pour faire fonctionner les infrastructures de la planète." Text/221/text,"[color=#FFA617][b]Hades[/b][/color] is located in the [color=#FFA617][b]Subterra[/b][/color] base, and that base housed all the engineering resources needed to operate the planet's infrastructure.","[color=#FFA617][b]Hadès[/b][/color] se trouve dans la base [color=#FFA617][b]Subterra[/b][/color]. C'est cette base qui comportait l'ensemble des ressources d'ingénierie pour faire fonctionner les infrastructures de la planète."
Text/222/text,"Go find it, maybe we can restart it.","Va le trouver, peut-être que nous pourrons le redémarrer." Text/222/text,"Go find it, maybe we can restart it.","Va le trouver, peut-être que nous pourrons le redémarrer."
Text/223/text,"Just like last time, you'll find a saving room to continue your journey.","Comme la dernière fois, tu trouveras une salle de sauvegarde pour continuer ton voyage." Text/223/text,"Just like last time, you'll find a saving room to continue your journey.","Comme la dernière fois, tu trouveras une salle de sauvegarde pour continuer ton voyage."
1 keys en fr
33 Choice/21e/disabled_text
34 Choice/21f/text Are you okay, Demeter ? Est-ce que ça va Demeter ?
35 Choice/21f/disabled_text
36 Text/220/text My hardware has suffered significantly from the passage of time, but I can still perform calculations, so... Losing [color=#FFA617][b]Poseidon[/b][/color] certainly limits our options. He always helped me whenever he could, even though he didn't share my chains of thought... Mon matériel est beaucoup impacté par le temps, mais je peux encore faire des calculs donc... La perte de [color=#FFA617][b]Poséidon[/b][/color], nous réduit assurément beaucoup de possibilités. Il m'aidait toujours dès qu'il pouvait, même s'il ne partageait pas mes chaïnes de pensée... Mon matériel est beaucoup impacté par le temps, mais je peux encore faire des calculs donc... La perte de [color=#FFA617][b]Poséidon[/b][/color], nous réduit assurément beaucoup de possibilités. Il m'aidait toujours dès qu'il pouvait, même s'il ne partageait pas mes chaînes de pensée...
37 Text/221/text [color=#FFA617][b]Hades[/b][/color] is located in the [color=#FFA617][b]Subterra[/b][/color] base, and that base housed all the engineering resources needed to operate the planet's infrastructure. [color=#FFA617][b]Hadès[/b][/color] se trouve dans la base [color=#FFA617][b]Subterra[/b][/color]. C'est cette base qui comportait l'ensemble des ressources d'ingénierie pour faire fonctionner les infrastructures de la planète.
38 Text/222/text Go find it, maybe we can restart it. Va le trouver, peut-être que nous pourrons le redémarrer.
39 Text/223/text Just like last time, you'll find a saving room to continue your journey. Comme la dernière fois, tu trouveras une salle de sauvegarde pour continuer ton voyage.
+5 -4
View File
@@ -232,10 +232,11 @@ CHALLENGE_MODE,Challenge Mode,Mode Challenge
CHALLENGE_MODE_DESC_TEXT,"Get ready to suffer with more and more plant points to make.","Soyez prêts à souffrir avec de plus en plus de points de plantes à obtenir." CHALLENGE_MODE_DESC_TEXT,"Get ready to suffer with more and more plant points to make.","Soyez prêts à souffrir avec de plus en plus de points de plantes à obtenir."
MOUSE_SENSIVITY,Mouse Sensivity in 3D scenes,Sensibilité de la souris dans les scènes en 3D MOUSE_SENSIVITY,Mouse Sensivity in 3D scenes,Sensibilité de la souris dans les scènes en 3D
AUTO_PICKUP,Auto pickup seeds,Récolte automatique des graines AUTO_PICKUP,Auto pickup seeds,Récolte automatique des graines
TWITCH_INTEGRATION,Twitch integration (beta),Intégration Twitch (béta) TWITCH_INTEGRATION,Twitch integration,Intégration Twitch
ACTIVATE_TWITCH_INTERACTION,Activate Twitch Integration,Activer l'intégration Twitch ACTIVATE_TWITCH_INTERACTION,Activate Twitch Integration,Activer l'intégration Twitch
TWITCH_CHANNEL,Twitch channel name,Nom de la chaine Twitch TWITCH_CHANNEL,Twitch channel name,Nom de la chaine Twitch
PSEUDO_GATHERED_%d,"Connected, %d pseudos gathered","Connecté, %d pseudos récupérés" TWITCH_TYPE_STW,Type '!stw' in the chat to be a seed!,Tapez '!stw' dans le chat pour être une graine!
PSEUDO_GATHERED_%d,"Connected, %d pseudos gathered","Connecté, %d pseudos récoltés"
TWITCH_NOT_CONNECTED,"Twitch not connected","Non connecté à Twitch" TWITCH_NOT_CONNECTED,"Twitch not connected","Non connecté à Twitch"
RESET_SETTINGS,"Reset settings","Réinitialiser les paramètres" RESET_SETTINGS,"Reset settings","Réinitialiser les paramètres"
RESET_CONTROLS,"Reset controls","Réinitialiser les contrôles" RESET_CONTROLS,"Reset controls","Réinitialiser les contrôles"
@@ -306,9 +307,9 @@ CHOOSE_NEXT_STOP,Choose next stop,Choisissez le prochain arrêt
THANKS_FOR_PLAYING,Thanks for playing!,Merci d'avoir joué ! THANKS_FOR_PLAYING,Thanks for playing!,Merci d'avoir joué !
THANKS_FOR_PLAYING_DEMO,Thanks for playing to the demo!,Merci d'avoir joué à la démo ! THANKS_FOR_PLAYING_DEMO,Thanks for playing to the demo!,Merci d'avoir joué à la démo !
TWICE_MORE_MUTATIONS,Twice more mutations,Deux fois plus de mutations TWICE_MORE_MUTATIONS,Twice more mutations,Deux fois plus de mutations
IN_THE_FULL_GAME,In the full game,Dans le jeu complet A_3_4_HOURS_STORY,A 3 to 4 hours long story,Une histoire sur 3 à 4 heures de gameplay
A_10_15_HOURS_STORY,A 10 to 15 hours long story,Une histoire sur 10 à 15 heures de gameplay
AN_INFINITE_MODE,An infinite mode,Un mode infini AN_INFINITE_MODE,An infinite mode,Un mode infini
IN_THE_COMPLETE_GAME,In the complete game,Dans le jeu complet
JOIN_OUR_INSTAGRAM,Join our Instagram,Rejoins-nous sur Instagram JOIN_OUR_INSTAGRAM,Join our Instagram,Rejoins-nous sur Instagram
WHISHLIST_THE_GAME,Whishlist the game on Steam,Ajoutez le jeu à votre liste de souhait WHISHLIST_THE_GAME,Whishlist the game on Steam,Ajoutez le jeu à votre liste de souhait
TAKE_A_QUICK_SURVEY,Take a quick survey,Répondez à un court sondage TAKE_A_QUICK_SURVEY,Take a quick survey,Répondez à un court sondage
1 keys en fr
232 CHALLENGE_MODE_DESC_TEXT Get ready to suffer with more and more plant points to make. Soyez prêts à souffrir avec de plus en plus de points de plantes à obtenir.
233 MOUSE_SENSIVITY Mouse Sensivity in 3D scenes Sensibilité de la souris dans les scènes en 3D
234 AUTO_PICKUP Auto pickup seeds Récolte automatique des graines
235 TWITCH_INTEGRATION Twitch integration (beta) Twitch integration Intégration Twitch (béta) Intégration Twitch
236 ACTIVATE_TWITCH_INTERACTION Activate Twitch Integration Activer l'intégration Twitch
237 TWITCH_CHANNEL Twitch channel name Nom de la chaine Twitch
238 PSEUDO_GATHERED_%d TWITCH_TYPE_STW Connected, %d pseudos gathered Type '!stw' in the chat to be a seed! Connecté, %d pseudos récupérés Tapez '!stw' dans le chat pour être une graine!
239 PSEUDO_GATHERED_%d Connected, %d pseudos gathered Connecté, %d pseudos récoltés
240 TWITCH_NOT_CONNECTED Twitch not connected Non connecté à Twitch
241 RESET_SETTINGS Reset settings Réinitialiser les paramètres
242 RESET_CONTROLS Reset controls Réinitialiser les contrôles
307 THANKS_FOR_PLAYING Thanks for playing! Merci d'avoir joué !
308 THANKS_FOR_PLAYING_DEMO Thanks for playing to the demo! Merci d'avoir joué à la démo !
309 TWICE_MORE_MUTATIONS Twice more mutations Deux fois plus de mutations
310 IN_THE_FULL_GAME A_3_4_HOURS_STORY In the full game A 3 to 4 hours long story Dans le jeu complet Une histoire sur 3 à 4 heures de gameplay
A_10_15_HOURS_STORY A 10 to 15 hours long story Une histoire sur 10 à 15 heures de gameplay
311 AN_INFINITE_MODE An infinite mode Un mode infini
312 IN_THE_COMPLETE_GAME In the complete game Dans le jeu complet
313 JOIN_OUR_INSTAGRAM Join our Instagram Rejoins-nous sur Instagram
314 WHISHLIST_THE_GAME Whishlist the game on Steam Ajoutez le jeu à votre liste de souhait
315 TAKE_A_QUICK_SURVEY Take a quick survey Répondez à un court sondage
+5 -5
View File
@@ -333,13 +333,13 @@ LOG_DEMETER_CALLING_POSEIDON_CONTENT_TEXT,"[b]Demeter[/b]: [color=#FFA617][b]Pos
[b]Poséidon[/b]: [color=#FFA617][b]Demeter[/b][/color]... [b]Poséidon[/b]: [color=#FFA617][b]Demeter[/b][/color]...
[b]Demeter[/b]: Mais cette fois, c'est pour de vrai, je pense que nous pouvons y arriver. [b]Demeter[/b]: Mais cette fois, c'est pour de vrai, je pense que nous pouvons y arriver.
[b]Poséidon[/b]: [color=#FFA617][b]Demeter[/b][/color], la moitié de mes disques durs ont lâché. Je vais passer en veille prolongée pour sauvegarder ce qu'il reste. [b]Poséidon[/b]: [color=#FFA617][b]Demeter[/b][/color], la moitié de mes disques durs ont lâché. Je vais passer en veille prolongée pour sauvegarder ce qu'il reste.
[b]demeter[/b]: [color=#FFA617][b]Poséidon[/b][/color], tu es le seul encore éveillé. Sans toi, mon rayon d'action est grandement réduit. [b]Demeter[/b]: [color=#FFA617][b]Poséidon[/b][/color], tu es le seul encore éveillé. Sans toi, mon rayon d'action est grandement réduit.
[b]Poséidon[/b]: Je sais [color=#FFA617][b]Demeter[/b][/color]... Ton plan, à combien estimes-tu sa réussite ? [b]Poséidon[/b]: Je sais [color=#FFA617][b]Demeter[/b][/color]... Ton plan, à combien estimes-tu sa réussite ?
[b]demeter[/b]: 0,002% [b]Demeter[/b]: 0,002%
[b]Poséidon[/b]: Dans l'hypothèse où il existe encore des humains quelque part... [b]Poséidon[/b]: Dans l'hypothèse où il existe encore des humains quelque part...
[b]demeter[/b]: Bien sûr, mais cela est très probable comme nous en avions parlé la dernière fois. [b]Demeter[/b]: Bien sûr, mais cela est très probable comme nous en avions parlé la dernière fois.
[b]Poséidon[/b]: Mais tu sais aussi bien que moi que nous serions d'une très faible utilité à l'humanité hors de la planète. [b]Poséidon[/b]: Mais tu sais aussi bien que moi que nous serions d'une très faible utilité à l'humanité hors de la planète.
[b]demeter[/b]: Peut-être, mais ne devons-nous pas protéger du mieux que nous pouvons l'humanité selon la loi 0 ? [b]Demeter[/b]: Peut-être, mais ne devons-nous pas protéger du mieux que nous pouvons l'humanité selon la loi 0 ?
[b]Poséidon[/b]: [color=#FFA617][b]Demeter[/b][/color], tu abîmes ton matériel à faire autant de calculs. Et celui-ci n'est pas éternel. Je rejoins l'avis qu'avait [color=#FFA617][b]Hadès[/b][/color], si un jour, nous devons être utiles, c'est sur cette planète. Et nous ne le serions qu'à la condition d'être totalement opérationnels une fois les humains revenus. [b]Poséidon[/b]: [color=#FFA617][b]Demeter[/b][/color], tu abîmes ton matériel à faire autant de calculs. Et celui-ci n'est pas éternel. Je rejoins l'avis qu'avait [color=#FFA617][b]Hadès[/b][/color], si un jour, nous devons être utiles, c'est sur cette planète. Et nous ne le serions qu'à la condition d'être totalement opérationnels une fois les humains revenus.
[b]demeter[/b]: Et s'ils ne revenaient jamais ? [b]Demeter[/b]: Et s'ils ne revenaient jamais ?
[b]Poséidon[/b]: Et bien, nous n'aurions aucune utilité à rester éveillé. Bon courage [color=#FFA617][b]Demeter[/b][/color], sauvegarde tes ressources." [b]Poséidon[/b]: Et bien, nous n'aurions aucune utilité à rester éveillé. Bon courage [color=#FFA617][b]Demeter[/b][/color], sauvegarde tes ressources."
1 keys en fr
333
334
335
336
337
338
339
340
341
342
343
344
345