Opensource: Porovnání verzí

Z EreborWiki
Přejít na: navigace, hledání
(Založena nová stránka s textem „GM tým shardu Erebor se rozhodl otevřít komunitě skripty sphere serveru, na kterých hra běží. Každý hráč tak má možnost podílet se na vývoj…“)
(Žádný rozdíl)

Verze z 17. 6. 2018, 15:25

GM tým shardu Erebor se rozhodl otevřít komunitě skripty sphere serveru, na kterých hra běží. Každý hráč tak má možnost podílet se na vývoji hry a opravě chyb. Z důvodů stability a vyvážení hry však GM tým bude nadále pečlivě vybírat, co smí do hry přijít. Pečlivě proto čtěte instrukce na těchto stránkách, kde se dozvíte všechny podmínky potřebné k tomu, aby byla vaše změna přijata a zahrnuta do hry.

GIT Repozitář

Stažení skriptů

Skripty Ereboru jsou uloženy na volně dostupném GIT serveru www.gitlab.com. Práci s GITem zde nebudeme rozebírat, internet je plný desítek návodů a instrukcí, jak s GIT repozitáři pracovat. Nastudujte si proto základy sami, například zde. Pro snažší kontrolu a správu změn doporučuji nainstalovat a používat aplikaci SourceTree. Tato aplikace slouží jako GUI k práci s GITem. Součástí distribuce již je předinstalovaný interní GIT, takže nemusíte dodatečně instalovat vlastní.

Pro stažení a úpravu skriptů budete potřebovat účet na stránkách gitlabu.

Po přihlášení naleznete samotný repozitář Sphere skritpů: Sphere

Pravidla pro změny v repozitáři

Protože Sphere Ereboru pravidelně každé ráno v 5h načítá aktuální skripty z master větve výše uvedeného GIT repozitáře, je naprosto nezbytné, aby byla master větev zabezpečená proti nežádoucím změnám. Z tohoto důvodu není možné provádět změny přímo v master větvi, ale musíte nejdřív vytvořit boční větev se svými změnami a požádat o tzv. merge do hlavní větve. Tuto žádost o merge potom schvalují ověření uživatelé s dobrou znalostí kódu. Během vaší žádosti o merge budete s vysokou pravděpodobností vyzváni o dodatečné úpravy, pokud při revizi vašich změn kontrolující člověk nalezne nějaké nedostatky. Chcete-li, aby vaše změny byly použity, je vaší vlastní povinností všem požadavkům vyhovět a provést potřebné úpravy.

Jména větví

Jména větví je nutné rozlišovat podle účelu. V tuto chvíli jsou povolené 3 prefixy:

  1. bugfix/* - opravy chyb
  2. feature/* - nové vlastnosti - např. nové ability monster/hráčů, nová past do dungeonu apod.
  3. quest/* - nové questy nebo rozšíření stávajících

Základní sekvence kroků pro úpravy

  1. před zahájením změn se ujistěte, že váš lokální repozitář odpovídá aktuálnímu stavu master větve
    1. poprvé (ještě nemáte klon repozitáře u sebe): CLONE https://gitlab.com/erebor/sphere.git
    2. následné úpravy: CHECKOUT master && PULL
  2. vytvořte novou branch s odpovídajícím jménem: branch quest/q0234_novej_quest
  3. úpravujte kód, testujte
  4. COMMIT všech změněných souborů & PUSH
  5. Vytvořte Merge request:
    1. Jděte na stránku Sphere
    2. V navigačním panelu vyberte Repository > Branches.
    3. Nalezněte svou větev a klikněte na tlačítko 'Merge Request'
    4. Vyplňte formulář změn:
      1. Zadejte stručné jméno změny.
      2. V Description detailně popište, čeho se vaše změny týkají a pokud je nutný ruční zásah ve hře, uveďte postup, který je třeba vykonat (např. osazení nových quest NPC a podobně).
      3. Jako Assignee zvolte uživatele Pavel Mičan.
      4. Ujistěte se, že Source Branch je vaše větev a Target Branch je master.
      5. Zaškrtněte obě volby "Remove source branch when merge request is accepted." a "Squash commits when merge request is accepted.".
      6. klikněte na tlačítko "Submit merge request"
  6. Vyčkejte, než se někdo z GM týmu bude věnovat vaší žádosti o merge - doporučuji zrevidovat vaše e-mailové notifikace na vašem gitlab účtu a v nastavení Sphere repozitáře tak, abyste byli včas upozorněni na komentáře k vaším žádostem.
  7. V případě, že budete požádání o dodatečné úpravy, proveďte je a až budete hotovi, znovu proveďte COMMIT && PUSH (v té samé větvi, pro kterou jste vytvořili Merge request).
  8. GM odsouhlasí a mergne váš merge request - druhý den budou vaše změny ve hře.

Spuštění Sphere

Skriptování