file Useful feature(?): container stacking

More
7 years 3 months ago #17180 by SRC
Hi Cambragol,

I think that I did complete registration. I received a welcome email and when
I was unable to log in, I assumed that I had forgotten my password and requested
a new one. I received a new password email, but was still unable to log in with
the new password. I think that there must be something broken regarding new
users.

I'm not in a rush to get on the Torn Stars site; am having quite enough fun
(and some headaches) coding for EoC/Unleashed. But I would like to know about
the range of functions that have been created in the TS/US code. I may be
creating things that are already coded for TS/US. If I could use TS/US
code fragments, that would make my Unleashed tweaks quicker to create,
less buggy (I am a buggy programmer, alas -- a reasonably skilled amateur
coder at need, but no professional am I), and more compatible with TS/US.

My thinking regarding EoC is to create a separate mod called "MyCargo" or
something like that, containing all my player cargo manipulation hacks. This
would be compatible with any EoC mod, but would be especially useful in the
Unleashed mod due to the cargo capacity of the Pinguin, which permits an
extensive and lucrative insurgent campaign against Maas Corp during Act 0.
I'll also put up an Unleashed-Plus-MyCargo version of the iUnleashed.pkg
file that players who are already playing Unleashed could drop into the packages
folder of their existing unleashed mod to use the new features without starting a new game.

The MyCargo options might be readily compatible with TS/US.

Also, I want to create some new fire control options for the Pinguin. In particular,
I'd like to be able to tell the docked turrets to attack a specific target, and if
the docked Makwa fighters could also function as turrets (they may already -- I have
never tried that feature), that would make the Pinguin a very formidable warship. You
could have the turrets and turret fighters engaging an adversary to your rear or
flank while your forward armament (3 heavy mount directed energy weapons) engaged
a target in front of you. This might be a ship worth eventual incorporation into TS/US.


Regarding the "no capsule jump" problem with grandchild sims, the TS forum
had the solution -- there is an SDK function that can assign a sim to be the
child of another sim. You could make the double-stacked (and pod-chained)
grandchildren the children of the ship to which they are indirectly docked.
This would solve the capsule jump problem. If you made the child assignment
part of the docking functions, it wouldn't even be that ugly from a programming
standpoint. The writer of that post expressed the view that this
was an ugly coding solution, but he was thinking in terms of changing grandchildren
to children just before a capsule jump, and then undoing that after the jump.
But if you made this simply part of the docking function, and undid the assignment
at the time of undocking, I think that it might not be an ugly solution at all.



Your proposed solution would work and would be quick to implement, but
it would be ugly if you wanted to do that for Pod Trains. Maybe this is
a silly idea, but the Spider Tug can tow quite long pod trains, sort of like those
barge pods on the Mississippi, pushed about by "tow boats". That would not
be a good idea in a combat zone, but it might be a more efficient use of
spacecraft in peaceful areas.

It would also allow trader career players to keep their costs down at
first, by reducing the need to hire freighter wingmen. And miner career players could
do their own ore deliveries at first before their mining empires had grown large
enough to require a freighter fleet.

I'll try the "change grandchild to child" option and see how that works. I'm also
interested in having more control over which pods are docked to which ports on the
ship. One could imagine situations in which the player would like to undock something
less valuable in order to opportunistically pick up something more valuable (or something
rare needed for an EoC trade). With the current code, you may have to undock everything
in order to undock the low value pods you want to discard to make space for something
more valuable. I think that it is possible to do this, but will require that I learn
about sets and lists. And it will probably require fiddling with GUIs.

I really wish it were possible to fiddle with the HUD menus.

Please Log in or Create an account to join the conversation.

More
7 years 3 months ago #17182 by Tarcoon
Pod Trains? Those days I was dreaming of. Brilliant!
I thought it would be useful to have a few hinges between the pods to tug them in a smooth snake-like manner.
And maybe some 'dockported' station parts/sections could be seperated, tuged around and even reassembled via remote control.

To undock low value pods you could maybe use the remote function of the HUD.


There is no safe distance


There is no safe distance

Please Log in or Create an account to join the conversation.

More
7 years 3 months ago #17183 by cambragol
Your thoughts on the use of the Spider Tug in an early career are exactly what I was thinking several years back. In US at least, I ran into the difficulty that only wingmen are actually moving cargo, and we have no commands/utilities for the player to pick and sell cargo himself. You can use the Spider Tug to dock a single pod, and tow it to a station, but there is no pod unloading port on the spider tug to allow it to dock to the station and initiate the trade function. All this could be fixed, but it would take a little bit of tweaking.

The US codebase has a LOT of stuff in it, and much of it is in the form of utility type code that is used to do larger scale stuff. I am no expert on it, but GrandpaTrout really built a huge amount of code, and it all works flawlessly. It would be worth digging into it a bit to see if there is anything that might serve you. As an example, this is a list of the functions that tsPodUtil provides:

provides CreateCargoPod,
CreatePodShipper,
CreateCargoPodCustom,

PodCargo,
PlayerPodCargoSet,
PlayerPods,
LegalPods,
IllegalPods,
UndockedPodList,
TaggedPodList,
NumberOfCargoType,
RemoveType,
AnyPlayerPodsIllegal,
ShipPods,
DropCargo,

AutodockPod,
DockPorts,
ClaimPods,
LoadDone,
FreePods,

HackLevel,
SetHackLevel,
IsHackAllowed,
RemoveHack,
HackTargetPod,
HackNearbyPods,
TogglePodTag;

Functions that would allow finer control of turrets would be very cool. Currently in US we have turrets that can be purchased and placed on player ships and wingmen, but they have their own AI and will always attack the nearest hostile ship. The only control the player has is to turn them on or off.

Regarding GUIs, in US we shifted a lot of the commands from GUI to conversation with the other crew members. At first I wasn't keen on this, but after playing it, it is much more immersive. You issue orders to your crewmembers, and they carry it out. Simple, and realistic. So for docking multiple pods, you could issue a command to your crewmember, rather than mousing through an interface. We also had the comms somewhat context sensitive, so when you spoke to the crewmember, they would be ready to discuss relevent orders, such as Lpoint commands near an lpoint.

Please Log in or Create an account to join the conversation.

More
7 years 3 months ago #17186 by SRC
Hi Cambragol,

That's an impressive library of functions. I'll install US on my development machine (thanks for fixing that new user bug!) and continue to run EoC on my old play machine. It will be a relief to have bug-free functions to work with (referring to my buggy functions, not the EoC SDK, which seems very nice). That will be one fewer layer of bugs to find and repair :(

Regarding the unload function, it may be of interest that Bineshi added an "unload port" to the Pinguin. This port is located at the same physical location on the ship avatar as the front nose dockport, which created a little confusion for me at first when I was inquiring the number of cargo compatible ports -- I was getting 7 when I thought there were only 6. I didn't even know what the unload_port was for.

If I can figure out how to add new ship types to US, I'll experiment with playing the Pinguin as an alternative to the Spider Tug as starting player ship. But I'll work with the Spider Tug first and get pod trains working, including through capsule jumps.

I think that Bineshi's idea would work for the spider tug. You could add a cargo unload port on the ship (perhaps, following his lead, at the same location as the rear universal dockport. I am working on two machines simultaneously and could install US on the 2nd one to experiment with "MyCargo" functions.

I'd like to work on "MyCargo" functions in parallel for EoC and US. Would there be any objection from the TS/US developers to my migrating needed functions from US back to EoC? Unleashed is a very fine mod and it is possible that making it more playable (the increased non-player activity in Unleashed makes it harder to accumulate cargo and the MyCargo mods level the playing field by giving the player the same cargo grabbing functionality that Jafs and the non-player scavengers and corporate recovery teams have) might stimulate more interest in the original EoC, which could only be good for TS/US, I would think.

I would be very pleased to try to build a "MyCargo" package for Torn Stars/Unstable Space.

There is no doubt in my mind from examining Bineshi's code that one could have more control of the turrets, both the docked autoturrets and the point-defence turrets. I'm particularly interested, as I mentioned, in gaining precise control of the targets of the docked Makwa Turret fighters. The Pinguin is a light cruiser, and it would be so cool to have it able to fire broadsides at player-specified targets.

I think that it would also be possible to assign different targets to subsets of a capital ship's turrets, though the command interface might be cumbersome. But the first task is to get turrets to attack your preferred target. And before that, I want to get "MyCargo" working nicely.

I'm downloading US now and will have a lot of fun exploring GrandpaTrout's work.

Please Log in or Create an account to join the conversation.

More
7 years 3 months ago #17188 by SRC
Hi Cambragol,

I started a thread on the TS/US forum in the US discussion area, and tried on multiple occasions to upload some of my screenshots, but they don't seem to show up. What am I doing wrong? I could email them to the TS admin email address for you to post, if you would like.

Please Log in or Create an account to join the conversation.

More
7 years 3 months ago #17191 by cambragol
Hi SRC,

I am seeing all the screenshots on the TS forum, so I assume you figured out the issue?

Also, regarding bringing TS/US function back to EoC...by all means! The code is totally open source and always has been. Anyone can use anything.

Please Log in or Create an account to join the conversation.