Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dense gold #3865

Draft
wants to merge 16 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
683 changes: 682 additions & 1 deletion config/fxdata/columnset.toml

Large diffs are not rendered by default.

48 changes: 48 additions & 0 deletions config/fxdata/cubes.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -2105,3 +2105,51 @@ Textures = 1032 1032 1032 1032 1032 0
[cube481]
Name = DOOR_MIDAS_BR
Textures = 1031 1033 1033 1031 1033 0

[cube482]
Name = DENSE_GOLD1
Textures = 592 592 592 592 592 592

[cube483]
Name = DENSE_GOLD2
Textures = 593 593 593 593 593 593

[cube484]
Name = DENSE_GOLD3
Textures = 594 594 594 594 594 594

[cube485]
Name = DENSE_GOLD_NEAR_LAVA1
Textures = 595 595 595 595 592 595

[cube486]
Name = DENSE_GOLD_NEAR_LAVA2
Textures = 596 596 596 596 593 596

[cube487]
Name = DENSE_GOLD_NEAR_LAVA3
Textures = 597 597 597 597 594 597

[cube488]
Name = INTERMEDIATE_GOLD1
Textures = 598 598 598 598 598 598

[cube489]
Name = INTERMEDIATE_GOLD2
Textures = 599 599 599 599 599 599

[cube490]
Name = INTERMEDIATE_GOLD3
Textures = 600 600 600 600 600 600

[cube491]
Name = INTERMEDIATE_GOLD_NEAR_LAVA1
Textures = 601 601 601 601 598 601

[cube492]
Name = INTERMEDIATE_GOLD_NEAR_LAVA2
Textures = 602 602 602 602 599 602

[cube493]
Name = INTERMEDIATE_GOLD_NEAR_LAVA3
Textures = 603 603 603 603 600 603
5 changes: 0 additions & 5 deletions config/fxdata/rules.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@
; Note that changing .cfg files will NOT affect saved games - only newly started maps.

[game]
; Amount of gold stored in undigged vein slab.
GoldPerGoldBlock = 1024
; Amount of gold stored in pots at start of level.
PotOfGoldHolds = 250
; Amount of gold stored in chests at start of level.
Expand All @@ -22,8 +20,6 @@ DisplayPortalLimit = 0
BoulderReduceHealthSlap = 18
BoulderReduceHealthWall = 6
BoulderReduceHealthRoom = 6
; Gold mining speed from gems, in percentage compared to mining gold blocks.
GemEffectiveness = 17
; Game turns between pay days.
PayDayGap = 10000
; How fast pay day comes percentage.
Expand Down Expand Up @@ -170,7 +166,6 @@ ImproveArea = 31
; Damage did by Imp while digging - to its own slabs, and other slabs.
DefaultImpDigDamage = 1
DefaultImpDigOwnDamage = 2
PerImpGoldDigSize = 30
; Experience imps gain from working.
ImpWorkExperience = 0
; Imps should drag own units who are knocked out back to their lair to heal
Expand Down
113 changes: 113 additions & 0 deletions config/fxdata/slabset.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8143,4 +8143,117 @@ Objects = []

[slab59.SE]
Columns = [365, 365, 365, 365, 365, 365, 365, 365, 365]
Objects = []

[slab60]
[slab60.S]
Columns = [1287, 1290, 1294, 1288, 1291, 1293, 1286, 1291, 1292]
Objects = []

[slab60.W]
Columns = [1288, 1291, 1289, 1292, 1295, 1293, 1296, 1287, 1289]
Objects = []

[slab60.N]
Columns = [1297, 1298, 1290, 1287, 1298, 1287, 1299, 1291, 1300]
Objects = []

[slab60.E]
Columns = [1301, 1302, 1286, 1295, 1295, 1292, 1303, 1304, 1287]
Objects = []

[slab60.SW]
Columns = [1305, 1299, 1286, 205, 1288, 1298, 204, 2, 1296]
Objects = []

[slab60.NW]
Columns = [207, 206, 1293, 208, 1306, 1307, 1304, 1299, 1303]
Objects = []

[slab60.NE]
Columns = [1306, 205, 2, 1310, 1296, 205, 1297, 1300, 1289]
Objects = []

[slab60.SE]
Columns = [1290, 1302, 1291, 1306, 1296, 207, 1311, 205, 206]
Objects = []

[slab60.ALL]
Columns = [206, 1307, 2, 1311, 1288, 1289, 204, 1295, 205]
Objects = []

[slab60.S_LAVA]
Columns = [1311, 1301, 1301, 1306, 1296, 1295, 1313, 1314, 1315]
Objects = []

[slab60.W_LAVA]
Columns = [1316, 1308, 1300, 1317, 1301, 1296, 1318, 1294, 1312]
Objects = []

[slab60.N_LAVA]
Columns = [1319, 1320, 1324, 1297, 1306, 1307, 1300, 1298, 1301]
Objects = []

[slab60.E_LAVA]
Columns = [1301, 1306, 1324, 1300, 1309, 1328, 1303, 1293, 1321]
Objects = []

[slab60.SW_LAVA]
Columns = [1325, 1299, 1301, 1330, 1322, 1305, 818, 1330, 1324]
Objects = []

[slab60.NW_LAVA]
Columns = [818, 1330, 1368, 1330, 1326, 1306, 1367, 1302, 1289]
Objects = []

[slab60.NE_LAVA]
Columns = [1369, 1330, 818, 1296, 1328, 1330, 1311, 1301, 1330]
Objects = []

[slab60.SE_LAVA]
Columns = [1301, 1287, 1332, 1291, 1333, 1330, 1370, 1330, 818]
Objects = []

[slab60.ALL_LAVA]
Columns = [1360, 1329, 1359, 1331, 1323, 1327, 1357, 1334, 1327]
Objects = []

[slab60.S_WATER]
Columns = [1303, 1301, 1308, 1290, 1296, 1288, 1361, 1336, 1335]
Objects = []

[slab60.W_WATER]
Columns = [1345, 1293, 1310, 1346, 1309, 1291, 1347, 1296, 1303]
Objects = []

[slab60.N_WATER]
Columns = [1346, 1348, 1349, 1301, 1292, 1287, 1293, 1301, 1292]
Objects = []

[slab60.E_WATER]
Columns = [1298, 1312, 1350, 1287, 1306, 1351, 1295, 1305, 1352]
Objects = []

[slab60.SW_WATER]
Columns = [1364, 1299, 1303, 1362, 1337, 1303, 819, 1362, 1355]
Objects = []

[slab60.NW_WATER]
Columns = [819, 1362, 1366, 1362, 1339, 1296, 1338, 1299, 1287]
Objects = []

[slab60.NE_WATER]
Columns = [1341, 1362, 819, 1286, 1340, 1362, 1300, 1290, 1349]
Objects = []

[slab60.SE_WATER]
Columns = [1303, 1294, 1358, 1296, 1342, 1362, 1362, 1362, 819]
Objects = []

[slab60.ALL_WATER]
Columns = [1344, 1353, 1354, 1365, 1293, 1365, 1343, 1363, 1356]
Objects = []

[slab60.CENTER]
Columns = [1287, 1290, 1294, 1288, 1291, 1293, 1286, 1291, 1292]
Objects = []
24 changes: 24 additions & 0 deletions config/fxdata/terrain.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ IsDiggable = 0
IsOwnable = 0
; Whether this slab relates to liquid and bridges. 0 = None, 1 = Lava, 2 = Water, 3 = Bridge.
WlbType = 0
; Amount of gold that the block holds.
GoldHeld = 0

[slab1]
Name = GOLD
Expand All @@ -56,6 +58,7 @@ IsSafeLand = 0
IsDiggable = 1
IsOwnable = 0
WlbType = 0
GoldHeld = 1024

[slab2]
Name = DIRT
Expand Down Expand Up @@ -944,6 +947,7 @@ IsSafeLand = 0
IsDiggable = 1
IsOwnable = 0
WlbType = 0
GoldHeld = 174

[slab53]
Name = GUARD_AREA
Expand Down Expand Up @@ -1069,6 +1073,25 @@ IsDiggable = 0
IsOwnable = 1
WlbType = 0

[slab60]
Name = DENSE_GOLD
TooltipTextID = 326
BlockFlagsHeight = 4
BlockHealthIndex = 9
BlockFlags = BLOCKING VALUABLE
NoBlockFlags =
FillStyle = 0
Category = 0
SlbID = 0
Indestructible = 0
Wibble = 1
Animated = 0
IsSafeLand = 0
IsDiggable = 1
IsOwnable = 0
WlbType = 0
GoldHeld = 3072

; Rooms configuration.

[room0]
Expand Down Expand Up @@ -1429,3 +1452,4 @@ DOOR_WOODEN = 20
DOOR_BRACE = 80
DOOR_STEEL = 255
DOOR_MAGIC = 255
DENSE_GOLD = 50
50 changes: 49 additions & 1 deletion config/fxdata/textureanim.toml
Original file line number Diff line number Diff line change
Expand Up @@ -195,4 +195,52 @@ frames = [1029,1029,1035,1035,1038,1038,1041,1041]

[texture591]
name = "midas_door_cr"
frames = [1030,1030,1036,1036,1039,1039,1042,1042]
frames = [1030,1030,1036,1036,1039,1039,1042,1042]

[texture592]
name = "dense_gold"
frames = [1043,1043,1044,1044,1045,1045,1046,1046]

[texture593]
name = "dense_gold2"
frames = [1047,1047,1048,1048,1049,1049,1050,1050]

[texture594]
name = "dense_gold3"
frames = [1051,1051,1052,1052,1053,1053,1054,1054]

[texture595]
name = "dense_gold_near_lava"
frames = [1055,1056,1056,1057,1057,1058,1058,1055]

[texture596]
name = "dense_gold_near_lava2"
frames = [1057,1058,1058,1055,1055,1056,1056,1057]

[texture597]
name = "dense_gold_near_lava3"
frames = [1056,1056,1057,1057,1058,1058,1055,1055]

[texture598]
name = "intermediate_gold"
frames = [1059,1059,1060,1060,1061,1061,1062,1062]

[texture599]
name = "intermediate_gold2"
frames = [1063,1063,1064,1064,1065,1065,1066,1066]

[texture600]
name = "intermediate_gold3"
frames = [1067,1067,1068,1068,1069,1069,1070,1070]

[texture601]
name = "intermediate_gold_near_lava"
frames = [1071,1072,1072,1073,1073,1074,1074,1071]

[texture602]
name = "intermediate_gold_near_lava2"
frames = [1073,1074,1074,1071,1071,1072,1072,1073]

[texture603]
name = "intermediate_gold_near_lava3"
frames = [1072,1072,1073,1073,1074,1074,1071,1071]
4 changes: 0 additions & 4 deletions src/config_rules.c
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@ const struct NamedCommand rules_game_classicbugs_commands[] = {

const struct NamedField rules_game_named_fields[] = {
//name //field //field type //min //max
{"GOLDPERGOLDBLOCK", &game.conf.rules.game.gold_per_gold_block, var_type(game.conf.rules.game.gold_per_gold_block ), LONG_MIN, LONG_MAX},
{"POTOFGOLDHOLDS", &game.conf.rules.game.pot_of_gold_holds, var_type(game.conf.rules.game.pot_of_gold_holds ), LONG_MIN, LONG_MAX},
{"CHESTGOLDHOLD", &game.conf.rules.game.chest_gold_hold, var_type(game.conf.rules.game.chest_gold_hold ), LONG_MIN, LONG_MAX},
{"GOLDPILEVALUE", &game.conf.rules.game.gold_pile_value, var_type(game.conf.rules.game.gold_pile_value ), LONG_MIN, LONG_MAX},
Expand All @@ -75,7 +74,6 @@ const struct NamedField rules_game_named_fields[] = {
{"DUNGEONHEARTHEALTIME", &game.conf.rules.game.dungeon_heart_heal_time, var_type(game.conf.rules.game.dungeon_heart_heal_time ), 0, ULONG_MAX},
{"DUNGEONHEARTHEALHEALTH", &game.conf.rules.game.dungeon_heart_heal_health, var_type(game.conf.rules.game.dungeon_heart_heal_health ), LONG_MIN, LONG_MAX},
{"HERODOORWAITTIME", &game.conf.rules.game.hero_door_wait_time, var_type(game.conf.rules.game.hero_door_wait_time ), 0, ULONG_MAX},
{"GEMEFFECTIVENESS", &game.conf.rules.game.gem_effectiveness, var_type(game.conf.rules.game.gem_effectiveness ), 0, ULONG_MAX},
{"ROOMSELLGOLDBACKPERCENT", &game.conf.rules.game.room_sale_percent, var_type(game.conf.rules.game.room_sale_percent ), 0, LONG_MAX},
{"DOORSELLVALUEPERCENT", &game.conf.rules.game.door_sale_percent, var_type(game.conf.rules.game.door_sale_percent ), 0, LONG_MAX},
{"TRAPSELLVALUEPERCENT", &game.conf.rules.game.trap_sale_percent, var_type(game.conf.rules.game.trap_sale_percent ), 0, LONG_MAX},
Expand Down Expand Up @@ -267,7 +265,6 @@ static int long_compare_fn(const void *ptr_a, const void *ptr_b)
static void set_defaults()
{
// Game block.
game.conf.rules.game.gold_per_gold_block = 1000;
game.conf.rules.game.pot_of_gold_holds = 1000;
game.conf.rules.game.gold_pile_value = 500;
game.conf.rules.game.gold_pile_maximum = 5000;
Expand All @@ -285,7 +282,6 @@ static void set_defaults()
game.conf.rules.game.door_sale_percent = 100;
game.conf.rules.game.room_sale_percent = 50;
game.conf.rules.game.trap_sale_percent = 100;
game.conf.rules.game.gem_effectiveness = 17;
game.conf.rules.game.pay_day_speed = 100;
game.conf.rules.game.gold_per_hoard = 2000;
game.conf.rules.game.torture_payday = 50;
Expand Down
2 changes: 0 additions & 2 deletions src/config_rules.h
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,6 @@ struct SacrificeRecipe {
};

struct GameRulesConfig {
GoldAmount gold_per_gold_block;
GoldAmount pot_of_gold_holds;
GoldAmount chest_gold_hold;
GoldAmount gold_pile_value;
Expand All @@ -86,7 +85,6 @@ struct GameRulesConfig {
HitPoints dungeon_heart_heal_health;
unsigned long hero_door_wait_time;
unsigned long classic_bugs_flags;
unsigned long gem_effectiveness;
long door_sale_percent;
long room_sale_percent;
long trap_sale_percent;
Expand Down
Loading
Loading