Oyun sürümlerini etiketlemek için en iyi yöntemler?


21

Oyun sürümlerini etiketlemek için en iyi uygulama olup olmadığını bilen var mı?

Versiyonlama dışında standart bir isim olup olmadığından emin değilim, ama demek istediğim temelde:

  • 1.0
  • 1.1
  • 1.2
  • 1.3.1 beta

Yanıtlar:


18

Standart yok, ancak bunu sizin için anlamlı ve bu yapıyı izlemek için ihtiyaç duyabileceğiniz tüm bilgileri içeren bir şekilde yapmalısınız. Temelde böyle bozan bir şirket için çalıştım:

[Büyük yapı numarası]. [Küçük yapı numarası]. [Revizyon]. [Paket]

yani Sürüm: 1.0.15.2

  • Ana yapı numarası : Bu, beta sürümünden sürüm sürümüne, sürüm sürümünden ana güncellemelere kadar bu artışı artırır.

  • Küçük yapı numarası : Özellik güncellemeleri, büyük hata düzeltmeleri vb. İçin kullanılır.

  • Revizyon : Mevcut özellikler üzerinde küçük değişiklikler, küçük hata düzeltmeleri vb.

  • Paket : Kodunuz aynı, harici kütüphane değişikliklerinde veya varlık dosyası güncellemesinde kalır.

Birleşik değişiklikler en önemli değişikliğe doğru ilerler. Örneğin, küçük derleme sayısını artırıyorsanız, revizyon ve paket her ikisi de 0 olarak sıfırlanır.

Kategoriler tanımlanmış olsa da, bir revizyon ile küçük bir yapı numarası arasında ne gibi özelliklerin geçtiği konusunda hala belirsizlik var. Sana kalmış. Her artıştan önce uygulanması gereken özelliklerin bir listesini yaparsanız, izlemeniz gereken bir plan da vardır, ancak sonunda her kategoriye neyin uygun olduğuna karar vereceksiniz.


1
Bu harika bir bilgi, baktım her yerde, yalnızca ana reklam küçük yapı numaraları hakkında, her birinin ne olduğuna dair gerçek bir açıklama yapmadan konuştuk.
clifford.duke


10

Yığın Taşması, bu Sürüm Yapma Stil Kılavuzuna referans veren Nasıl Yapılır Sürüm Numaraları olarak adlandırılır .

Özet:

  • Uyumsuz API değişiklikleri yaptığınızda ana sürüm
  • İşlevleri geriye dönük bir şekilde eklerken MINOR sürümü
  • Geriye dönük hata düzeltmeleri yaptığınızda PATCH sürümü
  • Yayın öncesi ve derleme meta verileri için ek etiketler MAJOR.MINOR.PATCH biçiminde uzantılar olarak bulunur

6

Bildiğim kadarıyla, bunun için bir standart yok . Uygulama şirketlere, ekiplere ve projelere bağlı olarak değişecektir: en iyi uygulama diye bir şey yoktur. En önemli şey asıl kongre değil, herkesin kendisine yapışmasıdır.

Bu, bahsettiğiniz düzen serbest oyunlar için oldukça yaygın olduğunu söyledi. 1.0 genellikle altın usta olacak ve yamalar oradan başlayacak: 1.1, 1.2 ... Özel veya açık beta gibi sürüm öncesi müşteri sürümlerinde de kullanılıyor.

Gelişmekte olan oyunlar için nadiren kullanılan bu sistemi gördüm. Bir yapıya atomik değişim ID'si ile atıfta bulunmak çok daha yaygındır (örneğin Performans değişmez sayısı). Bu özellikle, her şeyin (kod ve varlıklar) aynı depoda depolandığı ve sürekli entegrasyonun olduğu orta ölçekli bir proje için kullanışlıdır. Bu durumda, bir atom değişim numarasını ikisine birden sahip ve sürüm numarası eğilimli gereksiz ve hatadır. Bazı yapılar QA'dan sonra bir kilometre taşına yükseltilecektir: alfa, beta, sürüm adayı ve bu şekilde etiketlenir.

Büyük projeler için, basit bir "oyun versiyonu" kavramı artık geçerli değil. Birkaç platformunuz, SKU'larınız, dilleriniz, tek oyunculu mod, çok oyunculu mod, vb. Olacak. Sürümleri yönetmek sonra tam zamanlı bir işe dönüşür (bazen veri yöneticisi olarak adlandırılır - bu Ubisoft terminolojisidir, muhtemelen başka bir yerde farklı olarak adlandırılır) etiketleme şeması daha karmaşıktır ve yapılan oyuna bağlıdır.


vay, kendi başına bir iş haline gelir? Her bölümün liderlerinin kendi versiyonunu yöneteceğini her zaman düşündüm.
clifford.duke

2
@ChaoticLoki Örneğin seviye tasarımcılarının en son kararlı çalıştırılabilir dosyalar üzerinde çalıştığından emin olmak için bölümler arasında uygun bir koordinasyona ihtiyacınız var. Veya bu programcılar, yerelleştirilmiş metinde bir değişkeni kimin batırdığını bulabilirler ("İtalyanca çevirmen sabit iletişim kutusu X, aynı anda Y öğretici metni de aynı anda kırdı, ancak eski sürüme geri dönemeyiz çünkü uyumlu değil. Arghhh! Yardım? "). Ve bunun gibi. Büyük bir takımda, bunlarla ilgilenecek birine ihtiyacınız var. Aslında sektördeki en zorlu işlerden biri.
Laurent Couvidou,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.