BarryOSeven | woensdag 27 juli 2016 @ 13:48 | |
Goedemiddag! Heb een gaaf spel gevonden namelijk: Screeps ![]() https://screeps.com/ Steam Officiele beschrijving: Wat houdt het spel in: Je krijgt een room met daarin een controller. That's it. Het is de bedoeling dat je in javascript code schrijft die jouw room aanstuurt en op de juiste moment de beslissingen neemt zodat je een werkende economie hebt. Je kunt ook alles met de hand doen, maar dat is op ten duur geen optie meer. Het spel begint op het moment dat je de code klaar hebt om je room te managen en je in aanraking gaat komen met andere spelers. Het is namelijk de bedoeling dat je meer resources krijgt en dus zul je aangrenzende rooms moeten overnemen. Je zult een defence perimeter moeten opzetten en aansturen. Zoals op het dashboard plaatje weergegeven heb ik besloten dat mijn defense perimeter actief is als alle torens genoeg energie hebben om te kunnen aanvallen. ![]() Eerste room van BarryOSeven ![]() Code schrijf je gewoon in je eigen editor Zo zijn er allerhande professionele tools beschikbaar om je in je voortgang te begeleiden. Zoals dit geweldige nerdy dashboard: ![]() Dashboard van BarryOSeven Zoals jullie kunnen zien: factorio on steroids. Simpelweg awesome. Zijn er meer mensen die dit spelen of willen spelen? Handige linkjes: Dit is de tutorial Hier staan de API docs Algemeen support overzicht Screeps Slack community chat <--- absulute must GitHub met tools en voorbeeld AI Screeps Wiki voor nog meer uitgebreide info Screeps Reddit Screeps StackOverflow Nog meer tools [ Bericht 2% gewijzigd door 2dope op 05-08-2016 14:30:11 ] | ||
dimmak | woensdag 27 juli 2016 @ 13:56 | |
Leuke manier om te leren. ![]() | ||
BarryOSeven | woensdag 27 juli 2016 @ 14:03 | |
Yup, er zit een gave community bij die via slack elkaar helpt. | ||
mschol | woensdag 27 juli 2016 @ 14:17 | |
juist, abonnements basis dus als je serieus mee wil doen aan de MP | ||
BarryOSeven | woensdag 27 juli 2016 @ 14:21 | |
Klopt, er zit wel een fee bij van 9 euro in de maand. Het is verder niet pay2win in de zin van dat je meer CPU kunt kopen voor meer geld (wat ze eerst wilden doen) Je kunt levelen en elk level krijg je 30CPU punten erbij tot een limiet van 300. Als je via steam koopt krijg je voor altijd 10CPU, voor meer moet je inderdaad je abonnement activeren. | ||
t4rt4rus | woensdag 27 juli 2016 @ 19:15 | |
Dit lijkt mij ook wel leuk, eens even naar kijken. | ||
mschol | donderdag 28 juli 2016 @ 15:46 | |
Zowiezo maar op de wishlist, maar volgens mij ga ik gigantisch falen in dit spel ![]() | ||
BarryOSeven | donderdag 28 juli 2016 @ 17:16 | |
In de slack channel van de game is men erg behulpzaam. Een goede sfeer voor een MMORPG tot nu toe. Verder gewoon beginnen met een creep resources laten ophalen en langzaam uitbreiden. Je hebt wel even de tijd om in te komen zeg maar. | ||
Teeno | zaterdag 30 juli 2016 @ 17:49 | |
Gekocht en weer gerefund, mij te moeilijk ![]() | ||
BarryOSeven | zondag 31 juli 2016 @ 13:20 | |
Alright jammer maar kan het me wel voorstellen. Vannacht voor het eerst wat delen van de economie dynamisch gemaakt. Zo worden er exact de juiste hoeveelheid upgraders gespawned voor de income die ik heb om winstgevend te zijn. Valt nog een hoop te optimaliseren. Na een week spelen ben ik nog steeds enorm fan. Beste spel op de markt qua vrijheid me dunkt met een leuke volwassen community. Gisteren ook het renew/recyclen van creeps geïmplementeerd zodat ze zichzelf upgraden naar een betere versie of de ticksToLive weer naar het start niveau brengt. (Groene bolletje screenshot) ![]() ![]() Sinds de laatste update van een week terug is er de creep.say functionaliteit geïntroduceerd. Dit wil zeggen dat de creeps in de publieke ruimte zaken kunnen zeggen die opgevangen kunnen worden door andere spelers. Resultaat van die introductie is dat er nu op slack een groep mensen bezig is om diplomacy te gaan gebruiken met die creep.say. De beschrijving wordt nu opgesteld. En dat is wat het zo gaaf maakt imho, er zullen in de toekomst denk ik alliences ontstaan die versleuteld met elkaar communiceren via creep.say. Met de juiste broncode kun je orders ontsleutelen en dat soort spul. Hoewel creep.say nu nog voornamelijk wordt gebruikt door de rickrollers ![]()
De eerste comment op de creep.say changelog ![]() http://support.screeps.co(...)Changelog-2016-07-22 | ||
Chuck-N0rr1s | vrijdag 5 augustus 2016 @ 14:06 | |
Is er ook een guide? | ||
BarryOSeven | vrijdag 5 augustus 2016 @ 14:24 | |
Dit is de tutorial Hier staan de API docs Algemeen support overzicht Screeps Slack community chat <--- absulute must GitHub met tools en voorbeeld AI Screeps Wiki voor nog meer uitgebreide info Screeps Reddit Screeps StackOverflow Nog meer tools ![]() Genoeg te doen ![]() | ||
Chuck-N0rr1s | vrijdag 5 augustus 2016 @ 14:26 | |
![]() ![]() | ||
BarryOSeven | vrijdag 5 augustus 2016 @ 14:26 | |
javascript ![]() | ||
Chuck-N0rr1s | vrijdag 5 augustus 2016 @ 14:29 | |
![]() | ||
BarryOSeven | vrijdag 5 augustus 2016 @ 14:40 | |
JavaScript is wel helemaal hot tegenwoordig, als je dit nu leert zit je wel goed de komende 5 jaar. Even een update mijner zijde, na 2 weken nog steeds zo enthousiast al in het begin. Heb de eerste stapjes gedaan in een multi-room omgeving waarmee mijn architectuur verrassend genoeg zonder grote problemen kon omgaan. Meteen heb ik een claimer rol gemaakt en heb 2 claimers op pad gestuurd de naburige rooms over te kunnen nemen. Helaas kon dat pas op GCL 2 (Praise the GCL ![]() Verder heb ik een aantal optimalisaties doorgevoerd en heb zaken herschreven om object oriented te gaan werken. Gisteren dacht ik nog even mijn Defence code aan te passen en was de defence perimeter 15 minuten offline. Exact op dat moment kwam er een NPC mijn room in (gebeurt hooguit een paar keer per dag) en heeft mijn complete basis uitgemoord. Gisteren kwam er op de communitychat al iemand aan met het gevoel als je nieuwe SpawnCode gaat uitproberen: ![]() Altijd hetzelfde liedje ![]() | ||
Chuck-N0rr1s | vrijdag 5 augustus 2016 @ 14:54 | |
![]() ![]() | ||
t4rt4rus | vrijdag 5 augustus 2016 @ 18:37 | |
Je kan het toch testen in een test server? | ||
BarryOSeven | vrijdag 5 augustus 2016 @ 19:37 | |
Yup er is een PTR alleen heb ik het spel pas twee weken dus is mijn account nog niet geactiveerd daar. Verder net ook weer een mooie actie. Ik wil graag een room van een buurman, maar ik had nog geen attackers en behaviour gemaakt daarvoor. Dus ik spawn een leger zonder de code goed te testen en ren op die room af. Nadat zijn basis kapot was kwam ik terug om mijn basis helemaal uitgemoord te zien. Nou had ik dus een fout gemaakt met het selecteren van targets voor de harvester waardoor de hele economie in de soep liep. Maar wel erg gaaf. De eerste aanval is een succes geweest, ook voor de tegenstander. ![]() | ||
topdeck | zondag 7 augustus 2016 @ 09:16 | |
JavaScript ![]() Interessant maar kun je geen andere taal gebruiken? | ||
topdeck | zondag 7 augustus 2016 @ 09:49 | |
Andere language kan dus wel zolzng die naar Js compiled. Ik GA denk ik coffeescript of typescript checken hiervoor https://github.com/jashke(...)s-that-compile-to-js | ||
BarryOSeven | maandag 8 augustus 2016 @ 15:04 | |
TypeScript is een superset van javascript. Gebruik het zelf ook. De volledige development environment is los te trekken van het spel. Via Grunt kun je bijvoorbeeld je spul doorsturen. | ||
Bosbeetle | vrijdag 28 juli 2023 @ 20:10 | |
sesam | ||
FlippingCoin | vrijdag 28 juli 2023 @ 20:16 | |
Thanks @Bosbeetle Ik heb hem gekocht, ik heb al aardige ervaring met JavaScript en TypeScript. Ik ga er van het weekend eens mee spelen, misschien een goede kans om eens purescript uit te proberen, of misschien gewoon met javascript. Zelf vind ik javascript wel een fijne taal, het heeft vele nadelen maar ook zeker voordelen, de array methods(map, filter, reduce etc) zijn erg fijn en ik heb nog geen programmeertaal gezien welke hier beter mee omgaat. | ||
KoningWouter | vrijdag 28 juli 2023 @ 20:35 | |
Have fun! Ik doe ook mee in dit topic. | ||
KoningWouter | zaterdag 29 juli 2023 @ 11:04 | |
Bijna alles aan deze game is open source. Er zijn goede starters te krijgen voor TypeScript. Zelf draai ik ook TypeScript met een OS Architectuur en state machines voor de creeps. Ben begonnen op Shard 3 (dat is waar je 20CPU krijgt als je het spel hebt gekocht) maar ben nu bezig met intershard code om een Room te claimen op Shard 2. Want ik heb ooit een lifetime subscription gekocht xD En zoek een room uit met 2 sources en exits naar andere rooms voor je outposts. Wat wel aan te raden is om een private server op te zetten. Die kun je zo snel als je wilt zetten, en is erg handig voor debuggen. Ik deploy mn bot daar naar toe en heb ook andere bots toegevoegd zodat ik tegen mezelf kan vechten en oefenen. Hier is een simpele guide om een private server op te zetten: https://www.reddit.com/r/(...)up/?onetap_auto=true Let wel op dat je dan ubuntu 20.04 gebruikt, hoger werkt niet out of the box. Als je verder nog vragen hebt beantwoord ik ze graag. Oja en zet zo snel mogelijk een IDE als VSCode op om te proggen en de code te pushen naar de servers. Je wilt niet eeuwig in dat kleine venstertje proggen. Maar het is simpel beginnen en je komt vanzelf zo ver dat je weer een refactor of zelfs een rewrite kan doen. Op shard 3 is het vrij peaceful en echt goed voor beginners. Op shard2 zitten mensen met hele geavanceerde bots waar je zonder room support echt geen voet aan de grond krijgt. En schrik niet als je room platgewalst wordt. Je codebase blijft bestaan en je code wordt alleen maar beter als je gevechten aan gaat. En natuurlijk de API https://docs.screeps.com/api/ | ||
KoningWouter | zondag 30 juli 2023 @ 09:17 | |
Gisteren uren bezig geweest code te schrijven die tussen servers kan werken met behulp van het IntershardMemory. Dan eindelijk een room weten te bemachtigen, komt er een advanced bot aan die mn room direct plat walst. Shit happens, had ik maar een (ranged) attacker mee moeten sturen. Was wel een beetje pissig maar de code is niet weg. Moet nog wel een hoop aan gebeuren want er zit geen garbagecollection in atm en dat is nog knap ingewikkeld. Maar goed ik verander van strategie. Er zit op shard3 nog een vrije room boven alleen zit die potdicht met muren en ramparts. Dus ik heb zojuist een dismantle process geschreven om een gat in de verdediging te slaan en zo die room te bemachtigen. Heb ik nog een room dicht bij portals naar Shard2. Fingers crossed. | ||
KoningWouter | maandag 31 juli 2023 @ 17:22 | |
Heb gisteren besloten te stoppen met TypeScript en JavaScript. Ben nu van plan een OS te maken in Rust en WASM voor snelheid. Ik had nog helemaal geen ervaring met Rust en kom er maar moeizaam doorheen. Krijg het nu niet voor elkaar een memory object te verwijderen wat wel essentieel is, Morgen ga ik er weer mee verder met frisse zin. Hopelijk lukt het dan wel. Vanavond maar weer eens wat tutorials doorlezen. | ||
KoningWouter | woensdag 2 augustus 2023 @ 11:32 | |
Vandaag lekker bezig geweest (en ik stop nog lang niet) Ben bezig mijn kernel te implementeren. Ik krijg het al voor elkaar processen toe te voegen, na mijn pauze ga ik deze processen serializen en deserializen tussen game ticks. Op dit moment zit ik ruim onder de 1 cpu gebruik. Dus ik heb er goede moed in dat ik heel wat verder kom dan met Typescript en Javascript. En het is fantastisch weer eens een nieuwe programmeer taal te leren. Vind het nog wel moeilijk met ownership en lifetimes maar daar kom ik wel uit. | ||
KoningWouter | zaterdag 5 augustus 2023 @ 10:48 | |
Na een paar dagen klooien met de nieuwe taal Rust heb ik het dan toch eindelijk voor elkaar. Een werkende kernel met processen waarbij elk process zijn eigen memory heeft. Niet dat het allemaal perfect is, want de taal is toch wel erg moeilijk vind ik. De compiler is voor masochisten. Als je de ene error op lost krijg je er 10 bij. Maar dat zal ook wel door de nieuwigheid komen. Moet zeggen dat ik het wel erg leuk vind zo'n nieuwe taal leren. Vanmiddag dan maar eens beginnen aan de game logic. Eens kijken of ik een paar creeps aan de gang kan krijgen. | ||
Bosbeetle | zaterdag 5 augustus 2023 @ 20:57 | |
Dat is toch juist de filosofie erachter! | ||
KoningWouter | zondag 6 augustus 2023 @ 08:06 | |
Yup, en het is ook heel wat fijner dat de compiler aangeeft dat iets niet mag in plaats van dat je met buffer overflows en null pointers zit te klooien als het draait. | ||
KoningWouter | dinsdag 8 augustus 2023 @ 11:42 | |
Gaat lekker nu. Ben lekker bezig processen te implementeren. En het belangrijkste is wel dat mn CPU gebruik tussen de 2 en 3 schommelt. In TypeScript was dat toch wel 5-6. Nadeel is dan wel dat de binary vrij groot is. Ik heb nu al 10% van m'n code storage vol. Maar vette taal dat Rust. Op het begin wel moeilijk met borrows en ownerships en dat soort spul. Maar nu kom ik er lekker doorheen. Jammer dat er niemand is om het samen mee te spelen en een allience te vormen. | ||
KoningWouter | donderdag 24 augustus 2023 @ 16:54 | |
We zijn weer wat verder. Heb de afgelopen maand gespendeerd om goed Rust te leren programmeren. Het is best een erg moeilijke taal maar ik heb alle Rustling oefeningen afgerond en begin me er steeds beter in thuis te voelen. Nu weer terug naar Screeps. Heb mijn hele kernel omgegooid: Waar het eerst met downcasts werkte en string comparisons heb ik het nu met een enum gedaan. Die zijn heel erg krachtig in Rust. Wel heb ik een probleem met mijn scout creep. Die trekt toch soms op een of andere manier 20cpu leeg bij een simpele move commando. Ergens zit nog een fout. Maar nog steeds een erg tof spel. Jammer dat ik mijn oude JS/TS repository heb verwijderd want daar zat nog een schat aan knowledge in. Maar goed ik wilde met Rust echt opnieuw beginnen. Dus ben druk bezig te komen waar ik al was. Heb wel mijn roomplanner en de floodfill algoritmes die daar bij komen kijken dit keer echt goed geprogrammeerd. Zo bespaar ik toch een behoorlijke ruimte die eerst bezet werd door roads en zo. Nouja dat was het weer voor nu, ben druk bezig op mijn private server. Ben ook begonnen op de MMO server maar die heeft een tickrate van 3,5 seconde dus dat duurt nog wel even voordat ik daar ben waar ik moet zijn. | ||
KoningWouter | woensdag 30 augustus 2023 @ 08:13 | |
Drie en halve dag ben ik bezig geweest met mijn minimal cut algoritme om te berekenen waar ik de ramparts (energy shields) moet plaatsen om alles te beschermen maar toch zo min mogelijk ramparts te hoeven plaatsen. (Je moet je ramparts upgraden en dat kost miljoenen energy) Het was me een ellende. Gelukkig had ik nog voorbeeld code maar het omschrijven van javascript naar rust was een hele kluif. Uiteindelijk bleek ik een spelfout te hebben waar ik anderhalve dag op vast zat. ![]() Maar het werkt nu gelukkig en nu ziet mijn basis er zo uit. (Helemaal automatisch gebouwd) ![]() | ||
FlippingCoin | woensdag 30 augustus 2023 @ 08:18 | |
Ik ben er nog niet aan toegekomen. ![]() Ik heb hem wel gekocht dus komt vanzelf dat ik hem speel, zoveel games heb ik niet op steam. | ||
KoningWouter | woensdag 30 augustus 2023 @ 08:27 | |
Hehe het is een redelijk tijdloos spel dus neem je tijd. De eerste tijd ben je toch vooral met je zelf aan het knokken om alles draaiende te krijgen (en vooral te houden). Geef maar een seintje als je bent begonnen. | ||
FlippingCoin | woensdag 30 augustus 2023 @ 08:31 | |
Ja ik zal het in dit topic plaatsen. ![]() |