Tuesday, July 16, 2013

Build 0206

Includes the following:

 - Add options for detailed debug logging in somedit config.
   Detailed logging added for music and map pieces for now.
 - Fix bug that caused music to overwrite part of the world map.
 - Fix bug that caused an audio glitch in the town theme.
 - Fix bug in event editor where closing the popup with the "X"
   instead of the cancel button caused problems.
 - Fix bug that caused unknown/raw event editor to throw exceptions
   a lot when you cycle through the type.




Next up: refactoring how they store their triggers.  These are the spots on a map that cause things to happen, like door transitions, or events.  Right now it's 2 bytes each, with a flag for whether it's a door or an event, then the index for which one.  There is no x or y.  The position is determined by seeking all the way down the map, looking for tiles of a certain type, and placing the triggers one by one in the map load routine.  This is accomplished by changing the tile value to 0xC0 (the upper limit of actual tile values) through 0xFF.  If you step on a tile with a value >= 0xC0, it executes the trigger (value - 0xC0).  Why anyone thought this would all be a good idea or how they designed their maps under a system like this are beyond me.

The new plan is to expand triggers from 2 bytes each to 4 bytes each, with a new x and y value for each.  The existing loop over every tile will be removed, and replaced with a loop over every trigger, that will simply write the trigger 0xC0+ marker value as it is now at the associated x,y based on the two new bytes.  Everything else should work the same as it does now after that point.

This should make map editing a lot easier, since you can just place triggers wherever the hell you want.


Anonymous said...

:::::bows to the grandmaster::::::

Fixed the music bug.He da man :D

Anonymous said...

Still getting this after updating to the latest .NET

00:39:35 - EXCEPTION: Could not load file or assembly 'WindowsBase, Version=, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

Mop said...

I don't know what to tell you :p what's the last version that worked? I don't think I've changed any of the library dependencies in a while.

manafreak said...

I guess that would make Handling for the Event edit more comfortable? That would be great :)

RetroHelix said...

I would really like to know why they coded it this way and not the one your trying to code in. Anyway good luck!

For the error:
Uninstall Net Framework. See http://blogs.msdn.com/b/astebner/archive/2008/08/28/8904493.aspx and reinstall again.