Arkadaşlar çok önemli bir sorunum var.
Karakterimin canı 0 a inince simulate physics oluyor ve capsule hareket halinde olduğu için bende block input diyorum böylecek hiçbir şekilde hareket edemiyoruz. Fakat ben simulate olduktan sonra mouseyi yinede döndürebilmek istiyorum yani camerayı fakat sanırım block inputtan dolayı dönmüyor bu sorunu nasıl çözerim? Simulate olduktan sonra hiçbir hareket olmayacak fakat mouse dönecek.

EDİT: Disable input yerine destroy compononet ile capsulü siliyoruz.Böylece mouse hareket edebiliyor. Fakat bu hatalara neden olabiliyor başka pratik çözüm önerisi olan varsa yazabilir mi?
 
IsDead adında bir variable oluşturup karakter ölünce (simulate moda geçince) true yapın,

Ardından karakterin yürüme,koşma vb. gibi key inputlarının önüne if IsDead = false ekleyin,eğer IsDead false ise geçişe izin versin,eğer true ise yani karakter simulation moddaysa izin vermesin.
 
ClimbDown' Alıntı:
IsDead adında bir variable oluşturup karakter ölünce (simulate moda geçince) true yapın,

Ardından karakterin yürüme,koşma vb. gibi key inputlarının önüne if IsDead = false ekleyin,eğer IsDead false ise geçişe izin versin,eğer true ise yani karakter simulation moddaysa izin vermesin.

Bunu zaten yaptım ben çalışıyor zaten ölünce karakterin hareket etmesine izin vermiyor. Fakat demek istediğim capsule hareket halinde oluyor benim yapmak istediğim şey capsuleyi devreden çıkarıp mousenin dönmesine izin vermek.

 
Hocam yanlış yapmışsınız,

Öncelikle hatalarınızdan bahsedeyim.

Eğer karakterin canı 0  veya 0 dan düşükse set playerdead true şeklinde bir kodunuz var,fakat bu kod tick'e bağlı.

Bu kodun devamında set simulate physics ve destroy component var.

Bu kodda canınız 0 olduğunda oyun motoru her karede player dead değişkenini true yapıp fizikleri simulate edicek ve capsule componenti destroy etmeye çalışacak.

Bu çok saçma bir sistem,hiç tick kullanmadan bu işin içinden event anydamage kullanarak çıkabilirsiniz.

2. olarak ise benim size söylemek istediğim sadece key inputları bloklayın,siz kapsülü silip komple bloklamaya çalışıyorsunuz,bunun bir mantığı yok.

Sadece input walk gibi klavyeye bağlı şeylere eklemeniz lazım bunu.
 
ClimbDown' Alıntı:
Hocam yanlış yapmışsınız,

Öncelikle hatalarınızdan bahsedeyim.

Eğer karakterin canı 0  veya 0 dan düşükse set playerdead true şeklinde bir kodunuz var,fakat bu kod tick'e bağlı.

Bu kodun devamında set simulate physics ve destroy component var.

Bu kodda canınız 0 olduğunda oyun motoru her karede player dead değişkenini true yapıp fizikleri simulate edicek ve capsule componenti destroy etmeye çalışacak.

Bu çok saçma bir sistem,hiç tick kullanmadan bu işin içinden event anydamage kullanarak çıkabilirsiniz.

2. olarak ise benim size söylemek istediğim sadece key inputları bloklayın,siz kapsülü silip komple bloklamaya çalışıyorsunuz,bunun bir mantığı yok.

Sadece input walk gibi klavyeye bağlı şeylere eklemeniz lazım bunu.
Hata kısmında haklısın çünkü destroy edince debug sonrası 100 tane hata haldım dediğin gibi ilk başta sildi daha sonra tekrar silmeye çalıştı olmadığını görünce hata verdi. Fakat şöyleki bu sistemin oyuncunun ölüp ölmediğini sürekli kontrol etmesi gerekiyor bunun için timer yerine custom event mi kullanmalıyım ? Ve sadece nasıl klavyeyi disable input yapacağım :)
 
Hocam ölüp ölmediğini damage aldığında kontrol etmek daha mantıklı ve ucuz,ama yine de sürekli kontrol ettirebilirsiniz tabiki.

Tek yapmanız gereken karakterin canı 0 ise 1 kez öldürmek  :D

Do once komutunu kullanın,bu işlemi 1 kez yapar ve karakter tekrar tekrar ölmeye çalışmaz  :D

1 saniye hocam unreal açılsın göstereceğim
 
ClimbDown' Alıntı:
Hocam ölüp ölmediğini damage aldığında kontrol etmek daha mantıklı ve ucuz,ama yine de sürekli kontrol ettirebilirsiniz tabiki.

Tek yapmanız gereken karakterin canı 0 ise 1 kez öldürmek  :D

Do once komutunu kullanın,bu işlemi 1 kez yapar ve karakter tekrar tekrar ölmeye çalışmaz  :D

1 saniye hocam unreal açılsın göstereceğim
Şunu Gösterirsen çok iyi olur ya acayip gıcık etti beni . Ve yeniyim ben tam anlayamıyorum yeni yeni öğreniyorum ama bayağı bir şeyler yaptım.
:D
Damage işlemini şöyle yapıyorum ben şimdi dönen bir pervane yaptım mesela ucuna box collision koydum oyuncu her oraya değdiğinde -50 can götürüyor 0 a ulaştığınıda event tick kontrol ediyordu işte ona göre simulate yapıyordu.
 
leonscottkfm' Alıntı:
ClimbDown' Alıntı:
Hocam ölüp ölmediğini damage aldığında kontrol etmek daha mantıklı ve ucuz,ama yine de sürekli kontrol ettirebilirsiniz tabiki.

Tek yapmanız gereken karakterin canı 0 ise 1 kez öldürmek  :D

Do once komutunu kullanın,bu işlemi 1 kez yapar ve karakter tekrar tekrar ölmeye çalışmaz  :D

1 saniye hocam unreal açılsın göstereceğim
Şunu Gösterirsen çok iyi olur ya acayip gıcık etti beni . Ve yeniyim ben tam anlayamıyorum yeni yeni öğreniyorum ama bayağı bir şeyler yaptım.
:D
Damage işlemini şöyle yapıyorum ben şimdi dönen bir pervane yaptım mesela ucuna box collision koydum oyuncu her oraya değdiğinde -50 can götürüyor 0 a ulaştığınıda event tick kontrol ediyordu işte ona göre simulate yapıyordu.

Hocam her damage aldığında bir kod çalıştırıyorsunuz sonuçta,

Set karakter canı ( karakter canı -  50) gibi.

Bu kodun sonuna ekleyebilirsiniz ölme olayını.

Benim tavsiyem eğer can vs. gibi sistemler yapıcaksanız oyun motorunun sunmuş olduğu damage eventlerini kullanarak yapın,daha rahat olur.

Bu arada unreal engine açılmıyor,9mb bellek ve %25 cpu harcıyor gözüküyor ama görünürde yok,çözemeye çalışıyorum
 
ClimbDown' Alıntı:
leonscottkfm' Alıntı:
Şunu Gösterirsen çok iyi olur ya acayip gıcık etti beni . Ve yeniyim ben tam anlayamıyorum yeni yeni öğreniyorum ama bayağı bir şeyler yaptım.
:D
Damage işlemini şöyle yapıyorum ben şimdi dönen bir pervane yaptım mesela ucuna box collision koydum oyuncu her oraya değdiğinde -50 can götürüyor 0 a ulaştığınıda event tick kontrol ediyordu işte ona göre simulate yapıyordu.

Hocam her damage aldığında bir kod çalıştırıyorsunuz sonuçta,

Set karakter canı ( karakter canı -  50) gibi.

Bu kodun sonuna ekleyebilirsiniz ölme olayını.

Benim tavsiyem eğer can vs. gibi sistemler yapıcaksanız oyun motorunun sunmuş olduğu damage eventlerini kullanarak yapın,daha rahat olur.

Bu arada unreal engine açılmıyor,9mb bellek ve %25 cpu harcıyor gözüküyor ama görünürde yok,çözemeye çalışıyorum

Fakat ben yine variableyi int-int gibi şeylerle çıkarma işlemi yaparak hasar verdircem değilmi?
Çünkü durduk yere o dönen pervane hasar vermez bana çarpsa bile :D
Hasarı neyle ölçüyorki kuvvete göremi mesela 100 kiloluk bir duvar gerçek hayatta üstüme düşse ölürüm oda onun gibi bir şeymi yapıyor anydamage derken. Bu anydamageyi bir araştırayım ben tam anlamadım ondan.
 
leonscottkfm' Alıntı:
ClimbDown' Alıntı:
Hocam her damage aldığında bir kod çalıştırıyorsunuz sonuçta,

Set karakter canı ( karakter canı -  50) gibi.

Bu kodun sonuna ekleyebilirsiniz ölme olayını.

Benim tavsiyem eğer can vs. gibi sistemler yapıcaksanız oyun motorunun sunmuş olduğu damage eventlerini kullanarak yapın,daha rahat olur.

Bu arada unreal engine açılmıyor,9mb bellek ve %25 cpu harcıyor gözüküyor ama görünürde yok,çözemeye çalışıyorum

Fakat ben yine variableyi int-int gibi şeylerle çıkarma işlemi yaparak hasar verdircem değilmi?
Çünkü durduk yere o dönen pervane hasar vermez bana çarpsa bile :D
Hasarı neyle ölçüyorki kuvvete göremi mesela 100 kiloluk bir duvar gerçek hayatta üstüme düşse ölürüm oda onun gibi bir şeymi yapıyor anydamage derken. Bu anydamageyi bir araştırayım ben tam anlamadım ondan.

Hayır hocam int int şeklinde siz yapıyorsunuz  :D :D

Şu şekilde işliyor,

Siz bir aktöre hasar veriyorsunuz ve o aktördeki anydamage eventi çalışıyor,

Verdiğiniz damage miktarını vs. damage verirken belirliyorsunuz,herşey size bağlı
 
ClimbDown' Alıntı:
leonscottkfm' Alıntı:
Fakat ben yine variableyi int-int gibi şeylerle çıkarma işlemi yaparak hasar verdircem değilmi?
Çünkü durduk yere o dönen pervane hasar vermez bana çarpsa bile :D
Hasarı neyle ölçüyorki kuvvete göremi mesela 100 kiloluk bir duvar gerçek hayatta üstüme düşse ölürüm oda onun gibi bir şeymi yapıyor anydamage derken. Bu anydamageyi bir araştırayım ben tam anlamadım ondan.

Hayır hocam int int şeklinde siz yapıyorsunuz  :D :D

Şu şekilde işliyor,

Siz bir aktöre hasar veriyorsunuz ve o aktördeki anydamage eventi çalışıyor,

Verdiğiniz damage miktarını vs. damage verirken belirliyorsunuz,herşey size bağlı

Ben baya şey yaptım ya bu sistemi artık birdahakine yaparız ben her yerde variable eksilterek yaptım bu işlemi.
10 tane ölme işlemi yaptım . Bomba ile ateş ile duvar ezmesi ile pervane ile mayın ile duman ile.... hepsinde değişkenden değer eksiltiyor. oyuncunun içersiindede bu değişken kontrol ediliyordu 0 sa öldü deniliyordu. Artık senin dediğin gibi yaparız birdahakine bana şuan sadece lazım olan şey klavyeyi nasıl deaktif ederim inputunu :D
 
leonscottkfm' Alıntı:
ClimbDown' Alıntı:
Hayır hocam int int şeklinde siz yapıyorsunuz  :D :D

Şu şekilde işliyor,

Siz bir aktöre hasar veriyorsunuz ve o aktördeki anydamage eventi çalışıyor,

Verdiğiniz damage miktarını vs. damage verirken belirliyorsunuz,herşey size bağlı

Ben baya şey yaptım ya bu sistemi artık birdahakine yaparız ben her yerde variable eksilterek yaptım bu işlemi.
10 tane ölme işlemi yaptım . Bomba ile ateş ile duvar ezmesi ile pervane ile mayın ile duman ile.... hepsinde değişkenden değer eksiltiyor. oyuncunun içersiindede bu değişken kontrol ediliyordu 0 sa öldü deniliyordu. Artık senin dediğin gibi yaparız birdahakine bana şuan sadece lazım olan şey klavyeyi nasıl deaktif ederim inputunu :D
Hocam mouse inputları varya input x vs. gibi,

Onlar hariç her inputa şöyle bir şema eklemeniz lazım;


gq1zG0.png
Mouse inputu hariç her input için bunu yapabilirsiniz.