Game
Web Calculation Game
6 years ago

The challenge that was creating Web Calculation Game


Before you start judging this little game, I need you to take in mind what I was trying to accomplish

5d09427182ab7.png

The ‘Web Calculation Game’ is as a game not so much special. Anyone who knows how to code should be able to make it, but where the challenge for me was that I made the programming language used to create it, tadaa, all by myself, and this game was only set up to demonstrate what the language can do already, even though it’s in a pretty premature state yet.

It was kind of a bucket list challenge for me, after setting up the to esoteric languages Evil and Spam, to create a serious programming language that actually works. Now I may need some help to make it able to compete to the languages already out there, but when I see, how I could set up this little game, I think the possibility is there already to set an actually fully functional game engine up with it, to create simple games. Heck, with a bit of tweaking even large complex games should in theory be doable now, even though the language suffers still on a few crucial points.

The Scyndi programming language is heavily inspired on Pascal, and may even be seen as a simplefied version of Pascal, although some influences from other languages such as C and Lua can also be seen (the keyword ‘void’ is merely an alias of the official keyword ‘procedure’, but I always like the word ‘void’ in C so much) :P
The code you see in the screenshot is actually a small snippet of the code I used to create this game. Now as far as this game was concerned my biggest challenge was actually the callback system that JavaScript programs heavily rely on, and Scyndi still misses a few key features to make it fully callback-friendly, but yet a lot could already be done. I hate callback based programming, though, but that was no excuse to make this all working.

Scyndi is a transcompiling language, meaning that the compiler outputs in a different language. At the present stage outputs to either JavaScript or Lua. I hope to expand this further in the future.
My biggest issues are ‘delegates’ (which is what C# calls them) or variables holding the pointer of a function, and which can even be called as functions, this was also the reason why I now needed inlines to link my functions to the JavaScript callback, in stead of just linking them using Scyndi functions. Delegates is on my list. I am also not fully sure how I should cover classes, and if I ever were to release Scyndi as a full programming tool, finding a good way to cover those will be essential. Boolean expressions do work, but they are not anywhere near satisfaction. Also something i want to have covered.

If people would start to help me to turn Scyndi into something cool, my main focus was simplicity. Scyndi was meant to be “beginner friendly”, and yet to be powerful enough for an experienced coder to use. It’s for that reason that I used as little data-types as I could, and that classes and delegates are the only two I wanted to add. My big dream is to make Scyndi able to even translate to C or C++, but C not having official string support and the lack of a garbage collector, make things harder on me. Hey, I’m pretty new in this field, and this is my first attempt to actually do this (well, not entirely true, as I did write a very terrible nameless scripting language for the original Fairy Tale game, but it was only designed to cover some things you really don’t want the main engine to do itself. Most of all scenario stuff, and it really cannot compare to a real language, like Scyndi can).

If you wanna give Scyndi a try, well, the link to my github repository is in the description, and if you want a fully well configured version of Scyndi with the current set of starting modules (there are very little at this moment), just let me know and perhaps I can give out a few ready-to-go zipfiles for Mac, Windows and Linux (since Scyndi itself was coded in Go, this should be quite easy, as the easiness on which Go programs compile for these three platforms is one of its greatest pros).

Now as for this game itself, try it out to see what I could do with Scyndi, and if you need some extra practice with calculating, hey, it does work out. ;-)



0 comments

Loading...

Next up

A few facts and fables about fire.

Game redo on Cynthia Johnson

Why do people wanna be a #moderator? Is it really such a #cooljob?

Current situation on TFT REVAMPED

Disney Princesses go to Hogwarts

A #phrase of #wisdom from the French scientist and philosopher #BlaisePascal Two stories, the one tied to this game (new version), and a prequel novel based on this game have this quote. Perhaps you understand why....

Can you see why this pyramid deal could never be solved from the start (regardless what the already removed cards are)?

Killing only brings you so far!

Celebrities (almost) killed by one of their biggest fans

BallPlay future