Uživatelské Projekty

Je možné používat TrashSim pro vlastní projekty. TrashSim umožňuje automatické načtení hráčských dat, které budou použity pro simulaci.

Použijte API klíč

Pro automatické načtení obránce můžete použít následující URL obsahující 1 požadovaný parametr a volitelně i jazyk:

  • https://trashsim.universeview.be/?SR_KEY={KEY}
  • https://trashsim.universeview.be/{LANG}?SR_KEY={KEY}

Parametry:

{KEY} (požadováno) - mělo by být nahrazeno klíčem špionážní zprávy, který se objeví po stisknutí tlačítka API u špionážní zprávy.
{LANG} (volitelné) - může být nahrazeno jazykem který podporuje TrashSim, to může být výhoda pro vaše jiným jazykem mluvící uživatele. (podporované jazyky)

Příklad:

https://trashsim.universeview.be/en?SR_KEY=sr-en-680-fc3b242fb73e700f3da54748844d90506a0cd705

Použijte funkci předvyplnit

Je také možné automaticky načíst více hráčů přes base64 zakódovaný JSON. Pro provedení tohoto můžete použít následující url, prosím všimněte si, že používáme znak # a ne otazník. Tato metoda zabezpečuje náš caching systém:

  • https://trashsim.universeview.be/#prefill={BASE64JSON}
  • https://trashsim.universeview.be/{LANG}#prefill={BASE64JSON}

Parametry:

{BASE64JSON} (požadováno) - mělo by být nahrazeno base64 zakódovaným JSON vláknem. Tento formát bude níže probrán dále.
{LANG} (volitelné) - může být nahrazeno jazykem který podporuje TrashSim, to může být výhoda pro vaše jiným jazykem mluvící uživatele. (podporované jazyky)

JSON formát:

JSON je velmi jednoduchý na pochopení, kořen může obsahovat 3 vlastnosti:

  • 0 -> Obsahuje útočící skupinu, formaci útočících hráčů.
  • 1 -> Obsahuje obrannou skupinu, formaci obránců.
  • settings -> Obsahuje nastavení vesmíru.

Hráčský element obsahuje následující vlastnosti, které jsou nastavitelné. Suroviny, výzkum, lodě, obrana a planeta. Jména výzkumů, lodí a obran jsou uvedena počátečními písmeny.

Útočníci i obránci můžou obsahovat libovolný počet hráčů (samozřejmě můžete poslat jen 16 letek, takže přidávání dalších není třeba). U obránců bude první považován za hlavního, který může mít i obranu a suroviny. Dole najdete 2 tabulky, první tabulka obsahuje shrnutí možných dat u hráčů a druhá tabulka obsahuje informace k nastavení vesmíru.

KlíčSubklíčHodnotaPříklad
class *0 ... 30
resourcesmetalinteger100
crystalinteger50
deuteriuminteger10
research106{"level": integer}{"level": 10}
...
199{"level": integer}{"level": 4}
ships202{"count": integer}{"count": 1347}
...
219{"count": integer}{"count": 453}
defence401{"count": integer}{"count": 2794}
...
503{"count": integer}{"count": 20}
planetgalaxyinteger3
systeminteger287
positioninteger11
speedinteger80

* The class property supports 4 values: 0, 1, 2, 3. Being: 0: no class, 1: Collector, 2: General, 3: Discoverer.

Samozřejmě potřebujete přidávat klíče a jejich hodnoty jen tam, kde to dává smysl. Například: útočník nepotřebuje suroviny a obranu a hlavní obránce nepotřebuje klíč 'speed', nebo výzkum pohonů. Pokud jde o výzkum pouze pohonné a bojové technologie budou fungovat.

Klíč 'settings' má jen následující hodnoty, které jsou všechny povinné kromě plunder (% pole trosek) a simulations (počet simulací).

KlíčHodnotaPříklad
speed_fleetinteger2
galaxiesinteger7
systemsinteger499
rapid_fireinteger1
def_to_tF0 or 10
debris_factor0.0 to 1.00.3
repair_factor0.0 to 1.00.7
donut_galaxy0 or 11
donut_system0 or 11
plunder50, 75 or 10075
simulations1 to ...15
characterClassesEnabled0 or 11
minerBonusFasterTradingShipsinteger (%)100
minerBonusIncreasedCargoCapacityForTradingShipsinteger (%)25
warriorBonusFasterCombatShipsinteger (%)100
warriorBonusFasterRecyclersinteger (%)100
warriorBonusRecyclerFuelConsumptioninteger (%)25
combatDebrisFieldLimitinteger (%)25

Příklad dat JSONu:

{"0":[{"research":{"109":{"level":17},"110":{"level":17},"111":{"level":19},"115":{"level":17},"117":{"level":14},"118":{"level":13}},"ships":{"203":{"count":124},"204":{"count":5342},"206":{"count":1943}},"planet":{"galaxy":1,"system":124,"position":8},"speed":80}],"1":[{"resources":{"metal":5932712,"crystal":3742953,"deuterium":1284233},"research":{"109":{"level":15},"110":{"level":14},"111":{"level":16},"115":{"level":16},"117":{"level":13},"118":{"level":11}},"ships":{"202":{"count":2353},"203":{"count":438}},"defence":{"401":{"count":3842},"402":{"count":1438},"407":{"count":1},"502":{"count":10}},"planet":{"galaxy":2,"system":235,"position":11}}],"settings":{"speed_fleet":"2","galaxies":"7","systems":"499","rapid_fire":"1","def_to_tF":"0","debris_factor":"0.5","donut_galaxy":"1","donut_system":"1","plunder":50,"simulations":15}}

JSON příklad zakódovaný v Base64:

eyIwIjpbeyJyZXNlYXJjaCI6eyIxMDkiOnsibGV2ZWwiOjE3fSwiMTEwIjp7ImxldmVsIjoxN30sIjExMSI6eyJsZXZlbCI6MTl9LCIxMTUiOnsibGV2ZWwiOjE3fSwiMTE3Ijp7ImxldmVsIjoxNH0sIjExOCI6eyJsZXZlbCI6MTN9fSwic2hpcHMiOnsiMjAzIjp7ImNvdW50IjoxMjR9LCIyMDQiOnsiY291bnQiOjUzNDJ9LCIyMDYiOnsiY291bnQiOjE5NDN9fSwicGxhbmV0Ijp7ImdhbGF4eSI6MSwic3lzdGVtIjoxMjQsInBvc2l0aW9uIjo4fSwic3BlZWQiOjgwfV0sIjEiOlt7InJlc291cmNlcyI6eyJtZXRhbCI6NTkzMjcxMiwiY3J5c3RhbCI6Mzc0Mjk1MywiZGV1dGVyaXVtIjoxMjg0MjMzfSwicmVzZWFyY2giOnsiMTA5Ijp7ImxldmVsIjoxNX0sIjExMCI6eyJsZXZlbCI6MTR9LCIxMTEiOnsibGV2ZWwiOjE2fSwiMTE1Ijp7ImxldmVsIjoxNn0sIjExNyI6eyJsZXZlbCI6MTN9LCIxMTgiOnsibGV2ZWwiOjExfX0sInNoaXBzIjp7IjIwMiI6eyJjb3VudCI6MjM1M30sIjIwMyI6eyJjb3VudCI6NDM4fX0sImRlZmVuY2UiOnsiNDAxIjp7ImNvdW50IjozODQyfSwiNDAyIjp7ImNvdW50IjoxNDM4fSwiNDA3Ijp7ImNvdW50IjoxfSwiNTAyIjp7ImNvdW50IjoxMH19LCJwbGFuZXQiOnsiZ2FsYXh5IjoyLCJzeXN0ZW0iOjIzNSwicG9zaXRpb24iOjExfX1dLCJzZXR0aW5ncyI6eyJzcGVlZF9mbGVldCI6IjIiLCJnYWxheGllcyI6IjciLCJzeXN0ZW1zIjoiNDk5IiwicmFwaWRfZmlyZSI6IjEiLCJkZWZfdG9fdEYiOiIwIiwiZGVicmlzX2ZhY3RvciI6IjAuNSIsImRvbnV0X2dhbGF4eSI6IjEiLCJkb251dF9zeXN0ZW0iOiIxIiwicGx1bmRlciI6NTAsInNpbXVsYXRpb25zIjoxNX19

Úplný příklad:

Následující příklad přidá 124 Velkých Transportérů do letky prvního útočníka a nastaví rychlost letky na 2.

https://trashsim.universeview.be/en#prefill=eyIwIjpbeyJzaGlwcyI6eyIyMDMiOnsiY291bnQiOjEyNH19fV0sInNldHRpbmdzIjp7InNwZWVkX2ZsZWV0IjoiMiJ9fQ==

Použitý JSON: {"0":[{"ships":{"203":{"count":124}}}],"settings":{"speed_fleet":"2"}}

Dole najdete seznam podporovaných jazyků (implicitně je 'en')::

cs da de en es el fr hr it nl hu pl pt pt-BR ru ro sv tr ko zh