Server Help

Misc User Apps - Settings editor for subgame 1.34.14

xor eax - Fri Jun 03, 2005 11:33 am
Post subject: Settings editor for subgame 1.34.14
SubSet is a CFG/SET settings editor for subgame 1.34.14.

Last version, SubSet 2.1:

SubSet 2.1 (full app)

SubSet 2.1 (exe file)


Send your suggestions to jgsantos@yahoo.com
Mine GO BOOM - Fri Jun 03, 2005 11:59 am
Post subject:
Should really allow loading of old .set files too. Just leave blank, or set default values, into the unassigned variables.

Scrolling side-by-side view of all the ship variables would be nice too. Or maybe in the case of speed/thrusters, could have a hovering-tip include the % faster/slower than the total average of all ship's speed. So if all ships but the Warbird's max speed was 1500, and the Warbird's was 1700, it would show in the hover-tip +11%, while all the other ships would show -2%. Would give a nice feel for how much better the ship was than everything else.

With the installer, give the option of where you'd like to place the icons of the program. I hate programs that force it to the desktop, and really hate it when it places it in the main start-menu listing. Forcing into the Program's start menu is fine (which for some reason, you don't do), but those other places I like to keep clean and I'm sure others do too. If you are having problems with the installer and adding these options, give NSIS a try. I love their installation system, and they have many third party GUIs for designing an installer very quickly.
xor eax - Fri Jun 03, 2005 1:35 pm
Post subject:
Quote:
Should really allow loading of old .set files too. Just leave blank, or set default values, into the unassigned variables.

Ok. Next version will open ANY .set format (old or incomplete .set files). The user will be prompted for default/blank values to be inserted into the missing fields. Also, a “Merge File” menu option could be interesting, to load the file into the active editor overwriting the existing values.

Quote:
Scrolling side-by-side view of all the ship variables would be nice too.

I think you are talking about the “Edit Values For All Ships” menu option, isn’t it? Put the cursor on a ship field and press F8. If you’re talking about other thing then please explain it a bit more... could be that my english sucks but i’m a little confused.

Quote:
Or maybe in the case of speed/thrusters, could have a hovering-tip include the % faster/slower than the total average of all ship's speed. So if all ships but the Warbird's max speed was 1500, and the Warbird's was 1700, it would show in the hover-tip +11%, while all the other ships would show -2%. Would give a nice feel for how much better the ship was than everything else.

I really like this idea. Also, I think i’ll introduce a last button, after Shark button, called “Average Ship”. It will display non-editable values showing average ship settings. This way, you can see in the “Average ship” window that the average ship have MaximumSpeed=1525, and in the Warbird window you can see that its MaxSpeed is +11% (1700). I have to think more about how it all can be done but I think this is a good idea.


Quote:
With the installer, give the option of where you'd like to place the icons of the program. I hate programs that force it to the desktop, and really hate it when it places it in the main start-menu listing. Forcing into the Program's start menu is fine (which for some reason, you don't do), but those other places I like to keep clean and I'm sure others do too. If you are having problems with the installer and adding these options, give NSIS a try. I love their installation system, and they have many third party GUIs for designing an installer very quickly.

LOL... the installer is really nasty... sorry about that. I promise a better thing next time. Also, i will link the .exe separately so u dont have to reinstall the full app.
CypherJF - Fri Jun 03, 2005 2:29 pm
Post subject:
I haven't looked at the program but does it allow a .set to .cfg and vice versa?
xor eax - Fri Jun 03, 2005 2:40 pm
Post subject:
It works with SET files exclusively.

Well... i think its very easy to use Continuum software to do the conversion... When you do the ?setsettings command the .CFG gets updated at server. In my opinion CFG files must be considered server side and SET files must be client side. Working with settings is done at client side so you are working with SET format all the time.

BUT.... If a minimum amount of people wants it then I'll do a CFG/SET converter (or allow CFG to be loaded/saved into the program)... very boring task... :(
Anonymous - Sat Jun 04, 2005 9:49 am
Post subject:
Quote:
Should really allow loading of old .set files too

Settings can be imported via clipboard. Open the old/incomplete .SET file in the notepad and copy all of it to clipboard. Then go to SubSet and use "Import settings from clipboard" menu option.

I will implement the ability of opening old .SET files but you can use this method until it is done.
xor eax - Sat Jun 04, 2005 7:37 pm
Post subject:
The installer icons problem is solved, it place 1 icon in the Program's Start Menu. The app is the same.
xor eax - Sun Jun 05, 2005 10:15 pm
Post subject:
This version load old or partial .set files. The program ask for default or blank values to be inserted in the missing fields.

Next version will show average ship info.

The full package is here: SubSet10a.zip

This one is for those who have the app already installed. Just unzip this in the SubSet installation folder: SubSet10a_exe.zip
xor eax - Mon Jun 06, 2005 11:08 am
Post subject:
What is with the SuperTime And ShieldsTime limits? Low is 1 and High -999. Can somebody explain how this limits work? I've seen those fields set to 6000 (1 min) in some .set files. I've been looking faqs and I didnt found anything related to it. The program is ignoring those limits for now.
xor eax - Tue Jun 07, 2005 12:32 am
Post subject:
This version shows average ship info

SubSet10b.zip (full install)

SubSet10b_exe.zip (exe file)
A380 - Tue Jun 07, 2005 6:53 am
Post subject:
This is nice icon_smile.gif
xor eax - Tue Jun 07, 2005 2:29 pm
Post subject:
There is a minor bug in version 1.0b which only affects average displaying in hover tips. It happends when u swap/copy/import settings. It doesn't affect editing or saving. The program won't crash because of it and the integrity of .set files is assured. But hover tips gets all wrong for the ship settings involved in swap/copy/import operations.

It is solved in the present version 1.0c.

SubSet10c.zip (full app)

SubSet10c_exe.zip (exe file)

Thanks for your patience to those who are testing it, the program is in the very first stage. I hope it will be a useful tool in the end. I want to make a similar editor for ASSS after this.
xor eax - Thu Jun 09, 2005 5:04 pm
Post subject:
This is the "final" version of SubSet. No more enhancements are planned. Anyway, I will give support for the program and correct the bugs that can appear in the future.

New features in final version, SubSet 1.1:

-A menu option called "Edit Alphanumeric Field" is added to the "Edit" menu. Place the cursor on an alphanumeric field (such as Notes:SettingName) and press F1.

-Recently opened files are added to the "File" menu (up to 8).

-The max number of open files is 8 (to edit more than 8 .set files at same time you must run another instance of the program).


(go to the first entry of this topic to download it)


Have a nice day.
Smong - Fri Jun 10, 2005 6:14 am
Post subject:
For me the links have been broken for a day now.
A380 - Fri Jun 10, 2005 6:16 am
Post subject:
Smong wrote:
For me the links have been broken for a day now.


You mean for SubSet10b?
Smong - Fri Jun 10, 2005 6:20 am
Post subject:
All of them, http://www.telefonica.net/ cannot be found or some such error.

Edit: Hrm seems to work now.
A380 - Fri Jun 10, 2005 6:22 am
Post subject:
Smong wrote:
All of them, http://www.telefonica.net/ cannot be found or some such error.

Edit: Hrm seems to work now.


Oh okay.
xor eax - Fri Jun 10, 2005 11:02 am
Post subject:
Quote:
For me the links have been broken for a day now.


It seems like I need a better host for the files. A380 was having problems too, and a whole day is a lot of time for a broken link to get "magically" repaired.
If somebody have similar problems just say it. If the problem persist I'll ask forum moderators to upload the last version of SubSet to this site.
xor eax - Sat Jun 11, 2005 1:04 pm
Post subject:
I introduced a last small change, so small that it doesn't deserve a new version.

The new "feature" is:
You can now double click on alphanumeric or ship fields. It will trigger the menu option corresponding to these fields ("Edit Alphanumeric Setting" or "Edit Setting For All Ships"). (Also, clicking the label has the same effect as clicking its corresponding text box.) This way most of the editing can be done with the mouse. The rest of the program is exactly the same.

The files linked at top of this topic are updated. So, if you have already downloaded the app and you think the new feature could be interesting, please download it again and update your installation. It doesn't make a significative difference so updating it is not really necessary.

Also, forum moderators should get the new version and re-link it at top. Thanks.

I know is annoying to have new versions every day, and latests versions after the final version. But I think the double-click makes editing even easier and I want it to be the DEFINITIVE 1.1 version. If more changes are going to come (I don't think so but oh well who knows...) I'll put them in a new 1.2 version.
xor eax - Sat Jun 11, 2005 10:00 pm
Post subject:
There is a flaw in the template.sss file which is being distributed with subgame 1.34.14. The "fixed template.sss" is wrong too.

Packetloss:C2SNegativeKickOutPercent is not present in template.sss. I just can't believe that .cfg files contain 961 settings while .set contains 960... #$%&"!!

I've added manually the missing setting to template.sss and now the .set file sent by server contains the full set (961 settings). The default value is 50. Can somebody at least explain how this setting work? If set to 50 it means that you are allowing 950 ploss or what??

I'm thinking how to put SubSet to work with it. Maybe... If it is found in the .SET file the program will edit it, if not found the program will ignore it.... god i hate this.

I've been searching and I've found some other ppl complaining about it in other forums. May I ask why are you still distributing a wrong template.sss with subgame 1.34.14? Nobody have corrected it since 2003??? Is it the official server installation package??
Mine GO BOOM - Sat Jun 11, 2005 10:56 pm
Post subject:
xor eax wrote:
Also, forum moderators should get the new version and re-link it at top.

Done.
xor eax - Sun Jun 12, 2005 9:34 am
Post subject:
I've been considering to treat PacketLoss:C2SNegativeKickOutPercent as an optional setting and I don't think it is a good idea. It is just another setting. The problem is in template.sss not in the setting itself or in Continuum software.

This is what I'm going to do: SubSet will edit the full set of 961 settings. If not present, C2SNegativeKickOutPercent will be considered a missing setting and the file will be loaded as a partial .set file, warning the user about the missing setting. When saving, C2SNegativeKickOutPercent will always be saved.

(BTW, the SuperTime and ShieldsTime limits problem is due to another flaw in template.sss. The low value is set to 1 while the high value is empty.)

I will include my own fixed template.sss with the application. Also, I will make a help file explaining, among other things, what is wrong with C2SNegativeKickOutPercent/SuperTime/ShieldsTime and template.sss.

SubSet will edit .CFG files too, allowing conversion between .cfg and .set formats.

It will be in next vesion 1.2.
xor eax - Mon Jun 13, 2005 1:42 pm
Post subject:
New version SubSet 1.2a is linked in the first post.


What's new in 1.2a:

-The program can edit CFG and SET files. It can be used to convert from one format to the other. Editing CFG files with SubSet has one advantage: Low/High restrictions for settings are applied to CFG too, and remarks are also available.

-A menu option called "File/Validate template.sss" is added. It checks that file for known errors and fixes it if needed.


Still pending:
-The help file.


(Please, Mine, re-link it at top... Thanks ;)
Cerium - Mon Jun 13, 2005 4:29 pm
Post subject:
Is this GUI-based or are there command line options?

If the former, would it be possible to get you to add a command line where you specify a .set/.cfg file to validate and have it print a list of invalid settings (if any)?

With that, it could be used as a backend to something like a web interface to allow anyone to edit arena settings, without having to give them sysop/arena ownership and without having to worry about them crashing the server with invalid settings.
xor eax - Mon Jun 13, 2005 5:09 pm
Post subject:
It is GUI only. But tomorrow it will accept command line options. I was thinking on a new menu option for CFG/SET batch validation of files. This option will be accessable from the command line too, forcing the program to run in console mode. The program will accept multiple files from the command line and some switches. I have to think more about it but be sure that it will accept command line options.
xor eax - Fri Jun 17, 2005 11:02 am
Post subject:
version 1.2b linked at top
xor eax - Mon Jun 20, 2005 6:50 am
Post subject:
Version 1.3 at top
Maverick - Mon Jun 20, 2005 8:08 am
Post subject:
Can you include an non-installer version please? (zipped?)
I hate to install programs that doesn't really require an installer.

Oh, maybe it would be better if the original template.sss is renamed to template.sss.org or template.sss.bak. I think thats what people usually use as extension.
xor eax - Mon Jun 20, 2005 8:27 am
Post subject:
Done.

This application really needs an installer. You don't need it now because you have installed an earlier version so the components are already registered in your system. But I've been adding more components so if you get any error you must do a full installation.
xor eax - Mon Jun 20, 2005 8:34 am
Post subject:
Maverick wrote:
maybe it would be better if the original template.sss is renamed to template.sss.org or template.sss.bak. I think thats what people usually use as extension.


Ok, next version will rename template.sss as template.sss.bak
Cyan~Fire - Mon Jun 20, 2005 12:36 pm
Post subject:
xor eax wrote:
the components are already registered in your system

You're adding registry keys? Please don't, just use an INI.
Mine GO BOOM - Mon Jun 20, 2005 1:07 pm
Post subject:
Cyan~Fire wrote:
You're adding registry keys? Please don't, just use an INI.

Actually, its a whole bunch of VB dlls and such that make it so bloated and require the installer to verify that they are all there.
Cyan~Fire - Mon Jun 20, 2005 2:20 pm
Post subject:
When I used to write VB programs (please, please never quote me on that) I just included the link to the MS site for the necessary DLLs.
Anonymous - Mon Jun 20, 2005 4:37 pm
Post subject:
Cyan~Fire wrote:
You're adding registry keys? Please don't, just use an INI.
I'm not adding registry keys. The installer is doing it for the new components.

Mine GO BOOM wrote:
Actually, its a whole bunch of VB dlls and such that make it so bloated and require the installer to verify that they are all there.
Exactly.

Cyan~Fire wrote:
I just included the link to the MS site for the necessary DLLs.
It is not only about DLLs and runtimes. OCX components must be registered as OLE servers. Most of the OCX components of the program are standard windows components that are already present when you install this application. But there is at least one component which is not so common, smbutton.ocx. (I am installing all this stuff in the program folder, not in the System folder, to keep your system more clean.)

I'm an assembly programmer, but I use VB or Delphi for simple projects like this ( I just hate C... sorry). This program has no mystery at all, it's just reading/moving/saving data all the time (no fast graphics are required, no complex calculations, no mystery in any way). Data comes from txt files. VB is pretty fast in random disk access. I don't see the advantage of assembly here.
D1st0rt - Mon Jun 20, 2005 4:58 pm
Post subject:
If you can write assembly... C shouldn't be that hard since it can be directly translated
xor eax - Mon Jun 20, 2005 5:37 pm
Post subject:
Yes, it's not hard. It's just annoying... all those "{" and its correspondent "}" :p If I have to write it in C I would use assembly instead. But I thought this kind of program is ok for a language like VB. Text files and text boxes... that's what it's all about. I built it in a couple of weeks of free time. It would take the double for me to write it in assembly. And I bet you won't notice any perfomance gain in the asm version. Not in this kind of code. Hmm.. I think I'll use asm for the ASSS version so we can compare.
Cyan~Fire - Mon Jun 20, 2005 5:51 pm
Post subject:
Nevermind, this is what I used. http://www.5star-shareware.com/Windows/Utilities/Libraries/vb5.html
xor eax - Mon Jun 20, 2005 6:15 pm
Post subject:
Yes, Cyan, you are right. But if you use some other OCX (such as smbutton.ocx) you have to distribute it since it is not included with the VB run times and standard components.

About perfomance between asm and VB, I admit VB waste much more resources and memory having loaded tones of code that your program won't use... I checked the max memory usage to be about 30 MB (having 8 files loaded for editing) and the min is about 5 MB. I guess asm would waste less than a half. But I thought it is not a big problem with modern computers. The ASSS asm version of the editor will be much more efficient internally, but it won't be faster or "better" in the same proportion.

And I still haven't heard a "shut up you shitty VB programmer!", which is cool :)
Cyan~Fire - Mon Jun 20, 2005 8:18 pm
Post subject:
Although I am nearly as obsessed with efficiency as Ekted is, I definitely do not support ASM coding. That's just way too much effort for so little gain. (And produces such unreadable code.) I, however, absolutely do not understand your aversion to the C syntax. I find it the most organized and (if well-written) the most readable of all the languages I've encountered.

And anyway, brackets are easier to type than the words VB forces you to use. You prefer "End Sub" over "}" and End If over "}" and even Wend over "}"?
xor eax - Tue Jun 21, 2005 10:03 am
Post subject:
Well.. I'm kinda obssessed with efficiency too, but not always. This program is just a little tool. You can write it in C or asm, and you will end up sending WM_SETTEXT/WM_GETTEXT messages to Text windows all the time as well. It will be much better code, no doubt. The thing is about the price to pay for it. You can call me cheap for chosing VB :p

About C syntax... don't get me wrong. I think C is a pretty good language. I was kidding about the brackets. They are not worse than End Sub, Loop Until, etc. But I don't think asm is unreadable. I find it to be transparent... :p When debugging your asm code you see almost the same source you wrote. And you are forced to think as the machine does, which could be bad for your mental health but is good for the code you write.

On the other hand, low level is almost a joke in Windows. It is not REAL machine code, it runs in Ring 3 into the VM. You have to write an VxD to "get out of The Matrix". You don't even see the real memory but the space reserved for you by the VM... 4 GB of linear addresses for each process, a joke. It is not pure x86 asm, it is Win32 asm. That's why it is so similar to C in windows. You wouldn't think of calling BIOS Int 10h to change the video mode without crashing the system, you have to use APIs for almost everything so it's very similar to C or any other language in the end.
xor eax - Tue Jun 21, 2005 7:09 pm
Post subject:
Version 1.4 is at top.

I will be testing this version in the next days. When ready I will release the version 2.0 and I'll start working in the ASSS setting editor.
xor eax - Wed Jun 22, 2005 11:32 am
Post subject:
Do somebody think that an option to compare CFGs could be useful? It can be used to check settings differences from pub to subarenas, or to check what is changed between different settings versions of same arena.

Bah! with luck I will end this program about next year or so... :p
Cyan~Fire - Wed Jun 22, 2005 12:26 pm
Post subject:
Well, there's always diff or windiff.
xor eax - Wed Jun 22, 2005 3:22 pm
Post subject:
Cyan~Fire wrote:
Well, there's always diff or windiff.
True... these tools can do the job quite well.

Right now I can only see 2 advantages in a custom made comparision:
-The ability of comparing CFG with SET (that's something WinDiff will never do...).
-A more clear list of differences, that can be saved to disk or printed.
Maverick - Wed Jun 22, 2005 3:56 pm
Post subject:
That would be very usefull.
It would be so much easier to compare subarena setts which are based on pub compare with pub settings. Also other way around.
xor eax - Wed Jun 22, 2005 10:35 pm
Post subject:
Ok then. You want it to compare files 1 to 1 or 1 to many?

It can be: compare File1 to File2
or: compare File1 to File2, File3, ..., FileN

I guess the 2nd option is better
Maverick - Thu Jun 23, 2005 3:33 am
Post subject:
Second option makes first option possible aswell. However it might be a bitch to move a file into a seperate directory to just compare one file to the one in the new directory.
Good GUI is of the essence here, if you don't do it good the feature will become unusable.
For example (the program I like and use the most for file comparing) ExamDiff.
xor eax - Thu Jun 23, 2005 10:16 am
Post subject:
I was thinking on logical comparison, not physical. Lines can be disordered, have remarks or not, the program will look into the setting value only (if validations errors are found during comparison the program will just warn about it). As a result of this the program will be able to compare CFG with SET.

Imagine that File1.set has this content:
Bomb:BombDamageLevel:750:::Amount of damage blah blah
Bomb:BombAliveTime:6000:::Time bomb is alive blah blah

And File2.set is physically different:
Bomb:BombAliveTime:6000:::Time bomb is alive blah blah
Bomb:BombDamageLevel:750:::Amount of damage blah blah

The program will say they are equal... and they are equal to the eyes of the server.

So the comparison report won't look like the one of a Diff tool. It will look more like:

Code: Show/Hide

File1: server.cfg
File2: somefile.set

List of differences:

Bomb:BombAliveTime  (6000 / 3000)
Brick:BrickTime     (12000 / 8000)
Bullet:ExactDamage  (0 / <not found>)
Flag:CarryFlags     (1 / <error>)

Differences: 4

Warning: somefile.set contains errors.


This is the first idea that comes to my mind, just tell me what kind of GUI you want...
Maverick - Thu Jun 23, 2005 10:51 am
Post subject:
Agreed, that might be better.
Well all GUI is good as long as its clear and easily understandable (use the right colors, make it easy scrollable, etc).

Maybe even some table idea:

Code: Show/Hide

Changed properties:

                   File1.cfg             File2.cfg
BulletAliveTime     100                   200
SpawnSave           5000                  3000

im not sure though, this just crossed my mind
Anonymous - Thu Jun 23, 2005 11:09 am
Post subject:
Sure, A grid or something like this would be ok. Just put the data aligned to be comfortably readable.

About the right colors, etc, please tell me any other thing you want to change in the program. Is the validation report ok? And my english is not very good, please warn me about incorrections you may find.
xor eax - Fri Jun 24, 2005 1:39 pm
Post subject:
This is a sample of the comparison report I'm working on.
That's all I can do with txt format, maybe a HTML report would be better... but I think the txt one could be good enough for me.


Code: Show/Hide
================================================================
1. Comparing

(1) F:\vb\SubSet\server.cfg
(2) F:\vb\SubSet\server3.set

Files are equal
================================================================


================================================================
2. Comparing

(1) F:\vb\SubSet\server.cfg
(2) F:\vb\SubSet\server7.cfg

Warning: File (2) contains errors

Differences: 8

               Setting                      (1)          (2)
--------------------------------------  -----------  -----------
Bomb:BombDamageLevel..................  ........750  ........600
Bomb:BombAliveTime....................  .......6000  ......12000
Bomb:BombExplodeDelay.................  ........150  ........250
Bomb:BombExplodePixels................  .........80  .........55
Bomb:ProximityDistance................  ..........3  ..........2
Bomb:JitterTime.......................  .........72  .........15
Bullet:BulletAliveTime................  ........550  ........450
Leviathan:InitialEnergy...............  .......1000  .......1700
================================================================

xor eax - Sat Jun 25, 2005 12:01 am
Post subject:
SubSet v1.5 is at top
A380 - Sat Jun 25, 2005 3:11 am
Post subject:
xor eax wrote:
SubSet v1.5 is at top


Where is at the top? Never mind, you mean by page 1.
xor eax - Sat Jun 25, 2005 3:30 am
Post subject:
ew.. yes :)
Cyan~Fire - Sat Jun 25, 2005 2:27 pm
Post subject:
A380 just likes being annoying, don't worry.

That settings compare looks very nice, though. Much better than diff could do. If I was designing a zone, I'd definitely use this. icon_biggrin.gif
xor eax - Sat Jun 25, 2005 3:19 pm
Post subject:
Thank you. Well... considering there is no other tool (as far as I know) for comparing CFGs I would consider using it too :p lol
More than an editor this is turning into a maintenance tool...
Maverick - Sat Jun 25, 2005 3:34 pm
Post subject:
Yes its a good complete application already icon_smile.gif keep it up icon_wink.gif

Can you add some scrollbars to the window while viewing the settings per ship? If I have the window smaller then it can handle i can't scroll to the right icon_wink.gif
xor eax - Sat Jun 25, 2005 4:12 pm
Post subject:
You mean you want scrollbars on window 2 so you can scroll window 1 from there?


Maverick - Sat Jun 25, 2005 5:04 pm
Post subject:
let me clarify. I want to scroll to the right on this window:

[see attachment]
xor eax - Sat Jun 25, 2005 6:33 pm
Post subject:
SubSet 1.6 is at the 1st post of this thread

Having scrollbars on MDI child forms seems to be a pain in the ass in VB (at least it is for me).

I applied a work around in v1.6... the editor window is forced to its max size when normalized, this way the MDI window have something to scroll and the scrollbars appears. They don't scroll it smoothly but this is all what I can do for the moment. I'll look more into it.
xor eax - Sat Jun 25, 2005 7:20 pm
Post subject:
SubSet 1.7 is the last version. v1.6 have a stupid bug so the program freezes on Validate and Compare.

v1.7 is at the beginning
xor eax - Sat Jun 25, 2005 11:57 pm
Post subject:
Well... v1.8 is here :p

It is solving the bugs I coded in "Compare Files". Sorry about that. I wanted you guys to see the comparison report and the scrollbars and I neglected some "minor" things (the kind of minor things that can close the program due to an error in the middle of the edition...). I checked this version v1.8 to be safe, even if still beta.

So... I'll try to cool down and put here more complete versions only. Sorry about this flood (3 versions in a day!)
Cyan~Fire - Sun Jun 26, 2005 9:22 am
Post subject:
xor eax wrote:
So... I'll try to cool down and put here more complete versions only.

Yeah, I know how it is. In the program I'm writing, I would always come up with a cool feature and release immediately, only later realizing it crashed whenever you saved or something. icon_biggrin.gif

And are scroll bars that hard? I haven't used VB in forever, but in C++ it's just a window style to add a scroll bar, no code necessary even. It's not just one of the form's properties?
xor eax - Sun Jun 26, 2005 10:12 am
Post subject:
Cyan~Fire wrote:
I would always come up with a cool feature and release immediately, only later realizing it crashed whenever you saved or something
Heh, I'm lucky that most of you are programmers too, other people would call me names for releasing 3 versions in a day.
The AOK thing you're working on looks very good, it seems to be a huge project. A lot of work behind of it.

Cyan~Fire wrote:
in C++ it's just a window style to add a scroll bar, no code necessary even. It's not just one of the form's properties?
That is the problem. Only MDI parent forms have scrollbars in VB 6 (and they don't work fine). Scrollbars are not a property of child or SDI forms. Anyway, some solutions can be applied in code (putting all controls in a PictureBox and scrolling its contents, and things like that). These are the moments in which I repent from chosing VB, but I will solve it one way or the other.
Also, thanks to Maverick for reminding me of this problem. It is not only a matter of comfortability. Without some scrolling method the program is useless for resolutions below 1024x768.
xor eax - Mon Jun 27, 2005 2:10 am
Post subject:
SubSet 1.9 is at the beginning of this thread.

What's new in v1.9:

-Scrollbars are added to the editor window. They behave as normal scrollbars. I hope you won't notice anything strange, let me know if you do.

-The comparison process is faster. The log is not displayed until the comparison ends. The program is now storing the log in a string and when done it loads it in the Rich Edit control. VB is slow when adding contents to a Rich Edit control that already contains a lot of text. It is sending GETTEXT and SETTEXT messages as for a normal Text control, instead of taking advantage of the streaming capabilities of the Rich Edit control.

-The program remember the last files selected for validating/comparing so you can quickly repeat the last validation/comparison without having to select the files again.
xor eax - Mon Jun 27, 2005 7:07 pm
Post subject:
SubSet 1.10 at the beginning

I've added mouse wheel tracking to editor scrollbars. The scrollbar control I'm using does not respond to mouse wheel so I've implemented a similar functionality for it. There is one difference with the standard mouse wheel algorithm. In my implementation the horizontal scrollbar respond to the mouse wheel too. The program apply mouse wheel movement to the scrollbar you clicked last. I find it to be more handy than the classic "vert scroll only" algorithm.

Also, an option in Preferences is added to set the wheel speed.
A380 - Tue Jun 28, 2005 4:58 am
Post subject:
Wow, how many versions are you going to do?
Cyan~Fire - Tue Jun 28, 2005 11:32 am
Post subject:
A coding project is never finished.
xor eax - Tue Jun 28, 2005 1:20 pm
Post subject:
A380 wrote:
Wow, how many versions are you going to do?
I hope they won't be a lot... Let's see if Maverick thinks the changes are ok and nobody wants more options to be introduced. I want to start the ASSS editor, if I don't do it soon I'll have to wait to september.

Cyan~Fire wrote:
A coding project is never finished.
Absolutely. The source is there. The compiler is there. The temptation to play with both is always there too.
Maverick - Wed Jun 29, 2005 3:10 am
Post subject:
Very nice, good job grav_cool-hands.gif

Few points you might want to improve:
- You can't remove a single file from the "With Files (x)" field on the "Compare CFG/SET Files" window, you can only remove all files. (What if you added 10 files but one is wrong?)
- Misc:PeriodicMessage - length can be longer then 99
- Textfields are cut on the right [see attachment].

For the rest its one very good program, good job biggrin.gif
Certainly something alot of people can use
xor eax - Wed Jun 29, 2005 8:50 am
Post subject:
Thank you ;) I should have write this program 6 years before... I've been thinking on it for a long time.

Maverick wrote:
You can't remove a single file from the "With Files (x)" field on the "Compare CFG/SET Files" window
Hehe... the DELETE key is doing the job ;) It deletes all selected files (the file list allow simple multiselection). The program has some hot keys and other features that I must explain in some kind of help file. The delete key is an obvious one, but I understand that it's not so obvious if you are just testing the program with some hurry.
Another hint about the Validate/Compare reports: Once the report is generated, click on the files (in the "With Files (x)" grid). The log will automatically scroll to the file being clicked. It works the opposite way too (double clicking the file name in the log will select that file in the With files (x) list). Well... this long explanations are not good (specially if my english suck), just click on the files after generating the log and see what happends... ;)
I'm not happy about the perfomance of the Rich Edit control which shows the logs. It is very slow when more than 50 files or so are being scanned. Generating big logs it's not recommended... I'm still looking for a solution (I can implement streaming to Rich Edit but then... why the hell I'm using VB if I have to overwrite a half of its functionality?. Also, I'm afraid that any other control will be "flooded" too with logs bigger than 5 MB.

Maverick wrote:
Misc:PeriodicMessage - length can be longer then 99
I was sure that I was missing something about format/length/validation/etc of settings. Thank you for the information. Also, maybe some fields need a revision for its Low/High limits... Please tell me any wrong thing you may find in the future.

Maverick wrote:
Textfields are cut on the right
It is missing the border pixels only. It is ugly but field contents are still visible (see attachment). I'll try to shrink the width of the page somehow (stealing a few pixels here and there)...
xor eax - Wed Jun 29, 2005 7:08 pm
Post subject:
SubSet 1.11 is at the beginning.

What's new:

-Fields aren't cut on the right anymore.
-Some internal enhancements that you won't notice, nothing important.



About the length of alphanumeric settings... nothing is still changed, because I just discovered something really nasty. The server is truncating these fields to 99 chars + some garbage when it comes the time of creating the server.set to be sent to the client. Alphanumeric fields with more than 99 chars get CORRUPT in the SET file.
Right now I just want to throw all Subspace/Continuum software through the window and forget the damned thing... #@%##!!! What I'm going to do with the editor, with the whole project? Tell the user that he MUST use CFG only and forget about SET? And of course it is not a problem for my stupid program only, it is about the integrity of the whole SET implementation at server.

Let me put an example of the bug:

Code: Show/Hide

-You edit your server.set file and set it like this:

   Misc:PeriodicMessage0:<imagine 150 chars in here>:::Info about this... blah blah

-Then you send it to server using "?setsettings server.set" command. The file server.cfg gets correctly updated.

-Then you use ?getsettings from the client to retrieve the SET file again. Misc:PeriodicMessage0 is corrupt in the SET file. It looks like:

   Misc:PeriodicMessage0:<imagine 99 chars in here>PeriodicMessage1:::Info about this... blah blah


Please, somebody tell me I'm wrong or blind or whatever and I'll be just happy :p
xor eax - Wed Jun 29, 2005 8:19 pm
Post subject:
I couldn't recommend ?getsettings anymore. I just can see 2 ways to safely work with settings:

-1. Work with CFG exclusively and forget SET.

-2. Open the CFG file in SubSet (or any other converter) and save it as SET. Work on this SET file doing ?setsettings all the time and NEVER doing a ?getsettings command.

Solution 1 can be applied if you are at server. If you are not at server (the most common situation for sysops I guess) you should use solution 2: Get a copy of the CFG (by email, ftp, etc, NOT with ?getsettings), convert it to SET with an external tool (SubSet, etc) and use ?setsettings command ONLY.

So... I am allowing a size of 163 chars for alphanumeric fields in SubSet. I will release v1.12 tomorrow, after thinking of it all a bit more and doing some more tests to the server..
xor eax - Wed Jun 29, 2005 10:35 pm
Post subject:
After doing more tests, these are my conclusions. I'm not pretending to teach anybody how the game is, I know that a lot of ppl in here knows a lot of more than me. I'm just thinking aloud so anybody can correct me if I'm wrong. I just want SubSet to be a working tool and not mess settings up.

These are the logical (aceptable) lengths for all alphanumeric fields (the physical length is 255 for all of them):

Code: Show/Hide

Notes:SettingName     (255)
Notes:Maker           (255)
Notes:CoMaker         (255)
Notes:MapName         (255)
Notes:Mapper          (255)
Notes:Note1           (255)
Notes:Note2           (255)
Notes:Note3           (255)
Notes:Note4           (255)
Notes:Note5           (255)

Misc:SheepMessage     (159) *see notes below
Misc:GreetMessage     (158) *see notes below
Misc:PeriodicMessage0 (159) *see notes below
Misc:PeriodicMessage1 (159) *see notes below
Misc:PeriodicMessage2 (159) *see notes below
Misc:PeriodicMessage3 (159) *see notes below
Misc:PeriodicMessage4 (159) *see notes below
Misc:LevelFiles       (255)

Owner:Name            (255)

Maker:Maker           (255)


ALL alphanumeric settings can have a maximum length of 255 chars in the CFG file. But the "Message" settings have some special rules.

For "Message" settings, only the length that I mention in the list of above will be displayed in the game. This applies to SheepMEssage and GreetMessage. The "PeriodicMessage" settings are even more weird... The syntax for these messages, as you all know, is:

(Time for repeating) (Delay after arena is created) (Text)

When showing these messages the server will display the 1st 159 chars of (Text). So the length of (Time for repeating) and (Delay after arena is created) doesn't count against the 159 chars of (Text). Remember that the CFG file accepts 255 chars for ANY alphanumeric settings. The problem here is how many characters will be displayed and how many will be ignored if (Text) is too long... I'll put an example:

Code: Show/Hide

      Misc:PeriodicMessage0:1 1 <159 chars goes in here>

and

      Misc:PeriodicMessage0:15 15 <159 chars goes in here>

are both valid settings, but

      Misc:PeriodicMessage0:1 1 <160 chars goes in here>

is not valid, the last character of the message won't be shown


Well... I guess 255 is the right length for the rest. And about the Message settings, SubSet will validate them separately, calculating the length of the message. It won't solve the ?getsettings problem, which is out of the scope of SubSet. But at least the alphanumeric settings will be treated by the program in the right way.
Maverick - Thu Jun 30, 2005 5:08 am
Post subject:
I think you have problems with .set files because they only serve as a temporary file when doing Esc + c in-game?
Dunno, but I always found them quite unusuable.
xor eax - Thu Jun 30, 2005 10:00 am
Post subject:
It's not me, it's the server the one who has problems with SET files... I'm really pissed off thinking about it.

SET works just fine if you don't put more than 99 chars in alphanum fields (and you use a right template.sss file). I think SET files are much more than a temp file. They are a transaction file. What is the usual way to work with settings? Edit server.cfg at server? How long it takes for the server to refresh changes at clients? You have to do a *recycle if you want the settings to be refreshed instantly? I'm not used to work with CFG so I guess I'm missing some command or something to get settings refreshed. But I still think it's a shame to be forced to work with CFG due to a wrong SET implementation. The game WAS initially designed to work with SET files.

Back to SubSet, I'm not going to do strange validations to alphanum fields. The program is accepting 255 chars for all of them, the user will have to learn to deal with the right lengths for Message settings (I guess most zones are using bots for messages).

A last big enhancement is pending ,but I will do it for the ASSS version, not for the subgame version of SubSet. The program will be turned into a bot, so there will be another option in the "File" menu called "Connect To Zone..." or something like this. Instead of a client with a good built-in editor (that's something we'll never have), the program will act as an editor with the necessary parts of the client built into it. But... if SET is not well implemented in ASSS I will throw the whole project into the litter bin.

SubSet 1.12 is at top (yes, Airbus, AT THE VERY TREETOP OF THE PALM TREE)

And some more bahh grrr wtf etc ;)
D1st0rt - Thu Jun 30, 2005 2:59 pm
Post subject:
I never actually use the whole .set file when dealing with ASSS because it has filtering with ?quickfix. Plus, if you have access to the cfgs, you can just put a line that says #include somefile.cfg in your arena.conf and that's that.
xor eax - Fri Jul 01, 2005 10:10 am
Post subject:
So no setting editor is needed for ASSS... okay. Thank you D1st0rt for the information.

I'm done with this. SubSet 2.0 at top
All times are -5 GMT
View topic
Powered by phpBB 2.0 .0.11 © 2001 phpBB Group