On Sun, 2007-09-09 at 21:16 +0200, Krzysztof Sobolewski wrote:
> I've finally gotten Starmapper's TParsecDataModel to work and look decent.
> Attached is its first public appearance :) The map was generated for the
> universe then current on the demo1 server. Some things of note:

Cool :P Although, I'm not sure I understand how the merging happens
around the centre (near the yellow, red, blue bit).

Demo1 has just been reset due to power outages. We are looking at
resolving this instability in the near future.

> - The planets all have the same "strength"; partly because I suppose demo1
> runs minisec, where planets can be populated or not, and partly because
> libtpproto-java is currently not able to get object properties like
> population (how do I do that, BTW? :))

In Minisec probably the best indication is "military strength" (since no
other properties exist). It would probably be a good idea to merge
everything at the same location.

For fleets it should be pretty easy to assign a strength value, for
planets, http://www.thousandparsec.net/tp/dev/documents/minisec.php

Normal planets are considered to be equivalent to 2 battleships. Home
world planet (The planet you start with at the beginning of the game) is
considered 5 battleships.

There is no standard way to detect home worlds, on tpserver-cpp look for
a homeworld resource.

> - I was surprised at the universe's scale - the coordinates are 64-bit
> numbers (which I noticed only when it didn't fit into Starmapper's 32-bit
> world) and the demo1 Universe is something like 8 billion units wide. This
> causes serious risks of arithmetic overflows in Starmapper's internals, and
> limits the practical default "strength" of a planet to about 2000000000
> units (it's a range at which the influence of a planet goes to zero), which
> is OK for demo1, but the question is how large the universe can be?

Ask Lee about that, I just scale everything internally in tpclient-pywx.

> One final thing: the model connets to the server and gets the object on the
> fly, but be careful to be quick, before it gets hit by an unexpected (and
> unasked for) TimeRemaining frame. Is this frame supposed to appear even when
> I didn't ask for it?
> -KS

Yes, Thousand Parsec supports async frames from the server (which you
should notice have a Sequence Number of zero). 

Each request is sent with a sequence number, each frame which is a
response to the request will have the same sequence number. This is why
the sequence number is important as it ties requests to responses. (This
also allows you to pipeline requests and for the server to return
out-of-order responses).

A TimeRemaining message occurs when turn generation starts (and thus the
state of the Universe is being updated). You should probably stop and
start again.

Hope this helps.

Mithro

_______________________________________________
tp-devel mailing list
[email protected]
http://www.thousandparsec.net/tp/mailman.php/listinfo/tp-devel

Reply via email to