systems rework: buffs, prestige graph, research, modular architecture
Decouples core systems from centralized globals in favor of catalogue-based architecture and data-driven content. Key changes: - Prestige: node-based buff tech tree, graph panel, progress bar - Research: multi-worker system, per-generator research, xp generation - Ascension: meta-currency layer via multi-currency prestige resets - Buffs: refactored as generator-independent via catalogues - UI: currency panel, edge-scrolling camera + zoom, current-goal panel - Alchemy Tower: crafting building with recipe/cost system - Testing: 7 test suites (ascension, prestige, research, goals) - Content: migrated from hardcoded idles/ to gym format (tiny_sword)
This commit was merged in pull request #1.
This commit is contained in:
BIN
docs/gyms/tiny_sword/buildings/farm/House1.png
Normal file
BIN
docs/gyms/tiny_sword/buildings/farm/House1.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 5.2 KiB |
40
docs/gyms/tiny_sword/buildings/farm/House1.png.import
Normal file
40
docs/gyms/tiny_sword/buildings/farm/House1.png.import
Normal file
@@ -0,0 +1,40 @@
|
||||
[remap]
|
||||
|
||||
importer="texture"
|
||||
type="CompressedTexture2D"
|
||||
uid="uid://dfdh8r03sj7qv"
|
||||
path="res://.godot/imported/House1.png-8d2a4466ed180272dd4fd5a1906cd2d6.ctex"
|
||||
metadata={
|
||||
"vram_texture": false
|
||||
}
|
||||
|
||||
[deps]
|
||||
|
||||
source_file="res://docs/gyms/tiny_sword/buildings/farm/House1.png"
|
||||
dest_files=["res://.godot/imported/House1.png-8d2a4466ed180272dd4fd5a1906cd2d6.ctex"]
|
||||
|
||||
[params]
|
||||
|
||||
compress/mode=0
|
||||
compress/high_quality=false
|
||||
compress/lossy_quality=0.7
|
||||
compress/uastc_level=0
|
||||
compress/rdo_quality_loss=0.0
|
||||
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/channel_remap/red=0
|
||||
process/channel_remap/green=1
|
||||
process/channel_remap/blue=2
|
||||
process/channel_remap/alpha=3
|
||||
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
|
||||
38
docs/gyms/tiny_sword/buildings/farm/farm.tscn
Normal file
38
docs/gyms/tiny_sword/buildings/farm/farm.tscn
Normal file
@@ -0,0 +1,38 @@
|
||||
[gd_scene format=3 uid="uid://djedqovgngrx5"]
|
||||
|
||||
[ext_resource type="PackedScene" uid="uid://jeoiinukrrsp" path="res://core/generator/currency_generator.tscn" id="1_rvsna"]
|
||||
[ext_resource type="Resource" uid="uid://bxg2au0ijp242" path="res://docs/gyms/tiny_sword/currencies/food.tres" id="2_djlc5"]
|
||||
[ext_resource type="Resource" uid="uid://d08h51y0pnsnf" path="res://docs/gyms/tiny_sword/buildings/farm/farm_generator.tres" id="3_82rmq"]
|
||||
[ext_resource type="Texture2D" uid="uid://dfdh8r03sj7qv" path="res://docs/gyms/tiny_sword/buildings/farm/House1.png" id="4_djlc5"]
|
||||
[ext_resource type="PackedScene" uid="uid://ckos7f22pnmyh" path="res://core/generator/generator_container.tscn" id="5_82rmq"]
|
||||
|
||||
[sub_resource type="RectangleShape2D" id="RectangleShape2D_82rmq"]
|
||||
size = Vector2(106, 157)
|
||||
|
||||
[node name="Farm" type="Node2D" unique_id=283335851]
|
||||
|
||||
[node name="CurrencyGenerator" parent="." unique_id=967969064 node_paths=PackedStringArray("info_generator_container") instance=ExtResource("1_rvsna")]
|
||||
currency = ExtResource("2_djlc5")
|
||||
data = ExtResource("3_82rmq")
|
||||
press_buys_generator = false
|
||||
info_generator_container = NodePath("../GeneratorContainer")
|
||||
|
||||
[node name="Sprite2D" type="Sprite2D" parent="." unique_id=1103280443]
|
||||
texture = ExtResource("4_djlc5")
|
||||
|
||||
[node name="Area2D" type="Area2D" parent="." unique_id=529600485]
|
||||
|
||||
[node name="CollisionShape2D" type="CollisionShape2D" parent="Area2D" unique_id=204675694]
|
||||
position = Vector2(0, -2.5)
|
||||
shape = SubResource("RectangleShape2D_82rmq")
|
||||
|
||||
[node name="GeneratorContainer" parent="." unique_id=1451609580 node_paths=PackedStringArray("_generator") instance=ExtResource("5_82rmq")]
|
||||
visible = false
|
||||
offset_left = 138.0
|
||||
offset_top = -100.0
|
||||
offset_right = 402.0
|
||||
offset_bottom = 110.0
|
||||
_generator = NodePath("../CurrencyGenerator")
|
||||
|
||||
[connection signal="mouse_entered" from="Area2D" to="CurrencyGenerator" method="_on_area_2d_mouse_entered"]
|
||||
[connection signal="mouse_exited" from="Area2D" to="CurrencyGenerator" method="_on_area_2d_mouse_exited"]
|
||||
21
docs/gyms/tiny_sword/buildings/farm/farm_generator.tres
Normal file
21
docs/gyms/tiny_sword/buildings/farm/farm_generator.tres
Normal file
@@ -0,0 +1,21 @@
|
||||
[gd_resource type="Resource" script_class="CurrencyGeneratorData" format=3 uid="uid://d08h51y0pnsnf"]
|
||||
|
||||
[ext_resource type="Resource" uid="uid://50yq2hl3wfwq" path="res://docs/gyms/tiny_sword/research/farm_research.tres" id="2_hprai"]
|
||||
[ext_resource type="Resource" uid="uid://dfxk30o34qe2s" path="res://docs/gyms/tiny_sword/currencies/worker.tres" id="3_bbypn"]
|
||||
[ext_resource type="Script" uid="uid://b00tqsuhxdy0d" path="res://core/generator/currency_generator_data.gd" id="4_0kvfm"]
|
||||
[ext_resource type="Resource" uid="uid://cts0407h130d6" path="res://docs/gyms/tiny_sword/goals/gold_total_1300_goal.tres" id="5_qiy1b"]
|
||||
|
||||
[resource]
|
||||
script = ExtResource("4_0kvfm")
|
||||
id = &"farm"
|
||||
name = "Farm"
|
||||
starts_unlocked = false
|
||||
starts_available = false
|
||||
initial_owned = 1
|
||||
purchase_currency = ExtResource("3_bbypn")
|
||||
unlock_goal = ExtResource("5_qiy1b")
|
||||
initial_cost = 1.0
|
||||
coefficient = 1.0
|
||||
initial_productivity = 20.0
|
||||
research_data = ExtResource("2_hprai")
|
||||
metadata/_custom_type_script = "uid://b00tqsuhxdy0d"
|
||||
Reference in New Issue
Block a user