
Screeps – An MMO strategy sandbox game for programmers - antfarm
https://screeps.com/
======
timvdalen
Really liked playing the beta (or was it alpha?) of this when it came out, but
the pricing didn't really make sense for me.

Paying per compute time works for businesses looking for flexible cloud
solutions, but as an individual this makes playing the game much less fun
(because you're constantly paying attention to the cost).

~~~
rhaps0dy
It also implies some sort of pay to win - with more compute you can presumably
do search algorithms that act smarter.

~~~
lawless123
it would also make the game cheaper if you figure out less computationally
intensive algos to win.

~~~
valarauca1

        it would also make the game cheaper if you figure out 
        les[s] computationally intensive algos to win.
    

Yes but a player who was an absolute shite programmer could just throw their
bank account at the problem.

While my O(n) solution maybe eloquent, they can afford O(n^n) so provided our
_players_ make the same outcome the algorithmic complexity is irrelevant if
you can afford it.

The game uses a soft turn based _ticks_ timer. So provided your O(n^n)
solution can execute in 1 tick. Their is no difference.

~~~
stcredzero
_While my O(n) solution maybe eloquent_

Screeps has a speech API?

~~~
KirinDave
Holy crap if Screeps allows webhooks to generate events to your modules you
could easily use api.ai to do just that!

~~~
stcredzero
Cool, but my comment was really a veiled correction to the previous comment's
English.

~~~
KirinDave
Cool, but that's an incredibly boring comment so I made it better. I am
confused why you did not accept this pull request.

~~~
stcredzero
_Cool, but that 's an incredibly boring comment_

It worked on you!

~~~
KirinDave
This is that thing where people throw a dart then paint a target around it.

------
zaroth
C# team did something similar when it first came out, I can't remember what it
was called. You wrote a module and submitted the code to run on their servers.
It was a similar 'critter' game where your code hunted for food, tried to
reproduce, and competed with other code running in the same sandbox. There was
a limited energy budget which was the main constraint on your code and meant
you had to conserve energy and optimize your moves in order for your organism
to thrive.

It was a really neat way to learn the language and highlighted the security of
the interpreter that they could sandbox your code.

I'm sure there must be precursors to even that, probably written in Smalltalk
or Mumps or something.

~~~
aquark
Terrarium ... still has a repo at
[https://github.com/terrariumapp](https://github.com/terrariumapp)

------
gargarplex
If I put on my Product Manager hat:

1) Invest in good art

2) Tell me how long it takes to get up and running. Is there a walkthrough
that can get me on the leaderboard in 10min? If so, I want to see it (and I
don't want to pay).

~~~
lurker456
To get on the leaderboard you need to buy the Steam version or a subscription.
There is a free one room sandbox at
[https://screeps.com/a/#!/sim](https://screeps.com/a/#!/sim) however

------
matty22
To anyone who plays, what's the ramp up time look like? It seems like such an
interesting concept, but I often find that games like this have so much of
their own vocabulary that it often doesn't feel like I'm writing JavaScript
(or insert language here), it feels like I'm writing ScreepsScript.

Same with Code Combat and some other coding games.

~~~
tedivm
I've been playing for over a year now and the ramp up really isn't bad at all-
there are a ton of new players starting all the time, and the map continues to
expand so new players aren't right up against old ones.

You can probably get a basic one room AI going in a weekend, and then continue
to expand it over time. The great thing about this game is that if you "die"
you still have all the progress you've made with your code, so restarting
doesn't hurt too much.

With regards to the "ScreepsScript" idea- there definitely is a small amount
of that but it's pretty minimal. There is also a huge community on the screeps
slack network that makes it a lot easier to get into the game.

------
libc
A lot of comments here are focusing on the pricing and ignoring the 'sandbox'
part of the game's description. There is a leaderboard you can try to climb
but it is reset monthly and isn't really shoved in your face. Beyond that
you're free to set whatever goals you want and go about them however you wish,
with the principles of other strategy games (harvest resources, build things,
attack enemies, etc.) to give you ideas. It's really a game about you and your
code and how it grows and evolves as your goals and strategies become more
complex.

Screeps is definitely worth trying, if for no other reason than to learn
javascript at a deeper level if you don't use it extensively. I do have a
couple of issues though:

The first is that it is quite resource intensive considering its simple 2D
visuals, both in the browser and the standalone client. I'm not sure if it is
just poor optimization or the javascript runtime but it shouldn't make my
machine hot. It'd be nice if this were addressed.

The second issue I have is the workflow, which doesn't lend itself well to
source control. The ingame editor works well enough, but its idea of a
"branch" is just a named copy of the code directory. I think there is a way to
integrate with github but I don't want to upload everything to the cloud just
to be able to track changes. It would be nice if this area were looked at and
made more flexible so we could use our tools of choice.

~~~
NhanH
They have well supported API to push your code into it (alongs with gulp/
grunt package to do so, I think).

So you can work in your favourite environment and just "deploy" the code as
normal, or am I missing anything?

~~~
libc
I admittedly haven't explored it in great detail, but when I've asked on their
Slack channel a lot of people seem to just use the ingame tools which are
"good enough".

~~~
tedivm
I think there may be a misunderstanding there. The community has built a ton
of third party tools (
[https://github.com/screepers](https://github.com/screepers) ) and even has
it's own alliance tracking site (
[http://www.leagueofautomatednations.com/](http://www.leagueofautomatednations.com/)
). I can't imagine anyone just using the ingame tools.

~~~
kotarou
Can confirm, the community tools are awesome. If someone is only playing using
ingame, without any of the external stuff, I feel they are missing a large
portion of the game.

------
yoodenvranx
While we are talking about games for programmers: Is there any game where
cheats and bots are allowed or even encouraged? Like an egoshooter or an RPG
which you can play in a normal way but you are also free to add your own
aimbots and wallhacks and stuff like that?

~~~
Leftium
"You Have to Hack This Massively Multiplayer Game to Beat It"

[http://pwnadventure.com/](http://pwnadventure.com/)

------
iblaine
Here's a neat map of screeps
[http://www.leagueofautomatednations.com/map](http://www.leagueofautomatednations.com/map)

~~~
lurker456
here are a few links:

ingame live map, sadly requires signup (free account will do):
[https://screeps.com/a/#!/map](https://screeps.com/a/#!/map)

shows alliances (player made, not part of the game, js heavy):
[http://www.leagueofautomatednations.com/map](http://www.leagueofautomatednations.com/map)

another alliance view:
[https://pbs.twimg.com/media/Cz1HZrEUcAExwYa.jpg:large](https://pbs.twimg.com/media/Cz1HZrEUcAExwYa.jpg:large)

------
MayeulC
This game reminds me of leekwars [1], though the latter is not an MMO. And is
(was?) completely free. I feel that AI games like these can be a great
introduction to programming (and maybe to emphasise the usefulness of free
software, or at least free libraries/tools).

[1] [https://leekwars.com/](https://leekwars.com/)

------
notheguyouthink
Would it be possible to (now or eventually) play this game with "all"
languages? Part of the value of this to me, would be doing it in languages i
love, or want to learn, etc. Using a language i dislike, or even are
indifferent about, means the gameplay itself has to pull all of my
entertainment.. weight, if you will.

Thoughts?

~~~
ggrochow
You can play this game in languages that transpile to javascript, but sadly
the server runs all your code and is only setup to handle JS.

Thankfully tons of stuff transpiles to JS easily, and off the top of my head,
I know theres a python starter somewhere, and im sure you could find some for
other languages

------
lurker456
quite pricey for what it is, but well worth it if you've got a programming
itch to scratch and like playing RTS games.

------
goodjam
How far are we from paying people to play a programming game, while using
their code/solutions for solving problems?

~~~
lewilewilewi
That's basically this, right:
[https://www.starfighters.io/](https://www.starfighters.io/)

~~~
nottorp
The actual game site looks slashdotted... well, HN-ed...

~~~
lurker456
I too tried to sign up, unfortunately it has closed down

~~~
nottorp
Well, the SSL cert having expired 135 days ago should have been a hint - which
i ignored ofc.

~~~
nomadic_09
I almost feel guilty.

I remember hearing about starfighters.io sometime back and putting on my ever-
growing tab of "Visit on freetime", but now it's--in all likelihood--gone
forever.

------
KirinDave
This looks like a very fun opportunity to really bite into PureScript and use
it in unusual contexts!

~~~
hoodunit
Yes, it's fun. I wrote a wrapper for playing Screeps with PureScript and a
blog post about it here: [http://blog.ndk.io/purescript-
ffi.html](http://blog.ndk.io/purescript-ffi.html).

~~~
KirinDave
I just have to say that a mere upvote does not convey the level of my
enthusiasm for what you linked me. I'm so glad someone else thought of it too.

