Konuyu Oyla:
  • Derecelendirme: 5/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Çıkarttığım oyun için yeni fikirlerinizi bekliyorum
#1
29 Ekim 2018 de çıkardığım textbased oyunumu daha da geliştirmek istiyorum. Yaz geldiği için üstüne düşücem o yüzden bu kadar geç devam ediyorum.

https://play.google.com/store/apps/detai...stefilatun

Uygulamam bu içinde herhangi bir reklam veya ücret kazandıracak bir şey yoktur. Yinede reklam olarak görülürse kaldırabilirim.

Başlıca boyutunun yüksek olduğunu düşünüyorum ve veritabanına almayı planlıyorum fakat bu kadar yazıyı düzenli olarak farklı dillerde nasıl ekleyeceğimi tam bulamadım.


Devamında ise button şekillendirme, geçiş, ışıklandırma vb. aklınıza gelebilecek her türlü fikire açığım. 

Dönem ödevi olarak başladığım bu oyunu google playe eklemek istedim ve sonuç böyle bir şey oldu.
Ne kadar acemi olsam da fikirlerinizi bekliyorum ve uygulamayı geliştirmek istiyorum.. Smile

(BanderSnatch'ten önce çıkarttım)
Cevapla
#2
Öncelikle böyle düzenli ve titiz bir çalışma yaptığınız için sizi kutlarım. Bu uygulamayı daha ileriye taşımak için DelphiCan'a bu başlığı açtığınız için teşekkürler. Burada yer alan uzmanlar severek bildiklerini sizinle paylaşacaklardır. İhtiyaçlarınızı biraz daha belirgin şekilde iletebilirseniz şayet daha isabetli yanıtlar verilecektir.
Cevapla
#3
Öncelikle telefonum Android işletim sisteminde olmadığı için ne yazık ki oyununuzu test etme fırsatı bulamadım. Ama görsellerden anladığım üzere ve sizin de sonuna not geçtiğiniz üzere Bandersnatch tarzında bir şey. 

Belirtmek isterim ki bu oyun tarzına "text-adventure" deniliyor ve 1980'lerde çok yaygın bir türdü. Big Bang Theory izlediyseniz Sheldon birkaç bölümde Zork isminde bir oyunun bağımlısı olmuştu. Bu arada hikayenizde sizi kutlarım.


Uygulamanın boyutunu düşürmek


FMX uygulamanızın native platforma dönüştürülmesi aşamasında kullanılan kütüphanelerden ötürü ne yazık ki boyut düşürmek çok söz konusu bir olay değil. Yine de yükselen hafıza alanları ve güçlü donanımlı cihazlardan ötürü açıkcası 5~25 mb bandında herhangi bir problem olacağını düşünmüyorum. StackOverFlow'a bu hususta uzun zaman önce şöyle bir şey sormuştum. Verilen cevabı incelerseniz daha fazla bilgi sahibi olabilirsiniz.

Senaryoları veritabanına almak

Oyununuzun tüm hikayesi ve aşamalarını flow-chart olarak oluşturduysanız, aşama aşama hangi sona ulaşılacağını ve kaç adet son olduğunu belirlediyseniz işiniz kolay. İlişkisel bir veritabanı oluşturarak Senaryo1, Senaryo2 şeklinde götürmek adına bir Senaryo tablosu oluşturup içine tüm alternatif sonları belirtirsiniz. Sonra aşamaları tutacağınız bir tablo ile Senaryo1 Aşama1, Senaryo2 Aşama1 şeklinde text olarak senaryolarla aşamaları bağlarsınız birbirine.

Android üzerinde doğrudan SQLite veritabanı koşar. Tek kullanıcı üzerinden gideceği için veritabanı scriptlerini kodunuza eklerseniz programı kurduğu zaman tüm hikayeyi insert atabilirsiniz kullanıcının cihazına.

Opsiyonel: Bunu SQLServer gibi güçlü bir veritabanında sistematik tasarlayıp, araya Java, C# veya PHP ile bir servis yazarak (API veya Web Service) uygulama girişinde hikayeyi online indirebilirsiniz. Böylece kullanıcı uygulamayı kaldır ve tekrar yükle yapmadan en güncel hikayeyi veya yeni hikayeleri edinebilir.

Çoklu dil desteği eklemek

Bunun için TLang komponentini inceleyin. Sabit değerlerinizi bu şekilde çoklu dile uyarlayabilirsiniz. Veya klasik yöntemle arayüzdeki her metinsel değeri kendinize bir keyword ile bağlayın. Örn: Oyunu başlat tuşu. (m_START) isminde bir const yapın. Her dil için bir unit oluşturun. lang-tr.pas, lang-en.pas gibi. Uygulama menüsünde dil seçeneği veya ülke bayraklarına dokunarak ana formunuzda tutacağınız CurrentLanguage değişkeninizdeki değer ne ise ona göre ilgili pas dosyasındaki verileri okuyabilirsiniz.

Eğer hikayenin çoklu dil olarak uygulanmasını istiyorsanız bu sefer veritabanınızda LanguageId alanı ekleyip her dil için çoklu metin oluşturmalısınız.

Görsel iyileştirmeler

Bunun için kendinize belirleyeceğiniz bir standart, bir tip referansı bulun. Hoşunuza giden bir buton tipini inceleyin öncelikle. Sonra bu butonu FMX üzerinde nasıl yapabileceğinizi masaya yatırın. Genellikle TRectangle ile yapılamayacak bir buton görmedim. Stroke özelliği ile çerçeve verebilirsiniz. X-Radius Y-Radius ile köşelerin keskinliğini ayarlayabilirsiniz. Fill ile arkaplanı ayarlayabilirsiniz. Fill.Kind ile tekil renk mi geçişli renk mi olacağını belirleyebilirsiniz. Tool Palette içinde Effect olarak aratırsanız smile kafalarıyla belirtilen çeşitli efektleri görebilirsiniz. Bunları doğrudan kendi komponentlerinize sürükle-bırak yaparak aktif edebilirsiniz. (Örn: ShadowEffect, GlowEffect ile seçilen şıkkın etrafını belirtmek gibi)

Her soru ekranını bir TTabSheet içine ekleyin. PageControl içerisinde bunları oluşturduktan sonra Tab geçişlerini kod üzerinden yaparken GoToActivePage komutu ile Direction rotasını belirleyip kaydırmalı geçişler yapabilirsiniz.

Diğer açıdan uygulama içinde ikon kütüphanesi kullanmanız sizin avantajınıza olacaktır. Icons8 açık ara en iyisidir.
Cevapla
#4
(05-05-2019, Saat: 12:45)Abdullah ILGAZ Adlı Kullanıcıdan Alıntı: Öncelikle telefonum Android işletim sisteminde olmadığı için ne yazık ki oyununuzu test etme fırsatı bulamadım. Ama görsellerden anladığım üzere ve sizin de sonuna not geçtiğiniz üzere Bandersnatch tarzında bir şey. 

Belirtmek isterim ki bu oyun tarzına "text-adventure" deniliyor ve 1980'lerde çok yaygın bir türdü. Big Bang Theory izlediyseniz Sheldon birkaç bölümde Zork isminde bir oyunun bağımlısı olmuştu. Bu arada hikayenizde sizi kutlarım.


Uygulamanın boyutunu düşürmek


FMX uygulamanızın native platforma dönüştürülmesi aşamasında kullanılan kütüphanelerden ötürü ne yazık ki boyut düşürmek çok söz konusu bir olay değil. Yine de yükselen hafıza alanları ve güçlü donanımlı cihazlardan ötürü açıkcası 5~25 mb bandında herhangi bir problem olacağını düşünmüyorum. StackOverFlow'a bu hususta uzun zaman önce şöyle bir şey sormuştum. Verilen cevabı incelerseniz daha fazla bilgi sahibi olabilirsiniz.

Senaryoları veritabanına almak

Oyununuzun tüm hikayesi ve aşamalarını flow-chart olarak oluşturduysanız, aşama aşama hangi sona ulaşılacağını ve kaç adet son olduğunu belirlediyseniz işiniz kolay. İlişkisel bir veritabanı oluşturarak Senaryo1, Senaryo2 şeklinde götürmek adına bir Senaryo tablosu oluşturup içine tüm alternatif sonları belirtirsiniz. Sonra aşamaları tutacağınız bir tablo ile Senaryo1 Aşama1, Senaryo2 Aşama1 şeklinde text olarak senaryolarla aşamaları bağlarsınız birbirine.

Android üzerinde doğrudan SQLite veritabanı koşar. Tek kullanıcı üzerinden gideceği için veritabanı scriptlerini kodunuza eklerseniz programı kurduğu zaman tüm hikayeyi insert atabilirsiniz kullanıcının cihazına.

Opsiyonel: Bunu SQLServer gibi güçlü bir veritabanında sistematik tasarlayıp, araya Java, C# veya PHP ile bir servis yazarak (API veya Web Service) uygulama girişinde hikayeyi online indirebilirsiniz. Böylece kullanıcı uygulamayı kaldır ve tekrar yükle yapmadan en güncel hikayeyi veya yeni hikayeleri edinebilir.

Çoklu dil desteği eklemek

Bunun için TLang komponentini inceleyin. Sabit değerlerinizi bu şekilde çoklu dile uyarlayabilirsiniz. Veya klasik yöntemle arayüzdeki her metinsel değeri kendinize bir keyword ile bağlayın. Örn: Oyunu başlat tuşu. (m_START) isminde bir const yapın. Her dil için bir unit oluşturun. lang-tr.pas, lang-en.pas gibi. Uygulama menüsünde dil seçeneği veya ülke bayraklarına dokunarak ana formunuzda tutacağınız CurrentLanguage değişkeninizdeki değer ne ise ona göre ilgili pas dosyasındaki verileri okuyabilirsiniz.

Eğer hikayenin çoklu dil olarak uygulanmasını istiyorsanız bu sefer veritabanınızda LanguageId alanı ekleyip her dil için çoklu metin oluşturmalısınız.

Görsel iyileştirmeler

Bunun için kendinize belirleyeceğiniz bir standart, bir tip referansı bulun. Hoşunuza giden bir buton tipini inceleyin öncelikle. Sonra bu butonu FMX üzerinde nasıl yapabileceğinizi masaya yatırın. Genellikle TRectangle ile yapılamayacak bir buton görmedim. Stroke özelliği ile çerçeve verebilirsiniz. X-Radius Y-Radius ile köşelerin keskinliğini ayarlayabilirsiniz. Fill ile arkaplanı ayarlayabilirsiniz. Fill.Kind ile tekil renk mi geçişli renk mi olacağını belirleyebilirsiniz. Tool Palette içinde Effect olarak aratırsanız smile kafalarıyla belirtilen çeşitli efektleri görebilirsiniz. Bunları doğrudan kendi komponentlerinize sürükle-bırak yaparak aktif edebilirsiniz. (Örn: ShadowEffect, GlowEffect ile seçilen şıkkın etrafını belirtmek gibi)

Her soru ekranını bir TTabSheet içine ekleyin. PageControl içerisinde bunları oluşturduktan sonra Tab geçişlerini kod üzerinden yaparken GoToActivePage komutu ile Direction rotasını belirleyip kaydırmalı geçişler yapabilirsiniz.

Diğer açıdan uygulama içinde ikon kütüphanesi kullanmanız sizin avantajınıza olacaktır. Icons8 açık ara en iyisidir.

Teşekkür ederim dediklerinizi dikkate alıcam sağolun Smile
Cevapla
#5
İyi Akşamlar,

Böyle uygulama türü oyunları her zaman sevmişimdir.
Tabi boş dururmuyum hemen sizin oyununuzu da oynadım Smile ve şunu söylemem gerekir ki hikayesi muazzam.
Daha önce benimde geliştirmişliğim vardı 3 hafta taslağını kağıtlara çizip karalayıp 1 hafta da uygulamaya çevirmişliğim ta ki proje dosyasının olduğu HDD yanana kadar.  Smile
Yani bu konuda ne kadar emek sarf ettiğinizi çok iyi anlıyorum  Blush

Ve bende sizlere bir kaç şey önermek isterim ;

- İçerik mükemmel olsa da kullanıcı arayüzü pek umut vaadetmiyor ve bu konuda Photoshop'ta örnek hazırladım ilham almanız adına ;
       

- Resimlerdeki gibi Arka planları olduğu gibi değilde 10-15 değerlerinde bulanıklık efekti verirseniz daha şık ve güzel ayrıca da yazıların daha okunabilir olacağı kanaatindeyim.
Belkide ben blurlu olmasını çok sevdiğim için öyle düşünüyorumdur bilemem  Shy


- Farklı renklerdeki ikonlar yerine aynı renkte ikonlar ile sade ve flat bir tasarım olması kullanıcı bazında daha çok beğeni görecektir nitekim bunu test ettim ve gerçekten de beğenen sayısı artmıştı kendi uygulamalarımda  Smile  ayrıca daha uzun ömürlü olacaktır.

- İkinci fotoğraftaki üstte bulunan 6 kutucuk ise hikaye modları olarak ekledim; birden fazla hikaye modu ekleyeceğinizi varsayarak.

- Tabcontrol kullanarak geçiş efektleri ile de süslerseniz uygulama/Oyun tadından yenmez diyebiliriz  Shy

Aklıma başka bir şey gelmiyor şuan ve diyecek tek bir şey kaldı ;
Kolay Gelsin...
Cevapla
#6
(05-05-2019, Saat: 19:47)Mr.Developer Adlı Kullanıcıdan Alıntı: İyi Akşamlar,

Böyle uygulama türü oyunları her zaman sevmişimdir.
Tabi boş dururmuyum hemen sizin oyununuzu da oynadım Smile ve şunu söylemem gerekir ki hikayesi muazzam.
Daha önce benimde geliştirmişliğim vardı 3 hafta taslağını kağıtlara çizip karalayıp 1 hafta da uygulamaya çevirmişliğim ta ki proje dosyasının olduğu HDD yanana kadar.  Smile
Yani bu konuda ne kadar emek sarf ettiğinizi çok iyi anlıyorum  Blush

Ve bende sizlere bir kaç şey önermek isterim ;

- İçerik mükemmel olsa da kullanıcı arayüzü pek umut vaadetmiyor ve bu konuda Photoshop'ta örnek hazırladım ilham almanız adına ;


- Resimlerdeki gibi Arka planları olduğu gibi değilde 10-15 değerlerinde bulanıklık efekti verirseniz daha şık ve güzel ayrıca da yazıların daha okunabilir olacağı kanaatindeyim.
Belkide ben blurlu olmasını çok sevdiğim için öyle düşünüyorumdur bilemem  Shy


- Farklı renklerdeki ikonlar yerine aynı renkte ikonlar ile sade ve flat bir tasarım olması kullanıcı bazında daha çok beğeni görecektir nitekim bunu test ettim ve gerçekten de beğenen sayısı artmıştı kendi uygulamalarımda  Smile  ayrıca daha uzun ömürlü olacaktır.

- İkinci fotoğraftaki üstte bulunan 6 kutucuk ise hikaye modları olarak ekledim; birden fazla hikaye modu ekleyeceğinizi varsayarak.

- Tabcontrol kullanarak geçiş efektleri ile de süslerseniz uygulama/Oyun tadından yenmez diyebiliriz  Shy

Aklıma başka bir şey gelmiyor şuan ve diyecek tek bir şey kaldı ;
Kolay Gelsin...

Tasarım olarak çok yetersiz olduğunun farkındayım. Bu yaptığınız şekilde düzenleyebilirsem aslında güzel olabilir. Gayet güzel olmuş elinize sağlık. Farklı hikayeler eklemek istiyorum fakat aynı arka planları kullanmak istemiyorum. Öyle olunca da boyut inanılmaz artıyor. Önümüzde ki ay 0dan düzenlemeye çalışıcam attığınız örnekleri dikkate alıcam teşekkürler.
Cevapla
#7
Bu oyun işi çok harika ve zor gözüküyor. Oyunla ilgili detayları paylaşabilir misiniz veya kaynak kodu paylaşma imkanınız olur mu
Cevapla
#8
(06-05-2019, Saat: 02:16)OBK Adlı Kullanıcıdan Alıntı: Bu oyun işi çok harika ve zor gözüküyor. Oyunla ilgili detayları paylaşabilir misiniz veya kaynak kodu paylaşma imkanınız olur mu

Kaynak kodluk bir durum yok diye düşünüyorum çünkü çok kod çeşitliliği yok sabit basit kodlar. Oyunun hikayesini yazıp düzenleyip mantığını oturtmak gerçekten zor. Sağlam olmayan bir kafaya sahip olmanız gerektiğini düşünüyorum. Çünkü hayatım normal seyrederken yazamıyorum. Başkasında başka şekildedir ama benim açımdan psikolojim hafif bozulmazsa yazamıyorum.
Cevapla
#9
Tebrikler güzel fikir, güzel bir hikaye.
WWW
Cevapla
#10
(06-05-2019, Saat: 01:04)QepnS Adlı Kullanıcıdan Alıntı:
(05-05-2019, Saat: 19:47)Mr.Developer Adlı Kullanıcıdan Alıntı: İyi Akşamlar,

Böyle uygulama türü oyunları her zaman sevmişimdir.
Tabi boş dururmuyum hemen sizin oyununuzu da oynadım Smile ve şunu söylemem gerekir ki hikayesi muazzam.
Daha önce benimde geliştirmişliğim vardı 3 hafta taslağını kağıtlara çizip karalayıp 1 hafta da uygulamaya çevirmişliğim ta ki proje dosyasının olduğu HDD yanana kadar.  Smile
Yani bu konuda ne kadar emek sarf ettiğinizi çok iyi anlıyorum  Blush

Ve bende sizlere bir kaç şey önermek isterim ;

- İçerik mükemmel olsa da kullanıcı arayüzü pek umut vaadetmiyor ve bu konuda Photoshop'ta örnek hazırladım ilham almanız adına ;


- Resimlerdeki gibi Arka planları olduğu gibi değilde 10-15 değerlerinde bulanıklık efekti verirseniz daha şık ve güzel ayrıca da yazıların daha okunabilir olacağı kanaatindeyim.
Belkide ben blurlu olmasını çok sevdiğim için öyle düşünüyorumdur bilemem  Shy


- Farklı renklerdeki ikonlar yerine aynı renkte ikonlar ile sade ve flat bir tasarım olması kullanıcı bazında daha çok beğeni görecektir nitekim bunu test ettim ve gerçekten de beğenen sayısı artmıştı kendi uygulamalarımda  Smile  ayrıca daha uzun ömürlü olacaktır.

- İkinci fotoğraftaki üstte bulunan 6 kutucuk ise hikaye modları olarak ekledim; birden fazla hikaye modu ekleyeceğinizi varsayarak.

- Tabcontrol kullanarak geçiş efektleri ile de süslerseniz uygulama/Oyun tadından yenmez diyebiliriz  Shy

Aklıma başka bir şey gelmiyor şuan ve diyecek tek bir şey kaldı ;
Kolay Gelsin...

Tasarım olarak çok yetersiz olduğunun farkındayım. Bu yaptığınız şekilde düzenleyebilirsem aslında güzel olabilir. Gayet güzel olmuş elinize sağlık. Farklı hikayeler eklemek istiyorum fakat aynı arka planları kullanmak istemiyorum. Öyle olunca da boyut inanılmaz artıyor. Önümüzde ki ay 0dan düzenlemeye çalışıcam attığınız örnekleri dikkate alıcam teşekkürler.

Teşekkür ederim beğenmeniz mutlu etti.
aynı arka planlar kullanmak istemiyorsanız bilemem ama boyut konusunda ;
- Resimler bulanık olduğu için boyutu düşük olacaktır.
- Orjinali 350 KB iken bulanık hali 200 KB'ye kadar düşecektir ki bu 1920x1080 olduğunda böyledir ve bunu 1280x720 ya da daha düşük yaparsanız boyut 100-150 KB kadar düşecektir.
  ki bulanık olduğu için kalite pekte göze çarpmayacaktır. 
- 5 arka planlı form kullandığınızı varsayarsak 5*150 := 750 KB ama tek formda bir tabcontrol ile 5 tab oluşturursanız 1*150 := 150 KB olacaktır  Smile 
- Verileri SQLite içerisinde muhafaza ederseniz de ; 8 alanlık 1000 satırlık string değerler barındıran SQLite dosyam/Veritabanım 236 KB , bunu size uyarlayıp hesaplama yaparsak ;
  3 alan 500 satır olsa İngilizce/Türkçe metinler := tahmini 500 KB anca olacaktır.
- Kodlarınızın fazla uzun olduğunu da tahmin etmiyorum ama onları da gözden geçirip daha da kısaltır iseniz ( boyutu pek etkilemese de ) ;

Eminim ki apk boyutu 39 MB den 15 MB ye kadar düşecektir. 

Bunlardan neden eminim ? çünkü benim de oyunum 45 MB civarlarında idi böyle yaparak boyutu 14 MB ye kadar düşürmüştüm  Smile Smile

Başarılar...
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi 12 için XCode ve IOS Sürümü nedir? Mr.X 12 1.055 24-12-2023, Saat: 10:59
Son Yorum: burakb44
  Smart TV için Ekran Yansıtma - Screen Mirror nehirnnn 3 411 27-11-2023, Saat: 06:24
Son Yorum: Master_Crazy
  elterminali üzerinde androidde barkod uygulaması için action butonu yakalamak miralaymir 7 1.040 13-10-2023, Saat: 14:44
Son Yorum: miralaymir
  Tüm Platformlar için Hızlı uygulama Geliştirme - Tüm Örnek Uygulamalar RAD Coder 11 4.011 25-06-2023, Saat: 15:38
Son Yorum: walidAlgeria
  şirketin konumunu uygulama üzerinden yol tarifi için haritalara gönderme diseqc 9 1.848 12-05-2023, Saat: 00:29
Son Yorum: mcuyan



Konuyu Okuyanlar: 1 Ziyaretçi