Samapico Posted January 21, 2008 Author Report Posted January 21, 2008 And I fixed most of the bugs that were pissing me off last time I worked on it... Not bugs that you guys saw, but stuff that got there after some radical changes in the code. I revamped the whole tileset thing, code-wise. At the beginning, the tileset selection was just 2 numbers... left tile # and right tile #. Then we had walltiles on top of that... And now we have LVZ on top of that...So it was starting to get messy. And I wanted to eventually add in a 'block' thing. A block would be a set of tiles/lvz images that you defined and you can put it as many times as you want. So it should be a bit easier to do that with the new Tileset class... Tools should be a bit faster too, because I removed A LOT of parameters getting passed around functions. All the tileset related values and all tool-options related values are stored in just two objects available to the whole class. For example, the DrawBaseLine header looked like:Private Sub DrawBaseLine(tilenr As Integer, _ startx As Integer, startY As Integer, _ endX As Integer, endY As Integer, _ StepX As Integer, _ StepY As Integer, _ undoch As Changes, _ multTileX As Integer, _ multTileY As Integer, _ Optional onpreview As Boolean = True, Optional Refresh As Boolean = True, _ Optional appendundo As Boolean = True, _ Optional tagwalltiles As Boolean = False, _ Optional Left As Boolean = True) It's now:Private Sub DrawBaseLine(ByVal startx As Integer, ByVal startY As Integer, _ ByVal endX As Integer, ByVal endY As Integer, _ undoch As Changes, _ onpreview As Boolean, Refresh As Boolean, _ appendundo As Boolean) And that method is probably the one slowing you down when drawing very thick lines and the preview is real slow...So it will probably help. But it's still far from being able to compile again. We basically need to go through the whole code and fix that. Quote
Drake7707 Posted January 21, 2008 Report Posted January 21, 2008 you contradict yourself Not to disappoint you guys, but I doubt there will ever be new development on that . Well, not by me anyway. With The Continuum Project thing, I'm kind of busy. Quote
Samapico Posted January 21, 2008 Author Report Posted January 21, 2008 I know I haven't worked on The Continuum Project for a while either... bleh. Quote
JoWie Posted January 22, 2008 Report Posted January 22, 2008 You do realise you can't go back now, you have to finnish the block thing Quote
Samapico Posted January 22, 2008 Author Report Posted January 22, 2008 I'll start by making it compile again... With (at least) the same features it had. Then we'll see Quote
RiiStar Posted January 23, 2008 Report Posted January 23, 2008 Just an idea, for open ended development...What about the ability to have "plugins" for DCME? Like add on apps which can be managed to expand on it to become more than a map editor.And saves you the trouble and others of adding code to be compiled with the main app? Quote
Samapico Posted January 23, 2008 Author Report Posted January 23, 2008 Hey Riistar, could you update the site with 3.1.10? I have ftp access and all, but I'm such a newb at these things... Quote
Drake7707 Posted January 23, 2008 Report Posted January 23, 2008 I'm such a newb at these things... aren't we all I dunno for plugins, i haven't got a single clue how to code one (most likely through dll's) and/or if it's possible in vb6 (dll's are though) Quote
RiiStar Posted January 24, 2008 Report Posted January 24, 2008 Hey Riistar, could you update the site with 3.1.10? I have ftp access and all, but I'm such a newb at these things... Version 10? Or 11/12 ? Quote
Samapico Posted January 24, 2008 Author Report Posted January 24, 2008 hmm, put the 3.1.12, now that I think about it... Quote
Smong Posted January 25, 2008 Report Posted January 25, 2008 Noo 3.1.12 is bugged, you can't do regions in it without it corrupting them. Quote
Samapico Posted January 26, 2008 Author Report Posted January 26, 2008 Noo 3.1.12 is bugged, you can't do regions in it without it corrupting them.Really? *tests* What I see is the 'base' and 'no weapons' properties aren't saved properly... other than that, everything is fine Haven't tested it ingame though fixed... it actually saved a "rBAS" chunk for isBase, and "NWP" for No weapons, when it should be "rBSE" and "rNWP". But for loading, it was expecting the correct strings. Quote
Smong Posted January 26, 2008 Report Posted January 26, 2008 Here's the md5 of the version I used: 0323cd13c519e4df3d16e5c0ccfd9094Steps to reproduce:- create a new map.- import a tileset.- create a new region named "test".- save the map then close it.- double click on the new file. The region name may change to "rTIL" or some other garbage, it seems to depend on what tileset you imported. In one case it changed the name to 0x04, you can see it in a hex editor but it doesn't show up at all in the editor. Quote
Samapico Posted January 26, 2008 Author Report Posted January 26, 2008 Attach the log file after saving and re-opening the map Can't seem to reproduce it... Do you create regions from the region tool's toolbar, or from the eLVL form? Quote
Smong Posted January 29, 2008 Report Posted January 29, 2008 Ok here's the log. The interesting bit is probably near the bottom where it says "warning" Spoiler! --Click here to view--29/01/2008 11:57:06 AM --- Drake Continuum Map Editor (v3.1.12) starting...918866 +++ OtherInstance 0918866 +++ Settings loadedtest.lvl @ OpenMap, Opening Map... C:\SubSpaceDev\Map Editors\test.lvltest.lvl @ OpenMap, No tileset found ; usingDefaultTileset Truetest.lvl @ InitTileset, tilesetpath= Default usingDefaultTileset Truetest.lvl @ OpenMap, tile data starting at 1test.lvl @ OpenMap, 0 tiles loaded. Now at 5Map loaded successfullyDCME readytest.lvl @ ImportTileset, importing: C:\SubSpaceDev\Map Editors\tiles.bmptest.lvl @ Bitmap info header: --- Color Depth: 8 --- Size: 304x160 --- BiSizeImage: 41664 --- Compression: 1test.lvl @ ImportTileset, bmpdata is imported from: C:\SubSpaceDev\Map Editors\tiles.bmptest.lvl @ InitTileset, tilesetpath= C:\SubSpaceDev\Map Editors\tiles.bmp usingDefaultTileset Falsetest.lvl @ SaveMap, saving map... C:\SubSpaceDev\Map Editors\test.lvltest.lvl @ Flags = 65535test.lvl @ SaveMap, C:\SubSpaceDev\Map Editors\test.lvl exists, checking for .bak filetest.lvl @ SaveMap, opening C:\SubSpaceDev\Map Editors\test.lvl for binary as #1test.lvl @ SaveMap, bitmap header position: 1test.lvl @ SaveMap, bfReserved1 set to: 42744 (42744)test.lvl @ eLVL.saveRegionsFromMap, Saving Region(0) at 42757test.lvl @ eLVL.saveRegionsFromMap, Putting Name at 42765test.lvl @ eLVL.saveRegionsFromMap, Putting Tiledata at 42773test.lvl @ eLVLdata.SaveRegionTileData, saving 1024 empty rowstest.lvl @ eLVL.saveRegionsFromMap, Putting Color at 42785test.lvl @ eLVL.saveRegionsFromMap, End of region at 42797 - size was 32test.lvl @ eLVL.PutELVLData, Saving Hashcode at 42797test.lvl @ eLVL.PutELVLData, Rewriting total size: 72 at 42749test.lvl @ SaveMap, total eLVL size returned: 72test.lvl @ SaveMap, New bitmap bfSize: 42816 (42816)test.lvl @ SaveMap, BMPData is stored into lvl, starting tile data at 42817test.lvl @ SaveMap, 0 tiles were saved into lvl. Total file size: 42817 bytes.test.lvl @ mapchanged set to FalseFloat tileset loadedUnloading frmMain(0) 0 0+++ Closing map test.lvl (ID: 0)Unloading frmMain(0) 0 0Float radar loaded 29/01/2008 11:57:33 AM --- Drake Continuum Map Editor (v3.1.12) starting...264122 +++ OtherInstance 918866+++ openedMapByArgs True264122 +++ Other instance found, sending OPENMAP message to 918866918866 +++ Received message: 49627918866 +++ Read 'C:\SubSpaceDev\Map Editors\test.lvl' in pathstest.lvl @ OpenMap, Opening Map... C:\SubSpaceDev\Map Editors\test.lvltest.lvl @ OpenMap, Tileset foundtest.lvl @ OpenMap, Bitmap info header: --- Color Depth: 8 --- Size: 304x160 --- BiSizeImage: 41664 --- Compression: 1test.lvl @ OpenMap, Bitmap info header: --- bfType: 19778 --- bfSize: 42816 --- bfReserved1: 42744 (42744)test.lvl @ Openmap, BMPData is read from lvl filetest.lvl @ OpenMap, no eLVL data foundtest.lvl @ Openmap, usingDefaultTileset Falsetest.lvl @ OpenMap, WARNING: Seek(f)=42743 bfSize+1=42817test.lvl @ TileDataRecovery, attempting tile data recovery at 42817test.lvl @ TileDataRecovery, with offset 0, 0 tiles found, 0 errors occured.test.lvl @ TileDataRecovery, best offset found: 0 with 0 errors.test.lvl @ InitTileset, tilesetpath= C:\SubSpaceDev\Map Editors\test.lvl usingDefaultTileset Falsetest.lvl @ OpenMap, tile data starting at 42817test.lvl @ OpenMap, 0 tiles loaded. Now at 42821Map loaded successfully264122 +++ Other instance found, shutting downDCME ended successfullyUnloading frmMain(0) 0 0+++ Closing map test.lvl (ID: 0)DCME ended successfullyI used the region toolbar and also tried the version you just posted Quote
Samapico Posted January 29, 2008 Author Report Posted January 29, 2008 Send me that tileset... it has Compression bit to 1. How do you make bitmaps with compression anyway?The 'warning' thing is because after it loaded the tileset, the 'cursor' isn't where it expected to be in the file. So it tries to load the tiles from there anyway, and if it gets errors, it will try again starting from another place. But yeah, "normally" it shouldn't need to do that. It did start to load tile data from the correct place, though, so that's not exactly the problem here.test.lvl @ SaveMap, BMPData is stored into lvl, starting tile data at 42817 [.......] test.lvl @ OpenMap, tile data starting at 42817 But the thing is as soon as it loaded the tileset, it was already beyond the whole eLVL data. Anyway, just send me that tileset, I'll test it out Quote
CRe Posted January 29, 2008 Report Posted January 29, 2008 (edited) Heres 3 things I saw. On the line tool or any tool that uses the "Step" and "Size" feature doesn't tell you which is which meaning it does not say which thing is "step" and which one is "size".Generate walltiles could use a fix.When I exited it gave me an error saying "frmMain was not unloaded correctly" I kept on clicking ok. Had to click it 3 times and it closed.Good job though Edited January 29, 2008 by cReEmY Quote
Drake7707 Posted January 29, 2008 Report Posted January 29, 2008 any log for the frmmain error ? Quote
Samapico Posted January 29, 2008 Author Report Posted January 29, 2008 right... in the past, DCME ended with a 'End' statement, which resulted in Vista users getting some Crash report thing. Some forms were not unloaded correctly, so I added a check when closing, to be sure that every form is unloaded. If any form is still loaded, it reports it. For now, ignore... We'll test and fix the memory management errors that cause the problem. By size and step, you mean like there's no text on the sliders? Yeah I think I saw that too... didn't understand why was that. For the generate walltiles, Aquarius will send me a video showing a full procedure to create a walltile set, with the shading and all. We should be able to improve it then Quote
Smong Posted January 30, 2008 Report Posted January 30, 2008 Anyway, just send me that tileset, I'll test it outI used the default tileset from cont's graphics directory. As a side note when it says "eLVL data could not be saved because this map does not have a tileset" it should ask you whether you want to use the default tileset, instead of making the user manually import the default tileset. Quote
Sketter Posted January 30, 2008 Report Posted January 30, 2008 confused.....you advertise v3.1.10 yet my version says 3.1.13 What did u do? put .12 and .13 all into .10 plus new changes? Sketter Quote
Samapico Posted January 30, 2008 Author Report Posted January 30, 2008 .12 and .13 had alot of incomplete features, but alot of fixes as well, so they were not "official". The auto-update gets 3.1.10. Quote
Samapico Posted January 30, 2008 Author Report Posted January 30, 2008 Anyway, just send me that tileset, I'll test it outI used the default tileset from cont's graphics directory. As a side note when it says "eLVL data could not be saved because this map does not have a tileset" it should ask you whether you want to use the default tileset, instead of making the user manually import the default tileset. Fixed the issue concerning tilesets using the length encoding (aka when it says Compression = 1 in the log when importing it)Atleast I think it's fixed It was expecting a bfReserved value of 49720 when it was 8bit... Now I just set it as : if bfReserved is different than the size of the actual bitmap, try to get eLVL data. Give it a try... might want to try it with various tilesets too, with or without eLVL, see if it tries to load eLVL when there is none or things like that Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.