Equilibrage, amélioration du tutoriel et de la clarté des éléments de gameplay

* Rajout d'une région supplémentaire pour finir le jeu, et renommage de la dernière map en "Base Borea"
* Amélioration de la clarté du détecteur
* Les objectifs du tutoriel et les indications de jeu apparaissent désormais en haut de l'écran
* Changement des étapes du tutoriel
* Amélioration de la lisibilité du voyage dans le vaisseau (avec un décompte de distance jusqu'à la fin du jeu)
* Changement de la génération de map : la zone fertile est désormais uniquement au centre de la carte, les chunks sont également plus petits
* Changement des objectifs à réaliser ainsi que des recharges, seule 8 par région désormais
* Les modificateurs de région n'évoluent plus
This commit is contained in:
2026-03-21 18:59:39 +01:00
parent 03fbf72ee9
commit 4a46492598
26 changed files with 470 additions and 271 deletions

View File

@@ -3,10 +3,8 @@ class_name RunData
enum State {STARTED, IN_PROGRESS, FINISHED}
const RUN_POINT_POSITION_DERIVATION = 100
const DIFFICULTY_INCREASE_BY_LEVEL = 3
const RUN_POINTS_NEXT_NUMBER : int = 2
const RUN_POINT_MAX_LEVEL = 4 # TODO
const RUN_POINT_MAX_LEVEL = 5 # TODO
signal current_run_point_changed
@@ -26,6 +24,11 @@ func generate_next_run_points(level = 0) -> Array[RunPoint]:
next_run_points = []
if level == RUN_POINT_MAX_LEVEL:
return [
generate_borea_base_run_point()
]
for i in range(RUN_POINTS_NEXT_NUMBER):
next_run_points.append(
generate_next_run_point(level)
@@ -38,13 +41,24 @@ func generate_next_run_point(level = 0) -> RunPoint:
var region_parameter = RegionParameter.new()
region_parameter.level = level
region_parameter.region_flags = get_region_flags(region_parameter)
region_parameter.modifiers = get_region_modifiers(level + 1)
region_parameter.modifiers = get_region_modifiers()
return RunPoint.new(
level,
region_parameter
)
func generate_borea_base_run_point() -> RunPoint:
var region_parameter = RegionParameter.new()
region_parameter.level = RUN_POINT_MAX_LEVEL
region_parameter.region_flags = get_region_flags(region_parameter)
region_parameter.region_name = tr("BOREA_BASE")
return RunPoint.new(
RUN_POINT_MAX_LEVEL,
region_parameter
)
#endregion
func get_state() -> State:
@@ -78,12 +92,12 @@ func get_region_flags(region_parameter : RegionParameter) -> Array[String]:
return flags
func get_region_modifiers(level : int) -> Array[RegionModifier]:
func get_region_modifiers() -> Array[RegionModifier]:
var possible_modifiers : Array[RegionModifier] = [
AridModifier.new(level),
HumidModifier.new(level),
PoorModifier.new(level),
HarshModifier.new(level)
AridModifier.new(),
HumidModifier.new(),
PoorModifier.new(),
HarshModifier.new()
]
possible_modifiers = possible_modifiers.filter(