Open Niri-1214 opened 3 weeks ago
classDiagram
class Tower {
-level : TowerLevel
-name : string
-attributes : Attribute[]
-parent1 : Tower
-parent2 : Tower
-tokkas : Tokka[]
-gameBalanceTier : int
}
class Tokka {
-name : string
-description : string
}
class 弾の大きさTokka
class 連射速度Tokka
class リチャージTokka
Tokka <|-- 弾の大きさTokka
Tokka <|-- 連射速度Tokka
Tokka <|-- リチャージTokka
class Attribute {
<<enumeration>>
FIRE
ICE
WIND
STONE
WATER
PURIFICATION
RUST
PLANT
IRON
DUST
}
class TowerLevel {
<<enumeration>>
LEVEL1
LEVEL2
LEVEL3
LEVEL4
LEVEL5
}
文哉君のアイデアでは、合成レベル2から属性が増えることで、より戦略の幅が広がるように設計されていますね!
WATER:水 PURIFICATION:浄化 RUST:錆 PLANT:植物 IRON:鉄 DUST:砂
レベル2で登場する属性「WATER」「PURIFICATION」「RUST」「PLANT」「IRON」「DUST」をどのようにゲームに組み込むか、いくつか具体例を考えてみましょう。
1. 新属性タワーの登場
2. 属性による相性
3. Tokkaとの組み合わせ
これらの要素を組み合わせることで、戦略性豊かなタワーディフェンスゲームが実現できますね!
例えば、「WATER」属性を持つ敵が出現するステージでは、「FIRE」属性のタワーだけでは苦戦を強いられます。 そこで、プレイヤーは「ICE」属性のタワーを配置したり、「WATER」属性に強いTokkaを組み合わせたりすることで、攻略の糸口を見つける必要がある、といった具合です。
攻撃\防御 | FIRE | ICE | WIND | STONE | WATER | PURIFICATION | RUST | PLANT | IRON | DUST |
---|---|---|---|---|---|---|---|---|---|---|
FIRE | 1.0 | 1.5 | 1.0 | 0.8 | 0.5 | 1.0 | 1.2 | 1.5 | 0.8 | 1.2 |
ICE | 0.5 | 1.0 | 1.2 | 1.0 | 1.5 | 1.0 | 0.8 | 1.0 | 1.2 | 0.8 |
WIND | 1.0 | 0.8 | 1.0 | 1.2 | 1.2 | 1.5 | 1.5 | 0.8 | 0.5 | 1.0 |
STONE | 1.2 | 1.0 | 0.8 | 1.0 | 0.8 | 0.5 | 1.0 | 1.2 | 1.5 | 1.5 |
WATER | 1.5 | 0.5 | 0.8 | 1.2 | 1.0 | 1.2 | 1.5 | 1.0 | 0.8 | 0.5 |
PURIFICATION | 1.0 | 1.0 | 0.5 | 1.5 | 0.8 | 1.0 | 1.5 | 1.2 | 1.0 | 0.8 |
RUST | 0.8 | 1.2 | 0.5 | 1.0 | 0.5 | 0.5 | 1.0 | 0.8 | 1.5 | 1.2 |
PLANT | 0.5 | 1.0 | 1.2 | 0.8 | 1.0 | 0.8 | 1.2 | 1.0 | 1.0 | 1.5 |
IRON | 1.2 | 0.8 | 1.5 | 0.5 | 1.2 | 1.0 | 0.5 | 1.0 | 1.0 | 0.8 |
DUST | 0.8 | 1.2 | 1.0 | 0.5 | 1.5 | 1.2 | 0.8 | 0.5 | 1.2 | 1.0 |
class Tower {
level: TowerLevel;
name: string;
attributes: Attribute[];
parent1: Tower | null;
parent2: Tower | null;
tokkas: Tokka[];
gameBalanceTier: number;
// タワーの基本性能
damage: number;
range: number;
attackSpeed: number;
specialEffect: SpecialEffect | null;
// メソッド
attack(enemy: Enemy): void;
applyTokka(tokka: Tokka): void;
upgrade(): void;
}
【火】 + 【火】 = 【強化火】タワー
【氷】 + 【風】 = 【氷霧】タワー
【石】 + 【風】 = 【砂嵐】タワー
【強化火】 + 【砂嵐】 = 【溶岩】タワー
【氷霧】 + 【水】 = 【絶対零度】タワー
【石】 + 【錆】 = 【腐食】タワー
combination-structure.md 合成表の途中
合成ツリーはいろいろ悩んだ結果 LV1、LV2、LV3の三段階のみとすることにする。 代わりに合成のコストをとんでもなく重くする(とんでもなくというよりか、回数制限があってWave5~とかにする感じ) (なんかの素材とかでもいいかも←これは案なので下手に入れない事)(AIに仕様書書かせるとなんか全部入れたがるから) タワーは、スキルによって強化される感じ(スキルの”効果”のイメージはNovaDrift風の感じ)(Roundsのカードも参考になるかも)(大事なのはスキルのシステムじゃなくて効果ってとこ)(この二つどっちも割と似てるからね)
タワーごとの特殊効果については、 スキルによって効果が付与されるようにしたい つまりスキルがなかったらただの弱い塔 あとスキルの選択肢三つしかないし、なんかしょぼいグラフィックだから もっと増やしたほうがいいかも(NovaDriftとかめっちゃ多いっしょ) (グラフィックは後回しで) あとスキルは今あるタワーに関連性のあるものだけを表示するようにしたい (全タワー分は多すぎるからね)
ここに合成機能をどうするかを決めておく。
今考えてるいろんなアイデアは、
1.合成の段階を四~五段階ぐらいに増やしたい。 さすがに2段階だけでは足りないよね。 2.合成四段階目とかぐらいでは、100種類ぐらいがほしい。 多すぎもよくないけど、少ないとしょぼいし、面白みに欠けるから 3.タワーの合成段階に対して強い奴(オーバースペック)は、次の合成では弱体化させる。 一つ強すぎるやつが存在すると、バランスが崩壊しちゃうから
4.タワーごとに内部Tierをつけておきたい。 ゲーム内とは関係なく別で保管しておくやつで、バランス調整として考えるやつ。 5.合成段階が上がるごとに何かに特化させたい。 万能があるとみんなそれ取るからなのと、属性ごとに指向性が生まれるから。 6.特殊タワーの制作 始まりが四種類だけだから、どうしても偏ってしまう。考えてみたけど、スキルと合わせることが一番いいかも。 7.スキルによる指向性の付加 上の5番とか6番の続きだけど「NovaDrift」とかも、スキルによって、どんどんビルドが固まっていくよね。どんなスキルにするかといえば、例えば、火属性タワーは燃焼効果を持つとか、氷属性は減速効果を持つとか。 8.第二世代(合成一回目)の修正 これは今のやつらがあんまりよくなかったし、今後の合成ツリーの決定に支障をきたしそうだったから。改めて作るものは、仮で「水(water)・浄化(purification)・錆(rust)・植物(plant)・鉄(iron)・砂(dust)」
9.第二世代(合成一回目)の属性化 第一世代の「火・氷・風・石」はもちろん属性として主軸にするけど、第二世代も主軸となる属性にしてしまったほうがいいかも。そのためにも上の8番のやつを適応する必要がある。