Script Nedir? - Nasıl Yazılır?

EmreZengin

YASAKLANDI
Mesajlar
67
En iyi cevaplar
0
Beğeniler
146
Puanları
0
Script Nedir?
Script, İngilizce'de Scenario kelimesi ile aynı niteliği taşımaktadır.Anlamı Senaryodur.Oyuna bşlamadan önce yazdığınız
script bir nevi oyunun akışını değiştirir, oyunun bir sinema filmi gibi bazı şeylerin önceden belli olmasını sağlar.

Nasıl yazılır?
Anlatıma geçeyim.Öncelikle temiz bir not defteri açmalıyız.
Sol üst köşeye, ; X Campaign Script yazalım.

Onun altına ise ; Balances AI Factions yazalım.(Bu yazılar scriptimizin ne olduğunu belli etmek açısından önemlidir.
X yerine ingiliz alfabe kurallarıyla başka bir kelimede yazabiliriz.)
Altına bir satır boşluk bırakalım ve hemen altına Script yazısını yazalım.
Alta inip "Tab" tuşuna basıp suspend_during_battle on yazısını ekleyelim.
Yani şöyle olacak;
Kod:
; X Campaign Script
; Balances AI Factions

Script
    suspend_during_battle on
Artık oyunda görmek istediklerimizi yazmaya başlayabiliriz.Ve de geliştirilmiş bir şekilde oyuna şu devleti seçersek
şöyle başlasın seçmezsek şöyle başlasın diyebilme hakkımız doğuyor.Örneğin ben istiyorum ki oyuna Yunanları seçerek
başlarsak Makedonlar ile Yunanlar savaş halinde olsun.(Devlet isimlerini descr_sstrattan buluyoruz.)Aslında bunu başka türlüde halledebiliriz.descr_strattanda yapabiliriz.
Ama bu daha kolayıma geliyor benim.Yazalım;

Kod:
; X Campaign Script
; Balances AI Factions

Script
    suspend_during_battle on
bir satır boşluk bırakıp yine Tab tuşuna basıp koşulu ekliyoruz, koşulumuz oyuna yunanlarla başlanırsa,
if I_LocalFaction greek_cities
Onun altınaysa yine bir boşluk ve bu sefer Tab tuşuna 2 kere basıyoruz.
console_command diplomatic_stance greek_cities macedon war
dedik ve bitti.Böylelikle oyuna yunanlarla başladığımız taktirde bu iki devlet artık savaş halindeler.
Yalnız bir not ekleyeyim.Eğer diyelim bir devletle daha savaştırmak istiyoruz.Onlarda Trakyalılar olsun.Şöyle yaparız;
console_command diplomatic_stance greek_cities macedon war
console_command diplomatic_stance greek_cities thrace war
Son durum şu;
Kod:
; X Campaign Script
; Balances AI Factions

Script
    suspend_during_battle on

    if I_LocalFaction greek_cities

        console_command diplomatic_stance greek_cities macedon war
üsttede gördüğümüz üzere Spartaya asker ekleyelim. -> export_descr_unit ten istediğimz birimi buluyoruz.
bir satır aşağı inip 2 kez Tab tuşuna basıyoruz.
console_command create_unit "Sparta" "greek hoplite elite" 2 1
diyoruz.
Son durum;
Kod:
; X Campaign Script
; Balances AI Factions

Script
    suspend_during_battle on

    if I_LocalFaction greek_cities

        console_command diplomatic_stance greek_cities macedon war
        console_command create_unit "Sparta" "greek hoplite elite" 2 1
ardından diyorum ki oyun makedonlara 20 bin altın para versin.Bir satır aşağı inip 2 kere Tab tuşuna basıyoruz.(Sanırım
artık her seferinde bir satır aşağı inip 2 kere Tab tuşuna basacağımızı anlamışızdır.(Sadece if I_LocalFaction yazdığımız
satırlarda 1 kere Tab tuşuna basıyoruz.))
console_command add_money macedon 20000
dedik ve oyun makedonlara yunanlarla başladığım halde 20000 denari verecek artık.
Ve Messenada bir tane liman olsun kendiliğinden ve anında diyorum.(Messena Romalıların bir şehri.Rakiplerimizede
yazdığımız scriptlerle etki edebiliyoruz.Sadece en başta yazmış olduğumuz koşul önemlidir.) ->export_descr_buildings ten
binamızın ismini buluyoruz.
console_command create_building Messena port
dedik ve eklendi.
Ve sıra geldi eğer Yunanları seçmezsek demeye.Ama ondan önce yapmamız gereken şey üstte
yazmış olduğum şeyi bitirmek.
Bir satır boşluk ve altına
end_if
diyoruz.
Son durum;
Kod:
; X Campaign Script
; Balances AI Factions

Script
    suspend_during_battle on

    if I_LocalFaction greek_cities

        console_command diplomatic_stance greek_cities macedon war
        console_command create_unit "Sparta" "greek hoplite elite" 2 1
        console_command add_money macedon 20000
        console_command create_building Messena port

    end_if
bu şekilde olacak.Böylece Yunanları seçtiğimizde olacak olanları yazdık.
if not I_LocalFaction greek_cities
diyerek Yunanları seçmediğizde olacak olanları yazabiliriz.
Üsttekileri yazabilirmiyiz yazamazmıyız pek emin değilim.Denemedimde.Ama şöyle diyebiliriz.Dost olarak başlasınlar
console_command diplomatic_stance greek_cities macedon allied
Böylece dost olarak başlayacaklardır.Yapabileceklerimiz bunlarla sınırlı değil.Mesela bu koşullarda başlarsak bir makedon
ordusu yaratabiliriz.Bunun için oyuna girip kara üzerinde belirlediğimiz (ve ya başka yollardan belirlediğimiz)
bir noktaya show_cursorstat yazarak x ve y koordinatlarını bulmalıyız.Atıyorum ki 55-66 gibi bir koordinat elde ettik.
Ondan sonrada ordumuzun kumandanına isim bulacağız. descr_names belgesinden
faction: macedon
yazan yerde bulabiliriz.Ben buldum.Argeos diyelim.Koordinatımız ve general ismi elimize geçti.Ben Captain olarak değilde
Family Member olarak eklemek istiyorum.Bunun için Bodyguard şeklinide bilmemiz gerekiyor.Arada bir satır boşluk bırakarak,
spawn_army
faction macedon
character Argeos, named character, command 0, influence 0, management 0, subterfuge 0, age 20, x 55, y 66
greek general's guard cavalry early, soldiers 50 exp 4 armour 1 weapon_lvl 1
end
dedik.Sağdada gördüğümüz üzere generalimize koordinatları verdik, orada bulunmakta.İsminide yazdık.Fakat emrinde
sadece kendi badigardları bulunmakta.Ordu verelim mi, ne dersiniz?
Bir boşluk bırakarak aşağıya inelim ve
console_command create_unit "Argeos" "greek royal pikemen" 4 2 2 1
diyelim.4 ek birlik daha geldi emrine.19 tane ekleyebiliyoruz sınırımız yok ama bir seferinde en fazla
console_command create_unit "Argeos" "greek royal pikemen" 5 9 3 3
diyebiliriz.En fazla 5 tane ekleniyor tek seferde yani.Buda full altın bir asker ve gereğinden fazla güç demek.
O yüzden ilk eklediğimiz daha cazip.Ama baktık ki yine çok güçlü.Generalleri çok güç katıyor.Ben oyun başlamadan ölsün derim.
Bunun için,
console_command kill_character Argeos
yazmam yeterli.
Bitirelim bence.Üsttede olduğu gibi,
end_if
yazıyoruz ve koşulumuz sona eriyor.
Son durum şu;
Kod:
; X Campaign Script
; Balances AI Factions

Script
    suspend_during_battle on

    if I_LocalFaction greek_cities

        console_command diplomatic_stance greek_cities macedon war
        console_command create_unit "Sparta" "greek hoplite elite" 2 1
        console_command add_money macedon 20000
        console_command create_building Messena port

    end_if

    if not I_LocalFaction greek_cities

        console_command diplomatic_stance greek_cities macedon allied

        spawn_army
            faction macedon
            character Argeos, named character, command 0, influence 0, management 0, subterfuge 0, age 20, x 55, y 66
            greek general's guard cavalry early, soldiers 50 exp 4 armour 1 weapon_lvl 1
        end

        console_command create_unit "Argeos" "greek royal pikemen" 4 2 2 1

        console_command kill_character Argeos

    end_if
Böylece bu koşulda bitiyor.Ama diğer devletlerin koşulları sorun olmasın diye, onlarıda eklemek zorundayız.
Ama illa bişeyler eklemek zorunda değiliz sadece koşulu yazıp geçebiliriz de.
Şöyle olabilir yani;
Kod:
; X Campaign Script
; Balances AI Factions

Script
    suspend_during_battle on

    if I_LocalFaction greek_cities

        console_command diplomatic_stance greek_cities macedon war
        console_command create_unit "Sparta" "greek hoplite elite" 2 1
        console_command add_money macedon 20000
        console_command create_building Messena port

    end_if

    if not I_LocalFaction greek_cities
    and not I_LocalFaction romans_julii
    and not I_LocalFaction romans_brutii
    and not I_LocalFaction romans_scipii
    and not I_LocalFaction romans_senate
    and not I_LocalFaction macedon
    and not I_LocalFaction egypt
    and not I_LocalFaction seleucid
    and not I_LocalFaction carthage
    and not I_LocalFaction parthia
    and not I_LocalFaction gauls
    and not I_LocalFaction germans
    and not I_LocalFaction britons
    and not I_LocalFaction armenia
    and not I_LocalFaction pontus
    and not I_LocalFaction dacia
    and not I_LocalFaction numidia
    and not I_LocalFaction scythia
    and not I_LocalFaction spain
    and not I_LocalFaction thrace
    and not I_LocalFaction slave

        console_command diplomatic_stance greek_cities macedon allied

        spawn_army
            faction macedon
            character Argeos, named character, command 0, influence 0, management 0, subterfuge 0, age 20, x 55, y 66
            greek general's guard cavalry early, soldiers 50 exp 4 armour 1 weapon_lvl 1
        end

        console_command create_unit "Argeos" "greek royal pikemen" 4 2 2 1

        console_command kill_character Argeos

    end_if
Pek emin değilim yinede.Eğer bir sorun çıkarırsa;
Kod:
if I_LocalFaction greek_cities

        console_command diplomatic_stance greek_cities macedon war
    end_if
buradaki yazıyı greek_cities kısmını değiştirip diğer devletlerede uyarlamalıyız.
Ve düzenli olması açısından bu devleti seçtiğimiz taktirde koşulunun yani
Kod:
if I_LocalFaction greek_cities

        console_command diplomatic_stance greek_cities macedon war
        console_command create_unit "Sparta" "greek hoplite elite" 2 1
        console_command add_money macedon 20000
        console_command create_building Messena port

    end_if
buranın hemen altına yapıştırmalıyız.Fakat sorun olacağını pek sanmadığım gibi olmayacağının garantisinide veremem.
Burayı hallettiğimizi varsayıp devam ediyorum.Son bir şey kaldı;
;console_command toggle_perfect_spy
terminate_script
burayı ekliyoruz.Bitti.Artık oyuna aktive edeceğiz.Onun için bu belgeyi imperial_campaign klasörüne X_Campign_Script
olarak kaydediyoruz.Ardından descr_stratı açıp en alta,
Kod:
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Script
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

script
X_Campaign_Script.txt
olarak ekleyip kaydediyoruz.her şey bitti.Scriptimiz hazır.Oyuna girince yazdıklarımız karşımıza çıkacak.

Bunlar bilmemiz gereken en basit scriptler.Çok daha uzmanca yazılan scriptler var.
Bunlar en basitleri.Ben burayı XGM Modundan faydalanarak sizlere aktarmış bulunmaktayım.
İyi günler...



 


EmreZengin

YASAKLANDI
Mesajlar
67
En iyi cevaplar
0
Beğeniler
146
Puanları
0

Personinblack

YASAKLANDI
Mesajlar
1,876
En iyi cevaplar
0
Beğeniler
1,237
Puanları
90
Yanlız bu skript değil script başlığa bakarsanız. Kodlarda sallamasyon değildir.


Karıştırmadım, zaten scripti tanıttım.
Başlıkta "skript" yazıyordu "script" olarak değiştirmişsin şimdi de yan çiziyorsun :) Ayrıca bu script'in bile tanımı değildir. Adını bilmediğimiz bir oyun için nasıl eklenti kodlanacağını anlatmışsın. Scriptin tanımını Wikipedia'dan öğrenebilirsin.

https://en.wikipedia.org/wiki/Scripting_language
https://en.wikipedia.org/wiki/SCRIPT_(markup)
 

admiraldus

YASAKLANDI
Mesajlar
1,234
En iyi cevaplar
0
Beğeniler
923
Puanları
0
Skript sandım ve okumaya başladım. İlk cümlelerden sonra bu ne yeni sistem falan mı çıktı diye bir düşündüm sonra neyin ne olduğu belli olmayan bir konuya girdiğimi anladım.
 

AtomyTR

Atomart - En büyük Discord Türk Sanat topluluğu.
Grafiker
Emekli
Mesajlar
1,671
En iyi cevaplar
19
Beğeniler
1,746
Puanları
5,090
Ruh hali
Kodları bırakın script yazmak kolay.
Klavyeden sırasıyla S C R I P T tuşlarına basıyoruz ve Script yazmış oluyoruz.
 

EmreZengin

YASAKLANDI
Mesajlar
67
En iyi cevaplar
0
Beğeniler
146
Puanları
0

Personinblack

YASAKLANDI
Mesajlar
1,876
En iyi cevaplar
0
Beğeniler
1,237
Puanları
90
Cidden çok güzel bir espiri yaptın tebrikler :)


Yanlış yere açılmış olabilir, nereye taşımam gerekiyor.
Konu yeri doğru fakat konu yanlış verdiğim Wikipedia linklerine bakmadın sanırım... Copy paste yaptıysan iyi yapamamışsın eğer yapmadıysan daha da kötü.
 

Emristy

Kızıltaş Madencisi
Mesajlar
456
En iyi cevaplar
0
Beğeniler
448
Puanları
820
Ruh hali
Kafalar uranus ve mars'tı sözü lazım konuya...
 

LımonBerk

Zombi Katili
Mesajlar
229
En iyi cevaplar
0
Beğeniler
300
Puanları
0
Konuyu uzatmaya gerek yok yada parmaklarınızı yormaya... konu sadece Ego/Beğeni kasmak için açılmış (Metin2 geldi aklıma) ego ne alaka derseniz bunu @EmreZengin 'e sorun o bilir belki :aşık: Neyse boşu boşuna burda polemik oluşturup uyarı almaya gerek yok
"@EmreZengin 'e sorun belki o bilir :aşık:" Çok ince laf ...tum
 

ShiodomeMiuna

Nether Yerlisi
Mesajlar
2,351
En iyi cevaplar
11
Beğeniler
1,190
Puanları
3,300
Skript bölümü, Minecraft'ın Skript adlı plugininin kullandığı kodların paylaşıldığı bir bölümdür. Oyun ya da site scripti değil. "S(k/c)ript" Bu 2 harfi karıştırmamak lazım.
 

EmreZengin

YASAKLANDI
Mesajlar
67
En iyi cevaplar
0
Beğeniler
146
Puanları
0
Konu yeri doğru fakat konu yanlış verdiğim Wikipedia linklerine bakmadın sanırım... Copy paste yaptıysan iyi yapamamışsın eğer yapmadıysan daha da kötü.
Copy paste yapmadım, bu script doğru olması gerekli.

Konuyu uzatmaya gerek yok yada parmaklarınızı yormaya... konu sadece Ego/Beğeni kasmak için açılmış (Metin2 geldi aklıma) ego ne alaka derseniz bunu @EmreZengin 'e sorun o bilir belki :aşık: Neyse boşu boşuna burda polemik oluşturup uyarı almaya gerek yok
"@EmreZengin 'e sorun belki o bilir :aşık:" Çok ince laf ...tum
Beni nerden tanıyorsun? Ayrıca Bana egolu diyorsun, neye dayanarak bunu söylüyorsun, eğer benimle kişisel bir problemin varsa skype gelebilirsin. Emre.sk

Skript bölümü, Minecraft'ın Skript adlı plugininin kullandığı kodların paylaşıldığı bir bölümdür. Oyun ya da site scripti değil. "S(k/c)ript" Bu 2 harfi karıştırmamak lazım.
Konu zaten şuanda bilgisayar/teknoloji bölümündedir.
 

Üst