Monday, April 30, 2012

Working on maps

Hi all! :)

As said in the title, more work is being done on the maps. Note that everything is still very drafty, and extremely WIP  for now. But we're advancing.

For now I'll concentrate on adding the mere basics needed to have a game start until the first save point and battles. All that will permit me to have base sandbox to improve things from.
This will permit me to establish something looking like the final map format, so that I'll be able to improve the editor accordingly and make the mapping workflow faster.

Speaking of that, now that the editor and the game can support an arbitrary number of layers (even if you have to add/delete them manually in the LUA file to handle them for now.), and as the engine code isn't optimized to display a layer types that is drawn at the same time than the map ground objects (characters, items, ...) without a costy draw() logic, I finally (after a lot of tests about it) decided that the best way to add proper drawing logic there was to (re)add better map object support.

And here is why I created the map objects catalog file, where you can call easily existing and reusable objects, and place them on the map.

The idea is not entirely mine as something in editor had been done toward it, even if not functional, and still tile-based at the time.
Hence, the actual evil plan will be to readd map object handling support in the editor later on, so that creating maps will be as easy as possible.

But enough talks and a bit more pictures :)
The hero's room (used as introduction for now)
What will be the hero's home. The map is a bot too big for now, but great for tests. :)

The Mountain Village of Layna is simply an adapted version of the demo village for now, with custom scripting.

Again, note that those maps are WIP and will contains many logic(al) problems, and glitches that I'll fix little by little.
I also took the responsibility to retake the mountain village map since I simply found it beautiful. We're planning to expand that little village later, to make the story fit.

Code wise, I made the map loading code not crash the game on the first scripting error in most cases (except for certain luabind exceptions, such as missing parameters) so that it would actually report the error first before dying in those cases.
I also made the location images not displayed when no image is defined, to avoid a the white rectangle problem in such a case.

'Till next time.

Best regards,

No comments:

Post a Comment