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íč | Hodnota | Příklad |
---|---|---|---|
class * | 0 ... 3 | 0 | |
resources | metal | integer | 100 |
crystal | integer | 50 | |
deuterium | integer | 10 | |
research | 106 | {"level": integer} | {"level": 10} |
... | |||
199 | {"level": integer} | {"level": 4} | |
ships | 202 | {"count": integer} | {"count": 1347} |
... | |||
219 | {"count": integer} | {"count": 453} | |
defence | 401 | {"count": integer} | {"count": 2794} |
... | |||
503 | {"count": integer} | {"count": 20} | |
planet | galaxy | integer | 3 |
system | integer | 287 | |
position | integer | 11 | |
speed | integer | 80 |
* 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íč | Hodnota | Příklad |
---|---|---|
speed_fleet | integer | 2 |
galaxies | integer | 7 |
systems | integer | 499 |
rapid_fire | integer | 1 |
def_to_tF | 0 or 1 | 0 |
debris_factor | 0.0 to 1.0 | 0.3 |
repair_factor | 0.0 to 1.0 | 0.7 |
donut_galaxy | 0 or 1 | 1 |
donut_system | 0 or 1 | 1 |
plunder | 50, 75 or 100 | 75 |
simulations | 1 to ... | 15 |
characterClassesEnabled | 0 or 1 | 1 |
minerBonusFasterTradingShips | integer (%) | 100 |
minerBonusIncreasedCargoCapacityForTradingShips | integer (%) | 25 |
warriorBonusFasterCombatShips | integer (%) | 100 |
warriorBonusFasterRecyclers | integer (%) | 100 |
warriorBonusRecyclerFuelConsumption | integer (%) | 25 |
combatDebrisFieldLimit | integer (%) | 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')::