[ÖNEMLİ PAYLASIM] Son Günlerde Yayılmaya Başlayan Seri R Çözüm

'Prosedür & Kod Paylaşımları' forumunda badaso tarafından 23 Tem 2016 tarihinde açılan konu

  1. badaso

    badaso Yeni Cüce

    Katılım:
    23 Tem 2016
    Mesaj:
    35
    Alınan Beğeniler:
    0
    Ödül Puanları:
    0
    Biliyorsunuz Eski Dönemlerde Seri R Yani Berserker Skilleri ile Yapılan Şekli Bizi Baya Sıkıntılı Durumlara Düşürmüştü ve Ugraştırdı. Ancak Güzel Bir Calısma İle O Sorunu Çözdük . Son Günlerde Kulagıma Orginal SOACS ve Bazı Anti-Cheat'lerde Çalışan Seri R Satılıyor Gibi Laflar Geldi ve Bende Merak Edip Araştırdım.Sonuç Olarak O Hile'nin Kaynagını Buldum ve Gerçektende Orginal Lisanslı Sistemlerde Çalıştıgını Farkettim.Hemen Bir Çözüm Yolu Geliştirdim.Bu Sorunu Büyük Ölçüde Bitirecek Birkaç Çözüm ve Sizlerle Paylaşacagım . Konu Yorumlara Açıktır Daha İyisini Fixleyecek Varsa Buyursun Bu Konu Altından Paylassın ;

    1. Olarak ;

    Kod:
    UPDATE ITEM SET SellingGroup = 0 Where Num = 389012000
    UPDATE ITEM SET SellingGroup = 0 Where Num = 389061000
    UPDATE ITEM SET SellingGroup = 0 Where Num = 910002000
    bunu yazdıgımızda o hileye yol acan itemin npcden cekilmemesini saglarız .

    2. Yol Olarak ;

    Kod:
    Delete from item
    where num = '389012000'
    
    Delete from item
    where num = '389061000'
    
    
    Delete from item
    where num = '910002000'
    Bunu uyguladık ve o itemi komple sildik.

    3. Aşama ;
    Kod:
    Delete from item
    where num = '135626000'
    
    
    Delete from item
    where num = '135627000'
    
    
    Delete from item
    where num = '135625000'
    
    
    Delete from item
    where num = '135628000'
    
    
    Delete from item
    where num = '135622000'
    
    
    Delete from item
    where num = '135629000'
    
    
    Delete from item
    where num = '135623000'
    
    
    Delete from item
    where num = '135630000'
    

    Bunları Uyguladık Ama Ne İşe Yaradı ?

    En Üstteki Kodu Uygulayarak Seri R Aktifleştirmesi İçin Çekilen İtemin Çekilmemesini Sagladık.
    Bunu Yapmak İstemeyenler Benim İçim Rahat Etmez Diyenler İçin İlk 3 Kodu Yine Aynı İtemin Komple Database'den
    Silmelerini Sagladık.

    Kod:
    Delete from item
    where num = '910002000'

    Bu Koddan Sonraki Kodlar İse Database'den Kupa Diye Tabir Edilen İtemleri Silmek İçindir.Uygulamanızda Yarar Görüyorum. Bir Teşekkür Benim İçin Yeterde Artar Bile :)

    Extra Olarak ;

    Bu Sistemden Faydalananları Yani Oyunda Seri R Yoluyla Exp İtem Vs Kasanları ve Hala Characterinde Bulunanları Nasıl Yakalarız . Onuda Kücük Bir Alıntıyla Göstermek İstiyorum. En Üstteki Kodları Uygulamadan Bu Taramayı Yapın Yoksa Sonuç Alamazsınız ;

    Kod:
    set ANSI_NULLS ON
    set QUOTED_IDENTIFIER ON
    GO
    -- =============================================
    -- Yapımcı : Maxis
    -- =============================================
    Create procedure [dbo].[kimdevar]
    @num int,
    @mode int
    as
    if @mode in (1,2)
    begin
    if @mode = 1 begin if exists (select * from sysobjects where id = object_id(N'found') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table found CREATE TABLE found([StrUserID] [varchar](21) NULL) end
    if @mode = 2 begin if exists (select * from sysobjects where id = object_id(N'found') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table found CREATE TABLE found([strAccountID] [varchar](21) NULL) end
    declare @item varbinary(4), @i int
    set @item = substring(cast(@num as varbinary(4)),4,1)+substring(cast(@num as varbinary(4)),3,1)+substring(cast(@num as varbinary(4)),2,1)+substring(cast(@num as varbinary(4)),1,1)
    set @i = 1
    if @mode = 1 -- Charlarda Aramak İçin
    begin
    while @i < 401
    begin
    insert found select struserid from userdata where substring(stritem, @i,4) = @item
    set @i = @i + 8
    end end else
    if @mode = 2 -- Bankalarda Aramak İçin
    begin
    while @i < 1601
    begin
    insert found select straccountid from warehouse where substring(warehousedata, @i,4) = @item
    set @i = @i + 8
    end end
    select * from found
    drop table found
    end
    Bu Prosedürü Query Analyzer'e Uyguladıktan Sonra ;

    Kod:
    exec kimdevar 389012000,1
    Bu Kodda Seri R İteminden Kimin İnventorysinde Var Onu Gösterir. Bankalarda Aratmak İçin Sonundaki 1 Yerine 2 Yapın :)[/B]
     

Bu Sayfayı Paylaş