테이블 안티 메모리 지금까지 작업된 것 완료

This commit is contained in:
Ino 2024-12-19 09:17:59 +09:00
parent 04a8c930d9
commit 5620243f16
5 changed files with 414 additions and 67 deletions

View File

@ -1,3 +1,4 @@
using CodeStage.AntiCheat.ObscuredTypes;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
@ -5,23 +6,127 @@ using System.Collections.Generic;
[Serializable]
public class PetListTableData : TableDataBase
{
public int n_PetID; // 펫의 고유 ID
public int n_PetGrade; // 펫 등급
public eAttackType e_AttackType; // 물리냐 마법이냐를 구분
public int n_DefaultATK; // 기본 공격력 산출 옵션 ID
public int n_DefaultDEF; // 기본 방어력 산출 옵션 ID
public int n_DefaultM_DEF; // 기본 마법 방어력 산출 옵션 ID
public int n_DefaultHP; // 기본 HP 산출 옵션 ID
public float f_PetStatRate; // 등급 별 펫의 능력치 비중
public float f_AttackRange; // 펫 공격 사거리
public string s_PetAttackPrefab; // 펫 공격 프리팹
public float f_PetMoveSPD; // 펫 기본 이동 속도
public float f_PetAttackSPD; // 펫 기본 공격 속도
public int n_PetActiveSkill; // 펫 액티브 스킬 ID
public int n_PetPassiveSkill; // 펫 패시브 스킬 ID
public string s_PetPrefab; // 펫 3D 프리팹
public float f_Scale; // 펫 기본 크기 보정값
public float f_UIScale = 0.5f; // 펫 UI 크기 보정값
// 펫의 고유 ID
ObscuredInt _PetID;
public int n_PetID
{
get { return _PetID; }
set { _PetID = value; _PetID.RandomizeCryptoKey(); }
}
// 펫 등급
ObscuredInt _PetGrade;
public int n_PetGrade
{
get { return _PetGrade; }
set { _PetGrade = value; _PetGrade.RandomizeCryptoKey(); }
}
// 물리냐 마법이냐를 구분
public eAttackType e_AttackType { get; set; }
// 기본 공격력 산출 옵션 ID
ObscuredInt _DefaultATK;
public int n_DefaultATK
{
get { return _DefaultATK; }
set { _DefaultATK = value; _DefaultATK.RandomizeCryptoKey(); }
}
// 기본 방어력 산출 옵션 ID
ObscuredInt _DefaultDEF;
public int n_DefaultDEF
{
get { return _DefaultDEF; }
set { _DefaultDEF = value; _DefaultDEF.RandomizeCryptoKey(); }
}
// 기본 마법 방어력 산출 옵션 ID
ObscuredInt _DefaultM_DEF;
public int n_DefaultM_DEF
{
get { return _DefaultM_DEF; }
set { _DefaultM_DEF = value; _DefaultM_DEF.RandomizeCryptoKey(); }
}
// 기본 HP 산출 옵션 ID
ObscuredInt _DefaultHP;
public int n_DefaultHP
{
get { return _DefaultHP; }
set { _DefaultHP = value; _DefaultHP.RandomizeCryptoKey(); }
}
// 등급 별 펫의 능력치 비중
ObscuredFloat _PetStatRate;
public float f_PetStatRate
{
get { return _PetStatRate; }
set { _PetStatRate = value; _PetStatRate.RandomizeCryptoKey(); }
}
// 펫 공격 사거리
ObscuredFloat _AttackRange;
public float f_AttackRange
{
get { return _AttackRange; }
set { _AttackRange = value; _AttackRange.RandomizeCryptoKey(); }
}
// 펫 공격 프리팹
public string s_PetAttackPrefab { get; set; }
// 펫 기본 이동 속도
ObscuredFloat _PetMoveSPD;
public float f_PetMoveSPD
{
get { return _PetMoveSPD; }
set { _PetMoveSPD = value; _PetMoveSPD.RandomizeCryptoKey(); }
}
// 펫 기본 공격 속도
ObscuredFloat _PetAttackSPD;
public float f_PetAttackSPD
{
get { return _PetAttackSPD; }
set { _PetAttackSPD = value; _PetAttackSPD.RandomizeCryptoKey(); }
}
// 펫 액티브 스킬 ID
ObscuredInt _PetActiveSkill;
public int n_PetActiveSkill
{
get { return _PetActiveSkill; }
set { _PetActiveSkill = value; _PetActiveSkill.RandomizeCryptoKey(); }
}
// 펫 패시브 스킬 ID
ObscuredInt _PetPassiveSkill;
public int n_PetPassiveSkill
{
get { return _PetPassiveSkill; }
set { _PetPassiveSkill = value; _PetPassiveSkill.RandomizeCryptoKey(); }
}
// 펫 3D 프리팹
public string s_PetPrefab { get; set; }
// 펫 기본 크기 보정값
ObscuredFloat _Scale;
public float f_Scale
{
get { return _Scale; }
set { _Scale = value; _Scale.RandomizeCryptoKey(); }
}
// 펫 UI 크기 보정값
ObscuredFloat _UIScale;
public float f_UIScale
{
get { return _UIScale; }
set { _UIScale = value; _UIScale.RandomizeCryptoKey(); }
}
public override string Get_Name() { return table_itemlist.Ins.Get_Data(n_PetID).Get_Name(); }
public string Get_Desc() { return table_itemlist.Ins.Get_Data(n_PetID).Get_Desc(); }

View File

@ -1,3 +1,4 @@
using CodeStage.AntiCheat.ObscuredTypes;
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
@ -5,10 +6,38 @@ using System.Collections.Generic;
[Serializable]
public class PetUpgradeTableData : TableDataBase
{
public int n_UpgradeLv; // 강화 레벨
public int n_LowPetCost; // 낮은 등급 펫의 강화 당 조각 요구량
public int n_MidPetCost; // 보통 등급 펫의 강화 당 조각 요구량
public int n_HighPetCost; // 상위 등급 펫의 강화 당 조각 요구량
// 강화 레벨
ObscuredInt _UpgradeLv;
public int n_UpgradeLv
{
get { return _UpgradeLv; }
set { _UpgradeLv = value; _UpgradeLv.RandomizeCryptoKey(); }
}
// 낮은 등급 펫의 강화 당 조각 요구량
ObscuredInt _LowPetCost;
public int n_LowPetCost
{
get { return _LowPetCost; }
set { _LowPetCost = value; _LowPetCost.RandomizeCryptoKey(); }
}
// 보통 등급 펫의 강화 당 조각 요구량
ObscuredInt _MidPetCost;
public int n_MidPetCost
{
get { return _MidPetCost; }
set { _MidPetCost = value; _MidPetCost.RandomizeCryptoKey(); }
}
// 상위 등급 펫의 강화 당 조각 요구량
ObscuredInt _HighPetCost;
public int n_HighPetCost
{
get { return _HighPetCost; }
set { _HighPetCost = value; _HighPetCost.RandomizeCryptoKey(); }
}
public int Get_PetCost(int grade)
{

View File

@ -1,15 +1,57 @@
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using CodeStage.AntiCheat.ObscuredTypes;
using Newtonsoft.Json;
public class SkillAwakenConfigTableData : TableDataBase
{
public int n_SkillID; // 각성 스킬의 인덱스
public int n_AwakenStep; // 각성 단계
public float f_ExtraValue1; // 적용할 특성 값1
public float f_ExtraValue2; // 적용할 특성 값2
public float f_ExtraValue3; // 적용할 특성 값3
public int n_AwakenDesc; // 각성 단계 별 효과 설명
// 각성 스킬의 인덱스
ObscuredInt _SkillID;
public int n_SkillID
{
get { return _SkillID; }
set { _SkillID = value; _SkillID.RandomizeCryptoKey(); }
}
// 각성 단계
ObscuredInt _AwakenStep;
public int n_AwakenStep
{
get { return _AwakenStep; }
set { _AwakenStep = value; _AwakenStep.RandomizeCryptoKey(); }
}
// 적용할 특성 값1
ObscuredFloat _ExtraValue1;
public float f_ExtraValue1
{
get { return _ExtraValue1; }
set { _ExtraValue1 = value; _ExtraValue1.RandomizeCryptoKey(); }
}
// 적용할 특성 값2
ObscuredFloat _ExtraValue2;
public float f_ExtraValue2
{
get { return _ExtraValue2; }
set { _ExtraValue2 = value; _ExtraValue2.RandomizeCryptoKey(); }
}
// 적용할 특성 값3
ObscuredFloat _ExtraValue3;
public float f_ExtraValue3
{
get { return _ExtraValue3; }
set { _ExtraValue3 = value; _ExtraValue3.RandomizeCryptoKey(); }
}
// 각성 단계 별 효과 설명
ObscuredInt _AwakenDesc;
public int n_AwakenDesc
{
get { return _AwakenDesc; }
set { _AwakenDesc = value; _AwakenDesc.RandomizeCryptoKey(); }
}
public string Get_Desc() { return table_localtext.Ins.Get_Text(n_AwakenDesc); }
}

View File

@ -1,6 +1,6 @@
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using CodeStage.AntiCheat.ObscuredTypes;
using Newtonsoft.Json;
using UnityEngine;
public enum eSkillType { Active, Passive, JobPassive }
@ -10,33 +10,166 @@ public enum eSkillExtraType { None, Frost, Cure, Freezing, Blood, Poison, Burn,
public class SkillListTableData : TableDataBase
{
public int n_SkillID; // 스킬 아이디
public eSkillType e_SkillType; // 액티브 or 패시브
public int n_SkillClassID; // 직업 별 사용 가능 스킬을 분류하기 위한 기준 값
public eEffect e_Skill; // 스킬 타입 & 프리팹
public eSkillEnhance e_SkillEnhance; // 패시브 스킬 타입
public int n_MP; // 소모 마나량
public float f_CoolTime; // 스킬 재사용 대기시간
public float f_SkillRange; // 스킬 발동 사거리
public string s_Animation; // 스킬 모션
public string s_NextAnimation; // 스킬 다음 모션
public float f_CastingTime; // 캐스팅 시간
public string s_CastingEffect; // 캐스팅 이펙트
public eSkillTarget e_SkillTarget; // 효과 대상
public float f_DefaultValue; // 기본 스킬 데미지
public float f_LevelPerValue; // 레벨당 증가 스킬 데미지
public float f_BalanceConstant; // 밸런스 상수 K값
// 스킬 아이디
ObscuredInt _SkillID;
public int n_SkillID
{
get { return _SkillID; }
set { _SkillID = value; _SkillID.RandomizeCryptoKey(); }
}
public eSkillExtraType e_SkillExtraType; // 추가 효과
public float f_ExtraValue1; // 패시브 스킬 적용값1
public float f_ExtraValue2; // 패시브 스킬 적용값2
public float f_ExtraValue3; // 패시브 스킬 적용값3
public float f_ExtraValue4; // 패시브 스킬 적용값4
// 액티브 or 패시브
public eSkillType e_SkillType { get; set; }
// 직업 별 사용 가능 스킬을 분류하기 위한 기준 값
ObscuredInt _SkillClassID;
public int n_SkillClassID
{
get { return _SkillClassID; }
set { _SkillClassID = value; _SkillClassID.RandomizeCryptoKey(); }
}
// 스킬 타입 & 프리팹
public eEffect e_Skill { get; set; }
// 패시브 스킬 타입
public eSkillEnhance e_SkillEnhance { get; set; }
// 소모 마나량
ObscuredInt _MP;
public int n_MP
{
get { return _MP; }
set { _MP = value; _MP.RandomizeCryptoKey(); }
}
// 스킬 재사용 대기시간
ObscuredFloat _CoolTime;
public float f_CoolTime
{
get { return _CoolTime; }
set { _CoolTime = value; _CoolTime.RandomizeCryptoKey(); }
}
// 스킬 발동 사거리
ObscuredFloat _SkillRange;
public float f_SkillRange
{
get { return _SkillRange; }
set { _SkillRange = value; _SkillRange.RandomizeCryptoKey(); }
}
// 스킬 모션
public string s_Animation { get; set; }
// 스킬 다음 모션
public string s_NextAnimation { get; set; }
// 캐스팅 시간
ObscuredFloat _CastingTime;
public float f_CastingTime
{
get { return _CastingTime; }
set { _CastingTime = value; _CastingTime.RandomizeCryptoKey(); }
}
// 캐스팅 이펙트
public string s_CastingEffect { get; set; }
// 효과 대상
public eSkillTarget e_SkillTarget { get; set; }
// 기본 스킬 데미지
ObscuredFloat _DefaultValue;
public float f_DefaultValue
{
get { return _DefaultValue; }
set { _DefaultValue = value; _DefaultValue.RandomizeCryptoKey(); }
}
// 레벨당 증가 스킬 데미지
ObscuredFloat _LevelPerValue;
public float f_LevelPerValue
{
get { return _LevelPerValue; }
set { _LevelPerValue = value; _LevelPerValue.RandomizeCryptoKey(); }
}
// 밸런스 상수 K값
ObscuredFloat _BalanceConstant;
public float f_BalanceConstant
{
get { return _BalanceConstant; }
set { _BalanceConstant = value; _BalanceConstant.RandomizeCryptoKey(); }
}
// 추가 효과
public eSkillExtraType e_SkillExtraType { get; set; }
// 패시브 스킬 적용값1
ObscuredFloat _ExtraValue1;
public float f_ExtraValue1
{
get { return _ExtraValue1; }
set { _ExtraValue1 = value; _ExtraValue1.RandomizeCryptoKey(); }
}
// 패시브 스킬 적용값2
ObscuredFloat _ExtraValue2;
public float f_ExtraValue2
{
get { return _ExtraValue2; }
set { _ExtraValue2 = value; _ExtraValue2.RandomizeCryptoKey(); }
}
// 패시브 스킬 적용값3
ObscuredFloat _ExtraValue3;
public float f_ExtraValue3
{
get { return _ExtraValue3; }
set { _ExtraValue3 = value; _ExtraValue3.RandomizeCryptoKey(); }
}
// 패시브 스킬 적용값4
ObscuredFloat _ExtraValue4;
public float f_ExtraValue4
{
get { return _ExtraValue4; }
set { _ExtraValue4 = value; _ExtraValue4.RandomizeCryptoKey(); }
}
// 강화에 사용 될 재화 ID
ObscuredInt _ConsumeGoodsID;
public int n_ConsumeGoodsID
{
get { return _ConsumeGoodsID; }
set { _ConsumeGoodsID = value; _ConsumeGoodsID.RandomizeCryptoKey(); }
}
// 1레벨의 기본 재화 소모량
ObscuredInt _DefaultValuePrice;
public int n_DefaultValuePrice
{
get { return _DefaultValuePrice; }
set { _DefaultValuePrice = value; _DefaultValuePrice.RandomizeCryptoKey(); }
}
// 레벨당 재화 소모 증가량
ObscuredFloat _LevelPerValuePrice;
public float f_LevelPerValuePrice
{
get { return _LevelPerValuePrice; }
set { _LevelPerValuePrice = value; _LevelPerValuePrice.RandomizeCryptoKey(); }
}
// 재화 소모 밸런스 상수 K값
ObscuredFloat _BalanceConstantPrice;
public float f_BalanceConstantPrice
{
get { return _BalanceConstantPrice; }
set { _BalanceConstantPrice = value; _BalanceConstantPrice.RandomizeCryptoKey(); }
}
public int n_ConsumeGoodsID; // 강화에 사용 될 재화 ID
public int n_DefaultValuePrice; // 1레벨의 기본 재화 소모량
public float f_LevelPerValuePrice; // 레벨당 재화 소모 증가량
public float f_BalanceConstantPrice; // 재화 소모 밸런스 상수 K값
public Sprite Get_Icon() { return UIAtlasMgr.Ins.Get_Sprite(n_SkillID); }
public override string Get_Name() { return table_itemlist.Ins.Get_Data(n_SkillID).Get_Name(); }

View File

@ -1,21 +1,59 @@
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using CodeStage.AntiCheat.ObscuredTypes;
using Newtonsoft.Json;
public enum eEffectLocation { Top, Mid, Bottom }
public enum eSkillExtraTiming { Start, Hit }
public class SkillTypeConfigTableData : TableDataBase
{
public eSkillExtraType e_SkillExtraType; // 추가 효과
public eSkillExtraTiming e_SkillExtraTiming; // 효과 발생 타이밍
public string s_SkillNoticeIconPath; // 발생 될 아이콘 경로
public eEffectLocation e_EffectLocation; // 이펙트 발생 위치
public int n_EffectPosition_X; // 이펙트 보정 좌표 X
public int n_EffectPosition_Y; // 이펙트 보정 좌표 Y
public int n_EffectScale; // 이펙트 크기 보정
public string e_SkillEffect; // 재생할 이펙트
public int n_EffectInfoDesc; // 해당 효과에 대한 설명 문구
// 추가 효과
public eSkillExtraType e_SkillExtraType { get; set; }
// 효과 발생 타이밍
public eSkillExtraTiming e_SkillExtraTiming { get; set; }
// 발생 될 아이콘 경로
public string s_SkillNoticeIconPath { get; set; }
// 이펙트 발생 위치
public eEffectLocation e_EffectLocation { get; set; }
// 이펙트 보정 좌표 X
ObscuredInt _EffectPosition_X;
public int n_EffectPosition_X
{
get { return _EffectPosition_X; }
set { _EffectPosition_X = value; _EffectPosition_X.RandomizeCryptoKey(); }
}
// 이펙트 보정 좌표 Y
ObscuredInt _EffectPosition_Y;
public int n_EffectPosition_Y
{
get { return _EffectPosition_Y; }
set { _EffectPosition_Y = value; _EffectPosition_Y.RandomizeCryptoKey(); }
}
// 이펙트 크기 보정
ObscuredInt _EffectScale;
public int n_EffectScale
{
get { return _EffectScale; }
set { _EffectScale = value; _EffectScale.RandomizeCryptoKey(); }
}
// 재생할 이펙트
public string e_SkillEffect { get; set; }
// 해당 효과에 대한 설명 문구
ObscuredInt _EffectInfoDesc;
public int n_EffectInfoDesc
{
get { return _EffectInfoDesc; }
set { _EffectInfoDesc = value; _EffectInfoDesc.RandomizeCryptoKey(); }
}
public string Get_Desc() { return table_localtext.Ins.Get_Text(n_EffectInfoDesc); }
}