General Question Spacecraft3.dll in Orbiter 2010

Arthur Dent

Absolutely Mental
Donator
Joined
Feb 8, 2008
Messages
336
Reaction score
1
Points
18
Location
Dresden
Website
wasa.pottyland.de
So, anyone of the SC3 fans up to writing a specification for a replacement framework? And no, "the same as SC3" doesn't cut it, because that would mean all the bugs, all the short-comings... and all the incompatibility, too.

Now that is a great idea. With all the new features available in orbiter maybe it's time for a new take on SC3. Maybe SC2013 should be in the planning?

That would be great. I'm all up and psyched for this. That is exactly what we need. Anybody who is developing a framework after "SC3-fans" specification will be, like Vinka, forever remembered as a hero to the community.

:hailprobe:
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
So if there is enough interest in it, let's kick it off. I can create a project on Bitbucket with an open Wiki for people to put in ideas/specification bits and an empty add-on structure. If nobody has a better idea, that is.
 

Arthur Dent

Absolutely Mental
Donator
Joined
Feb 8, 2008
Messages
336
Reaction score
1
Points
18
Location
Dresden
Website
wasa.pottyland.de
Go ahead then - I'm eager to help with writing specifications and of with course testing.

Although I'm out of country until next Sunday and won't be using the internet, I'm more than willing to help you with this in the following weeks/months.
 

Arthur Dent

Absolutely Mental
Donator
Joined
Feb 8, 2008
Messages
336
Reaction score
1
Points
18
Location
Dresden
Website
wasa.pottyland.de
Great!

I'm already writing a lot of specifications in a text file. When Face is ready with setting up the project, I will publish them
 

Izack

Non sequitur
Addon Developer
Joined
Feb 4, 2010
Messages
6,665
Reaction score
13
Points
113
Location
The Wilderness, N.B.
Well, if you didn't know, it's been already there for 29 minutes :p: https://bitbucket.org/face/genericvessel/
Well, I still think it's a fine idea.

So, to get it straight, the goal is to provide an alternative ground-up interpreter for SC3 initialisation files, which correctly parses files in the existing structure, while fixing bugs/limitations of SC3 and providing additional functionality, or to provide a new, but similar environment for non-programmer developers to create spacecraft?

In other words, is this a spiritual Spacecraft 4 or an entirely new system with a similar purpose?
 

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
When Face is ready with setting up the project, I will publish them

I think you can edit the wiki on the linked in my earlier post project already (at least the "Edit" and "Create" buttons on main wiki page work for me). You only need a Bitbucket account.
 

Arthur Dent

Absolutely Mental
Donator
Joined
Feb 8, 2008
Messages
336
Reaction score
1
Points
18
Location
Dresden
Website
wasa.pottyland.de
I guess it has to be a new system with similar purpose (but it can have a similar syntax). It needs elements of the multistage.dll and of course, UMMU support.

I wouldn't even mind if it was basically a compiler/converter that compiles the script files into dlls not unlike Artlav's SC3 to dll converter.

---------- Post added at 15:22 ---------- Previous post was at 15:13 ----------

Thanks for the information. I've never used bitbucket before.

I've put the list of specifications in there, but maybe we should discuss them in the forum.
 
Last edited:

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
Well, if you didn't know, it's been already there for 29 minutes :p: https://bitbucket.org/face/genericvessel/

Yikes! I have a stalker! :lol:

I'm already writing a lot of specifications in a text file. When Face is ready with setting up the project, I will publish them

The Wiki is up and running. Go ahead and add pages with your specifications as you see fit. You need a user account there, but it is free, anyway.
If you don't want to do that, I guess a posting here is sufficient also.

So, to get it straight, the goal is to provide an alternative ground-up interpreter for SC3 initialisation files, which correctly parses files in the existing structure, while fixing bugs/limitations of SC3 and providing additional functionality, or to provide a new, but similar environment for non-programmer developers to create spacecraft?

In other words, is this a spiritual Spacecraft 4 or an entirely new system with a similar purpose?

I think it should be both. A standard SC3 INI set should work without changes IMHO. And of course nothing stops it from adding more features or even different description formats.

---------- Post added at 15:53 ---------- Previous post was at 15:22 ----------

I've made a few commits to the project's repository with vinka's packages extracted to a standard Orbiter directory (without the Orbiter files, of course). I think it is safe to upload them to the public repository, as he explicitly states in SC3 documentation:

All add-ons based on spacecraft3.dll may be distributed freely with this base package include.

For developers
The source code can be obtained upon request.

Such a setup will make it much easier for folks to test their work against various versions of the generic frameworks (SC1,2,3 and whatever the new is called then).

Of course I've taken care to keep the credits where they are due in the commits, so it is clear where the files are coming from in the history, even if we use them later on in the project as e.g. test scenarios.

If there are no objections, I'm going to push them to the repository and link the documentation PDFs for reference.
 

orb

New member
News Reporter
Joined
Oct 30, 2009
Messages
14,020
Reaction score
4
Points
0
A standard SC3 INI set should work without changes IMHO. And of course nothing stops it from adding more features or even different description formats.
If you ask me, I like how it's done in the ScriptPB vessel, i.e. the class configuration file could point to itself to read the vessel description.

New GenericVessel vessels could use their class configuration files for the vessel definition, or point to an external file (I'd prefer those vessels use separate vessel classes but using the same Module, which IMO is better than one class for different kinds of vessels).

Of course for backwards compatibility and for people still using legacy method of creating Spacecraft/Multistage vessels, e.g. the new Spacecraft3.cfg should be pointing to something like "Spacecraft/${VesselName}.ini" or "Spacecraft/%VesselName%.ini", etc. for "VesselDesciptionFile" parameter (or something like that), and similarly for the new Multistage2.cfg.
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
If you ask me, I like how it's done in the ScriptPB vessel, i.e. the class configuration file could point to itself to read the vessel description.

New GenericVessel vessels could use their class configuration files for the vessel definition, or point to an external file (I'd prefer those vessels use separate vessel classes but using the same Module, which IMO is better than one class for different kinds of vessels).

The ScriptPB solution is indeed elegant. I also agree on the reference-per-class vs. reference-per-name approach, as the later - used by SC3 - is making scenarios with multiple instances of the same class cumbersome.

Of course for backwards compatibility and for people still using legacy method of creating Spacecraft/Multistage vessels, e.g. the new Spacecraft3.cfg should be pointing to something like "Spacecraft/${VesselName}.ini" or "Spacecraft/%VesselName%.ini", etc. for "VesselDesciptionFile" parameter (or something like that), and similarly for the new Multistage2.cfg.

Hm. Why such a parameter at all? In the legacy cases it would be the class "Spacecraft3" that triggers the old INI file path, in the new cases it uses its own configuration file like with the ScriptPB approach. Does it make sense to have different class names for the same description?

That said, maybe a simple include mechanism in the config file makes sense, so you can build a new class from shared definition blocks.
 

PhantomCruiser

Wanderer
Moderator
Tutorial Publisher
Joined
Jan 23, 2009
Messages
5,603
Reaction score
168
Points
153
Location
Cleveland
Is there a way to implement a basic, generic VC? Something, that if not otherwise defined would have a bare-bones cockpit (say one maybe two MFDs, hud, switches for gear, rcs/translation, hatch open/close, etc).
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
Is there a way to implement a basic, generic VC? Something, that if not otherwise defined would have a bare-bones cockpit (say one maybe two MFDs, hud, switches for gear, rcs/translation, hatch open/close, etc).

Certainly. But what should it look like? A cube-like box with window holes and spherically arranged elements? Scaled by the vessels size? By the mesh size? No box at all, just transparent with the elements in the air?
 

Izack

Non sequitur
Addon Developer
Joined
Feb 4, 2010
Messages
6,665
Reaction score
13
Points
113
Location
The Wilderness, N.B.
Is there a way to implement a basic, generic VC? Something, that if not otherwise defined would have a bare-bones cockpit (say one maybe two MFDs, hud, switches for gear, rcs/translation, hatch open/close, etc).

Hey, there's an idea. IIRC Moach had been working on something like this some time ago - it may be possible to consult him on it.

On the topic of thrusters, the ability to define additional or nonstandard thrusters would be a great step forward, I think.
 

PhantomCruiser

Wanderer
Moderator
Tutorial Publisher
Joined
Jan 23, 2009
Messages
5,603
Reaction score
168
Points
153
Location
Cleveland
I'll try to spend some time tonight with paint.net (or something) to see if I can come up with something that might be suitable for a generic cockpit panel. If I can please, say 75% of the crowd, I'll put together a mesh or something that will match.

Then again, we may have a conflict of person X wanting a two seater and person Y wanting to fly solo. But then, this would endeavour to be a generic layout.

Maybe it could be configurable?
 

Face

Well-known member
Orbiter Contributor
Addon Developer
Beta Tester
Joined
Mar 18, 2008
Messages
4,403
Reaction score
581
Points
153
Location
Vienna
I'll try to spend some time tonight with paint.net (or something) to see if I can come up with something that might be suitable for a generic cockpit panel. If I can please, say 75% of the crowd, I'll put together a mesh or something that will match.

Then again, we may have a conflict of person X wanting a two seater and person Y wanting to fly solo. But then, this would endeavour to be a generic layout.

Maybe it could be configurable?

Wait a minute... do you mean a generic 2D panel, or a 3D virtual cockpit?
 

Donamy

Addon Developer
Addon Developer
Donator
Beta Tester
Joined
Oct 16, 2007
Messages
6,917
Reaction score
211
Points
138
Location
Cape
I'll donate my Jason Project to be the test vehicle if no one objects. It has quite a few animations, including robotics. It also has a VC with 2 mfd's and HUD.
 
Top