How to deal with stars near, but not on, starlanes?

Programmers discuss here anything related to FreeOrion programming. Primarily for the developers to discuss.

Moderator: Committer

Message
Author
tzlaine
Programming Lead Emeritus
Posts: 1092
Joined: Thu Jun 26, 2003 1:33 pm

#121 Post by tzlaine »

Geoff the Medio wrote:I vaguely recall this being discussed, but I don't recall the answer...

Is there any reason that the "debug mode" couldn't have the ability to add or remove starlanes / wormholes?
Yeah. There's a pretty strong reason why you shouldn't be able to do that; that should only ever be done by the server, not a client. We don't want to let such data paths exist to make it easy for cheaters. By contrast, making everything visible happens at the server.
And, actually, is there any reasons the game couldn't add or remove starlanes in normal play... perhaps with effects or something similar?
No, there's no reason why we couldn't do that. In fact, one day... but not today, ok? Let's leave this until v0.4 or later. The effects code is already taking way too long.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13586
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

#122 Post by Geoff the Medio »

tzlaine wrote:
And, actually, is there any reasons the game couldn't add or remove starlanes in normal play... perhaps with effects or something similar?
No, there's no reason why we couldn't do that. In fact, one day... but not today, ok? Let's leave this until v0.4 or later. The effects code is already taking way too long.
There's no rush... I was just asking if it was doable ever, not that it be done for v0.3.

trioted
Space Krill
Posts: 9
Joined: Tue Jun 28, 2005 3:24 am

order of pruning

#123 Post by trioted »

I personally think that with delaunchy triangulation this would be a good order.
1. topographical pruning should be done first, (it wont disconet any systems from the rest of the map).
2. check for angles being too small.
3. then check for systems too close to a lane (here's some sudo code).

Code: Select all

if( (sin( m[u]/  [/u]angle) * length_of_smaller_lane) <= too_close)
{
 smaller_lane.delete();
}
else
{}
notes: i know a bit of scheme and a little java (I've taken an introductory class in computer science) im also reading jave demystified
underline a / and add two spaces to get / .

Post Reply