mirror of
https://github.com/tobspr/shapez.io.git
synced 2026-03-02 03:39:21 +00:00
Re-balance
This commit is contained in:
@@ -31,6 +31,7 @@ export const CHANGELOG = [
|
||||
"Show mouse and camera tile on debug overlay (F4) (by dengr)",
|
||||
"Fix belt planner placing the belt when a dialog opens in the meantime",
|
||||
"Added confirmation when deleting a savegame",
|
||||
"Make chained mainer the default and only option after unlocking it",
|
||||
"Fixed tunnels entrances connecting to exits sometimes when they shouldn't",
|
||||
"You can now pan the map with your mouse by moving the cursor to the edges of the screen!",
|
||||
"Added setting to auto select the extractor when pipetting a resource patch (by Exund)",
|
||||
|
||||
@@ -65,13 +65,13 @@ export const globalConfig = {
|
||||
|
||||
buildingSpeeds: {
|
||||
cutter: 1 / 4,
|
||||
cutterQuad: 1 / 4,
|
||||
cutterQuad: 1 / 3,
|
||||
rotater: 1 / 1,
|
||||
rotaterCCW: 1 / 1,
|
||||
rotater180: 1 / 1,
|
||||
painter: 1 / 6,
|
||||
painterDouble: 1 / 8,
|
||||
painterQuad: 1 / 8,
|
||||
painterQuad: 1 / 2,
|
||||
mixer: 1 / 5,
|
||||
stacker: 1 / 6,
|
||||
},
|
||||
|
||||
@@ -212,7 +212,7 @@ export class HubGoals extends BasicSerializableObject {
|
||||
this.currentGoal = {
|
||||
/** @type {ShapeDefinition} */
|
||||
definition: this.createRandomShape(),
|
||||
required: findNiceIntegerValue(5000 + Math.pow(this.level * 2000, 0.75)),
|
||||
required: findNiceIntegerValue(1000 + Math.pow(this.level * 2000, 0.8)),
|
||||
reward: enumHubGoalRewards.no_reward_freeplay,
|
||||
};
|
||||
}
|
||||
|
||||
@@ -18,12 +18,19 @@ export const enumHubGoalRewards = {
|
||||
reward_rotater_180: "reward_rotater_180",
|
||||
reward_miner_chainable: "reward_miner_chainable",
|
||||
reward_underground_belt_tier_2: "reward_underground_belt_tier_2",
|
||||
reward_belt_reader: "reward_belt_reader",
|
||||
reward_splitter: "reward_splitter",
|
||||
reward_cutter_quad: "reward_cutter_quad",
|
||||
reward_painter_double: "reward_painter_double",
|
||||
reward_painter_quad: "reward_painter_quad",
|
||||
reward_storage: "reward_storage",
|
||||
reward_merger: "reward_merger",
|
||||
reward_wires_filters_and_levers: "reward_wires_filters_and_levers",
|
||||
reward_display: "reward_display",
|
||||
reward_constant_signal: "reward_constant_signal",
|
||||
reward_logic_gates: "reward_logic_gates",
|
||||
reward_virtual_processing: "reward_virtual_processing",
|
||||
reward_second_wire: "reward_second_wire",
|
||||
|
||||
reward_blueprints: "reward_blueprints",
|
||||
reward_freeplay: "reward_freeplay",
|
||||
@@ -99,11 +106,11 @@ export const tutorialGoals = [
|
||||
{
|
||||
shape: "CpCpCpCp", // belts t3
|
||||
required: 800,
|
||||
reward: enumHubGoalRewards.reward_splitter,
|
||||
reward: enumHubGoalRewards.reward_merger,
|
||||
},
|
||||
|
||||
// 10
|
||||
// Star shape + cyan
|
||||
// STACKER: Star shape + cyan
|
||||
{
|
||||
shape: "ScScScSc", // miners t3
|
||||
required: 900,
|
||||
@@ -111,7 +118,7 @@ export const tutorialGoals = [
|
||||
},
|
||||
|
||||
// 11
|
||||
// Stacker
|
||||
// Chainable miner
|
||||
{
|
||||
shape: "CgScScCg", // processors t3
|
||||
required: 1000,
|
||||
@@ -127,6 +134,7 @@ export const tutorialGoals = [
|
||||
},
|
||||
|
||||
// 13
|
||||
// Tunnel Tier 2
|
||||
{
|
||||
shape: "RpRpRpRp:CwCwCwCw", // painting t3
|
||||
required: 5000,
|
||||
@@ -134,44 +142,121 @@ export const tutorialGoals = [
|
||||
},
|
||||
|
||||
// 14
|
||||
// Belt reader
|
||||
{
|
||||
// @todo
|
||||
shape: "CuCuCuCu",
|
||||
required: 7000,
|
||||
reward: enumHubGoalRewards.reward_belt_reader,
|
||||
},
|
||||
|
||||
// 15
|
||||
// Storage
|
||||
{
|
||||
shape: "SrSrSrSr:CyCyCyCy", // unused
|
||||
required: 7500,
|
||||
reward: enumHubGoalRewards.reward_storage,
|
||||
},
|
||||
|
||||
// 15
|
||||
// 16
|
||||
// Quad Cutter
|
||||
{
|
||||
shape: "SrSrSrSr:CyCyCyCy:SwSwSwSw", // belts t4 (two variants)
|
||||
required: 15000,
|
||||
required: 12500,
|
||||
reward: enumHubGoalRewards.reward_cutter_quad,
|
||||
},
|
||||
|
||||
// 16
|
||||
// 17
|
||||
// Double painter
|
||||
{
|
||||
shape: "CbRbRbCb:CwCwCwCw:WbWbWbWb", // miner t4 (two variants)
|
||||
required: 20000,
|
||||
required: 15000,
|
||||
reward: enumHubGoalRewards.reward_painter_double,
|
||||
},
|
||||
|
||||
// 17
|
||||
// 18
|
||||
// Rotater (180deg)
|
||||
{
|
||||
shape: "CbRbRbCb:CwCwCwCw:WbWbWbWb", // rotater 180
|
||||
required: 25000,
|
||||
// @TODO
|
||||
shape: "CuCuCuCu",
|
||||
required: 20000,
|
||||
reward: enumHubGoalRewards.reward_rotater_180,
|
||||
},
|
||||
|
||||
// 18
|
||||
// 19
|
||||
// Compact splitter
|
||||
{
|
||||
shape: "WrRgWrRg:CwCrCwCr:SgSgSgSg", // processors t4 (two variants)
|
||||
required: 30000,
|
||||
reward: enumHubGoalRewards.reward_painter_quad,
|
||||
// @TODO
|
||||
shape: "CuCuCuCu",
|
||||
required: 25000,
|
||||
reward: enumHubGoalRewards.reward_splitter,
|
||||
},
|
||||
|
||||
// 19
|
||||
// 20
|
||||
// WIRES
|
||||
{
|
||||
shape: finalGameShape,
|
||||
required: 50000,
|
||||
reward: enumHubGoalRewards.reward_wires_filters_and_levers,
|
||||
},
|
||||
|
||||
// 21
|
||||
// Display
|
||||
{
|
||||
// @TODO
|
||||
shape: "CuCuCuCu",
|
||||
required: 25000,
|
||||
reward: enumHubGoalRewards.reward_display,
|
||||
},
|
||||
|
||||
// 22
|
||||
// Constant signal
|
||||
{
|
||||
// @TODO
|
||||
shape: "CuCuCuCu",
|
||||
required: 30000,
|
||||
reward: enumHubGoalRewards.reward_constant_signal,
|
||||
},
|
||||
|
||||
// 23
|
||||
// Quad Painter
|
||||
{
|
||||
// @TODO
|
||||
shape: "CuCuCuCu",
|
||||
// shape: "WrRgWrRg:CwCrCwCr:SgSgSgSg", // processors t4 (two variants)
|
||||
required: 35000,
|
||||
reward: enumHubGoalRewards.reward_painter_quad,
|
||||
},
|
||||
|
||||
// 24 Logic gates
|
||||
{
|
||||
// @TODO
|
||||
shape: "CuCuCuCu",
|
||||
required: 40000,
|
||||
reward: enumHubGoalRewards.reward_logic_gates,
|
||||
},
|
||||
|
||||
// 25 Virtual Processing
|
||||
{
|
||||
// @TODO
|
||||
shape: "CuCuCuCu",
|
||||
required: 45000,
|
||||
reward: enumHubGoalRewards.reward_virtual_processing,
|
||||
},
|
||||
|
||||
// 26 Secondary type of wire
|
||||
{
|
||||
// @TODO
|
||||
shape: "CuCuCuCu",
|
||||
required: 50000,
|
||||
reward: enumHubGoalRewards.reward_second_wire,
|
||||
},
|
||||
|
||||
// 27 Freeplay
|
||||
{
|
||||
// @TODO
|
||||
shape: "CuCuCuCu",
|
||||
required: 100000,
|
||||
reward: enumHubGoalRewards.reward_freeplay,
|
||||
},
|
||||
];
|
||||
|
||||
@@ -12,6 +12,9 @@ import { MetaTrashBuilding, enumTrashVariants } from "./buildings/trash";
|
||||
/** @typedef {Array<[typeof MetaBuilding, string]>} TutorialGoalReward */
|
||||
|
||||
import { enumHubGoalRewards } from "./tutorial_goals";
|
||||
import { MetaReaderBuilding } from "./buildings/reader";
|
||||
import { MetaDisplayBuilding } from "./buildings/display";
|
||||
import { MetaConstantSignalBuilding } from "./buildings/constant_signal";
|
||||
|
||||
/**
|
||||
* Helper method for proper types
|
||||
@@ -45,6 +48,14 @@ export const enumHubGoalRewardsToContentUnlocked = {
|
||||
[enumHubGoalRewards.reward_painter_quad]: typed([[MetaPainterBuilding, enumPainterVariants.quad]]),
|
||||
[enumHubGoalRewards.reward_storage]: typed([[MetaTrashBuilding, enumTrashVariants.storage]]),
|
||||
|
||||
[enumHubGoalRewards.reward_belt_reader]: typed([[MetaReaderBuilding, defaultBuildingVariant]]),
|
||||
[enumHubGoalRewards.reward_display]: typed([[MetaDisplayBuilding, defaultBuildingVariant]]),
|
||||
[enumHubGoalRewards.reward_constant_signal]: typed([
|
||||
[MetaConstantSignalBuilding, defaultBuildingVariant],
|
||||
]),
|
||||
[enumHubGoalRewards.reward_second_wire]: null, // @TODO!
|
||||
|
||||
[enumHubGoalRewards.reward_wires_filters_and_levers]: null,
|
||||
[enumHubGoalRewards.reward_freeplay]: null,
|
||||
[enumHubGoalRewards.no_reward]: null,
|
||||
[enumHubGoalRewards.no_reward_freeplay]: null,
|
||||
|
||||
@@ -38,7 +38,7 @@ export const UPGRADES = {
|
||||
required: [{ shape: "SrSrSrSr:CyCyCyCy:SwSwSwSw", amount: 20000 }],
|
||||
},
|
||||
{
|
||||
required: [{ shape: finalGameShape, amount: 75000 }],
|
||||
required: [{ shape: finalGameShape, amount: 50000 }],
|
||||
excludePrevious: true,
|
||||
},
|
||||
],
|
||||
@@ -60,7 +60,7 @@ export const UPGRADES = {
|
||||
required: [{ shape: "CbRbRbCb:CwCwCwCw:WbWbWbWb", amount: 30000 }],
|
||||
},
|
||||
{
|
||||
required: [{ shape: finalGameShape, amount: 85000 }],
|
||||
required: [{ shape: finalGameShape, amount: 65000 }],
|
||||
excludePrevious: true,
|
||||
},
|
||||
],
|
||||
@@ -82,7 +82,7 @@ export const UPGRADES = {
|
||||
required: [{ shape: "WrRgWrRg:CwCrCwCr:SgSgSgSg", amount: 30000 }],
|
||||
},
|
||||
{
|
||||
required: [{ shape: finalGameShape, amount: 100000 }],
|
||||
required: [{ shape: finalGameShape, amount: 75000 }],
|
||||
excludePrevious: true,
|
||||
},
|
||||
],
|
||||
@@ -104,7 +104,7 @@ export const UPGRADES = {
|
||||
required: [{ shape: "WpWpWpWp:CwCwCwCw:WpWpWpWp:CwCwCwCw", amount: 30000 }],
|
||||
},
|
||||
{
|
||||
required: [{ shape: finalGameShape, amount: 125000 }],
|
||||
required: [{ shape: finalGameShape, amount: 100000 }],
|
||||
excludePrevious: true,
|
||||
},
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user