Last night, for the first time, the pieces came together in something that could almost qualify as a 'game-like' experience!
The current version of the protoype looks like this.
In the Core Grid window you see a small grid of empty cores. There's a certain amount of Grid Power (50000 in the screenshot) that will be distributed to the cores and spend executing instructions. The instruction set contains a 'special' instruction (ISC) that will increase the Score by a specified amount (between 0 and 255). The amount to raise the score by equals the energy cost of executing the instruction. So if all Grid Power would be spend exclusively on ISC instructions you'd end with a perfect final Score of 50000.
But here's the challenge: You may only write a programm to ONE SINGLE CORE!
How can you achieve a high score?
A naive approach is to write a program consisting of only 2 instructions. The first would increase the score by a certain amount (like e.g. 31) the second would move the instruction pointer back to the first.
This strategy generates only 2914 points. The main problem is that only one of 16 cores actually contributes to achieving the goal of a high score while the remaining 15 waste all the energy they receive on No-Op operations.
A more clever solution is to create a program that will first copy itself to adjacent cores and only then work on increasing the score. That way the program will spread all over the grid and eventually all available cores can contribute to the overall score!
That way I managed to convert 80% of the available energy into score, achieving a score of
39931.
Writing that program (you can see it in the first screenshot) and optimizing it was pretty entertaining. With more work on the IDE, documentation and coming up with interesting challenges I can imagine this to be a lot of fun if you're crazy enough to like that kind of stuff!
So in a playable version there could be a set of increasingly difficult puzzle-levels to beat. There's no reason why all challenges should start with a blank grid and there's the whole energy transfer and shielding thing that the above example doesn't even touch so it shouldn't get boring quickly.
QuestionsI'm unsure about how to wrap this core gameplay up to make it appealing.
Would players be more interested if the challenges were embedded in some kind of cyberpunk narrative?
Is it cool to break the fourth wall and address the player directly by giving him the tools and documentation like he would interact with any other 'serious' program on his computer? Or does it need to be presented in a fullscreen, traditional video game style?
Do you want immersion ("I'm this crazy talented decker hacking an alien AI or whatever") or rather an intellectual real-world challenge, maybe in a competative style (highscore boards, a community forum) like playing chess as a sport?
Do you know any similar games that I could have a look at for ideas? (Space Chem comes to mind)
I'd really love to hear your opinions on this!