Jump to content
profcupcake

[WIP] Cupcake's Medical System

Recommended Posts

(Or CupMed for short)

So I've decided to release the current version of this project I'm working on: a somewhat simple, but more complex than default, medical system script. Currently, this version of it is just barely functional, with (most of) the core systems in place and nothing else. It's in an okay state to be used in missions at the moment, but be aware that there are still a few core systems that have yet to be implemented.

This is an attempt to provide a middle ground between A3's default medical system and the rather complex systems featured in such things as ACE. Since I couldn't find that sort of thing already made, I decided to make it myself.

To try and keep things going as they should, I set out a few design philosophy points to follow. These are the following:-

  • In reality, humans are easy to injure, but surprisingly hard to kill. The system should emulate this.
  • It should be simple on the frontend without compromising depth or gameplay.
  • Each part of it must have a good reason for being there. No guff.
  • Abstractions can, and inevitably will, be made for the sake of gameplay.
  • Make sure that the Medikit is useful to the common soldier, but there are still worthy bonuses to being a proper medic.

So, with that in mind, just what the hell does it actually do? Allow me to give a basic explanation.

THE "BASIC" EXPLANATION

The default A3 damage system has been effectively disabled. Instead, it all goes through the script, and instead of the damage value being the major vital, it is now "blood level" (don't go taking that too literally). When you are hit, you lose some blood instantly, and also increase your bleed rate. There are two ways to reduce your bleed rate. There are "patches" which require (and consume) a FAK, which will partially reduce the bleed rate, and there are bandages, which require a Medikit, and will reduce the bleed rate to 0. The only way to increase your blood level again is to wait - it will (very) slowly regenerate over time. If you are a medic and have a Medikit, you can use an injection to temporarily increase the rate at which you (or others) regenerate. Be careful, though - if you are bleeding, it will also greatly increase bleed rate. Additionally, too much of the injection will knock you unconscious until your regeneration rate returns to a normal-ish level. This brings me nicely onto unconsciousness. There are 3 ways to be knocked unconscious. The aforementioned 'overdose' is one of them. The other two are when you are hit, and when you are bleeding. When you are hit, there is a chance to be instantly knocked unconscious. When you are bleeding and go below a certain level, there is a chance you will fade into unconsciousness. Both of these are more likely if you are more badly hurt. There are two ways to recover from (non-overdose) unconsciousness: either a medic with a Medikit can revive you instantly, or there is a chance you will recover automatically if you are no longer bleeding.

I think that's pretty much it.

MAJOR ISSUES


Wait, there are no major issues?

Weird.

Guess nobody has found them yet.

MINOR ISSUES

  • disableuserinput quirks.
  • The feedback for when you're injured could use some tweaking.
  • You currently take bleeding damage from things that shouldn't make you bleed, such as falling.

TODO

(Those marked with an asterisk are currently being worked on, or in other words, can be expected in the next update)

TO BE DECIDED

Download link

Armaholic page

With great credit to farooqaaa, as without him I probably wouldn't know how to do any of this.

Edited by ProfCupcake

Share this post


Link to post
Share on other sites

Nice work. I will test it out later tonight. Does this work with AI or only Player units?

Share this post


Link to post
Share on other sites
Nice work. I will test it out later tonight. Does this work with AI or only Player units?

Players only. It was originally intended for co-op missions.

---------- Post added at 14:19 ---------- Previous post was at 13:00 ----------

UPDATE

  • Improved/fixed the animations, and changed the unconscious one
  • Doubled all damage values

At this point, I'd say it's okay to use in missions, but be aware there are still some core systems that have yet to be implemented.

Share this post


Link to post
Share on other sites

This sounds great.. look forward to seeing where this goes. Would be nice if it could be used on ai as well.

Share this post


Link to post
Share on other sites
This sounds great.. look forward to seeing where this goes. Would be nice if it could be used on ai as well.

I have no idea where I'm at regarding AI scripting, so I wouldn't hold your breath. I'll be honest, AI has always been a bit of a programming Achilles heel for me.

But hey, I'm constantly learning, so perhaps a long way down the line I'll actually know enough to have a stab at it.

Share this post


Link to post
Share on other sites
Guest

Release frontpaged on the Armaholic homepage.

================================================

We have also "connected" these pages to your account on Armaholic.

This means in the future you will be able to maintain these pages yourself if you wish to do so. Once this new feature is ready we will contact you about it and explain how things work and what options you have.

When you have any questions already feel free to PM or email me!

Share this post


Link to post
Share on other sites

I REALLY like this system, however, I would REALLY love to see this applied to the AI as well, perhaps you could ask someone more knowledgeable in the AI department to assist in this matter. Personally, I only play SP/CO-OP with friends, where AI is a big part of the game. So I am sure there are others who agree. Whether or not you choose to do this, good work anyways :). I would like a mod like this that increases the survivability of units and the importance of first aid, without going into unnecessarily complexity with custom keys and such.

Share this post


Link to post
Share on other sites
I REALLY like this system, however, I would REALLY love to see this applied to the AI as well, perhaps you could ask someone more knowledgeable in the AI department to assist in this matter. Personally, I only play SP/CO-OP with friends, where AI is a big part of the game. So I am sure there are others who agree. Whether or not you choose to do this, good work anyways :). I would like a mod like this that increases the survivability of units and the importance of first aid, without going into unnecessarily complexity with custom keys and such.

I agree. Nice work.

Share this post


Link to post
Share on other sites

Cupcake Medical System(yours).... Combat Medical System(Glowbals)....Both CMS for short... hmmm.... Looks decent enough.

Edited by armyinf

Share this post


Link to post
Share on other sites

like the sound of this - current system too basic and some of the mods are way over the top for us. something with some simple complexity (like that term?) is what we're after. will watch this closely.

Share this post


Link to post
Share on other sites

Tested and works well m8 only thing is need lot more info some things and few changes here and there

Share this post


Link to post
Share on other sites

UPDATE

  • Added the ability to drag unconscious people
  • Improved the handling of the control loop
  • A few fixes here and there, most of which I can't remember

I did want carrying to be part of this update as well, but it was being a bit annoying, therefore I'm putting it onto low-priority for now.

---------- Post added at 15:42 ---------- Previous post was at 15:41 ----------

Cupcake Medical System(yours).... Combat Medical System(Glowbals)....Both CMS for short... hmmm.... Looks decent enough.

Internally, I tend to refer to this as "CupMed". Feel free to use that abbreviation instead :D

---------- Post added at 15:44 ---------- Previous post was at 15:42 ----------

I REALLY like this system, however, I would REALLY love to see this applied to the AI as well, perhaps you could ask someone more knowledgeable in the AI department to assist in this matter. Personally, I only play SP/CO-OP with friends, where AI is a big part of the game. So I am sure there are others who agree. Whether or not you choose to do this, good work anyways :). I would like a mod like this that increases the survivability of units and the importance of first aid, without going into unnecessarily complexity with custom keys and such.

It'd have to be something that is started once it's onto a later stage of completion. At the very least, the core systems need to be finished and working to an acceptable standard before I think about things like that. But your eagerness for AI support has definitely been noted, and I will see what I can do. But later.

---------- Post added at 15:48 ---------- Previous post was at 15:44 ----------

Tested and works well m8 only thing is need lot more info some things and few changes here and there

Info will come eventually. As for the "few changes here and there", got anything specific in mind?

Share this post


Link to post
Share on other sites
Guest

New version frontpaged on the Armaholic homepage.

================================================

We have also "connected" these pages to your account on Armaholic.

This means in the future you will be able to maintain these pages yourself if you wish to do so. Once this new feature is ready we will contact you about it and explain how things work and what options you have.

When you have any questions already feel free to PM or email me!

Share this post


Link to post
Share on other sites

very nice script, but when unconscious as an admin I can't open the chat to type commands and whatnot. I also can't hit Esc and pull up the menu when I'm unconscious.

it was very easy to comment out the debug stuff, so that's not a problem.

it would be cool if this worked with ACRE to mute the mic when unconscious, but I know that's probably very difficult or not within the scope of this script.

edit: what's strange is that a grenade right in my face doesn't kill. I'll look forward to future versions, i'm sure that can be fixed

edit2: upon further testing, it seems we just don't take enough damage. it takes about 5 headshots to knock out, versus the normal 2 which seemed alright before.

I could probably just edit the script myself and reduce the amount of "blood" we start with, but the issues with admins unable to chat and being unable to pull up the pause menu are major. but I really like what's there so far; great work

Edited by GDent

Share this post


Link to post
Share on other sites
very nice script, but when unconscious as an admin I can't open the chat to type commands and whatnot. I also can't hit Esc and pull up the menu when I'm unconscious.

it was very easy to comment out the debug stuff, so that's not a problem.

it would be cool if this worked with ACRE to mute the mic when unconscious, but I know that's probably very difficult or not within the scope of this script.

edit: what's strange is that a grenade right in my face doesn't kill. I'll look forward to future versions, i'm sure that can be fixed

edit2: upon further testing, it seems we just don't take enough damage. it takes about 5 headshots to knock out, versus the normal 2 which seemed alright before.

I could probably just edit the script myself and reduce the amount of "blood" we start with, but the issues with admins unable to chat and being unable to pull up the pause menu are major. but I really like what's there so far; great work

Yes, that's due to the use of disableplayerinput when people are unconscious. Unless there's a better solution to be found (which I'm sure there is, but I can't seem to remember it) it will have to do, I'm afraid.

ACRE support is a possibility, the only problem is that the ACRE API features many useful commands except the one I'm looking for. Gah.

As for the damage values, things are constantly being tweaked, so it'll get there eventually. Besides, you should notice the difference in vulnerability once I get the injured effects working. I'm going to start using variables instead of set numbers anyway, so you'll be able to modify them much more easily.

Edited by ProfCupcake

Share this post


Link to post
Share on other sites
Yes, that's due to the use of disableplayerinput when people are unconscious. Unless there's a better solution to be found (which I'm sure there is, but I can't seem to remember it) it will have to do, I'm afraid.

ACRE support is a possibility, the only problem is that the ACRE API features many useful commands except the one I'm looking for. Gah.

As for the damage values, things are constantly being tweaked, so it'll get there eventually. Besides, you should notice the difference in vulnerability once I get the injured effects working. I'm going to start using variables instead of set numbers anyway, so you'll be able to modify them much more easily.

displayeventhandlers keydown is the best way of doing it. That way you can intercept all keys except stuff like 'escape' etc

Share this post


Link to post
Share on other sites

hey man, sounds good. the script is pretty nice and we can just deal with the issues for the time being. i'll be watching this thread

merry christmas

Share this post


Link to post
Share on other sites

UPDATE

Just a little tweak-ey update.

  • The bleed rate will now decrease by itself, in an attempt to simulate blood clotting.
  • Significantly decreased the chance to auto-recover from non-overdose unconsciousness.
  • You should now be able to access menus (etc.) while unconscious. Not sure if you'll actually be able to see any of it, though.
  • Made a few of the main values into parameters, which are available to be edited in the cupmed_init.sqf.

More parameters will come as I notice values that can be turned into them. I want every value in the whole damn thing to be on that parameters list, primarily for ease of tweaking later, but also so that you can customise them if you feel like my constant tweaking isn't quite to your tastes.

Edited by ProfCupcake

Share this post


Link to post
Share on other sites

Very cool! Nice work. I like the potential to have your driver or even pilot (!!!!) bleed out to the point of falling unconscious. Still hoping to find a light weight AI-compatible drag/carry/revive.

Share this post


Link to post
Share on other sites
Very cool! Nice work. I like the potential to have your driver or even pilot (!!!!) bleed out to the point of falling unconscious. Still hoping to find a light weight AI-compatible drag/carry/revive.

Funny you should mention that: it's currently impossible to fall unconscious in a vehicle, as I haven't quite worked out how I want that to work yet.

Share this post


Link to post
Share on other sites
Guest

Updated version frontpaged on the Armaholic homepage.

================================================

We have also "connected" these pages to your account on Armaholic.

This means in the future you will be able to maintain these pages yourself if you wish to do so. Once this new feature is ready we will contact you about it and explain how things work and what options you have.

When you have any questions already feel free to PM or email me!

Share this post


Link to post
Share on other sites

wondering if you could help me im getting this error

if (CUP_debugHintBool) then {hintSilent form>
 Error position: <CUP_debugHintBool) then {hintSilent form>
 Error Undefined variable in expression: cup_debughintbool
File mpmissions\__CUR_MP.Altis\cms\cupmed_functions.sqf, line 78

Share this post


Link to post
Share on other sites

UPDATE

Okay, so it's more an announcement than an update.

  • Fixes 'n' tweaks
  • I've finally worked out how I want the body part injury effects to work (at least, for some of the body). See below for details.
  • Bumped thread

Apologies about the while of inactivity. But anyway, here's the details for the limb/body part/hit point/whatever damage. Feel free to contribute ideas etc., as always.

Each of the following body parts has its own "damage" value, which is (mostly) what controls the effects described below. This damage value is increased when the body parts are hit, and decreased constantly by the already existent regen rate.

ARMS

- Chance of involuntary weapon discharge upon being hit (I have this implemented already, but it's been disabled due to the 'fire' command being pretty much broken)

- Your aim will drop relative to weapon weight, arm damage and current aim height (I'm still not sure how to actually change the player's aim direction. Anyone know?)

- You will experience greater sway and/or recoil relative to arm damage and weapon weight (not sure how to do this either)

LEGS

- Can't sprint after a certain point, then can't run after a certain point (so many things I don't know how to do yet)

- Can't stand, then can't crouch or stand (again, not sure how)

- Get fatigued quicker (I have an idea of how to do this, but it's pretty ugly, so I'm looking for alternatives)

HEAD

- Increased chance of unconsciousness upon being hit (basically just a second roll for instant unconsciousness)

- Fallout 3+ style "concussion" visual effects (very low-priority atm)

Share this post


Link to post
Share on other sites
Guest

New version frontpaged on the Armaholic homepage.

================================================

We have also "connected" these pages to your account on Armaholic.

This means in the future you will be able to maintain these pages yourself if you wish to do so. Once this new feature is ready we will contact you about it and explain how things work and what options you have.

When you have any questions already feel free to PM or email me!

Edited by Guest
updated mirror with the below version!

Share this post


Link to post
Share on other sites

UPDATE

Really, this particular feature should've come about 3 updates ago.

  • Medics can now check the vitals of themselves or any target. If they have a Medikit, the raw numbers will be displayed. If not, it will be displayed as slightly ambiguous descriptions.
  • The debug hint is now off by default.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×