
Hi! You know how in life you see something, you really like it and the next thing that pops in your head is "I think I can make that too, but I would add this and that..."?
...one day I saw PuzzleScript - and it seemed amazing how increpare managed to make an accessible game specification language with which you can cover a pretty wide variety of (puzzle) games. That's how the furnace engine started: use a DSL similar to puzzle script, but offer mechanics (rules if you wish) for other types of games. While PuzzleScript is based on rewriting rules and interaction consists mainly in stuff around the furnace engine revolves around a USE function (and using stuff on other stuff).
What's possible in the furnace engine?
You can USE swords on monsters.
You can USE pickaxes on rock. (yes, you can write a subset of Minecraft only in USE rules)
You can USE keys on doors.
You can USE fire on iron to obtain gold (alchemy rules!).
You can also transform the world by just walking over stuff which opens up possibilities for puzzles (the whole of Whir can be specified in the furnace engine).
Stop repeating USE! NO! it's a function!
USE: (TerrainItems x InventoryItems) -> (TerrainItems x InventoryItems x HealthDelta)Some other features I should mention are:
- Animations!
- Sprites of ANY SIZE (sample game has 5x5 sprites out of convenience)
- Teleportation
- An inventory
And here's a few notable additions I'd like to include in the future:
- Improved hints/error messages
- A health system (done)
- Volumetric lighting a la Minecraft
- Bigger, more complex inventory system
Github link -->
https://github.com/madflame991/furnace-engineAnd a sample playable, editable world -->
http://madflame991.github.io/furnace-engine/src/P.S. Thanks increpare for PuzzleScript and all the deliciously weird games you've made throughout the years!