Dr Brain wrote: |
Why would it get complex? All ASSS does is append the changes to arena.conf anyway. |
Quote: |
Dear Developers of ASSS, Priitk, and Ekted:
As the developers or testers of the new server software that grel has made know, the setting files can get very confusing because of its abilities to 'include' other files in itself. So a subarena's duel.cfg could have just the following: #include server.cfg [Misc] MaxPlayers=20 That subarena's settings would be exactly like the server.cfg, just have its max players change. But this causes a large problem with the client to edit settings in game. So below, and with the attach files, i attempted to explain a fix for possible ways of editing multi filed settings in a way so the zone's sysop can edit any needed file's settings easily. This does not include a way to add/remove/edit the #include lines, but they can view/edit any of the #include'd files in a simple method. Of course, there can be a much simpler method by using the mouse in the Chat Window if ekted would make such a settings edit box designed for it, but this method below can work in game with some ease. ------------------------ I really would like to have in game client side editing of settings, so here is my stab at how a possible method of allowing this with the multi file design that Asss is after: When the user does a ?getsettings, the server will make a renaname.sconf file to be sent to user. This file will contain all the information from all the files the arena itself uses for loading settings. An example of the files it loads from is in the included zip file. Since the server checks arena.conf first, it loads from top to bottom all included files first before including any of its own information into the .sconf. The arena\extras.inc is then checked for any include files, which it has one. So the arena\weapons.cfg file is first loaded into the .sconf. The .sconf starts with the file's location, and then a shortname for the file, which is defined as a #name in the file. If no #name defined, then just uses the file's name (weapons.cfg). This repeats down all the steps and such until the full .sconf file is setup. Then this file is sent to the client. The client should always have a template.sss file locally. It seems pointless to constantly send these descriptions and even worse if some of the files will include each setting multi times. So there should be a ?gettemplate command maybe so clients can download new templates when server gets updated before a client upgrade is done. The client will now make its display such as i have in the .bmp. A few major differences. There are now 2 columns for variables. The first column will be the actual settings sent to the client in game, or used by the server. These are the lowest settings in the .sconf for each doubled up ones. The second column is the file's setting for this key. Since some files will not contain certain variables, they are left blank. The images between these two columns helps the user find where the setting is from. A < means that they need to go 'down' in the .sconf, which is left on the bottom tabs, to find the file that contains the used value for this setting. A > means it is 'up' in the .sconf, and they need to go right on the bottom tabs to find the file that contains this setting. A = means that the file that they currently have in the tabs is the file that contains this used setting. The file-setting is the one that should be allowed to be edited. If they do edit a setting that is lower than the one used in actual, or is the file that uses it, then the actual setting will be updated. But if they update the bomb damage in the weapons.cfg file, it will not change the value displayed in the actual setting, since that value is from the weapons.conf (arena\duel\weapons.conf). But if they edit a value in the arena.conf, it will update the actual displayed bomb damage, since it is a lower level in the .sconf. To be able to change between files, Home and End are a good choice between changing which file is going to be edited/viewed in the settings window. Shift Home/End can 'jump' like 5 or so files at a time. Maybe have Insert jump to the file that the actual setting uses. When the client then saves its settings to be uploaded, instead of re-uploading the whole .sconf, it uploads another .sconf file that contains only the edited values. The server then looks through the .sconf, loads those #file's and makes the changes in those files, and continues down its list. Once all edits changed, it will re-load settings. Confused? If needed, i can make a simple flash or animated gif file to show the possible ways for the client side to edit/view settings/files or explain my idea a bit more.. -Mine GO BOOM |
Code: Show/Hide #file arena\weapons.cfg
#name Bomb [Bomb] BombDamage=5000 BombAliveTime=10 #file arena\extras.inc #name misc [Misc] MaxPlayers=255 #file arena\duel\weapons.cfg #name Bomb [Bomb] BombDamage=900 BombAliveTime=600 #file arena\duel\arena.conf #name Notes [Notes] SettingName=Resistance Maker=enixile |
Quote: |
Shark:TurretLimit=1
Shark:TurretLimit=0 |
Quote: |
.../scripts/update-conf arena.conf ships misc |
Code: Show/Hide +arenas
|+myarena ||+arena.conf ||+misc ||+ships +scripts |+update-conf |