웨이브, 몬스터 데이터 스키마 변경

- waveMaster, monsterMaster 테이블 관련 파일 제거
- monster 테이블 추가
- 데이터 작업 가이드 txt 파일 추가
This commit is contained in:
BoyongHwang
2026-01-30 18:17:15 +09:00
parent 8c7c82e984
commit 1152093521
34 changed files with 98 additions and 265 deletions

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 25ab0c46cf6af334daf6817ed418e178
guid: feb45c3991f6f154a85c05158e784171
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@@ -9,10 +9,10 @@ MonoBehaviour:
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: eb34e2098ca7d654a81d495ad6e6f21b, type: 3}
m_Name: Data_Row1
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterMasterData
monsterId: 101
m_Script: {fileID: 11500000, guid: 71f75742bf2af604ba55221e30379f4a, type: 3}
m_Name: Monster101
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterData
id: 101
memo: "Grunt(\uAE30\uBCF8)"
moveSpeed: 2.6
maxHp: 30
@@ -20,3 +20,5 @@ MonoBehaviour:
atkDamage: 3
atkIntervalSec: 1.2
prefabPath: Assets/Prefabs/EnemyTest
cost: 1
weight: 1

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 4566aa20a775cd04bac99329bb560b07
guid: cec2336a0be4b6c4eb954ac3d08aa8d9
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@@ -9,10 +9,10 @@ MonoBehaviour:
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: eb34e2098ca7d654a81d495ad6e6f21b, type: 3}
m_Name: Data_Row2
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterMasterData
monsterId: 102
m_Script: {fileID: 11500000, guid: 71f75742bf2af604ba55221e30379f4a, type: 3}
m_Name: Monster102
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterData
id: 102
memo: "Fast(\uBE60\uB984/\uC57D\uD568)"
moveSpeed: 3.4
maxHp: 18
@@ -20,3 +20,5 @@ MonoBehaviour:
atkDamage: 2
atkIntervalSec: 1
prefabPath: Assets/Prefabs/MonsterTest
cost: 2
weight: 0.5

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 0dc5ffa309a736b4a95faeb0ba9a9870
guid: fde07a19ade09f044aca9151f407d073
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@@ -9,10 +9,10 @@ MonoBehaviour:
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: eb34e2098ca7d654a81d495ad6e6f21b, type: 3}
m_Name: Data_Row3
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterMasterData
monsterId: 103
m_Script: {fileID: 11500000, guid: 71f75742bf2af604ba55221e30379f4a, type: 3}
m_Name: Monster103
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterData
id: 103
memo: "Tank(\uB290\uB9BC/\uB2E8\uB2E8)"
moveSpeed: 2
maxHp: 70
@@ -20,3 +20,5 @@ MonoBehaviour:
atkDamage: 4
atkIntervalSec: 1.5
prefabPath: Assets/Prefabs/Core
cost: 5
weight: 0.2

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: a7b8bd34df6e81441afcbac36c0a1340
guid: 5687251677f89394fbdc083ff34e06d0
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@@ -9,10 +9,10 @@ MonoBehaviour:
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: eb34e2098ca7d654a81d495ad6e6f21b, type: 3}
m_Name: Data_Row4
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterMasterData
monsterId: 104
m_Script: {fileID: 11500000, guid: 71f75742bf2af604ba55221e30379f4a, type: 3}
m_Name: Monster104
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterData
id: 104
memo: "Ranged(\uC6D0\uAC70\uB9AC/\uC57D\uD568)"
moveSpeed: 2.4
maxHp: 22
@@ -20,3 +20,5 @@ MonoBehaviour:
atkDamage: 2
atkIntervalSec: 1.4
prefabPath: Assets/Prefabs/Resource
cost: 3
weight: 0.333

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: e003d9bc04014834b8d4e6bead723568
guid: 3663ac7b7b070cb4bad5f4d05e73899d
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@@ -9,10 +9,10 @@ MonoBehaviour:
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: eb34e2098ca7d654a81d495ad6e6f21b, type: 3}
m_Name: Data_Row5
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterMasterData
monsterId: 105
m_Script: {fileID: 11500000, guid: 71f75742bf2af604ba55221e30379f4a, type: 3}
m_Name: Monster105
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.MonsterData
id: 105
memo: "Elite(\uC18C\uC218 \uC815\uC608)"
moveSpeed: 2.8
maxHp: 120
@@ -20,3 +20,5 @@ MonoBehaviour:
atkDamage: 7
atkIntervalSec: 1.3
prefabPath: Assets/Prefabs/ResourcePickup
cost: 10
weight: 0.1

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 329fdb6e92ee4064bb41ca8e0fa4c86c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 5b634a7c580ad824381bcbcaaa1d7047
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 47db706e7f90d914f8b05b88b626b406
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,20 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b0f6af2548b6a6049b54c1d50e7a6c53, type: 3}
m_Name: Data_Row1
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.WaveMasterData
waveId: 1
waveKey: WAVE_001
memo:
durationSec: 90
monsterIdList: 101
monsterCountList: 10

View File

@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 916cc5c2dde7f79408a2ec3a8830f1f6
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,20 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b0f6af2548b6a6049b54c1d50e7a6c53, type: 3}
m_Name: Data_Row2
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.WaveMasterData
waveId: 2
waveKey: WAVE_002
memo:
durationSec: 90
monsterIdList: 102
monsterCountList: 20

View File

@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 0d5315e12bb9dc440ae593ab703891d6
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,20 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b0f6af2548b6a6049b54c1d50e7a6c53, type: 3}
m_Name: Data_Row3
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.WaveMasterData
waveId: 3
waveKey: WAVE_003
memo:
durationSec: 90
monsterIdList: 103
monsterCountList: 5

View File

@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 97dc48f8cf531c847942d3eef6dc615c
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,20 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b0f6af2548b6a6049b54c1d50e7a6c53, type: 3}
m_Name: Data_Row4
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.WaveMasterData
waveId: 4
waveKey: WAVE_004
memo:
durationSec: 90
monsterIdList: 104
monsterCountList: 3

View File

@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: f555b6db60f636d40b24efeb999fd200
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,20 +0,0 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: b0f6af2548b6a6049b54c1d50e7a6c53, type: 3}
m_Name: Data_Row5
m_EditorClassIdentifier: Assembly-CSharp::Northbound.Data.WaveMasterData
waveId: 5
waveKey: WAVE_005
memo:
durationSec: 90
monsterIdList: 105
monsterCountList: 2

View File

@@ -1,8 +0,0 @@
fileFormatVersion: 2
guid: 820652adf90840e45a832fd8985615b9
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -2,15 +2,16 @@
// 생성 스크립트: DataTools/generate_csharp_classes.py
using UnityEngine;
using System.Collections.Generic; // 리스트 지원을 위해 추가
namespace Northbound.Data
{
[CreateAssetMenu(fileName = "MonsterMasterData", menuName = "DigAndDefend/MonsterMaster Data")]
public class MonsterMasterData : ScriptableObject
[CreateAssetMenu(fileName = "MonsterData", menuName = "DigAndDefend/Monster Data")]
public class MonsterData : ScriptableObject
{
[Header("기본 정보")]
/// <summary>몬스터 고유 ID</summary>
public int monsterId;
public int id;
/// <summary>메모</summary>
public string memo;
/// <summary>이동속도</summary>
@@ -25,6 +26,10 @@ namespace Northbound.Data
public float atkIntervalSec;
/// <summary>프리팹/리소스 경로</summary>
public string prefabPath;
/// <summary>몬스터 난이도 점수</summary>
public int cost;
/// <summary>등장 가중치</summary>
public float weight;
}
}

View File

@@ -0,0 +1,2 @@
fileFormatVersion: 2
guid: 71f75742bf2af604ba55221e30379f4a

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: eb34e2098ca7d654a81d495ad6e6f21b

View File

@@ -1,26 +0,0 @@
// 이 파일은 자동 생성되었습니다. 직접 수정하지 마세요!
// 생성 스크립트: DataTools/generate_csharp_classes.py
using UnityEngine;
namespace Northbound.Data
{
[CreateAssetMenu(fileName = "WaveMasterData", menuName = "DigAndDefend/WaveMaster Data")]
public class WaveMasterData : ScriptableObject
{
[Header("기본 정보")]
/// <summary>웨이브 고유 ID</summary>
public int waveId;
/// <summary>사람이 읽는 고정 키 (예: WAVE_001)</summary>
public string waveKey;
/// <summary>기획/개발 메모(비출력)</summary>
public string memo;
/// <summary>웨이브 주기(초). 기본 90</summary>
public int durationSec;
/// <summary>해당 웨이브에서 소환할 몬스터 ID 목록</summary>
public string monsterIdList;
/// <summary>해당 웨이브에서 소환할 몬스터 ID 별 소환 개수</summary>
public string monsterCountList;
}
}

View File

@@ -1,2 +0,0 @@
fileFormatVersion: 2
guid: b0f6af2548b6a6049b54c1d50e7a6c53