

Colouring your worlds is easy when there are only only around six shades of brown to choose from. If Blocksworld had instead allowed blocks to be placed at any decimal coordinate and at any rotation, it would have made positioning and joining things far more complicated.Īdditionally, there is a limited colour palette. Making blocks join together is a simple matter of placing them in adjacent squares so that one face is touching. Most things can only be rotated in 90 degree increments. Constraints can be useful-they simplify things by removing extra choices.įor example, blocks snap to integer positions when being placed and resized, and they can’t overlap each other in the editor. However, Blocksworld’s building constraints are not a bad thing. There was no way to define functions or prefabs.
Blocksworld app for iphone code#
Every number was hard-coded and there was heaps of duplicate code in many of my more complex builds (e.g. Tasks such as inserting and reordering lines of code was much more cumbersome to do using drag and drop compared to in a text-based desktop IDE.Ĭode quality was also an issue. The block positioning system worked very well on a touch screen, but the scripting window was clunky sometimes. (A script is a sequence of if statements.) Was designed to support any number of vertical magazines without needing to introduce any new scripts.Īnd my Ally Switcher (used in Clash of Clans) was designed to support any number of allies without introducing new global signals.īlocksworld’s scripting system was great, but there were things it couldn’t do.įor example, it had very limited string processing and number-crunching capabilities.Ĭontrol flow was also limited.

I also preferred to design things that were scalable and extensible. Or making improved versions of existing concepts (such as randomly-generated Sudoku and Minesweeper) I liked innovation and was interested in building things no one had done before Most of my worlds were playable in some way and had a win condition, although I did have a few mainly decorative worlds. I liked to build interactive and functional worlds, which tended to be heavy with scripting. I eventually got to the stage where I had a virtually endless supply of blocks to build whatever I wanted. I started small and gradually acquired more blocks and experience, so my worlds increased in complexity. The main way to earn in-game currency is to build and publish worlds. You can never lose blocks, only gain more. You start with a few building blocks, and gradually expand your collection by buying blocks with in-game currency, or logging on daily. The main limitation is the set of blocks that you can use in each world. Many F2P (free to play) games have gameplay that becomes increasingly more repetitive over time, and progress can be restricted by timers or the need for special currencies (that you buy with in-app purchases).īut Blocksworld’s F2P model was less restrictive.

You build whatever you can think of, and there’s a diverse library of worlds to play and get inspiration from.Īnother thing I liked about Blocksworld was its monetary model. I found it far more creative than most other iOS games. What I liked about Blocksworld was the gameplay. I played exclusively on an iPhone and the syncing feature made it great for commutes on the train. In the past I had played and enjoyed other sandbox games involving building and sharing worlds, but Blocksworld allowed for more advanced constructions. These features (particularly the scripting) allow for many creative possibilities. The game has a variety of actions to place into scripts. Interactions between scripts are event-driven. The actions in each line and scripting panel execute asynchronously. If (conditions met): execute sequence of actions. Each panel can have any number of rows of script. Some blocks such as motors have moving parts.Įach block in the world has its own scripting panel.

Blocks can also be resized (most of them in three dimensions). It has a combination of features that set it apart from other iOS sandbox games: 3Dīuild using 3D shapes such as cubes, triangular prisms, cylinders and more complex models. It is about building worlds and sharing worlds.
