Inhoudsopgave
De skin van KsirK is volledig aanpasbaar. Voor diegene met grafische capaciteiten is het creëren van een nieuwe skin net zo eenvoudig als het kopiëren van een bestaand, bewerken of wijzigen van de grafische elementen en het bijwerken van de data in een .desktop configuratiebestand, wat u allemaal kunt doen met KsirK skinbewerker. Een laatste stap is het bestand met de beschrijving, hoe te installeren, te bewerken.
Alle voorbeelden (tekst en afbeeldingen) komen uit de standaard skin van KsirK.
Data/: Data gebruikt door het programma voor het hanteren van skin-afbeeldingen.CMakeLists.txt: beschrijft wat te installeren.onu.desktop: hoofdbestand voor de beschrijving van de skin. Zie zijn beschrijving hieronder.
Images/: De afbeeldingen van de skin (plattegrond, figuurtjes, etc.)CMakeLists.txt: beschrijft wat te installeren.pool.svg: de plattegrond en alle in de skin gebruikte figuurtjes.map-mask.png: de afbeelding waarmee het programma kan bepalen boven welk land de muis is tijdens het spel (zie hieronder).*.png: de andere afbeeldingen hier zijn pictogrammen voor de knoppen.
CMakeLists.txt: beschrijft wat te installeren.Sounds/: geluidsbestanden voor de skin.
Deze map heeft maar één bestand, world.desktop. Dit bestand geeft een beschrijving van de inhoud van de skin. Het wordt gebruikt voor een beschrijving van de organisatie van de wereld en hoe deze te tonen. U hoeft het niet handmatig in te vullen omdat dat door KsirK skinbewerker wordt gedaan. Maar voor de compleetheid, beschrijven we hier toch zijn structuur.
In een onu-groep zitten een aantal landen, een aantal nationaliteiten en tenslotte een aantal continenten. In de verschillende groepen zitten de beschrijvingen van de figuurtjes, de beschrijvingen van de landen, continenten, nationaliteiten en doelen.
De volgende secties beschrijven de inhoud van elke groep.
Tabel 2.1. De onderdelen van de onu-groep
| Items | Beschrijving |
|---|---|
breedte | De breedte van de skin. |
hoogte | De hoogte van de skin. |
skinpad | Het pad van de skin relatief ten opzichte van programma-data (bijv. skins/default). |
nb-countries | Het aantal landen (42 in de standaard skin). Het zou hetzelfde aantal landen moeten zijn als het aantal country-groepen hieronder. |
nb-nationalities | Het aantal nationaliteiten (6 in de standaard skin). Het zou hetzelfde aantal nationaliteiten moeten zijn als het aantal nationality-groepen hieronder. |
nb-continents | Het aantal continenten (6 in de standaard skin). Het zou hetzelfde aantal continenten moeten zijn als het aantal continent-groepen hieronder. |
pool | Het pad en naam van het pool-bestand relatief ten opzichte van skin-pad (bijv. Images/pool.svg). |
map-mask | Het pad en naam van het map mask-bestand relatief ten opzichte van skin-pad (bijv. Images/map-mask.png). |
formaatversie | De versie van het bestandsformaat van de skin (2.0). |
naam | De getoonde naam van de skin. |
beschr | De uitgebreide beschrijving van de skin. |
fighters-flag-y-diff | Het verschil in hoogte tussen de figuurtjes van vlaggen en kanonnen. |
width-between-flag-and-fighter | Het aantal pixels tussen het meest linkse pixel van de vlag en het meest rechtse pixel van een eenvoudig kanon (niet schietend of exploderend). |
Elke type sprite (vlag, infanterie, cavalerie, kanon, schietend kanon en exploderend kanon) is gedefinieerd door een groep. Alleen voor enkele sprites moet u een breedte opgeven. Deze opgave wordt gebruikt voor relatieve plaatsing tijdens animaties: De kanonnen, schietend of exploderend zullen niet “bewegen” rond de vlag van het land tijdens het gevecht.
Tabel 2.2. De onderdelen van een figuurtjes-groep
| Items | Beschrijving |
|---|---|
breedte | De standaardbreedte van de figuurtjesframes van de vlag. |
hoogte | De standaardhoogte van de figuurtjesframes van de vlag. |
frames | Het aantal frames van het figuurtje. |
versies | Het aantal versies van de vlagfiguurtjes. |
Elk land dat in de onu-groep voor komt, elk land heeft zijn eigen groep waarvan het label de naam van het land is. De tabel hieronder geeft een lijst met items van deze groepen.
Tabel 2.3. De onderdelen van een land-groep
| Items | Beschrijving |
|---|---|
id | De unieke identificatie van het land (dat een geheel getal moet zijn), moet bij nul (0) beginnen. |
naam | De getoonde naam van het land. |
<figuurtje>-punt | Elke soort figuurtje (vlag, infanterist, etc.) in het land wordt op een bepaalde positie getoond die is gedefinieerd door deze regel met twee door een komma gescheiden integers. |
neighbours | De lijst met ID´s van de buren van het geselecteerde land. |
Elke nationaliteit die in de onu-groep voor komt, elke nationaliteit heeft zijn eigen groep waarvan het label de naam van de nationaliteit is. De tabel hieronder geeft een lijst met items van deze groepen.
Tabel 2.4. De onderdelen van de nationaliteit-groep
| Items | Beschrijving |
|---|---|
naam | De naam van de nationaliteit (bijv. Japan). |
leider | De naam die aan de speler zal worden voorgesteld die deze nationaliteit kiest. |
vlag | De landsvlag-figuurtje-naam in het onu-SVG-bestand. |
Elk continent dat in de onu-groep voor komt, elk continent heeft zijn eigen groep waarvan het label de naam van het continent is. De tabel hieronder geeft een lijst met items van deze groepen.
Tabel 2.5. De onderdelen van de continent-groep
| Items | Beschrijving |
|---|---|
naam | De naam van het continent (bijv. Afrika). |
id | Het unieke identificatie van het continent (dat een geheel getal moet zijn). |
bonus | Het aantal door de speler verkregen legers, die aan het eind van een beurt alle landen in een continent bezit. |
continent-countries | De lijst met ID´s van de landen op dat continent. |
Elk doel dat in de onu-groep voor komt, elk doel heeft zijn eigen groep waarvan het label de naam van het doel is. De tabel hieronder geeft een lijst met items van deze groepen.
Tabel 2.6. Doelen
| Items | Beschrijving |
|---|---|
type | Het soort doel. Dat kunnen continenten, landen of een speler zijn. |
nbArmiesByCountry | Het minimum aantal legers instellen dat de speler in elk land moet plaatsen. |
nbCountries | Het aantal landen instellen dat de speler moet bezitten. |
nbCountriesFallback | Voor het type spelersdoel, als de doelspeler is gedood door iemand anders, dan is dit het aantal landen dat de speler in plaats daarvan moet gaan veroveren. |
beschr | Een volledige tekstbeschrijving van het doel met toepasselijke plaatshouders (meer documentatie is hier nodig), |
continenten | De lijst met continent-ID´s die de speler moet gaan veroveren. |
In deze map vindt u de knoppen die speciaal voor KsirK zijn en het pool-SVG-bestand met de kaart en alle figuurtjes.
U vindt in dit SVG-bestand de kaart en alle figuurtjes van het spel. Elk element is zodanig genaamd dat het spel elk apart kan selecteren en weergeven.
In de standaard skin, vindt u vlaggen, infanterie, cavalerie en kanonnen als figuurtjes. Infanterie stelt één leger voor, cavalerie vijf en kanonnen tien. Kanonnen zijn ook gebruikt om vechtende legers voor te stellen. Daarom zijn er drie verschillende kanonnen-figuurtjes: normaal statische of bewegend kanon, een vurende en een exploderende.
Elk figuurtje-afbeelding is een verzameling van verschillende weergaven van het object en elke weergave is een apart frame. Weergaven zijn verticaal georganiseerd en de frames horizontaal. De verdeling van de afbeelding in aparte frames kunt u vinden door de hoogte van de afbeelding te delen door het aantal weergaven en de breedte door het aantal frames. Deze gegevens zijn te vinden in het bestand onu.desktop.

Een voorbeeld van een figuurtje-afbeelding: cannon.png
Voor leger-figuurtjes, zijn er drie verschillende weergaven, van boven naar onder:
rechts kijkend
links kijkend en
vooraanzicht
Voor vlaggen is er maar een weergave. Alle achtergronden van figuurtjes moeten op transparant gezet zijn.

Een voorbeeld van een figuurtje-afbeelding voor vlag: italy.png
Tabel 2.7. De elementen van de pool
| Elementnaam | Voorbeeldafbeelding | Beschrijving |
|---|---|---|
kaart | ![]() | Kaart van de wereld van de figuurtjes. Landen kunnen willekeurige vormen hebben, maar moeten wel in op het oog herkenbare continenten gegroepeerd zijn, alleen door de locatie of ook door kleur. |
italië | ![]() | De vlag van het land Italië. Een dergelijk item is er voor elke nationaliteit. |
infanterie | ![]() | Pictogram dat een leger voorstelt. |
cavalerie | ![]() | Pictogram dat vijf legers voorstelt. |
geschut | ![]() | Pictogram dat tien legers voorstelt. |
vuren | ![]() | Pictogram dat legers voorstelt tijdens een gevecht. |
exploderen | ![]() | Pictogram dat een leger voorstelt dat een gevecht verliest. |
alaska | ![]() | De vorm van het land Alaska. Dit wordt gebruikt om het land te markeren. Voor elk land is er een dergelijke vorm. De kleur ervan is niet gebruikt. Daarom is kleurkeuze vrij. |
reddices | ![]() | De rode dobbelstenen zijn gebruikt om het resultaat van het gevecht te tonen. |
bluedices | ![]() | De blauwe dobbelstenen zijn gebruikt om het resultaat van het gevecht te tonen. |
mark1 | ![]() | Deze markering wordt toegevoegd aan figuurtjes in gevecht om het aantal legers dat ze voorstellen weer te geven, hier 1. Er is ook een mark2 en een mark3 markering. |
Dit is een png-bestand dat ook de kaart van skin´s wereld voorstelt, maar met gecodeerde kleuren zodat iemand elk land apart kan identificeren. Landen moeten tenminste dezelfde vorm hebben als de bijbehorende landen op het kaartbestand map.png. Het png-bestand is zodanig dat gebruikers overal in een zichtbaar land kunnen klikken en de juiste selecteren. Landen met kleine eilanden, zoals Indonesië, in de standaard kaart kunnen groter zijn dan het equivalent in het bestand map.png om de selectie van het land mogelijk te maken.

De blauwe component (in het RGB model) van een landenkleur identificeert het land: index 0 is land 0 in het bestand onu.xml, index 1 is land 1, etc. Wit (0xFFFFFF in RGB) identificeert de afwezigheid van een land (zeeën of, waarom ook niet, niemandsland).
De bestandsnamen zijn in de code vast ingesteld, u moet ze daarom niet wijzigen. De tabel hieronder toont alle knoppen die aanwezig moeten zijn.
Tabel 2.8. De knoppen van de GUI
| Afbeelding | Bestandsnaam | Beschrijving |
|---|---|---|
![]() | newNetGame.png | Probeert aan een netwerkspel deel te nemen. |
![]() | recycling.png | Nadat alle spelers hun legers hebben geplaatst, is het mogelijk om de verdeling te wijzigen (recycling genaamd). Deze knop vraagt om een dergelijke herverdeling te doen. |
![]() | recyclingFinished.png | Gekozen om niet te herverdelen. In alle gebruikersvensters moet op deze knop geklikt zijn om echt de distributie te beëindigen. |
![]() | nextPlayer.png | Beëindigt de beurt van de huidige speler en schakelt naar de volgende of naar de volgende ronde als de huidige speler de laatste was. |
![]() | attackOne.png | Kiest voor het starten van een aanval met een leger. |
![]() | attackTwo.png | Kiest voor het starten van een aanval met twee legers. |
![]() | attackThree.png | Kiest voor het starten van een aanval met drie legers. |
![]() | defendOne.png | Kiest voor het verdedigen van een aangevallen land met één leger. |
![]() | defendTwo.png | Kiest voor het verdedigen van een aangevallen land met twee legers. |
![]() | moveArmies.png | Kiest om legers tussen twee landen te verplaatsen (laatste actie in de beurt). |


















