The first WWD level generated automatically!
Jan 28, 2019 14:55:08 GMT -8
BattlezM, swietymiki, and 3 more like this
Post by Tomalla on Jan 28, 2019 14:55:08 GMT -8
Ladies and gentlemen ... the new era in designing Gruntz levels has just begun!
For the past few months I've been working on a C++ library for reading and manipulating WWD files. That's nothing new, we've already seen applications which can read a level file and for example list all the collectibles (see my "Gruntz Scrooge" program). Now however we are also able to save the level BACK.
What does that mean? We can now do pretty much anything. Randomizing tiles? No problem. Expanding the level to the left or up? No problem! Doing some other tedious tasks like mirroring a part of a puzzle (for battle designs), copying a set of objects from place to place is also no longer a problem. We can now automate ANYTHING. And I'm not kidding.
Here's the simple demonstration I whipped up: I've loaded up a Rocky Roadz template and made a simple level. All the tiles on the sides have id 199 and are filled with random trees, to which there is a random mirror effect applied. In the middle there is a free space with random 1-8 tiles. And to finish things off we drop a single Grunt with a pair of Gauntletz!
Attachment Deleted
Now, how many lines of code were required to generate this level? The answer is: mere 20-30. Here's the link to the corresponding C++ snippet: pastebin.com/2EuiAhkj
This is a C++ library. What it means is that it's not a standalone application; it's used to make applications. It could be used for example to make a new level editor. For now though I'll be using it for some utility tasks only. Perhaps some time in the future I'll make it available from within a scripting language, like Lua or Squirrel - then using the library would be easy, straightforward and wouldn't require a compilation phase. Later on I'll add in the support for REZ, PID and perhaps ANI file formats. At some point I'll also share the library source code on GitHub so that any programmer could use it.
I have very high hopes for this project as it may revolutionize the entire process of designing levels and I am VERY excited to share these news with you! Have any questions? Ideas? Anything? Speak up!
Cheers!
(Edit): I've just noticed it is my 500th post on this forum. Holy guacamole, what a way to that milestone!
For the past few months I've been working on a C++ library for reading and manipulating WWD files. That's nothing new, we've already seen applications which can read a level file and for example list all the collectibles (see my "Gruntz Scrooge" program). Now however we are also able to save the level BACK.
What does that mean? We can now do pretty much anything. Randomizing tiles? No problem. Expanding the level to the left or up? No problem! Doing some other tedious tasks like mirroring a part of a puzzle (for battle designs), copying a set of objects from place to place is also no longer a problem. We can now automate ANYTHING. And I'm not kidding.
Here's the simple demonstration I whipped up: I've loaded up a Rocky Roadz template and made a simple level. All the tiles on the sides have id 199 and are filled with random trees, to which there is a random mirror effect applied. In the middle there is a free space with random 1-8 tiles. And to finish things off we drop a single Grunt with a pair of Gauntletz!
Attachment Deleted
Now, how many lines of code were required to generate this level? The answer is: mere 20-30. Here's the link to the corresponding C++ snippet: pastebin.com/2EuiAhkj
This is a C++ library. What it means is that it's not a standalone application; it's used to make applications. It could be used for example to make a new level editor. For now though I'll be using it for some utility tasks only. Perhaps some time in the future I'll make it available from within a scripting language, like Lua or Squirrel - then using the library would be easy, straightforward and wouldn't require a compilation phase. Later on I'll add in the support for REZ, PID and perhaps ANI file formats. At some point I'll also share the library source code on GitHub so that any programmer could use it.
I have very high hopes for this project as it may revolutionize the entire process of designing levels and I am VERY excited to share these news with you! Have any questions? Ideas? Anything? Speak up!
Cheers!
(Edit): I've just noticed it is my 500th post on this forum. Holy guacamole, what a way to that milestone!