sidebarimage

LogoLogo2 v1.0


Home

FAQ

Downloads

Screenshots

Forums

Links

GPDS

Tutorials


I can't program. Can I still use CVE-lite vessels?


Yes! Whilst CVE-lite is aimed at developers, the benefits of incorporating it into their ships are felt squarely by the users. You can use GPDS to describe any combination of payloads to the supported vessels. Want to launch Buran on a Saturn V? It's just a single line in a scenario away. See GPDS for more information!

Can I add CVE-lite compatibility to this vessel? I'm a programmer.


Yes! If you are a C++ programmer and have the source available, incorporating CVE-lite is not at all difficult. Have a look at the example tutorial for more information.

Can I add CVE-lite compatibility to this vessel? I'm not a programmer.


No, sorry. CVE-lite is a programming library, you need to recompile the vessel with CVE-lite support. Try contacting the author of the add-on and asking if he will consider releasing a CVE-lite based version.

Can I use a non-CVE-lite vessel as a PAYLOAD in GPDS?


Yes! Any vessel capable of spawning itself on the fly can be a payload in a GPDS string. For example the Module-1, Module-2 and Carina all work perfectly as PAYLOADs.

Can I use a non-CVE-lite vessel as a STAGE in GPDS?


No, sorry. All STAGEs need to be CVE-lite compatible, otherwise it's not possible to send them the GPDS stack information for them to carry on as an upper stage to the current vessel.

I've found this great vessel, but it doesn't work as a PAYLOAD. It crashes. Can you help?


Unfortunately some programmers -- especially of multistaged vessels -- haven't taken into account the requirement for their vessels to be created dynamically by others during an Orbiter simulation. If, when you try to jettison a non-CVE-lite vessel as PAYLOAD, Orbiter crashes, it's likely to be a problem with the vessel itself. Try contacting the author to see if he can add the ability for it to be created without relying on a scenario file.

How do the inter-vessel communications now work?

In order to future-proof CVE-lite, from BETA 3 there is now a "helper" DLL called that co-ordinates inter-vessel communications meaning that a vessel compiled under a version of the library >= BETA 3 should work with any other compiled on any other version of the library >= BETA 3! How it works is the messenger DLL stores a list of pending messages, and the vessel that they are destined for. Every time a vessel polls for a message, if any are found, they are returned to the vessel in the order they were sent and their containers freed up for new messages. At the same time, if any messages are found older than 30 seconds, they are discarded to free up space again. This has two effects:
  1. incompatible vessels simply never get the messages instead of potentially crashing;
  2. two compatible vessels never actually address each other directly, just the messenger DLL, whose functions are referenced purely by name. This means the version of the library they were built with is irrelevent.

How do I make sure my vessel is CVE-lite compatible?

Please see the tutorials page.

Does it have auto?


Erm... No.