1
0
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:
tobspr
2020-09-22 20:21:09 +02:00
parent 091ffd1031
commit 05847add71
7 changed files with 175 additions and 28 deletions

View File

@@ -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)",

View File

@@ -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,
},

View File

@@ -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,
};
}

View File

@@ -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,
},
];

View File

@@ -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,

View File

@@ -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,
},
],