AGSEditor: New features (Source code now available)

Started by tzachs, Sun 31/10/2010 23:48:35

Previous topic - Next topic

Pumaman

QuoteSince at the moment it seems that AGS development is heading towards a more or less structured model of a group of steady collaborators who have access to the code base, it might be a good idea to set up a bug tracker and a feature/feature request tracker.

Yes, I definitely think this is important. We already have the bug/feature tracker here:
http://www.adventuregamestudio.co.uk/Newsite/BugTracker.aspx

Do we think that's useful enough for this, or do we need a more comprehensive bug tracking system?

QuoteI mean the editor user preferences.

If someone wants to edit or add a feature to the editor then its very likely that there would be some preferences associated with that feature.

As such it should be possible for an editor component to register new user preferences to some kind of dictionary and get those preferences

This is a good point, and I agree.
I'm not sure if it would be better to allow each component to provide a Windows.Forms.UserControl with the contents of its preferences options, or just to standardize everything as a PropertyGrid.

QuoteIt's called DockPanel Suite and provides docking abilities to panels a-la visual studio.

I'm not really good with licensing issues, so I'm not sure if it's GPL, LGPL or something else...
Here are the terms and conditions (copied & pasted from the documentation):

Interesting, I think I looked at that when first writing the AGS 3 editor, but there was a reason that I didn't use it. Can't remember what that was now though...
That license looks fine; if you'd like to experiment with using that in the editor, please do so.

Quote
You might be interested in a code review tool, like Review Board:
The idea:  patches for AGS can be submitted for review, and commented on.  People put their eyes all over it, ask questions, etc.  When the review request gets the green light (or the "Ship it"), the review requester (or the project maintainer) can then apply the patch.

Interesting. I think we need to discuss ideas earlier in the process though, not wait until someone has already written the code for them. We should be discussing whether to do the work, before somebody has actually gone ahead and done it.

QuoteBTW, as V3.2 is not "officially officially" released yet (i.e. not announced on main page and the installer-less version is not available), would you just skip it and make V3.2.1 the "real" official version? Besides the changes in the editor, there're a couple of bug fixes in the engine, so would it be better to have V3.2 released first (with the less buggy engine), or just wait for yet another version?

Yes, I plan to skip 3.2 and make 3.2.1 the real official version. That's why I'm not planning any more changes for 3.2.1, but just to ship it in its Beta 1 state if no bugs are found.

kaputtnik

Quote from: Pumaman on Mon 10/01/2011 19:38:08
Yes, I definitely think this is important. We already have the bug/feature tracker here:
http://www.adventuregamestudio.co.uk/Newsite/BugTracker.aspx

Do we think that's useful enough for this, or do we need a more comprehensive bug tracking system?

Hm, I didn't even know about that bug tracker - did you or strazer generate this list manually (or semi-manually) from forum entries, or how do you go about entering a bug or feature request? The feature requests in there might actually be a repository of good ideas, but aren't some of them slightly outdated?

Well, I'm not sure what this tracker can do, so I don't know if a more comprehensive bug tracking system is needed - but setting up a more powerful tracker like Mantis (or any other bug tracker) is quickly and easily done. Mantis at least has a lot of import functions, so the content of the old tracker could be migrated easily and organized to fit the current project needs. There is no (out-of-the.box) working integration with the SMF authentication system, unfortunately, maybe another bug tracker can do this? Any experts around?
I, object.

Joseph DiPerla

I personally like the Mantis bug tracker. As far as the old tracker... Thats been around a while. There were five us moderating it (Including myself). But I think over the years it has been neglected as CJ was implementing more features and fixing bugs faster than it could get posted on that tracker, lol.
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

Shane 'ProgZmax' Stevens

QuoteIn what situations is this useful?

When placing a character, people may want to see visually where the character collision point is and having the mouse locked to that area makes it easy, both for placement and aligning with walkable areas/walkbehinds.  I've found it quite useful myself and have no problem just implementing it for my own use without it being an official part of the editor, so no worries.

As far as 8-bit color mode, I forgot to add support because I never use it  :-X .  Shouldn't have required much work to adapt it, though.

tzachs

The tracker seems nice overall.
What I'm missing is an "Assigned to" field, so that devs would be able to assign themselves to bugs\features and let the others know that they're working on it.
Also sorting & filtering would be nice additions.
I'm not familiar with Mantis, if it has those options (and this tracker doesn't) then it's something to think about.

Calin Leafshade

Quote from: ProgZmax on Mon 10/01/2011 23:27:13
When placing a character, people may want to see visually where the character collision point is.

This seems reasonable, but i think drawing a cross at the origin point might be a better solution.
Snapping something to the mouse like that is not something computer users are trained to expect, for better or worse.

Kweepa

Quote from: tzachs on Mon 10/01/2011 23:34:14
I'm not familiar with Mantis, if it has those options (and this tracker doesn't) then it's something to think about.
Mantis does indeed have assignment, sorting and filtering.
It gets kind of slow with thousands of bugs, but I think it would work well for AGS.
Still waiting for Purity of the Surf II

Pumaman

Quote from: kaputtnik on Mon 10/01/2011 22:16:39
Hm, I didn't even know about that bug tracker - did you or strazer generate this list manually (or semi-manually) from forum entries, or how do you go about entering a bug or feature request? The feature requests in there might actually be a repository of good ideas, but aren't some of them slightly outdated?

This bug tracker goes back a long way, we need to review it and see which of the entries are now obsolete.
Something like Mantis might well be a good idea, or we can just spend a bit of time on the existing bug tracker bringing it up to scratch.

Also, since I seem incapable of finishing the new website release I was thinking about open-sourcing that as well so that it might actually get done; anyone interested in this?

AGS Manual

I have added the source for the manual to SVN in /trunk/Manual

Because AGS goes back a long time, the manual is built using a rather obscure tool called tex2rtf, and there are a couple of hacky utils that I wrote to mix in html pages like the tutorials.

Please can you guys try getting it from SVN, run the "run.cmd" file and see if it produces a valid AGS.CHM output file for you?
I'm not sure if I've included all the necessary dependencies, or if it might be using something else installed on my machine somewhere.

The main body of the manual is in the AGS.TEX file, edit this with a good text editor and you should get an idea of how it is formatted.

Joseph DiPerla

Do you use a CMS for the site? PHP? Your own PHP CMS System?
Joseph DiPerla--- http://www.adventurestockpile.com
Play my Star Wars MMORPG: http://sw-bfs.com
See my Fiverr page for translation and other services: https://www.fiverr.com/josephdiperla
Google Plus Adventure Community: https://plus.google.com/communities/116504865864458899575

tzachs

Quote from: Pumaman on Wed 12/01/2011 22:10:46
Please can you guys try getting it from SVN, run the "run.cmd" file and see if it produces a valid AGS.CHM output file for you?
I'm not sure if I've included all the necessary dependencies, or if it might be using something else installed on my machine somewhere.

Didn't work for me.
I ran the "run.cmd" command and got:

hhc.exe - Unable To Locate Component
The application has failed to start because HHA.dll was not found.

subspark

QuoteI was thinking about open-sourcing that as well so that it might actually get done; anyone interested in this?
I'm more than happy to offer my time to produce the bitmaps necessary for a design refresh. I'm not sure what kind of work has been done on the design front but if one does not exist, I'm certainly happy to volunteer.
That is if you folks would like a modern'ed up refresh, exactly like what I'm doing for the AGS Editor.

Cheers,
Sparky.

Calin Leafshade

Wouldn't it be a good idea to update the manual format if it uses one that is obsolete?

Does anyone know of any good help systems? Literally every app i've tried has online help.

Wonkyth

There's nothing wrong with online help, just as long as the online help is shipped with it, so as not to require the online part.   :P
"But with a ninja on your face, you live longer!"

Calin Leafshade

Open sourcing the website seems like a very good idea.

We have some very talented graphic/web designers here so I am behind that.

As for myself, i'm a *terrible* graphic designer but my PHP is pretty good so i'd be happy to help in that department.

Pumaman

QuoteDo you use a CMS for the site? PHP? Your own PHP CMS System?

No, it is custom web pages.

Quotehhc.exe - Unable To Locate Component
The application has failed to start because HHA.dll was not found.

Thanks, for testing. I've committed HHA.DLL to SVN, could you try again?

QuoteI'm more than happy to offer my time to produce the bitmaps necessary for a design refresh.

We don't need a design done, we already did that, it's here:
http://www.adventuregamestudio.co.uk/Newsite/Home.aspx
I just need to finish off coding the bits that are missing like Search on the Games page.

QuoteWouldn't it be a good idea to update the manual format if it uses one that is obsolete?

Possibly, though I'm in no hurry to given that it works as it is, why break it.

QuoteAs for myself, i'm a *terrible* graphic designer but my PHP is pretty good so i'd be happy to help in that department.

The new site is ASP.NET written in C#, to try and get rid of all the messy PHP.

tzachs

Quote from: Pumaman on Thu 13/01/2011 19:27:49
Thanks, for testing. I've committed HHA.DLL to SVN, could you try again?

Tried again, it gave me an error but the file was created successfully.
The error was on the command: hhc ags.hhp

I get:

HHC6003: Error: The file Itircl.dll has not been registered correctly.
Microsoft HTML Help Compiler 4.74.8702

And one more thing, I opened the chm file, it seems that on my computer, the contents are alligned right-to-left.

kaputtnik

Quote from: tzachs on Fri 14/01/2011 13:46:44
And one more thing, I opened the chm file, it seems that on my computer, the contents are alligned right-to-left.

It aligns just fine here. Is there any chance the chm takes its alignment from the OS default (if you are using an OS that is set to Hebrew)?
I, object.

tzachs

Yes, it's probably related to me having Hebrew support (although the OS itself is in English).
The interesting thing here is that the official released chm alligns fine, it's just the one that I compiled internally that is messed up, that's why I mentioned it, I think that there is some small bug with the compilation.

Sslaxx

#78
Interestingly enough, with MonoDevelop 2.4 (Ubuntu 10.10) it appears to be crashing the compiler instead of calling an error message properly when it gets to try to handle AGS.Native.dll. Presumably due to it being, well, not .NET/Mono I'd imagine. This is with the trunk version, though the 3.2.1 branch behaves the same way. SVN revision 28.

Quote
** (/usr/lib/mono/2.0/gmcs.exe:28814): WARNING **: The following assembly referenced from /home/stuart/CVS/AdventureGameStudio/trunk/Editor/References/AGS.Native.dll could not be loaded:
    Assembly:   AGS.Types    (assemblyref_index=1)
    Version:    3.2.1.105
    Public Key: (none)
The assembly was not found in the Global Assembly Cache, a path listed in the MONO_PATH environment variable, or in the location of the executing assembly (/home/stuart/CVS/AdventureGameStudio/trunk/Editor/References/).


** (/usr/lib/mono/2.0/gmcs.exe:28814): WARNING **: Could not load file or assembly 'AGS.Types, Version=3.2.1.105, Culture=neutral, PublicKeyToken=null' or one of its dependencies.
/home/stuart/CVS/AdventureGameStudio/trunk/Editor/AGS.Editor/Components/DialogsComponent.cs(206,20): warning CS0219: The variable `dialog' is assigned but its value is never used
/home/stuart/CVS/AdventureGameStudio/trunk/Editor/AGS.Editor/ImportExport.cs(279,21): warning CS0219: The variable `weAreOwner' is assigned but its value is never used
/home/stuart/CVS/AdventureGameStudio/trunk/Editor/AGS.Editor/ImportExport.cs(278,21): warning CS0219: The variable `permissions' is assigned but its value is never used
/home/stuart/CVS/AdventureGameStudio/trunk/Editor/AGS.Editor/Panes/ScintillaWrapper.cs(1763,20): warning CS0219: The variable `scriptExtract' is assigned but its value is never used

Unhandled Exception: Mono.CSharp.InternalErrorException: /home/stuart/CVS/AdventureGameStudio/trunk/Editor/AGS.Editor/NativeProxy.cs(54,17): AGS.Editor.NativeProxy.NativeProxy() ---> System.TypeLoadException: Could not load type 'AGS.Native.NativeMethods' from assembly 'AGS.Native, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.
 at (wrapper managed-to-native) System.MonoType:GetMethodsByName (string,System.Reflection.BindingFlags,bool,System.Type)
 at System.MonoType.GetMethods (BindingFlags bindingAttr) [0x00000] in <filename unknown>:0
 at Mono.CSharp.MemberCache.AddMethods (BindingFlags bf, System.Type type) [0x00000] in <filename unknown>:0
 at Mono.CSharp.MemberCache.AddMethods (System.Type type) [0x00000] in <filename unknown>:0
 at Mono.CSharp.MemberCache..ctor (IMemberContainer container) [0x00000] in <filename unknown>:0
 at Mono.CSharp.TypeHandle..ctor (System.Type type) [0x00000] in <filename unknown>:0
 at Mono.CSharp.TypeHandle.GetTypeHandle (System.Type t) [0x00000] in <filename unknown>:0
 at Mono.CSharp.TypeHandle.GetMemberCache (System.Type t) [0x00000] in <filename unknown>:0
 at Mono.CSharp.TypeManager.MemberLookup_FindMembers (System.Type t, MemberTypes mt, BindingFlags bf, System.String name, System.Boolean& used_cache) [0x00000] in <filename unknown>:0
 at Mono.CSharp.TypeManager.RealMemberLookup (System.Type invocation_type, System.Type qualifier_type, System.Type queried_type, MemberTypes mt, BindingFlags original_bf, System.String name, IList almost_match) [0x00000] in <filename unknown>:0
 at Mono.CSharp.TypeManager.MemberLookup (System.Type invocation_type, System.Type qualifier_type, System.Type queried_type, MemberTypes mt, BindingFlags original_bf, System.String name, IList almost_match) [0x00000] in <filename unknown>:0
 at Mono.CSharp.Expression.MemberLookup (Mono.CSharp.CompilerContext ctx, System.Type container_type, System.Type qualifier_type, System.Type queried_type, System.String name, MemberTypes mt, BindingFlags bf, Location loc) [0x00000] in <filename unknown>:0
 at Mono.CSharp.Expression.MemberLookupFinal (Mono.CSharp.ResolveContext ec, System.Type qualifier_type, System.Type queried_type, System.String name, MemberTypes mt, BindingFlags bf, Location loc) [0x00000] in <filename unknown>:0
 at Mono.CSharp.New.DoResolve (Mono.CSharp.ResolveContext ec) [0x00000] in <filename unknown>:0
 at Mono.CSharp.Expression.Resolve (Mono.CSharp.ResolveContext ec, ResolveFlags flags) [0x00000] in <filename unknown>:0
 at Mono.CSharp.Expression.Resolve (Mono.CSharp.ResolveContext ec) [0x00000] in <filename unknown>:0
 at Mono.CSharp.Assign.DoResolve (Mono.CSharp.ResolveContext ec) [0x00000] in <filename unknown>:0
 at Mono.CSharp.SimpleAssign.DoResolve (Mono.CSharp.ResolveContext ec) [0x00000] in <filename unknown>:0
 at Mono.CSharp.Expression.Resolve (Mono.CSharp.ResolveContext ec, ResolveFlags flags) [0x00000] in <filename unknown>:0
 at Mono.CSharp.Expression.Resolve (Mono.CSharp.ResolveContext ec) [0x00000] in <filename unknown>:0
 at Mono.CSharp.ExpressionStatement.ResolveStatement (Mono.CSharp.BlockContext ec) [0x00000] in <filename unknown>:0
 at Mono.CSharp.StatementExpression.Resolve (Mono.CSharp.BlockContext ec) [0x00000] in <filename unknown>:0
 at Mono.CSharp.Block.Resolve (Mono.CSharp.BlockContext ec) [0x00000] in <filename unknown>:0
 at Mono.CSharp.ToplevelBlock.Resolve (Mono.CSharp.FlowBranching parent, Mono.CSharp.BlockContext rc, Mono.CSharp.ParametersCompiled ip, IMethodData md) [0x00000] in <filename unknown>:0
 --- End of inner exception stack trace ---
 at Mono.CSharp.TypeContainer.EmitConstructors () [0x00000] in <filename unknown>:0
 at Mono.CSharp.TypeContainer.EmitType () [0x00000] in <filename unknown>:0
 at Mono.CSharp.RootContext.EmitCode () [0x00000] in <filename unknown>:0
 at Mono.CSharp.Driver.Compile () [0x00000] in <filename unknown>:0
 at Mono.CSharp.Driver.Main (System.String[] args) [0x00000] in <filename unknown>:0
Stuart "Sslaxx" Moore.

Pumaman

QuoteHHC6003: Error: The file Itircl.dll has not been registered correctly.
Microsoft HTML Help Compiler 4.74.8702

Hmm ok, rather than me uploading loads of random DLLs, it's probably better if I just ask you guys to install HTML Help Workshop which should get it working.

QuoteYes, it's probably related to me having Hebrew support (although the OS itself is in English).
The interesting thing here is that the official released chm alligns fine, it's just the one that I compiled internally that is messed up, that's why I mentioned it, I think that there is some small bug with the compilation.

Interesting, yeah there must be some sort of setting in the INI file that can override this. Maybe the HTML Help Workshop docs have something about this?

QuoteInterestingly enough, with MonoDevelop 2.4 (Ubuntu 10.10) it appears to be crashing the compiler instead of calling an error message properly when it gets to try to handle AGS.Native.dll. Presumably due to it being, well, not .NET/Mono I'd imagine. This is with the trunk version, though the 3.2.1 branch behaves the same way. SVN revision 28.

Maybe the mono compiler needs a copy of AGS.Types to be in the References folder too?
Anyway, we know it won't work on Mono because of the native DLL, so this isn't something I'm going to investigate.

SMF spam blocked by CleanTalk