Page 1 of 2 12 LastLast
Results 1 to 10 of 40

Thread: TileStudio for Lazarus

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1

    TileStudio for Lazarus

    Not sure if this is the place, so if moderators think it should be moved to another forum, do it.

    I'm sure a lot of you know about TileStudio; may be it's the best tilemap editor ever and it was developed with Delphi! Unfortunately it's Windows only and I didn't use Windows for a long time. I did try to use TS with Wine but it's exasperatedly slow, almost unusable (or it is it in my Xubuntu running in a core-duo; didn't test it in my "brand new" Debian, though). Since it's open-source I decided to port it to Lazarus. Mike Wiering didn't return the mails I sent and project seems dead, so I started by my own thinking it would be easy. But it wasn't at all.

    Now I have a version that compiles and "runs", but it's still too slow and raises "SEGMENT FAULT" too often so it's still unusable. It's hard to trace: The main window has hundreds of components, each one with its own events and a plethora of cross-references (for example: drawing-tool to drawing-style selector to color selector to palette selector to tile TDrawBox to tile-list panel...), and a lot of them doesn't have descriptive names, or the name is descriptive but actually it doesn't does what it says it does... Also it isn't "modular" and it mixes concepts that I would keep in separate modules.

    I think I have find why it's so slow: It has 3 Timers, one of them breaks each millisecond! I did changed the rate but then the program freezes and can't close it or raises a "SEGMENT FAULT" in random-like time. Actually I don't know what does it do but I think I can get it and fix it in the future.

    I know how I can improve it (i.e. move a lot of those hundreds of components from the main form to some TFrame [PaletteEditor, ImageEditor, MapEditor, TileSelector, etc.] then put that new TFrame in the main form, use TActionList to group actions, etc.) but it will need a lot of time and work, and currently I haven't much of that.

    Then, I'm asking if anybody has interest and may help. At the moment I don't want a "TileStudio 3.0", but port the current version. Since Wiering didn't answer my asking we should create a new project in SourceForge (I prefer SF), then plan the work. I'll be a bit busy next two months (until mid-September) so at start we'll go slowly.

    Comments, offers, suggestions...
    No signature provided yet.

  2. #2

    Re: TileStudio for Lazarus

    I did a similar thing a couple of years ago. It was a "quick and dirt" porting, only to see if Lazarus was able to compile it. Well, it was The executable suffered from tearing redrawing things though, at least on Windows. Just haven't investigated too much to resolve the problem

    Maybe I have something on my backup disk... If so, I'll be glad to share it
    Get your fpc4gba copy now!
    Get your fpc4nds copy now!

  3. #3

    Re: TileStudio for Lazarus

    That would be nice, Legolas. I can compare with my port.

    BTW, I was thinking and may be it's better to code it from the beginning. I mean keeping the ideas that makes TileStudio a good tool. Not sure yet.

    No signature provided yet.

  4. #4
    Sorry for the delay

    I'm unsure if it could be of some use anymore, but for the record, I finally dusted my external HDD and this is my tile studio for lazarus

    As I already said, it compiles fine and it somewhat works
    Get your fpc4gba copy now!
    Get your fpc4nds copy now!

  5. #5
    PGD Staff code_glitch's Avatar
    Join Date
    Oct 2009
    Location
    UK (England, the bigger bit)
    Posts
    933
    Blog Entries
    45
    erm, just read this thread for the first time, and read its 'slow' on wine. Now, although that is TRUE on wine < 1.2.x; I just finished installing and optimizing my new wine 1.3.6 which although being unfriendly to .Net and the like, I can report that an SU4100 with 4gb DDR3 ram seems to cope quite well on Ubuntu 10.10 (using an ATi Radeon HD4330). Although I can still see some slugishness and reluctance on maps larger than 500x500 with large tile sizes. The lazarus version seems to cope a lot better but my window just vanished (I guess thats a crash right?)... What version of wine were you using at the time and what core 2? I've noticed something funny: My 1.3ghz SU4100 cpu with 18 windows open at 40% max CPU runs around 60% faster than a 2.4ghz E6600; which should in theory thrash it in every benchmark. Is it just me or ar Ghz not the complete picture and the flops thing really accurate?

    Sorry its a bit off topic, but if its down to wine 1.3.6 beta's optimization vs the older versions, you may not need to port it after all. And I found one thing so far: most of my apps work BETTER in wine than on windows. Funny isnt it? I have this new policy now: Get as many windows binaries as possible and benchmark them on a Turion RM-70 x2 64 2ghz with win7 ultimate x64 and wine 1.3.6 on ubuntu 10.10x64 with a SU4100 @ 1.3ghz

    Isnt life ironic?
    I once tried to change the world. But they wouldn't give me the source code. Damned evil cunning.

  6. #6
    Quote Originally Posted by Legolas View Post
    Sorry for the delay

    I'm unsure if it could be of some use anymore, but for the record, I finally dusted my external HDD and this is my tile studio for lazarus

    As I already said, it compiles fine and it somewhat works
    Thanks. I've downloaded but I couldn't compile it. May be it uses Windows libraries and I'm using Xubuntu :$. BTW my Lazaus is doing estrange things lately, as say it can't find the "form.pp" file while it did open that file by itself. (?)

    Quote Originally Posted by code_glitch View Post
    erm, just read this thread for the first time, and read its 'slow' on wine. Now, although that is TRUE on wine < 1.2.x; I just finished installing and optimizing my new wine 1.3.6 which although being unfriendly to .Net and the like, I can report that an SU4100 with 4gb DDR3 ram seems to cope quite well on Ubuntu 10.10 (using an ATi Radeon HD4330). Although I can still see some slugishness and reluctance on maps larger than 500x500 with large tile sizes. The lazarus version seems to cope a lot better but my window just vanished (I guess thats a crash right?)... What version of wine were you using at the time and what core 2? I've noticed something funny: My 1.3ghz SU4100 cpu with 18 windows open at 40% max CPU runs around 60% faster than a 2.4ghz E6600; which should in theory thrash it in every benchmark. Is it just me or ar Ghz not the complete picture and the flops thing really accurate?
    Well, I'm using Xubuntu, and Canonical's Linux isn't "the best of the best". Actually I find it's slower and less profiled than Debian itself (I'm testing Debian in my old IBM PentiumIV 1.8 Ghz without accelerated graphics and its slightly faster than my Dell CoreDuo T6400 2.0Ghz with accelerated Nvidia graphics, except OpenGL obviously).

    The Wine I'm using is 1.2, as it is in Canonical's repository.

    Quote Originally Posted by code_glitch View Post
    Sorry its a bit off topic, but if its down to wine 1.3.6 beta's optimization vs the older versions, you may not need to port it after all. And I found one thing so far: most of my apps work BETTER in wine than on windows. Funny isnt it? I have this new policy now: Get as many windows binaries as possible and benchmark them on a Turion RM-70 x2 64 2ghz with win7 ultimate x64 and wine 1.3.6 on ubuntu 10.10x64 with a SU4100 @ 1.3ghz

    Isnt life ironic?
    This reminds me when I used to use OS/2. It has the ability to run Win16, Win32s and non NT Win32 applications, and applications that break my Windows 3.11 or my Windows 98/SE did work almost perfectly in my OS/2; and if they break then I didn't need to reboot OS/2. Actually I develop my first Windows applications in OS/2. THAT is ironic.

    I think it's a constant.
    Last edited by Ñuño Martínez; 07-11-2010 at 10:19 AM.
    No signature provided yet.

  7. #7
    I almost forgot this project.

    See. It's able to import tilesets:
    mapedit1.jpg
    As you see, the import dialog is simpler than TileStudio's one. Also it uses Allegro.pas internally. This limits it a bit but I'm used to the API. Once everything works I see how to use a better graphics lib (i.e. Vampyre).

    I'm having some issues with the PaintBoxes. When I change the width/height of tiles, the tile sample is re-rendered over the actual sample tile. Don't know why.
    No signature provided yet.

  8. #8

    Re: TileStudio for Lazarus

    It would be interesting to recreate the entire project, I suppose, but I already use different tools. Gimp for editing tiles, and Tiled for a map editor.

  9. #9
    Co-Founder / PGD Elder WILL's Avatar
    Join Date
    Apr 2003
    Location
    Canada
    Posts
    6,108
    Blog Entries
    25

    Re: TileStudio for Lazarus

    Hows the big Tile Studio effort coming along?
    Jason McMillen
    Pascal Game Development
    Co-Founder





  10. #10
    Hi Will. Sorry for the stand by, but I needed it.

    I was playing with the code before my summer break. I can compile it and it runs before it tries to do something, then it freezes. i think the best option is to start it again from the beginning. I know, there are other map editors, but Tile Studio has some ideas I think makes it great.

    BTW, I don't know when to start. I'm currently busy preparing the next release for Allegro.pas and have some things to do. If nobody else started it then I'll do it.
    No signature provided yet.

Page 1 of 2 12 LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •