buracc / SimpleCL

A lightweight client(less) bot/tool for Silkroad Online.
14 stars 4 forks source link

Icon #3

Open Adilx05 opened 3 years ago

Adilx05 commented 3 years ago

Iconları Pk2Extractor ile çıkarmamız gerekiyor oda phBotun yüklü olmasını gerektiriyor; var phDbPath = @"C:\Users\burak\AppData\Local\Programs\phBot Testing\Data\TRSRO.db3"; var dbPath = @"C:\Users\burak\AppData\Local\Programs\phBot Testing\Data\TRSRO_DB.db3";

Adilx05 commented 3 years ago

Eğer ki yüklemezsek zaten program direk şöyle bi hata veriyor : System.IO.FileNotFoundException: 'C:\Users\****\Downloads\SimpleCL-master\SimpleCL\bin\Debug/Icon/item\europe\man_item\light_01_ba.png'

buracc commented 3 years ago

Su an phBotun database (.db3) dosyalarini kullaniyor. /Resources/ klasöründeki TRSRO_DB.db3 databaseyi kullanirsan pk2extractor calisir.

Adilx05 commented 3 years ago

O zaman koddaki bu bölümü Resources klasörü oluşturup dbyi oraya atıp oraya yönlendireyim bakalım

Iconları Pk2Extractor ile çıkarmamız gerekiyor oda phBotun yüklü olmasını gerektiriyor; var phDbPath = @"C:\Users\burak\AppData\Local\Programs\phBot Testing\Data\TRSRO.db3"; var dbPath = @"C:\Users\burak\AppData\Local\Programs\phBot Testing\Data\TRSRO_DB.db3";

Adilx05 commented 3 years ago

Pk2Extractor de şöyle bi değişiklik yaptım ama hala bütün klasörler boş DevIL hatalı diyor veya bendeki kütüphanenin sürümü farklıdır bilemiyorum ama düzeltilmiş kodu atıyım bu arada Resources diye klasör oluşturup onun içine TRSRO_DB.db3'ü attım.

using System.IO;
using System.Text.RegularExpressions;

namespace Pk2Extractor
{
    internal class Program
    {
        public static void Main(string[] args)
        {
            var pk2Path = @"C:\Program Files (x86)\SilkroadTR\Media.pk2";
            var phDbPath = GetPath("Resources/TRSRO_DB.db3");
            var dbPath = GetPath("Resources/TRSRO_DB.db3");

            /*File.Copy(phDbPath, dbPath, true);
            File.SetAttributes(dbPath, File.GetAttributes(dbPath) & ~FileAttributes.ReadOnly);*/

            var pk2Extractor = new Api.Pk2Extractor(pk2Path, dbPath);
            pk2Extractor.StoreTextReferences();
            pk2Extractor.StoreModels();
            pk2Extractor.StoreTeleportBuildings();
            pk2Extractor.StoreTeleportLinks();
            pk2Extractor.StoreItems();
            pk2Extractor.ExtractItemIcons();
            pk2Extractor.ExtractSkillIcons();
            pk2Extractor.AddMinimap();
        }

        private static string GetPath(string relativePath)
        {
            var appPath = System.Reflection.Assembly.GetExecutingAssembly().Location;
            string pattern = @"^(.+\\)(.+exe)$";
            Regex regex = new Regex(pattern, RegexOptions.None);
            var match = regex.Match(appPath);
            return System.IO.Path.GetFullPath(match.Groups[1].Value + relativePath);
        }
    }
}
buracc commented 3 years ago

Resources klasörü projede zaten mevcut. (C:\Users\burak\RiderProjects\SimpleCL\SimpleCL\Resources)

Adilx05 commented 3 years ago

Resources klasörü projede zaten mevcut. (C:\Users\burak\RiderProjects\SimpleCL\SimpleCL\Resources)

Bunu değil Pk2Extractor için ayrı oluşturdum.

Adilx05 commented 3 years ago

Ama sorun değişmiyor klasörler hala boş bütün metodları try catch içine aldım DevIL.NET2 modülünde hata veya eksiklik görünüyor onun kendi kullandığın sürümünü de projeye eklemen lazım sanırım.

buracc commented 3 years ago

Simdilik bu dosyalari indirip Debug klasörüne cikart: https://mega.nz/file/T4kWyB6B#Hk1FX9d6VXKMl8S6K7yB08RwhdDi1EWljIbEvPP5R7Q

TRSRO_DB.db3'ü de ayni yere koy

Adilx05 commented 3 years ago

Sorun DevIL.NET2 kütüphanesindeymiş biraz araştırdım https://www.reddit.com/r/csharp/comments/8erxrs/help_with_upgrading_devilnet2/ , https://www.nuget.org/packages/DevIL/ Paket Nugettende çekilmiş yani dependiencieslerini de yükleyemiyoruz.

buracc commented 3 years ago

Ok, o zaman baska bir sekilde cekmem lazim iconlari

Adilx05 commented 3 years ago

Iconları kaynaklara ekleyip derlemede kopyalamayı eklemek sorunları çözebilir

Allgamerhs commented 2 years ago

konuyu hortlatmış gibi olacağım ancak JellyBitz in paylaştığı xbot u çalıştırmayı başardım eğer yapamayan yapmak isteyen dosyaları paylaşabilirim devil.net2 yi ve devill.dll i

Adilx05 commented 2 years ago

konuyu hortlatmış gibi olacağım ancak JellyBitz in paylaştığı xbot u çalıştırmayı başardım eğer yapamayan yapmak isteyen dosyaları paylaşabilirim devil.net2 yi ve devill.dll i

O paket yanlış bilmiyorsam zararlı dosya içeriyor diye kaldırılmıştı. Kullandığı metotları çıkartıp kendimiz ayrı bi kütüphane oluşturursak o zaman bu bot çalışır öbür türlü public yayınladığın zaman insanların antivirüsleri bağırır.

Allgamerhs commented 2 years ago

Bu kütüphanenin oluşturulmuşunu bulabilme imkanı varmıdır bilginiz varmı bu kütüphaneyle ilgili

buracc commented 2 years ago

bot devil.dll'i artik kullanmiyor, GDImageLibrary.dll kullaniliyor iconlari cikartmak icin

qfy199025 commented 8 months ago

image help me