Návod pro vytvoření SQUAD.XML pro ArmA
Jak vytvořit squad.xml
Pro komunitu Bohemia Interactive
OBSAH |
Úvod
Pro podporu multiplayerové komunity, která se snaží hrát v klanech, je možné vytvořit společný informační soubor – „squad.xml“ -. Tento soubor je uložen na vlastním webovém prostoru či FTP serveru, kde je volně přístupný pro to, aby si mohl herní server z něho načíst data s údaji o hráči.
Kromě podrobných informacích o jednom hráči a jeho týmu, které lze získat stisknutím tlačítka „P“ ve hře, funkce také podporuje společné týmové logo, které se bude zobrazovat na vozidlech, pokud do něj týmový hráč nastoupí.
Příprava
Pokud máte pocit, neznají formátu XML samo o sobě a nebo máte dotazy týkající se základních značek XML, můžete se poradit s literaturou, dokumentace [1] or tutorials [2] jako základní otázky týkající se technologie XML samo o sobě se nevztahuje zde. Existuje více zdrojů na na World Wide Web, který vám pomůže učení XML.
Jak vytvořit „squad.xml“
Soubor se skládá ze tří hlavních částí:
1. Hlavička: Definuje doctype. Toto neměňte!!!
<?xml version="1.0"?> <!DOCTYPE squad SYSTEM "squad.dtd"> <?xml-stylesheet href="squad.xsl" type="text/xsl"?> |
2. Informace o týmu (klanu, squadu)
<squad nick="ESN"> <name>Example Squad Name</name> <email>email@example.com</email> <web>www.example.com</web> <picture>logo.paa</picture> <title>Use this e.g. for your squads name or your squads URL</title> |
nick | Klan-tag, zobrazí se společně s hráči přezdívka. Upozornění: Nepoužívejte vyhrazena XML tagy -> Link |
---|---|
name | Jméno týmu (klanu, squadu) |
Váš kontaktní mail | |
picture | Vaše logo (volitelně), je ve stejné složce jako „squad.xml“ soubor |
title | Squad (klanové) jméno, zobrazí na vozidla obsazeného členy družstva |
Důležitá poznámka:
- Nepoužívejte žádné jiné znaky než je A-Z, a-z, 0-9 a mezeru na pozici nick -atribut uvnitř položky týmu -prvek vašeho squad.xml . To může vést k podivnému chování např. informace v položce člen -bloku je zobrazena, ale informace z pložky týmu -zobrazené nejsou. Takže pokud váš Tag je jako „= [BTK] =“, vložte hodnotu jako „BTK“ do nick -atribut položky týmu .
3. Seznam členů
<member id="123456" nick="=[ESN]=John"> <name>John Doe</name> <email>john.doe@example.com</email> <icq>N/A</icq> <remark>Mostly harmless</remark> </member> </squad> |
id | Vaše Player-UID, je vždy stejný, a to bez ohledu na zvoleném profilu |
---|---|
nick | svou přezdívku, stejně jako používáte v profilu |
name | tvé „reálné“ jméno… |
Tvůj osobní email | |
icq | Tvé osobní ICQ |
remark | Poznámka |
Důležitá poznámka:
- Hodnota v nick -atribut člena -obsah musí představovat přesný název hráče v profilu. Pokud se váš profil se jmenuje „= [BTK] = Born“ pak vypadá správný XML jak je uvedeno ve výše uvedeném bloku s kódem.
Poznámky:
- Můžete zanechat nějaké pole prázdné, ale je doporučeno vyplnit jej aspoň zkratkou „N/A“.
- Seznamu členů lze rozšířit přidáním dalších XML-„member“ block
Jak získat své Player-UID
ArmA 2
Jak vytvořit logo pro použití „squad.xml“
Chcete-li vytvořit logo pro použití „squad.xml“ Budete potřebovat:
- Software pro úpravu bitmapové grafiky (např. „Paintprogram“), který je schopen zvládnout bitmapy ve formátu JPG nebo TGA.
- Download Texview nebo PAA-Plugin pro použití s Photoshopem
Pro logo bez průhlednosti, můžete použít běžné JPG bez dalších úprav. Chcete-li získat průhlednost budete muset převést TGA na PAA formát. Doporučuje se použít PAA, aby se zabránilo alfa blendingu.
Tvorba TGA
V tomto tutoriálu budeme používat GIMP – Open source nástroj – k vytvoření našeho souboru-logo.
Důležitá poznámka: Všechna loga musí mít rozlišení 2 ^ x / y ^ 2 (např. 16 / 16, 32 / 32, 64 / 64, 256 / 256)
Jelikož se tento popis vztahuje pouze na ‚the Gimp‘, ZDE je starý tutoriál vytvořený pro Flashpoint, pomocí Photoshop 6 a vysvětluje, jak vytvořit alfakanál (průhlednost) v TGA-obrázku (Poznámka: Pokud používáte Photoshop 7, budete muset stáhnout patch z Adobe, neboť neukládá alfakanál v targa souborech).
Převod TGA do PAA
- Spusť TexView
- Otevři tvé „logo.tga“
- Ulož ho jako „logo.paa“ (nahradit koncovku *. tga koncovkou *. paa v „uložit jako“)
Poznámka: Název loga lze zvolit jakýkoliv, název souboru „logo.tga“ atd. je jen příklad!
Jak publikovat XML
Chcete-li použít „squad.xml“ budete muset nahrát tyto soubory na webový server, nebo FTP:
- squad.xml (povinné)
- squad.dtd (povinné)
- squad.xsl (volitelný), je potřebný k prokázání „squad.xml“ ve Webovém prohlížeči, ale není třeba pro ArmA herní server.
- logo.paa (volitelný)
Všechny soubory musí být ve stejném adresáři!
POZNÁMKA:. PAA soubory nefungují na IIS, Apache byl testován a zdá se být funkční.
Jak použít xml jako člen týmu
- Musíte mít svůj vlastní member-blok v „squad.xml“ souboru.
- Dále je nutné umístit URL „squad.xml“ svého týmu do „URL klanu“ pole v profilu hráče. viz obrázek „ArmA UID 2“ in section Jak dostat své Player-UID.
Zde je několik příkladů správného URL: do pole „URL klanu“
http://www.example.net/squad.xml http://www.example.org/path/to/your/squad.xml
Jestliže nemáte webový prostor, kam byste mohli své XML nahrát (nemáte klan a jste solo hráč, nemáte web), můžete nás kontaktovat a XML nám zaslat, poskytujeme zdarma kvalitní hosting pro různé SQUAD.XML! Popřípadě vám squad.xml vytvoříme.
Soubory
Download
Zdrojový kód
squad.xml
<?xml version="1.0"?> <!DOCTYPE squad SYSTEM "squad.dtd"> <?xml-stylesheet href="squad.xsl?" type="text/xsl"?> <squad nick=""> <name></name> <email></email> <web></web> <picture></picture> <title></title> <member id="" nick=""> <name></name> <email></email> <icq></icq> <remark></remark> </member> </squad> |
squad.dtd
<!ELEMENT squad (name, email, web?, picture?, title?, member+)> <!ATTLIST squad nick CDATA #REQUIRED> <!ELEMENT member (name, email, icq?, remark?)> <!ATTLIST member id CDATA #REQUIRED nick CDATA #REQUIRED> <!ELEMENT name (#PCDATA)> <!ELEMENT email (#PCDATA)> <!ELEMENT icq (#PCDATA)> <!ELEMENT web (#PCDATA)> <!ELEMENT picture (#PCDATA)> <!ELEMENT title (#PCDATA)> <!ELEMENT remark (#PCDATA)> |
squad.xsl
<?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="text()"> <xsl:value-of select="."/> </xsl:template> <xsl:template match="*"> <xsl:apply-templates/> </xsl:template> <xsl:template match="/"> <HTML> <HEAD> <TITLE><xsl:value-of select="/squad/name"/></TITLE> <LINK REL="stylesheet" TYPE="text/css" HREF="squad.css"></LINK> </HEAD> <!-- XSL template for "squad.xml", used in "Armed Assault" (Ref: "http://www.armedassault.com") and "Armed Assault 2" (Ref: "http://www.arma2.com") See also the Arma-Wiki page: "http://community.bistudio.com/wiki/squad.xml" Created by TomNedry, 26.Jan07 Reviewed by TomNedry, 15.Jul09 Lisence: Creative Common (http://creativecommons.org/licenses/by-nc-sa/2.5/deed.de) To have a squad logo in the HTML output, just put a "sqd_logo.png" in the same folder... --> <BODY> <!--Main TABLE --> <TABLE class="main"> <TR> <TD class="left_row" valign="top"> <!-- Squad Info Table --> <TABLE class="sqd_info"> <TR height="30"> <TD class="one"> <DIV class="sqd_name"> <xsl:value-of select="/squad/name"/> </DIV> </TD> </TR> <TR height="30"> <TD class="two"> <DIV class="sqd_title"> <xsl:value-of select="/squad/title"/> </DIV> </TD> </TR> <TR height="100%"> <TD width="100%" height="100%" valign="top"> <DIV class="sqd_logo"> <img src="sqd_logo.png" alt="Picture: Squad Logo"/> </DIV> </TD> </TR> <TR height="10"> <TD class="sqd_website"> Web site: <A> <xsl:attribute name="href"> http://<xsl:value-of select="/squad/web"/> </xsl:attribute> <xsl:value-of select="/squad/web"/> </A> </TD> </TR> <TR> <TD class="sqd_email"> e-mail: <A> <xsl:attribute name="href"> mailto:<xsl:value-of select="/squad/email"/> </xsl:attribute> <xsl:value-of select="/squad/email"/> </A> </TD> </TR> </TABLE> <!-- Squad Info Table --> </TD> <TD class="right_row" valign="top"> <!-- Member-Info Table --> <TABLE class="member_info"> <Tr> <Th>Members</Th> <Th>e-mail</Th> <Th>ICQ</Th> </Tr> <xsl:for-each select="/squad/member"> <TR> <xsl:attribute name="class"> <xsl:choose> <xsl:when test="position() mod 2 = 0">one</xsl:when> <xsl:otherwise>two</xsl:otherwise> </xsl:choose> </xsl:attribute> <TD class="member_name" rowspan="2"> <xsl:value-of select="name"/> </TD> <TD class="member_email"> <A> <xsl:attribute name="href"> mailto:<xsl:value-of select="email"/> </xsl:attribute> <xsl:value-of select="email"/> </A> </TD> <TD class="member_icq"> <xsl:value-of select="icq"/> </TD> </TR> <TR> <xsl:attribute name="class"> <xsl:choose> <xsl:when test="position() mod 2 = 0">one</xsl:when> <xsl:otherwise>two</xsl:otherwise> </xsl:choose> </xsl:attribute> <TD class="member_remark" colspan="2" valign="top"> <xsl:value-of select="remark"/> </TD> </TR> </xsl:for-each> </TABLE> <!-- Member Info Table --> <!--Main TABLE --> </TD> </TR> </TABLE> <p style="font-family:verdana;font-size:7pt;color:darkgrey;text-align:center;padding:10px;"> "squad.xsl" by <a href="http://www.csar-clan.net">TomNedry</a>, last change: 15.Jul09 </p> </BODY> </HTML> </xsl:template> </xsl:stylesheet> |
squad.css
/* CSS template for "squad.xml", used in "Armed Assault" (Ref: "http://www.armedassault.com") and "Armed Assault 2" (Ref: "http://www.arma2.com") See also the Arma-Wiki page: "http://community.bistudio.com/wiki/squad.xml" Created by TomNedry, 26.Jan07 Reviewed by TomNedry, 15.Jul09 Lisence: Creative Common (http://creativecommons.org/licenses/by-nc-sa/2.5/deed.de) */ body { font-family:Arial; background-color:#eaece5; margin:0px; } a:link { text-decoration:none; color:#800000; } a:visited { text-decoration:none; color:#800000; } a:hover { text-decoration:none; color:#ffffff; } a:active { text-decoration:none; } a:focus { text-decoration:none; } th { background-color:#aeb399; font-family:Arial; font-size:10pt; font-weight:bold; padding:4px; } tr.one { background-color:#dde4c3; width:100%; padding:4px; } tr.two { background-color:#d2d9b8; width:100%; padding:4px; } td.one { background-color:#aeb399; width:100%; } td.two { background-color:#e2e9c7; width:100%; } .main { text-align:center; width:100%; border:0px solid #333333; } div.sqd_name { text-align:center; font-family:Arial; font-size:12pt; font-weight:bold; } div.sqd_title { text-align:center; font-family:Arial; font-size:10pt; } div.sqd_logo { text-align:center; font-size:8pt; padding:5px; } .sqd_info { border:1px dotted darkgrey; width:100%; padding:0px; border-spacing:0px; } .sqd_website { font-family:Arial; font-size:10pt; text-align:center; background-color:#aeb399; width:100%; padding:4px; border-spacing:0px; } .sqd_email { font-family:Arial; font-size:10pt; text-align:center; background-color:#aeb399; width:100%; padding:4px; border-spacing:0px; } .left-row { vertical-align:top; height:100%; } .right-row { vertical-align:top; height:100%; } .member_info { border:1px dotted darkgrey; width:100%; padding:0px; border-spacing:0px; } .member_name { font-family:Arial; color:black; font-size:10pt; padding:4px; } .member_email { font-family:Arial; color:black; font-size:8pt; padding:4px; } .member_icq { font-family:Arial; color:black; font-size:8pt; padding:4px; } .member_remark { font-family:Arial; color:black; font-size:8pt; text-align:center; } |