Experimental AGSEditor *BUFF* Edition!

Started by Shane 'ProgZmax' Stevens, Thu 18/11/2010 16:39:01

Previous topic - Next topic

Shane 'ProgZmax' Stevens

That's right gang!  After reading up on Visual Studio 10 and with some rather excellent help from a friend of mine I present to you the first build of what I'm designating the BUFF Edition of the editor.  Why?  I'm beefing up a few of the features, that's why!

Features:

1.  A reworked Room Edit interface!  I went in and rearranged things, expanded things, and generally tried to re-order the layout of the Room Edit GUI
for current and future improvements.

2.  Added a checkbox that only appears when 'use low res coordinates' is enabled and your game is in high resolution that will allow you to display the mouse coordinates visually as low res mouse coordinates.

3.  Characters now appear visually in rooms!  I know, you're saying 'fuck yeah!' right now, and thanks to my friend Paul this happened a lot sooner than I planned.  Simply select the new CHARACTER view from the drop-down and you can see and reposition them all you like!

4.  Character speechcolor is now represented by a color swatch that can be adjusted visually via a drop-down box to any color you want!  No more typing in numbers and guessing!


And more!  (read the readme for details).



Characters in Room Edit!?




A few words before you click download, though:

1.  While I've worked hard to make this a relatively bug free release, CJ's editor is MASSIVE internally and it's very possible I missed something.  For this reason, do NOT use this on one of your games unless you have a backup.

2.  I've included all the msvc files needed to run this, but in case you get errors you might need the latest Visual c++ 2010 runtime.

3.  Yeah!



What I could use from you:

1.  Some patience.  I'm still working my way through the loads of files in the editor and seeing exactly what I can manage, so please don't spam me with requests.  I'm sure Calin or tzachs can implement anything you have an immediate need for :).

2.  Bug reports in THIS THREAD.  Particularly I'd like you to just beat the hell out of the characters in room edit; screw with the scale, whatever you can to try and break them.  I am aware that clicking on them is sometimes strange; while I'm using some adapted code from how the room edit handles objects I've also designed the mouse to lock at the bottom middle of the character so you can place them at precise StartX and Y values which is responsible for this.

3.  If you absolutely cannot get it to work, my advice is to make sure you have all the Visual c++ runtimes up to date.  If it still doesn't work, please post the error message here and I'll see if it's something I can fix.

4.  Have fun!  


Fixes:

1.  Drawing modes are no longer continuous.

2.  Creating a new character with an empty view will no longer crash the editor if you assign it to a room and open the room in room edit.

3.  the Checkbox for low-res mode has been removed in favor of checking the "use low res coordinates" property in the general property pane.  When that is checked in a high res game, the mouse coords will automatically scale to low res.

4.  Copying to clipboard now takes into account whether or not "use low res coordinates" is checked in a high res game.

5.  Restores some original property display names

6.  Allows you to see the reserved AGS colors (0-31) by entering 0,0,x, where x is a blue value between 0 and 248 (in units of 8).  

7.  Made a quick fix to the gui backgroundimage property so imported guis from old versions of ags don't produce negative image numbers.

AGSEditor BUFF Bugfix Edition D


I haven't received a lot of reports but the ones I have are encouraging so I'm going to release the source today and if I come up with any more improvements we'll just go from there.  Included is a rar with the latest build compiled (E) that simply disables warning reports for large gui sizes since I found this to be somewhat annoying personally, especially since rooms can change dimensions.

I've tried to comment about 95% of what I've done as well as offer some explanations (particularly in the new content).  The spots I may have missed shouldn't be difficult to follow, though.

Enjoy.

AGSEditor BUFF Source code

You'll also want to download this version of the ikpMP3.dll as the one included above does not work properly in the editor.

http://www.mediafire.com/?xa21v9n2r1s88w5


Matti

fuck yeah!

I was waiting fot that since I considered your room edit suggestions the most useful of them all.

Sslaxx

Yo, please release the source code? We've got three different forks now and none with source code available, which I don't think is what Pumaman wants?

This still runs quite nicely under Win2K, which is a big plus (as my primary dev environ for AGS is my 2K virtual machine). The only thing I'd like (so far) is a "Place Character here"-type option.

Cheers!
Stuart "Sslaxx" Moore.

tzachs

Very nice! Especially #3!  :D
I will hopefully download it this weekend and do some QA...

And Sslaxx, don't worry, we've only just began, I intend to release my source after I put some more stuff in there, and I believe the rest are too.

Shane 'ProgZmax' Stevens

#5
I'll release the source when my changelist is complete and everything is stable.  It would be pointless to release a bunch of buggy (and undocumented) source releases, really.

What do you mean by a 'place character here' option?

Calin Leafshade

Quote from: Sslaxx on Thu 18/11/2010 18:15:28
Yo, please release the source code? We've got three different forks now and none with source code available, which I don't think is what Pumaman wants?

I'll release my source soon since I'm stopping development of everything for a while so I'll pass the torch to tzachs or someone to integrate it into their releases.

Ryan Timothy B

Hey Progz, man. Good work.
It's quite late here and I haven't had a chance to try this, nor do I know how yet or plan on learning at the moment. One AGS annoyance that always bugs me is that you can't right click on a background to get the room coordinates when you're in any mode other than 'Nothing'. It should honestly work for every mode, Especially while in walkable areas mode.


QuoteAdded a checkbox that only appears when 'use low res coordinates' is enabled and your game is in high resolution that will allow you to display the mouse coordinates visually as low res mouse coordinates.
Hmm.. With AGS, a character only lands on Even parts of the background. So perhaps with the suggestion I made above, when you're in the 'walkable area' mode, it should give you low res coordinates since that's what the walkable areas are made of.

Other than that, there isn't anything else I can think of at the moment.

Shane 'ProgZmax' Stevens

#8
QuoteOne AGS annoyance that always bugs me is that you can't right click on a background to get the room coordinates when you're in any mode other than 'Nothing'. It should honestly work for every mode, Especially while in walkable areas mode.

This is actually implemented in the release above (it's in the readme) :D.  The reason why right click didn't bring up 'copy to clipboard' for all views on the traditional Room Edit is because all of the other views have different right click functionality (object views use it to place new objects or delete selected ones, walkbehinds/hotspots/regions use it with the color picker).  To get around this I've moved the functionality to the MIDDLE MOUSE BUTTON, which does not interfere with any of the room edit functionality.  So now anytime you want to copy the mouse coordinates to the clipboard just press the middle mouse button in any of the views except for Edges (didn't make sense to implement it there, honestly).


Would halving the coordinates on a walkable area by default be something people would want to see in higher resolutions?  Since I've only used up to 320x240 I haven't run into that issue with walkable areas, though by checking the box it will switch the coords to low res in all views anyway.

ThreeOhFour

Quote from: ProgZmax on Fri 19/11/2010 08:41:15
QuoteOne AGS annoyance that always bugs me is that you can't right click on a background to get the room coordinates when you're in any mode other than 'Nothing'. It should honestly work for every mode, Especially while in walkable areas mode.

This is actually implemented in the release above (it's in the readme) :D.

Another fine feature! Great work!

Sslaxx

Quote from: ProgZmax on Fri 19/11/2010 01:30:58
I'll release the source when my changelist is complete and everything is stable.  It would be pointless to release a bunch of buggy (and undocumented) source releases, really.

What do you mean by a 'place character here' option?
Basically, being able to place an existing character somewhere in the room ala the way "Place an object here" works.
Stuart "Sslaxx" Moore.

barefoot

#11
Hi

love the possibilities with this version.. especially being able to reposition characters in the room... great!

Drawing walkable areas were a problem, cursor not releasing.. eg doing a line/box.. this obviously needs sorting, unless I'm the only one..

If would be nice to be able to draw walkbehinds with objects showing though...

It also does warn you that if you open a file it cannot be reopened by previous version... this itself could distract you from opening a file... stiill, early days...

I have not tested everything yet.

Im using winxp with service pack 3

All in all a good attempt and should be continued as an ehancement to CJ's original creation..

well done..

barefoot
I May Not Be Perfect but I Have A Big Heart ..

Shane 'ProgZmax' Stevens

Sslaxx - The problem with having a menu for placing characters there is that it could potentially be a huge, huge menu (it would depend on how many characters you have in the game, basically).  This would require me to open a special form (which I could do) with a scrollable list but honestly it would be faster when creating a character to just pick the room you want them in by default, anyway, or quickly tweak the property and pop back to the room.  Bear in mind you don't need to reload a room for the character to show up; their visibility relies solely on the Starting Room property and refreshes with the view.

barefoot - Could you be more specific about the problems you have drawing walkable areas and the cursor not releasing, maybe with an example?  I've been meaning to improve the drawing options when I have a chance.




Ryan Timothy B

#13
Quote from: ProgZmax on Fri 19/11/2010 08:41:15
To get around this I've moved the functionality to the MIDDLE MOUSE BUTTON, which does not interfere with any of the room edit functionality.
It's kinda odd, I'm not a big fan of it since it's not a very common thing. I've never used a program that uses the middle mouse click other than 3D programs that have a gigantic interface and are using up almost every keyboard and mouse button. :P

Yes, I've tested your new room features now that it's not 3am.

The drawing runs into a few problems, same as Barefoot mentioned. You can't stop drawing at all. Once you've made the first click to draw a line or box, it will continue creating a new line/box after each ending click, without actually drawing the first one.
The only one that seems to work correctly is Walk-Behinds.

As for clicking on an object or character, it should also have on the list "Copy object coordinates". Whenever I have a moving object in game, I usually move it in the room editor to where it should be. Then I remember the coordinates from the right pane, and then move it back to where it needs to be. This would be much much nicer than remembering some coordinates - and half the time I remember it wrong. :P


Quote from: ProgZmax on Fri 19/11/2010 08:41:15
Would halving the coordinates on a walkable area by default be something people would want to see in higher resolutions?
Only reason I noticed this being a problem in the first place is for the reason that I'm the programmer for Journey of Iesir; which as you probably know, it's 1024x768. I had to make my own non-blocking walkto script and I first ran into problems because more than half my coordinates were copied from the room editor and weren't even numbers. I couldn't figure out why it wasn't working for most of them.

Obviously now, I just check if the coordinates are odd and just add one. So it isn't really a problem, just something I thought I'd mention.


Edit
And yes, how often do characters remain in their starting room? Every time you want to see if the room works for that character, you'll have to change its starting room, and then back again.

barefoot

Quote from: ProgZmax on Fri 19/11/2010 16:53:11
Sslaxx - The problem with having a menu for placing characters there is that it could potentially be a huge, huge menu (it would depend on how many characters you have in the game, basically).  This would require me to open a special form (which I could do) with a scrollable list but honestly it would be faster when creating a character to just pick the room you want them in by default, anyway, or quickly tweak the property and pop back to the room.  Bear in mind you don't need to reload a room for the character to show up; their visibility relies solely on the Starting Room property and refreshes with the view.

barefoot - Could you be more specific about the problems you have drawing walkable areas and the cursor not releasing, maybe with an example?  I've been meaning to improve the drawing options when I have a chance.

when you drag a line or box and release it it either does not release or the line or box disappears and you have to try again...this happens quite often...


I did draw a walkable area, but when i wanted to add to it the above happens.

barefoot

barefoot
I May Not Be Perfect but I Have A Big Heart ..

Shane 'ProgZmax' Stevens

#15
I found the problem with the drawing and fixed it.  It was an issue with overriding the MouseUp event on some of the filters, but that's done and dusted.

I've also added a right click option for objects to copy their coordinates to the clipboard.  


Edit:  I've uploaded a newer version with some changes:

1.  The checkbox seemed irrelevant so I removed it.  Now if you go into low res coordinates mode in a high res game it will automatically convert the mouse coordinates.  These seems more streamlined and logical since there's not much reason for a person to switch to low res coordinates but still want high res coordinates...

2.  Added a right click option when over a character to copy their position to the clipboard.  In low res coords mode it will copy the low res version.  Object copying now works this way as well.

3.  Changed all of the gui color settings to use color pickers and R,G,B displays.  No more need to refer to the color palette form!

4.  Fixed a nasty bug with characters with an assigned view but no frames in loop 0 crashing the editor.  It will now place a 'temporary' image in the room using Sprite 0 if there is no assigned frame in loop 0, frame 0 of the character's view.

AGS Editor Buff Edition (with fixes)

barefoot

Cheers ProgZmax

draws ok now  :=

Great stuff... keep it up

barefoot
I May Not Be Perfect but I Have A Big Heart ..

tzachs

Did a little QA, awesome stuff!

Some issues I did find:

* The handling of the character is weird due to the fact you place the mouse cursor at the bottom of the sprite. You said you were aware of it, but I thought I'd mention it anyway, because it really stands out...

* The characters are not scaled according to the walkable areas they stand on (at least not with continous scaling, I didn't check with single scaling). In my scenario, when I draw the sprites at a big scale, and then scale them down, it makes the feature a lot less useful. Also, if this was implemented, it can also help testing the min & max range of the continous scaling (by dragging the character across the screen).

* Speech color is not loaded properly if it was under 31 (the colors which AGS preserve). You can take a look here to see how the colors should be converted to RGB values.

* The attribute reads as SpeechColorVal in the designer, should be SpeechColor.

Shane 'ProgZmax' Stevens

* The handling of the character is weird due to the fact you place the mouse cursor at the bottom of the sprite. You said you were aware of it, but I thought I'd mention it anyway, because it really stands out...

And as I already explained, this is so you can place the character with precision since character x and y values are based on the bottom center of the sprite.


* The characters are not scaled according to the walkable areas they stand on (at least not with continous scaling, I didn't check with single scaling). In my scenario, when I draw the sprites at a big scale, and then scale them down, it makes the feature a lot less useful. Also, if this was implemented, it can also help testing the min & max range of the continous scaling (by dragging the character across the screen).

...And neither are objects.  Scaling items in the room editor based on walkable area scale values would be extremely dodgy, particularly due to the zoom feature.  It might be something I'll look at later, but aside from yourself I'm sure many many people will find it useful as it is.

* Speech color is not loaded properly if it was under 31 (the colors which AGS preserve). You can take a look here to see how the colors should be converted to RGB values.

It loads fine, the swatch cannot adjust to the engine-custom colors because the 0-31 values are kind of a hack that auto-assigns every 8 units of Blue up to 248 a specific color, so 8=1, 16=2, all the way up to 248=31.  You can test this with the palette form.  Unfortunately there's no way of making the color swatch match a color that's being assigned in this fashion, though as I say, entering in these values will resort in the proper in-game color.

* The attribute reads as SpeechColorVal in the designer, should be SpeechColor.

No.  SpeechColor is an integer property and for the purposes of the editor loading must remain one for now (especially for backwards compatibility).  SpeechColorVal is a Color property that converts the color swatch value (R,G,B) back into an engine compatible color. 

kconan

  Thanks for the hard work on this!  And I look forward to the future additions to BuffEditor.

SMF spam blocked by CleanTalk