Jump to content

Betatesters wanted for BetterEditor


Khoth

Recommended Posts

I've hacked about with the BoA editor source, and I've made something that I at least think is an improvement.

 

The main additions are tools for drawing walls much more easily, and there are a few other minor things.

 

Get it here .

 

Source is here .

 

This is for MacOS X only. It should be possible to compile it for OS 9. PC users can't.

 

It's only tested on my computer (10.3).

Link to comment
Share on other sites

Yes, scenarios still work.

 

There's more to running it on a PC than just compiling it. There are all the libraries for the Mac interface and so on. To make it work on a PC, you'd need the PC source code and reasonable knowledge of how to merge it all.

 

Wall tools - you need to have things set to editing terrain (not floors or heights). Select a walltype (any walltype). For the rectangle, click on a location for top left and for bottom right. Each square is notionally divided into four, and where in the square you click determines whether the walls run along the top or bottom of the square.

 

For the walldrawing, select either a plain wall terrain type, or a door or whatever (any direction) to draw a door. The tool then works like the normal pencil, except that you have to click near the edges of the square to make a wall appear or disappear in that edge. (and not too close to the corner)

Link to comment
Share on other sites

Rectangle wall and get (x,y) location only work in zoomed out mode.

 

Wall drawing is a good idea, but I currently can't get it to do what I want reliably. It's always putting walls in the wrong direction, not in the path I drag it. It might help if it knew that two walls facing each other, essentially in the same place but on different squares, wasn't a good thing to make. I have no idea how it's implemented, though, so I don't know what you can do with it. It also acts very strangely in zoomed out mode.

 

Other tools don't work properly. The spraycan and paintbrush tools, for example, I used one time. Next time I clicked, nothing happened except it went back to the normal drawing cursor. But nothing worked until I selected another tool or terrain to draw.

Link to comment
Share on other sites

Thanks for the feedback. I won't be able to hack at it until Monday, but a few comments:

 

I'm surprised at the rectangle and x,y only working in zoomed-out mode. Pretty much all my testing of them was in zoomed-in mode.

 

The way the wall-drawing tool (should) works, is that each square is divided into nine sections:

Code:
ONOWOEOSO
(Actually, these are 1/4, 1/2, 1/4 thickness, rather than 1/3, 1/3, 1/3. I may change that)

A click in an O on the diagram should do nothing, and a click in one of the directions should try to add a wall there. Dragging is basically a process of hitting the direction squares you want while avoiding the ones you don't want. At least, it should be. In zoomed-out mode it theoretically works the same, except that the divisions are too small to click in easily. I'll experiment with different ways of dividing the square and try to pick something that works better.

 

As for the paintbrush and so on, I thought I'd squashed that bug, but I obviously haven't.

Link to comment
Share on other sites

Ah, now it makes sense to me. You should describe it in more detail in the readme.

 

Testing normal editor features, they didn't work! I couldn't change the floor, terrain except for walls, or height the normal way. Special tools like the paintbrush can change them, though.

 

On the subject of the rectangle wall, I couldn't get some of the other rectangle tools to work at all.

 

Also, the wall-drawing tool seemed to be active any time a wall had been selected, even after switching to height or floor mode.

 

**************

 

I have been working on making a version of the editor. So far I have turned the zoomed-in view into a "middle zoom" view that lets you edit an 18x18 area. I'm going to have to start over anyway to let the user have normal zoomed in view. I was wondering whether you had any additional plans for BetterEditor or whether I can use it as a starting point for my version once it's not so buggy? Other features I am planning on are:

  • A way to change number of outdoor sectors
  • an "eyedropper" tool to select a type of floor or terrain you have already placed
  • If I'm feeling really ambitious and can figure out how to do it, a 3D view like in the game, that can be edited. I found a function in the editor code that lets you check line of sight, so I could even have a mode where you can only "see" from the square you're centered on, as a way to test how it would really look in the game.
Link to comment
Share on other sites

Quote:
Originally written by Grey-Eyed Stranger:
I seriously doubt Khoth has the time to completely recode the BoA engine rendering system.
Khoth? Who's that? It's certainly not me. In fact, I have made a good deal of progress making a 3D editor. I have plenty of time, because it's my summer vacation. And, I like coding. smile
Link to comment
Share on other sites

Quote:
Originally written by Kelandon:
If you manage to make a 3D editor (or even just a Preview command), I think virtually all designers will be deeply in debt to you for all eternity.
And since I'm sometimes a designer, I'll be deeply in debt to myself. smile Yet another motivating force. smile
Link to comment
Share on other sites

You know, sometimes I think it might even be better to recode the entire thing from scratch in something properly cross-platform. Python would work well; then you could even stick a fully-fledged script/macro thing into the editor itself. (The eval function rules. smile )

 

Of course, that would be way too much work. Notice that I said "better", not "easier". :p

 

(Erm... at first I tried to type e.v.a.l.(.), without the periods, and UBB told me that the "eval" HTML tag wasn't allowed. What the? eek )

Link to comment
Share on other sites

Quote:
Originally written by Flamefiend:
You know, sometimes I think it might even be better to recode the entire thing from scratch in something properly cross-platform. Python would work well; then you could even stick a fully-fledged script/macro thing into the editor itself. (The eval function rules. smile )

Of course, that would be way too much work. Notice that I said "better", not "easier". :p

(Erm... at first I tried to type e.v.a.l.(.), without the periods, and UBB told me that the "eval" HTML tag wasn't allowed. What the? eek )
Isaac, he wasn't trying to use HTML. Methinks it to do with the eval...function of PHP, but filtering it out is rather stupid, considering if the board actually executed code in members posts, this board would have more security holes than could be humanely possible.

Also, Pythons speed is slower than C++. The BoA editor is already slow and clunky enough.
Link to comment
Share on other sites

Python isn't so much slower than C++ that it would count as a reason against making the editor with it. In fact, a complete rewrite would probably be faster, because it wouldn't have much of the boneheadedness that the current one has. However, it would be a major project and probably not worth the trouble.

Link to comment
Share on other sites

Quote:
Originally written by Grey-Eyed Stranger:
Isaac, he wasn't trying to use HTML. Methinks it to do with the eval...function of PHP, but filtering it out is rather stupid, considering if the board actually executed code in members posts, this board would have more security holes than could be humanely possible.
Yeah, that's probably it.

Khoth is right about the speed difference, though; you really don't notice any slowness at all unless you're doing lots of number-crunching, which the editor doesn't need to do.

Besides, a lot of the clunkiness I've noticed in the BOA editor has more to do with the interface and the fact that it has a slight delay every time it plays a sound (from clicking buttons and stuff) than actual execution speed.

Yeah, it would be a pretty major project, but I can dream can't I? laugh And in the meantime, I could make a script editor or something... hey, that's actually a pretty good idea. Now to learn wxPython, properly this time! cool
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...