Skip to content

Commit dc2ccb8

Browse files
committed
Study mechanic semi work
Study cards are now all 0-cost cards. Too often, the cost to get Study online, plus the cost to play the Study cards, meant that the cards didn't get played in favor of doing things that had better synergy with your deck, especially in later acts. Making them 0-cost also gives the Study cards greater synergy with 0-cost recursion, and makes 'Quick Study' not drop a card into your hand you can't play, which I've seen new players regularly do. This required a lot of balance changes that will likely still be ongoing: Quick Study - Now gives 2 Spire Boss cards when upgraded instead of reducing HP loss. Study the Spire - Energy cost reduced to 1. Once again lasts for 4 turns. Tiny Bowler Hat now reduces the cost of the generated Study the Spire card to 0. ALL Study cards are no longer Ethereal. They still Exhaust. Ca-Caw - When upgraded, gives an immediate 1 Strength instead of increasing Ritual to 2. Charge-Up - Block reduced, doesn't give an extra Strength when upgraded. Collect - Block reduced, doesn't give an extra Strength when upgraded. Dark Void - Damage reduced. Donu's Power / Deca's Protection - Doesn't give Artifact unless upgraded. Defensive Stance - Block and Metallicize reduced, only increases Block upgraded. Defensive Mode - Block and Thorns reduced, only increases Block upgraded. Divider - Damage reduced. Renamed to "Hexaburn" since it has no HP interactions. Face Slap - Damage reduced. Flail - Damage reduced. Doesn't give extra Artifact when upgraded. Guardian Whirl - Damage reduced. Head Slam - Damage reduced. Hyper Beam - Damage reduced. Renamed to "Slime Beam" since... it's not quite so Hyper any more. Last Stand - Gives 1 Strength, and an extra 2 (3 upgraded) if below 50% HP. Poly Beam - Damage reduced. Sear - Damage and Burn reduced. Doesn't upgrade Burn amount when upgraded. Time Ripple - Block reduced. You Are Mine - Weak/Vuln dropped to 2, 3 upgraded
1 parent 9bce6b4 commit dc2ccb8

39 files changed

+147
-123
lines changed

SlimeboundMod.jar

-567 Bytes
Binary file not shown.

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
<groupId>slimebound</groupId>
55
<artifactId>slimebound</artifactId>
6-
<version>v0.10.2</version>
6+
<version>v0.11.0</version>
77
<packaging>jar</packaging>
88

99
<name>Slimebound Mod</name>

src/main/java/slimebound/SlimeboundMod.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -441,7 +441,7 @@ public void receiveEditKeywords() {
441441
//BaseMod.addKeyword(new String[]{"purge"}, "Removed from the game entirely when played (not Exhausted).");
442442
BaseMod.addKeyword(new String[]{"slow"}, "Receives 10% more damage per card played in a turn.");
443443
BaseMod.addKeyword(new String[]{"tackle"}, "High-damage Attacks that also deal a small amount of damage to you.");
444-
BaseMod.addKeyword("Spire Boss", new String[]{"spire boss","spire_boss"}, "Powerful cards with Ethereal and Exhaust, costing between 0 and 2 energy, inspired by the bosses of the Spire.");
444+
BaseMod.addKeyword("Spire Boss", new String[]{"spire boss","spire_boss"}, "Powerful 0-cost cards, inspired by the bosses of the Spire.");
445445

446446

447447
}

src/main/java/slimebound/actions/RandomStudyCardAction.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ public void update() {
3333
if (upgradeCard) {
3434
c.upgrade();
3535
}
36+
c.modifyCostForCombat(-9);
3637
AbstractDungeon.actionManager.addToBottom(new MakeTempCardInHandAction(c));
3738

3839
this.isDone = true;

src/main/java/slimebound/actions/SlimeAutoAttack.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ public void update() {
108108
}
109109
if (this.beamVFX){
110110
CardCrawlGame.sound.playA("ATTACK_MAGIC_BEAM_SHORT", -.2f);
111-
AbstractDungeon.actionManager.addToTop(new VFXAction(new SmallLaserEffect(slime.cX, slime.cY, mo.hb.cX, mo.hb.cY)));
111+
AbstractDungeon.actionManager.addToTop(new VFXAction(new SmallLaserEffect(slime.cX + 3 * Settings.scale, slime.cY + 22 * Settings.scale, mo.hb.cX, mo.hb.cY)));
112112
}
113113

114114
//logger.info("Targetng " + mo.name);

src/main/java/slimebound/cards/CaCaw.java

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import com.megacrit.cardcrawl.dungeons.AbstractDungeon;
1212
import com.megacrit.cardcrawl.localization.CardStrings;
1313
import com.megacrit.cardcrawl.monsters.AbstractMonster;
14+
import com.megacrit.cardcrawl.powers.StrengthPower;
1415
import com.megacrit.cardcrawl.vfx.MegaSpeechBubble;
1516
import slimebound.SlimeboundMod;
1617
import slimebound.powers.SlimeRitualPower;
@@ -28,7 +29,7 @@ public class CaCaw extends AbstractSlimeboundCard {
2829
private static final CardTarget TARGET = CardTarget.SELF;
2930
private static final CardStrings cardStrings;
3031

31-
private static final int COST = 1;
32+
private static final int COST = 0;
3233
private static final int BLOCK = 5;
3334
private static final int UPGRADE_BONUS = 3;
3435

@@ -39,18 +40,18 @@ public CaCaw() {
3940

4041

4142

42-
this.baseBlock = 15;
4343
this.magicNumber = this.baseMagicNumber = 1;
4444

4545

46-
this.isEthereal = true;
46+
4747
}
4848

4949
public void use(AbstractPlayer p, AbstractMonster m) {
5050
CardCrawlGame.sound.playA("VO_CULTIST_1A", -.3f);
5151

5252
AbstractDungeon.effectList.add(new MegaSpeechBubble(p.hb.cX, p.hb.cY, 1.0F, "Caw... Caw...", true));
5353

54+
if (upgraded) AbstractDungeon.actionManager.addToBottom(new ApplyPowerAction(p, p, new StrengthPower(p, 1), 1));
5455

5556
AbstractDungeon.actionManager.addToBottom(new ApplyPowerAction(p, p, new SlimeRitualPower(p, this.magicNumber), this.magicNumber));
5657
}
@@ -62,7 +63,10 @@ public AbstractCard makeCopy() {
6263
public void upgrade() {
6364
if (!this.upgraded) {
6465
upgradeName();
65-
upgradeMagicNumber(1);
66+
//upgradeMagicNumber(1);
67+
68+
this.rawDescription = UPGRADED_DESCRIPTION;
69+
this.initializeDescription();
6670
}
6771
}
6872

src/main/java/slimebound/cards/ChargeUp.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public class ChargeUp extends AbstractSlimeboundCard {
2727
private static final CardTarget TARGET = CardTarget.SELF;
2828
private static final CardStrings cardStrings;
2929

30-
private static final int COST = 1;
30+
private static final int COST = 0;
3131
private static final int BLOCK = 5;
3232
private static final int UPGRADE_BONUS = 3;
3333

@@ -36,10 +36,10 @@ public ChargeUp() {
3636

3737
tags.add(SlimeboundMod.STUDY_GUARDIAN);
3838
tags.add(SlimeboundMod.STUDY);
39-
this.baseBlock = 10;
39+
this.baseBlock = 8;
4040
this.magicNumber = this.baseMagicNumber = 2;
4141
this.exhaust = true;
42-
this.isEthereal = true;
42+
4343
}
4444

4545
public void use(AbstractPlayer p, AbstractMonster m) {
@@ -57,7 +57,7 @@ public void upgrade() {
5757
if (!this.upgraded) {
5858
upgradeName();
5959
upgradeBlock(3);
60-
upgradeMagicNumber(1);
60+
// upgradeMagicNumber(1);
6161
}
6262
}
6363

src/main/java/slimebound/cards/Collect.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ public class Collect extends AbstractSlimeboundCard {
2626
private static final CardTarget TARGET = CardTarget.SELF;
2727
private static final CardStrings cardStrings;
2828

29-
private static final int COST = 1;
29+
private static final int COST = 0;
3030
private static final int BLOCK = 5;
3131
private static final int UPGRADE_BONUS = 3;
3232

@@ -35,11 +35,11 @@ public Collect() {
3535

3636
tags.add(SlimeboundMod.STUDY_COLLECTOR);
3737
tags.add(SlimeboundMod.STUDY);
38-
this.baseBlock = 9;
38+
this.baseBlock = 5;
3939
this.magicNumber = this.baseMagicNumber = 1;
4040

4141
this.exhaust = true;
42-
this.isEthereal = true;
42+
4343
}
4444

4545
public void use(AbstractPlayer p, AbstractMonster m) {
@@ -55,8 +55,8 @@ public AbstractCard makeCopy() {
5555
public void upgrade() {
5656
if (!this.upgraded) {
5757
upgradeName();
58-
upgradeBlock(2);
59-
upgradeMagicNumber(1);
58+
upgradeBlock(3);
59+
//upgradeMagicNumber(1);
6060
}
6161
}
6262

src/main/java/slimebound/cards/ComboTackle.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ public float calculateModifiedCardDamage(AbstractPlayer player, AbstractMonster
6767

6868

6969
public void use(AbstractPlayer p, AbstractMonster m) {
70-
if (this.isEthereal = true)
70+
7171

7272
AbstractDungeon.actionManager.addToBottom(new DamageAction(m, new com.megacrit.cardcrawl.cards.DamageInfo(p, this.damage, this.damageTypeForTurn), AbstractGameAction.AttackEffect.BLUNT_HEAVY));
7373
AbstractDungeon.actionManager.addToBottom(new DamageAction(p, new com.megacrit.cardcrawl.cards.DamageInfo(p, this.selfDamage, this.damageTypeForTurn), AbstractGameAction.AttackEffect.SMASH));

src/main/java/slimebound/cards/DarkVoid.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ public class DarkVoid extends AbstractSlimeboundCard {
2929
private static final CardTarget TARGET = CardTarget.ALL_ENEMY;
3030

3131
private static final CardStrings cardStrings;
32-
private static final int COST = 1;
32+
private static final int COST = 0;
3333
private static final int POWER = 6;
3434
private static final int UPGRADE_BONUS = 3;
3535

@@ -40,10 +40,10 @@ public DarkVoid() {
4040

4141
tags.add(SlimeboundMod.STUDY_AWAKENEDONE);
4242
tags.add(SlimeboundMod.STUDY);
43-
this.baseDamage = 10;
43+
this.baseDamage = 7;
4444
this.isMultiDamage = true;
4545
this.exhaust = true;
46-
this.isEthereal = true;
46+
4747

4848

4949
}

0 commit comments

Comments
 (0)