Question Injured UMMU's

Luke Skywalker

Rebel Alliance Hero
Joined
Dec 26, 2011
Messages
174
Reaction score
0
Points
0
Location
Singapore
Okay, i was wondering how do you cure "Injured" UMMU's? There doesn't seem to be a way on how to...

Also, does DGIV Cargo (The one with a Nuclear Reactor) actually makes power for the DGIV (switching the external power on.)
 
In regards to the first question, "curing" a UMMU is supposed to be handled by the vessel code. However, no-one seems to have developed any code to "cure" UMMU's. Some have developed code to injure a UMMU - but nobody has yet developed a "hospital" vessel.

When he created UMMU, Dan tried to make it as "open" as possible.He created ways for vessel devs to "injure" and "cure" UMMU's. He even provided examples of much of it. The DGIV can "injure" UMMU's. But the DGIV is a small vessel and doesn't have a "sick bay". The Arrow is big enough for a "sick bay" (that could "heal" UMMU's) but the Arrow is really just a "technology demonstrator". It was built to demonstrate many of the the abilities of UCGO and UMMU - but was not intended to represent a "finished" vessel.

What happens to a "person" when they are aboard a vessel is dependant on the vessel. A UMMU that is NOT aboard a vessel can be injured (by the UMMU code if certain limits are exceeded) but you don't expect a person to just "heal" on their own. They would need a "hospital" or "sick bay".

In short, Dan's UMMU enables both injury and healing - but nobody has yet implemented the "healing" portion of that. I suspect that this has to do with the fact that there is no "injured" flag - only basic stats (age, respiration, pulse). There is no clear way to mark a UMMU as injured.

So, let's say I create a Glider, like the DGIV or XR-series. I can use forces to determine if a UMMU should be "injured" - but a glider is too small to have a real "sick bay". To "heal" a UMMU I should have to transfer it to a hospital - or a ship that has hospital facilities (ie, a "sick bay")

So, when I create my vessel, I can keep track of the health of the UMMU's in the vessel - but when it comes time to transfer that UMMU I run into problems. I can't set a flag to show if the "person" is injured - or how severely injured they are. I could set the pulse or respiration low - but that only helps in a vehicle - vehicle transfer. If I "EVA" a UMMU the UMMU code will change the respiration and pulse depending - so a person may not "stay injured" while they are EVA'd to transfer from a vessel to a "hospital". Even if the transfer is vessel - vessel (ie, a DGIV docked to a "hospital" ship), I can't really send info on injury status. I can only send info on respiration and pulse - and there is no standard on what respiration or pulse mean to "health".

I'm not complaining about UMMU. It offers much that was missing - it humanizes Orbiter. You can transfer a crew - and crews can be injured (or healed) while aboard a vessel. It could, perhaps, be improved by adding a "health status" flag. It would establish a standard - and vessel/base devs would be able to create hospitals without having to create a standard (or worse - several different standards) on what pulse/respiration rates mean what level of injury.

I would like to see a simple health "flag" that offers a few simple options. Let's say flag=0 means good health. Flag=1 means minor injury - will improve slowly by itself or heal faster in a "hospital/sickbay". Flag=2 means a moderate injury that won't get worse but won't get better outside a hospital. Flag=3 means a severe injury that will get worse unless in a hospital (where it would get better).

UMMU, even as it exist today, has a lot of room for third party devs to expand it. Unfortunately, there is no real standard as to how those improvements should be handled. I think Dan was hoping that if he laid the groundwork, others would pick up the ball and run with it. Realistically, that isn't going to happen until someone sets the standard - and that won't happen. As the creator of UMMU and it's SDK, everyone looks to Dan to create that standard and until he does I don't see much forward progress being made.
 
Realistically, that isn't going to happen until someone sets the standard - and that won't happen.

It won't happen unless someone gets the sourcecode. The features you suggested (like the health flag) have to be planted directly inside the UMMU functionality.
It could be done differently, but it would more or less be a hack. The only thing you can do is a module that keeps track of all UMMU's in a scenario, remembers their stats and allows vessels to access those stats. I was thinking about such a thing once, but the problem is that it would a) be a lot slower than if it was directly implemented, and b) very inconvienient for third party add-on developers, having to include two different SDK and oftentimes making two different calls for one operation(leading to such an extension being only sparsely supported).

You could wrap the whole UMMU SDK in an other SDK to get rid of the second problem, but then older add-ons may have compatibility issues.

No, either Dan picks it up again, releases the source or someone writes a successor from scratch one day (preferably backward compatible, which is tough enough without the sourcecode). I don't see any other sensible way.
 
It can be done without changing UMMU - but won't be an elegant solution. The "health Flag" can be embedded in the UMMU name, ie "Capt_Tom_HookH_26-48-67". The Capitol H at the end of the last name is the flag (and wouldn't be in bold type of course). Other flags could be L (light injury), S (serious injury), etc.

Of course, only vessels which adhere to this "new standard" would be able to read that flag and make use of it - but "non-compliant" vessels won't even notice the flag so it won't cause compatibility issues.

This doesn't help with one thing - the status of an EVA'd UMMU. Since UMMU won't detect the flag, their health won't change. You could EVA a UMMU on the brink of death -and if he had air to breath he would live forever. Nor would a UMMU be able to suffer an accident while EVA'd that required a hospital to heal.

This little "hack" is far from perfect - it would be better by far if this were built into UMMU itself. I think Dan's busy updating some stuff to work with the new DX-9 client so I doubt he would have time right now - maybe someday.

While I'm wishing for things from Dan, I wish UCGO had a couple things as well - an option that disallows spawning cargos from nowhere - and that the cargos could remember who owned them. I haven't figured out how to do a "space trader" kind of thing without those features.

I'll probably put in a feature request to Dan one of these days and see if he has the time (or even the desire) to add these features. That would be far preferable to creating a competing version of UMMU and/or UCGO - which would not only be re-inventing the wheel but also end up dividing the devs. You'ld have the same problem many open source projects suffer - forking.

At any rate, I believe I've dragged this thread far enough off topic for one day!
 
Back
Top