FLSysCalc
-
I’m so tired now I shouldn’t even be responding but if I this is what I think it is, being a GUI util of your web site system calculator then I want to express a Big Thank You!!!
Btw mirroring without orientations will screw up totally with paths. Paths can be done manually though, even semi-automated if it’s a left-right mirrorization, and line-by-line for Y mirroring, which is a bit trickier. Too tired now to explain it; if someone cares I’ll do that. Maybe this would help Rimshot in omplementing it. Maybe it’s all bloddy obvious; like I said I’m so tired I should be unconscious atm
EDIT: In the on;ine versions there were a few option I now seem to miss… Like “attach dockable object”, nice to keep planetary docking rings at the same distance of their planet, some other option to keep child objects (SATELLITES) stuck to their parent instead of x,y,z moved relative to it, and an option to not scale zones.
EDIT 2: I think you do have this options covered, so forget my whiny concerns
RimShot wrote:
thanks, btw negative scales should work for mirroring positions but orientation is not parsed cause im not sure how to do it correctly atm.
thats also why scale doesnt support X/Y/Z but a single factor. -
in my online tool i had options to bypass vignette zones, and to fix the patrol pathes width.
i dont have much time for testing now, memory is blurry, and im wondering:
1.a) can vignette zones have any size?
1.b) if so should i add option to bypass them?
2.a) can patrol pathes have any width?
2.b) if so should i add option to fix them?
3) should i change all orientations by 0, 180, 0 when the scale is negative? theoretically this should be ok, cause the system will be mirrored top-bottom and left-right. -
RimShot wrote:
in my online tool i had options to bypass vignette zones, and to fix the patrol pathes width.
i dont have much time for testing now, memory is blurry, and im wondering:
1.a) can vignette zones have any size?
1.b) if so should i add option to bypass them?
2.a) can patrol pathes have any width?
2.b) if so should i add option to fix them?
3) should i change all orientations by 0, 180, 0 when the scale is negative? theoretically this should be ok, cause the system will be mirrored top-bottom and left-right.I can’t imagine resizing the width of patrol path would have any effect. Surely the width defines a boundary within which the npc’s perform their behaviour as defined by the AI (such as heading in a direction to the next link of a patrol path or terminating object), with a small margin of error (in other words, not bounded strictly by the width, but to a percentage of it).
The only thing I can imagine is that with a wider patrol path, you may encounter the patrols outside of the path slightly (according to the nav map)… but that shouldn’t be an issue.
Now the fun part - with patrol paths, they start and terminate somewhere. It would be possible, with a bit of work, to therefore redraw the paths based upon length scaling, the angle, and the start/end locations and the angles of each section of the path.
I should add that my math is poor… and you’d have to check that the ends intersect - which shouldn’t be difficult. If they don’t, then a bit of extra trig should take care of it - but if all the application does is just move things according to a scale size, then it may add complexity above a simple scaling of width as you would need to start reading/recognising the component parts of patrol paths
-
true, its a bit beyond the scope of the program, but its something to think about. thanks for the input.
edit:
i think im gonna seperate the options a bit more like in the online version, just didnt wanna overload the GUI at first, but it makes sense. -
Great, I was looking for this since the link went down; I make use of it. Alas, whenever I try to scale things, I get this mess:
See the end of this message for details on invoking just-in-time (JIT) debugging instead of this dialog box. ************** Exception Text ************** System.IndexOutOfRangeException: Index was outside the bounds of the array. at Freelancer.Hash.Generate(String s, Boolean sign) at flsystem.Form1.Parse(Reader reader, Single scale, Vector offset) at flsystem.Form1.parseFile(FileInfo file, Single scale, Vector offset) at flsystem.Form1.Calculate(Single scale, Vector offset) at flsystem.Form1.button3_Click(Object sender, EventArgs e) at System.Windows.Forms.Control.OnClick(EventArgs e) at System.Windows.Forms.Button.OnClick(EventArgs e) at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) at System.Windows.Forms.Control.WndProc(Message& m) at System.Windows.Forms.ButtonBase.WndProc(Message& m) at System.Windows.Forms.Button.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) ************** Loaded Assemblies ************** mscorlib Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4952 (win7RTMGDR.050727-4900) CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll ---------------------------------------- flsystem Assembly Version: 1.0.4028.33948 Win32 Version: 1, 0, 1, 0 CodeBase: file:///C:/Matthew%20Backup/FreelancerExtras/FLSysCalc/FLSysCalc.exe ---------------------------------------- msvcm90 Assembly Version: 9.0.30729.4926 Win32 Version: 9.00.30729.4926 CodeBase: file:///C:/Windows/WinSxS/x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.4926_none_508ed732bcbc0e5a/msvcm90.dll ---------------------------------------- System.Windows.Forms Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll ---------------------------------------- System Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll ---------------------------------------- System.Drawing Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll ---------------------------------------- System.Xml Assembly Version: 2.0.0.0 Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900) CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll ---------------------------------------- ************** JIT Debugging ************** To enable just-in-time (JIT) debugging, the .config file for this application or computer (machine.config) must have the jitDebugging value set in the system.windows.forms section. The application must also be compiled with debugging enabled. For example: <configuration></configuration> When JIT debugging is enabled, any unhandled exception will be sent to the JIT debugger registered on the computer rather than be handled by this dialog box.
Any ideas on what the trub is, bub?
-
oh sorry, missed your earlier post. i have now checked “Notify me of new posts in this thread”, hope it works.
its just before bed time here but i made a quick look at the source.
make sure that all your lightsources, objects and zones have unique nicknames. the hashes are used as keys holding calculation results.
assuming from your post you get this exception on every system, even vanilla? id be surprised if thats the case, but do let me know.
if that doesnt help, please send me a system file so that i can try to reproduce this.
-
Well, I’ve found an offending entry (you were right, it works fine on Vanilla systems):
[zone] nickname = Zone_Hi01_path_álvarez5_2 pos = 38646, 0, 61528 rotate = 90, -47.5, 180 shape = CYLINDER size = 750, 59373 sort = 74 toughness = 11 density = 5 repop_time = 30 max_battle_size = 4 pop_type = trade_path relief_time = 20 path_label = álvarez5, 2 usage = trade mission_eligible = true density_restriction = 1, patroller density_restriction = 1, police_patroller density_restriction = 1, pirate_patroller encounter = tradep_trade_freighter, 11, 0.275 faction = co_as_grp, 1 encounter = tradep_trade_transport, 11, 0.125 faction = co_as_grp, 0.5 faction = co_me_grp, 0.5
The only thing that I can think of is if it doesn’t parse special characters such as ‘á’.
-
mknote wrote:
[…] since the link went down […]
Aww… @ Rimshot: you took your online System Resizer down? (I don’t have the URLon my new laptop yet, so I can’t check this very simple fact myself atm)
For some reason I liked the onlone version better than the standalone tool (could be a simply irrational reason - like being familiar with the online version)
Well, if so, it’s a nice impetus to get used to the tool then
-
@mknote:
seems that is exactly the problem. im using the same hash generation function as most other tools. going to check if the import from common.dll can create hash code for those characters. might just change it to use string keys otherwise.@Moonhead:
i dont have the domain anymore, its still up on my server but needs ip which ill have to look up. sooner or later it will be gone indeed cause i have to say this is much better coded than the old version and has new features as well, so you should really try to get used to it. -
@ Rimshot: The tool seems to work fine. Thanks again
Yet there is a minor issue (for me at least): it eliminates comments; and I usually have quite a lot in my StarSystem files, to get some order into them. Is there a way to configure (or hack) FLSysCalc to leaving comments as they are?
Also, you might wanna warn people that it immediately edits the selected file! (As opposed to: creating a new file, or rendering code that can be pasted into a .ini file, what the online version did).
-
RimShot wrote:
hm, true, could also do a checkbox “create backups”.
as for comments, are you sure you are not using an old version?
they work for me.It turned out I was indeed using 1.0.0.0. Upgraded to 1.0.1.1 right when I read your post