Ero sivun ”Xeno:Teknistä tietoa nörteille” versioiden välillä

Seikkailuoppaasta
Rivi 69: Rivi 69:
 
}}
 
}}
 
}}
 
}}
 +
 +
Järjestelmä kytkeytyy Gitlab-versionhallinta-alustaan ja päivittää tekstuurit ja renderöidyt kuvat niitä vastaavien 3d-mallien tai tekstuurien muuttuessa automaattisesti.
  
 
{{SiivoaKelluvat}}
 
{{SiivoaKelluvat}}

Versio 17. kesäkuuta 2022 kello 19.03

Tämä sivu on pyhitetty kertomaan teknisistä ja kehityksellisistä seikoista, ja ylipäätään siitä, mitä Survissa tapahtuu kulissien takana. Tämän sivun sisältö ei välttämättä ole mielenkiintoista luettavaa ei-nörteille.


Palvelin

Xeno käyttää pelimuotojen kehitys­prosessissa erillisiä kehitys­alustoja ja -palvelimia
  • Paper 1.18.2 (→ 1.19)
  • Yhdistelmä itse kehitettyjä ja valmiita palvelinlisäosia
    • Itse kehitetyt on kirjoitettu pääasiassa tavanomaisina Java-plugineina
    • Valmiit lisäosat (mm. CoreProtect, WorldEdit, Vault, jne.) tuovat tärkeitä yleishyödyllisiä ominaisuuksia palvelimen ylläpitoon ja kehitykseen


Lisäosat eli pluginit

Javan parissa työskentelyyn kukin valitsee oman suosikkityökalunsa, pitkällisen Eclipsen rakastamisen jälkeen Tapsa siirtyi IntelliJ IDEAn pariin.

Xenon palvelimilla, myös Survissa, on käytössä useita itse kehitettyjä lisäosia eli plugineita, joilla muutetaan ja täydennetään palvelimen toimintaa. Yhdessä resurssipaketin kanssa lisäosilla saadaan luotua hienoja illuusioita uniikeista ominaisuuksista.

Lisäosakehityksessä on käytössä tiimityöskentelyä helpottava Git-versionhallinta sekä sen verkkokäyttöliittymä Gitlab. Useimmat pluginit rakentuvat Maven-dependenssihallinnan päällä, käyttäen Xenoa varten kehitettyä "copier"-aputyökalua, joka muun muassa osaa automaattisesti kopioida buildit eri kansioihin, scp:llä palvelimille, ja tarvittaessa jopa uudelleenkäynnistää kohdepalvelimen.


Resurssipaketti

Survin ja Kuningaskunnan resurssipaketteja varten kehitetty "PackHelper"-työkalu

Kuningaskunnan ja Survin resurssipaketit eivät juuri muuta normaaleja pelin palikoita. Sen sijaan niissä on käytetty nokkelia kiertoreittejä uusien palikoiden ja tavaroiden lisäämiseksi peliin. Resurssipaketti luo ainoastaan visuaalisen ilmeen tavaroille ja palikoille; niiden toimintalogiikka on peräisin palvelimelle itse kirjoitetuista lisäosista eli plugineista.

Suurin osa tekstuureista on tehty avoimen lähdekoodin Gimp-kuvankäsittelyohjelmalla, ja 3D-mallit maksullisella Cubik-ohjelmalla.


Wiki

Wiki toimii avoimen lähdekoodin MediaWiki-alustan avulla. Wikissä on käytössä erinäisiä lisäosia ja frontendiä on myös muokattu omilla lisävirityksillä.

Wikiä ym. resursseja varten Xenolla on myös käytössä sisäisesti kehitetty Cubisti-järjestelmä, joka renderöi resurssipakettien 3d-mallit ja tekstuurit wiki- ja verkkosivukelpoisiksi kuviksi aina niihin muutoksia tehtäessä. Se mahdollistaakin siis esimerkiksi...

...tavara- ja palakuvien liittämisen vaivattomasti suoraan mallineilla:

...kaikissa asennoissa:

...jopa lennosta renderöityinä rakennelmina:

Järjestelmä kytkeytyy Gitlab-versionhallinta-alustaan ja päivittää tekstuurit ja renderöidyt kuvat niitä vastaavien 3d-mallien tai tekstuurien muuttuessa automaattisesti.