ObjCommon tablosunda npclerim ekli nazifnpc de görünüyor fakat _RefHive ,_RefTactics,_RefNest tablolarında görünmüyor tekrar elle herşeyi eklemek istemiyorum araştırma yaptıgımda bu kodlara ulaştım fakat öncesinde sormak istedim eksik yeri varmı yada daha basit bir yöntemi varmıdır yardımcı olabilcek var ise sevinirim..
USE SRO_VT_SHARD
GO
-- ### AYARLAR (BURAYI DÜZENLEYİN) ###
DECLARE @CodeName varchar(128) = 'NPC_CODENAME_BURAYA' -- Örnek: 'NPC_CH_POTION'
DECLARE @RegionID int = 0 -- Örnek: 2614 (Jangan) - Oyunda /location yazarak bulabilirsiniz
DECLARE @PosX real = 0 -- X Koordinatı
DECLARE @PosY real = 0 -- Y Koordinatı
DECLARE @PosZ real = 0 -- Z Koordinatı (Yükseklik)
-- ##################################
DECLARE @ObjID int
DECLARE @TacticID int
DECLARE @HiveID int
-- 1. ADIM: ObjCommon ID'yi Bul
SELECT @ObjID = ID FROM _RefObjCommon WHERE CodeName128 = @CodeName
IF @ObjID IS NULL
BEGIN
PRINT 'HATA: Belirtilen CodeName _RefObjCommon tablosunda bulunamadı!'
RETURN
END
-- 2. ADIM: _RefTactics Ekle
-- Standart bir NPC davranışı için (Aggro yok, script ID genelde 0 veya temel)
INSERT INTO _RefTactics (dwObjID, nAggroPercentage, dwTalkFlag, dwTalkDelay, dwDalay, dwWarpID, dwCallId, dwCallDelay, dwGraphID, IsWard, Widen)
VALUES (@ObjID, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
SET @TacticID = SCOPE_IDENTITY() -- Eklenen son Tactic ID'yi al
-- 3. ADIM: _RefHive Ekle
-- Tactic ID'yi kullanarak Hive oluştur
INSERT INTO _RefHive (dwTacticsID, btKeepMonsterCountType, dwOverwriteMaxTotalCount, fMonsterCountPerPC, dwSpawnSpeedIncreaseRate, dwMaxMonsterCount, btJenerateType, btChampion, dwHatchTime)
VALUES (@TacticID, 0, 1, 0, 0, 1, 0, 0, 0)
SET @HiveID = SCOPE_IDENTITY() -- Eklenen son Hive ID'yi al
-- 4. ADIM: _RefNest Ekle
-- Hive ID'yi kullanarak Konum (Nest) oluştur
INSERT INTO _RefNest (dwHiveID, dwTacticsID, nRegionDBID, fLocalPosX, fLocalPosY, fLocalPosZ, wInitialDir, nRadius, nGenerateRadius, nChampionGenRadius, dwDelayTime, dwMonsterCount, dwBtFlag, bLocalOperation, nLocalTax, nLocalTaxRate)
VALUES (@HiveID, @TacticID, @RegionID, @PosX, @PosY, @PosZ, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0)
USE SRO_VT_SHARD
GO
-- ### AYARLAR (BURAYI DÜZENLEYİN) ###
DECLARE @CodeName varchar(128) = 'NPC_CODENAME_BURAYA' -- Örnek: 'NPC_CH_POTION'
DECLARE @RegionID int = 0 -- Örnek: 2614 (Jangan) - Oyunda /location yazarak bulabilirsiniz
DECLARE @PosX real = 0 -- X Koordinatı
DECLARE @PosY real = 0 -- Y Koordinatı
DECLARE @PosZ real = 0 -- Z Koordinatı (Yükseklik)
-- ##################################
DECLARE @ObjID int
DECLARE @TacticID int
DECLARE @HiveID int
-- 1. ADIM: ObjCommon ID'yi Bul
SELECT @ObjID = ID FROM _RefObjCommon WHERE CodeName128 = @CodeName
IF @ObjID IS NULL
BEGIN
PRINT 'HATA: Belirtilen CodeName _RefObjCommon tablosunda bulunamadı!'
RETURN
END
-- 2. ADIM: _RefTactics Ekle
-- Standart bir NPC davranışı için (Aggro yok, script ID genelde 0 veya temel)
INSERT INTO _RefTactics (dwObjID, nAggroPercentage, dwTalkFlag, dwTalkDelay, dwDalay, dwWarpID, dwCallId, dwCallDelay, dwGraphID, IsWard, Widen)
VALUES (@ObjID, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
SET @TacticID = SCOPE_IDENTITY() -- Eklenen son Tactic ID'yi al
-- 3. ADIM: _RefHive Ekle
-- Tactic ID'yi kullanarak Hive oluştur
INSERT INTO _RefHive (dwTacticsID, btKeepMonsterCountType, dwOverwriteMaxTotalCount, fMonsterCountPerPC, dwSpawnSpeedIncreaseRate, dwMaxMonsterCount, btJenerateType, btChampion, dwHatchTime)
VALUES (@TacticID, 0, 1, 0, 0, 1, 0, 0, 0)
SET @HiveID = SCOPE_IDENTITY() -- Eklenen son Hive ID'yi al
-- 4. ADIM: _RefNest Ekle
-- Hive ID'yi kullanarak Konum (Nest) oluştur
INSERT INTO _RefNest (dwHiveID, dwTacticsID, nRegionDBID, fLocalPosX, fLocalPosY, fLocalPosZ, wInitialDir, nRadius, nGenerateRadius, nChampionGenRadius, dwDelayTime, dwMonsterCount, dwBtFlag, bLocalOperation, nLocalTax, nLocalTaxRate)
VALUES (@HiveID, @TacticID, @RegionID, @PosX, @PosY, @PosZ, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0)
