BZWorkbench is in the Works

Discussion, updates, modifications, etc for the various map editors...
jude-
2007 Google Summer of Code Participant
2007 Google Summer of Code Participant
Posts: 13
Joined: Tue May 22, 2007 11:11 pm
Contact:

BZWorkbench is in the Works

Post by jude- »

Attention all BZFlag map developers:

This summer, as one of the four chosen Google Summer of Code developers for BZFlag, I will be developing a modern, graphical, BZW-2.0-compliant world editor to accompany this already great game. As some of you may know, development doesn't start until the end of May, so right now I'm just gearing up for the project by writing up the project specs, a timetable, etc. You can see some of my initial user interface specs here: http://www.u.arizona.edu/~jnelson/bzworkbench.html

There are three main design goals from the UI perspective: it must be easy to use, it must be easy to learn, and it must enable its user to make levels quickly. Before I start coding, I'm curious as to what you all, the end-users, would like to see in BZWorkbench, regarding the UI. I'll consider any additional usability features not present in the aforementioned link, but I won't promise I'll implement them :)

Regards,
Jude Nelson
A computer in the hands of a capable developer is like a lightsaber in the hands of a capable Jedi.
User avatar
macsforme
General
General
Posts: 2069
Joined: Wed Mar 01, 2006 5:43 am

Post by macsforme »

WOW... looks like you've put a lot of effort into this already. Looking forward to see how it turns out!
User avatar
Spazzy McGee
Sergeant Major
Sergeant Major
Posts: 1405
Joined: Mon Mar 21, 2005 4:59 pm
Location: Planet MoFo, Sheffield Division; United Kingdom

Post by Spazzy McGee »

In iBZEdit, there was a handy little tank model that's freely moveable in the world - this acts as a kind of measuring stick. I found that quite a nice feature to have, during my minimal use of iBZEdit, (I'm more of a Wings3D kinda guy).

What may also be useful is some sort of wireframe mode.
"Life is what happens to you while you're busy making other plans." - John Lennon
User avatar
Hannibal
Private First Class
Private First Class
Posts: 1073
Joined: Mon May 02, 2005 10:27 pm
Contact:

Post by Hannibal »

I think the layout and interface could be improved, I think a touch of color and a better font would do nicely. But hey, seems you've got enough work as it is.
Games don't make people violent, lag does.
ImageImage
User avatar
Mostly Harmless!
Private First Class
Private First Class
Posts: 347
Joined: Sun Oct 30, 2005 4:37 am
Location: California

Post by Mostly Harmless! »

It's very well planned. I just disagree with the way selected objects look. I'd like to be able to see the shapes in more dimensions. When selected, they seem to become silhouettes which are harder to use then just a recolored model, maybe with bolder lines. It might not be a problem with simple objects, but with more complex groups it might lead to a little confusion.

I never make stupid mistakes. Only very, very clever ones.
It is not the fall that kills you. It's the sudden stop at the end.
Always remember you are unique. Just like everybody else.
jude-
2007 Google Summer of Code Participant
2007 Google Summer of Code Participant
Posts: 13
Joined: Tue May 22, 2007 11:11 pm
Contact:

Post by jude- »

Hannibal wrote:I think the layout and interface could be improved, I think a touch of color and a better font would do nicely. But hey, seems you've got enough work as it is.
Obviously. The real thing will use FLTK 1.1.7 widgets; the UI mock-ups were thrown together in The GIMP :)

What font do you recommend?
Spazzy Mcgee wrote:In iBZEdit, there was a handy little tank model that's freely moveable in the world - this acts as a kind of measuring stick. I found that quite a nice feature to have, during my minimal use of iBZEdit, (I'm more of a Wings3D kinda guy).
Yeah, that'll definitely be there :). One of the other things I was considering along with this is allowing the user to navigate the level from the in-game perspective, to get a feel for the level without launching the client.
Mostly Harmless! wrote:It's very well planned. I just disagree with the way selected objects look. I'd like to be able to see the shapes in more dimensions. When selected, they seem to become silhouettes which are harder to use then just a recolored model, maybe with bolder lines. It might not be a problem with simple objects, but with more complex groups it might lead to a little confusion.
It looks that way because of my inadequate knowledge of Blender :). The real thing will just shade the object green (or whatever color), rather than making the entire object one solid color. I agree--it IS confusing ;)

Thank you all for your replies!
A computer in the hands of a capable developer is like a lightsaber in the hands of a capable Jedi.
User avatar
Saturos
Art Master General
Art Master General
Posts: 1111
Joined: Mon Apr 19, 2004 2:48 pm
Location: Berlin/Germany
Contact:

Post by Saturos »

Welcome jude, nice to have you here. :)
I didnt have the time to read all of it yet, so maybe my question is already answered somewhere... will the editor be multiplatform? Seeing that you seem to work on Linux, I am glad it wont be Windows-only and that I'll be able to use it on my linuxbox. Still it would be nice to have it work on all platforms.

btw, you got a pm.

Cheers,
Satu
User avatar
Grace F
Sergeant
Sergeant
Posts: 978
Joined: Sun Oct 01, 2006 12:29 pm
Location: Adelaide, AUSTRALIA

Post by Grace F »

I have a suggestion. With the objects, once you have 1 on your map could you add in a tool that allows your to change it so it leans to either side you choose. Much like this.

You click on the 'lean' tool then click and drag the object. So you could turn a Square, into a Rhombus.


The 3d User Interfaces is what interested me the most. I read almost all that was written at the link above. I absolutely cannot wait for this to come out :D
Image
Image
ts
Dev Monkey
Dev Monkey
Posts: 970
Joined: Fri Jan 14, 2005 6:26 pm

Post by ts »

Looks quite good but there are a few bad things I've spottet:

The menus are a no-go on Mac OS X that way.
"The Master Configuration Dialog" is limiting. Matrix multiplication is not cumulative so the order of scale, shift and shear operations do matter. The dialog implies you can't swap the order..leading to the requirement of computing the correct units of existing maps and the map authors may not understand what has been done to the shift and shear operations.
GU league: http://www.guleague.org/
An introduction to TCP: http://www.lafkon.net/tc/
jude-
2007 Google Summer of Code Participant
2007 Google Summer of Code Participant
Posts: 13
Joined: Tue May 22, 2007 11:11 pm
Contact:

Post by jude- »

Saturos wrote:Welcome jude, nice to have you here. :)
I didnt have the time to read all of it yet, so maybe my question is already answered somewhere... will the editor be multiplatform? Seeing that you seem to work on Linux, I am glad it wont be Windows-only and that I'll be able to use it on my linuxbox. Still it would be nice to have it work on all platforms.
It will DEFINITELY work on Windows, Linux, and Mac OS X; possibly other UNIXes.
Grace F wrote:I have a suggestion. With the objects, once you have 1 on your map could you add in a tool that allows your to change it so it leans to either side you choose. Much like this.

You click on the 'lean' tool then click and drag the object. So you could turn a Square, into a Rhombus.
Yup, it will have a shear (i.e. a "lean") tool.
ts wrote:The menus are a no-go on Mac OS X that way.
Could you elaborate please? I'm not sure what you mean.
ts wrote:"The Master Configuration Dialog" is limiting. Matrix multiplication is not cumulative so the order of scale, shift and shear operations do matter. The dialog implies you can't swap the order..leading to the requirement of computing the correct units of existing maps and the map authors may not understand what has been done to the shift and shear operations.
Hmmm...this is true. Thanks for catching that! Anyway, I've updated the UI to reflect that. What the user will be able to do is add or remove transformation operations, select what type of operation they are, and fill in the details specific to that operation.
A computer in the hands of a capable developer is like a lightsaber in the hands of a capable Jedi.
User avatar
Goodbye2U
Private First Class
Private First Class
Posts: 162
Joined: Sat Feb 25, 2006 1:19 am
Location: In my farewells

Post by Goodbye2U »

I'd like 2 things from this:

A nice long undo "log" (you can undo a lot of things you did, if necessary)

And be able to place 2.0 map objects (one-way drive-thru walls, circular arch
teleporters, stuff like that)

I'm sure everyone would like these. :D
BTW, I think what you are doing is great. :wink:
I'm thinking I need a better sig than this...
User avatar
CannonBallGuy
Private First Class
Private First Class
Posts: 2083
Joined: Wed Apr 12, 2006 1:31 am
Contact:

Post by CannonBallGuy »

If you had looked at jude's link, you would have seen what map objects would be available.
Teleporters are 1.x objects. One-way walls are meshes.
Image

Merry Christmas!

"Look, if I don't buy booze for the kids, I don't get any incriminating pictures to show to their parents, my business goes down the sink, my girlfriend leaves me and the baby goes on ebay. So help me search..."

"go Play With Toys urself in a dark alley u donkey ******" - Lt-Kirby2007
User avatar
Mostly Harmless!
Private First Class
Private First Class
Posts: 347
Joined: Sun Oct 30, 2005 4:37 am
Location: California

Post by Mostly Harmless! »

I think that maybe a different way to render an SW world weapon. Something that showed the approximate radius of an SW, and maybe a way to change the radius (for all SW's).

I never make stupid mistakes. Only very, very clever ones.
It is not the fall that kills you. It's the sudden stop at the end.
Always remember you are unique. Just like everybody else.
jude-
2007 Google Summer of Code Participant
2007 Google Summer of Code Participant
Posts: 13
Joined: Tue May 22, 2007 11:11 pm
Contact:

Post by jude- »

Goodbye2U wrote:I'd like 2 things from this:

A nice long undo "log" (you can undo a lot of things you did, if necessary)

And be able to place 2.0 map objects (one-way drive-thru walls, circular arch
teleporters, stuff like that)
Long undo log...got it!
The editor will be completely BZW-2.0 compliant, and will support meshes, arches, etc. unique to BZFlag 2.0 and higher.
Mostly Harmless! wrote:I think that maybe a different way to render an SW world weapon. Something that showed the approximate radius of an SW, and maybe a way to change the radius (for all SW's).
Show world weapon radius...check!
What do you recommend?
A computer in the hands of a capable developer is like a lightsaber in the hands of a capable Jedi.
ts
Dev Monkey
Dev Monkey
Posts: 970
Joined: Fri Jan 14, 2005 6:26 pm

Post by ts »

jude- wrote:
ts wrote:The menus are a no-go on Mac OS X that way.
Could you elaborate please? I'm not sure what you mean.
There is an exact menu specification regarding Mac OS X. The system automatically creates a menu with the name of the application and puts system stuff inside (like services, quit etc) and, if the app requests, a preferences and about entry. Next menu follows is called "File" with open, save, print and similar entries. "Edit" is a half automatic menu where it's entries get activated/deactivated by the system on the fly, depending on context. More menus may follow, then "Window" menu application has to request from system if it deals with multiple windows and last a "Help" menu. Every context menu choice needs to have the same functionality right in the menus of menu bar, too.

That's platform specific but that is the spec, if one does not follow it will work but it will look like an alien application.
jude- wrote:
ts wrote:"The Master Configuration Dialog" is limiting. Matrix multiplication is not cumulative so the order of scale, shift and shear operations do matter. The dialog implies you can't swap the order..leading to the requirement of computing the correct units of existing maps and the map authors may not understand what has been done to the shift and shear operations.
Hmmm...this is true. Thanks for catching that! Anyway, I've updated the UI to reflect that. What the user will be able to do is add or remove transformation operations, select what type of operation they are, and fill in the details specific to that operation.
Hrm, now that I think of it, I tend to think the order of the scaling is irrelevant but order of shear and shift does matter for sure.

If any doubts feel free to ask the other devs. I tend to be a bit confused. :?
GU league: http://www.guleague.org/
An introduction to TCP: http://www.lafkon.net/tc/
User avatar
Tanner
Private First Class
Private First Class
Posts: 575
Joined: Sat Sep 17, 2005 3:46 am
Location: Atl, GA
Contact:

Post by Tanner »

Oh nice work. Sounds like you're on the right road.

-Maybe shot paths (for tanks or world weapons) to determine if they will hit the right place.
-Trajectories for physics drivers (for ones that move the tank; not kill it) so you can get it to land on just the right object without testing 100 times.
-Flag display?

Keep up the great work!
-Tanner
Tanner - Segway HT i180 Red Owner - Random Map Creator - BZStocks - TS Software

Image
jude-
2007 Google Summer of Code Participant
2007 Google Summer of Code Participant
Posts: 13
Joined: Tue May 22, 2007 11:11 pm
Contact:

Post by jude- »

ts wrote:
jude- wrote:
ts wrote:The menus are a no-go on Mac OS X that way.
Could you elaborate please? I'm not sure what you mean.
There is an exact menu specification regarding Mac OS X. The system automatically creates a menu with the name of the application and puts system stuff inside (like services, quit etc) and, if the app requests, a preferences and about entry. Next menu follows is called "File" with open, save, print and similar entries. "Edit" is a half automatic menu where it's entries get activated/deactivated by the system on the fly, depending on context. More menus may follow, then "Window" menu application has to request from system if it deals with multiple windows and last a "Help" menu. Every context menu choice needs to have the same functionality right in the menus of menu bar, too.

That's platform specific but that is the spec, if one does not follow it will work but it will look like an alien application.
Umm...the menu you see in the spec is activated by right-clicking the 3D scene. It isn't designed to be part of the menu bar...yet. It will be available via key combo for Mac users with 1-button mice.
Tanner wrote:-Maybe shot paths (for tanks or world weapons) to determine if they will hit the right place.
-Trajectories for physics drivers (for ones that move the tank; not kill it) so you can get it to land on just the right object without testing 100 times.
-Flag display?
I'll see what I can do--the 3D scene comes much later in the project :). The first thing I'll be developing (and will probably spend most of June on) are the dialog boxes, event handlers, load/parse/save level features, and (most importantly) a good, robust way to internally store, query, and modify level data. Once that's in place, adding a 3D scene is pretty trivial.
A computer in the hands of a capable developer is like a lightsaber in the hands of a capable Jedi.
User avatar
Mostly Harmless!
Private First Class
Private First Class
Posts: 347
Joined: Sun Oct 30, 2005 4:37 am
Location: California

Post by Mostly Harmless! »

Well, for SW's a circle showing the maximum range on the radar and maybe a pretty transparent sphere/hemisphere to represent the SW on the map view itself. I don't think that any way to represent the minimum radius is needed, but I could be wrong.

I never make stupid mistakes. Only very, very clever ones.
It is not the fall that kills you. It's the sudden stop at the end.
Always remember you are unique. Just like everybody else.
User avatar
Tropican8
Private First Class
Private First Class
Posts: 312
Joined: Fri Mar 18, 2005 11:51 pm
Location: As close to the grove as you can get

Post by Tropican8 »

Great work, this looks like it will be a very useful tool for rookie map makers.

I'm not sure if you're planning on having this feature already, but a "mirror" option that clones all of a map's objects over an axis might be useful for CTF maps.
meeba
Master Sergeant
Master Sergeant
Posts: 507
Joined: Sun Mar 12, 2006 10:49 pm
Location: N. Sanity Beach

Post by meeba »

Tropican8 wrote:Great work, this looks like it will be a very useful tool for rookie map makers.

I'm not sure if you're planning on having this feature already, but a "mirror" option that clones all of a map's objects over an axis might be useful for CTF maps.
I think the grouping option he is already planning might work out well for that. It would be ideal if the grouping actually wrote into the map file as defines/groups. That way maps are easier to go through by hand, also. :)
User avatar
Saturos
Art Master General
Art Master General
Posts: 1111
Joined: Mon Apr 19, 2004 2:48 pm
Location: Berlin/Germany
Contact:

Post by Saturos »

In these forums here we have a section called "prefabs and map objects". I think it would be nice to have a library inside BZWorkbench, where you can save objects, groups or setups you often need, so you can just drag&drop them in any mapfile you have currently opened. So you dont have to open old maps when you know you always need the trees from blabla.bzw. Just load the tree into your library and you can place it in every new map with a few clicks.

I can imagine that would be quite useful and shouldnt be too hard to code in relation to the other stuff you are planning. :)
User avatar
Mostly Harmless!
Private First Class
Private First Class
Posts: 347
Joined: Sun Oct 30, 2005 4:37 am
Location: California

Post by Mostly Harmless! »

If you have time, maybe you can add a dialog to edit the options object, to be able to set variables, etc.

I never make stupid mistakes. Only very, very clever ones.
It is not the fall that kills you. It's the sudden stop at the end.
Always remember you are unique. Just like everybody else.
User avatar
Peter
Private First Class
Private First Class
Posts: 354
Joined: Tue Jan 23, 2007 5:44 pm
Location: 127.0.0.1
Contact:

Post by Peter »

I can't wait to get my hands on this! Looks very good, atlast a map maker that looks easy to use :D, I love that you can add physics drivers with a visual aid.
“Roses are #FF0000, violets are #0000FF, all of my base are belong to you.” ~ Nerd on Colour
User avatar
tadd
Master Sergeant
Master Sergeant
Posts: 93
Joined: Sun Aug 22, 2004 2:25 pm
Location: Raleigh, NC

rendered groups

Post by tadd »

In a complex map it is rather hard to see what is part of one super-object and what is part of another, or to see what is on the 2nd floor of a building because all of the upper floors block your view.

It might be handy to allow each object to belong to one of a list of groups of items. Thus one could create a map-group, and then add a castle-group, and a underworld group, and a flying-platform group. Or, in the case of a skyscraper, the 1st floor group, 2nd floor group, 3rd floor group, roof group.

I suggest creating a group-dialog that lets you specify a list of groups, then each object would have a pull-down menu to select which object-group the object belongs to.

Now... the cool part, is that you could select which groups are visible at any given time. Right click someplace and bring up a check-list of the groups. Uncheck the ones you want hidden at this time, so you can focus your editing on the group(s) you want to see.
This is a block of text that can be added to posts you make. There is a 800 character limit
User avatar
CannonBallGuy
Private First Class
Private First Class
Posts: 2083
Joined: Wed Apr 12, 2006 1:31 am
Contact:

Re: rendered groups

Post by CannonBallGuy »

tadd wrote:In a complex map it is rather hard to see what is part of one super-object and what is part of another, or to see what is on the 2nd floor of a building because all of the upper floors block your view.

It might be handy to allow each object to belong to one of a list of groups of items. Thus one could create a map-group, and then add a castle-group, and a underworld group, and a flying-platform group. Or, in the case of a skyscraper, the 1st floor group, 2nd floor group, 3rd floor group, roof group.

I suggest creating a group-dialog that lets you specify a list of groups, then each object would have a pull-down menu to select which object-group the object belongs to.

Now... the cool part, is that you could select which groups are visible at any given time. Right click someplace and bring up a check-list of the groups. Uncheck the ones you want hidden at this time, so you can focus your editing on the group(s) you want to see.
I could imagine this being handy - but also, allow individual objects to be hidden with a simple right-click option. :)
Image

Merry Christmas!

"Look, if I don't buy booze for the kids, I don't get any incriminating pictures to show to their parents, my business goes down the sink, my girlfriend leaves me and the baby goes on ebay. So help me search..."

"go Play With Toys urself in a dark alley u donkey ******" - Lt-Kirby2007
Post Reply