In my new project, I want to replace the blue armour suit with a red armour suit that only gives 50%. But I want the green armour and megasphere to give out their usual amounts. I can't do this in dehacked, so is there any other way to do it?

Ultimate DooMer said:
In my new project, I want to replace the blue armour suit with a red armour suit that only gives 50%. But I want the green armour and megasphere to give out their usual amounts. I can't do this in dehacked, so is there any other way to do it?

Why not replace the -green- armour with your new red armour sprite, and set its armor points in Dehacked to 50%. Then replace the blue armor with the former green armor sprite, and set the maximum amount of armor to 100&. Also change the pick-up text to something more appropriate.

Mordeth said:
Why not replace the -green- armour with your new red armour sprite, and set its armor points in Dehacked to 50%. Then replace the blue armor with the former green armor sprite, and set the maximum amount of armor to 100&. Also change the pick-up text to something more appropriate.

That's the problem - there's no armour points value to set, only armour classes, IDFA/IDKFA armour and max armour (which I'd like to keep at 200% for the megasphere). I could replace green with red and blue with green like you said and then set both armour classes to 1 - but this would probably result in both suits giving 100%. I've seen wads having armour going to 300% with armour class 3, but dehacked won't take 0.5 as a value (which in theory would've worked).

Make a dummy gettable thing with a DECORATE lump (I assume this is for ZDoom, if not this won't help you), and then attach it to an ACS_Execute special that does this:

code:GiveInventory("ArmorBonus", 50);

That'll give the player 50 armor points with whatever message you tell the decorate lump to display, plus you don't have to get rid of any of the Doom armor. The only drawback to this of course is every one of your new red armor things needs to execute that otherwise it'll just get picked up and nothing will happen.

Cyb said:
Make a dummy gettable thing with a DECORATE lump (I assume this is for ZDoom, if not this won't help you), and then attach it to an ACS_Execute special that does this:

code:GiveInventory("ArmorBonus", 50);

That'll give the player 50 armor points with whatever message you tell the decorate lump to display, plus you don't have to get rid of any of the Doom armor. The only drawback to this of course is every one of your new red armor things needs to execute that otherwise it'll just get picked up and nothing will happen.

...and it'll go over 50% if you don't have any armour to start with, but I've already thought of a use for it. (it'll be a special armour powerup rather than normal armour - to complement a special health powerup that I already have). Plus you've also simplified my new health/armour system by suggesting that, so thanks!

Ichor: at the moment I have no plans to make it spawn when you kill something, so that shouldn't be a problem.

That will give the player up to 50 armor and none if he has less than 50 armor. The only problem is that the new item will disappear when the player crosses over it regardless of if he has over 50 armor or not (so essentially he gains nothing if he has > 50 armor and he can't come back to it later, sort of like if you pick up a soul sphere when your health is at 200%). A sort of work around for that would be to add an else that spawns a new armor, but then you run into the problem that Ichor stated.

If you want to get insanely complex you could do something like make a dummy thing with decorate that ISN'T gettable, then have it on top of a linedef. Then that line will activate an ACS that checks the player's armor. If the armor is above 50 then it doesn't do anything. If armor is below 50 then it knocks the armor up to 50 (as with above) and removes the thing and displays a message. Of course that adds an extra element of complexity and now spawning the 50% armor is pretty much out of the question, and it limits you to exactly where you can place this "powerup", but it'll work exactly like the other armors if all is done right. If you ask me it's a lot of effort tho, and I prolly typed it all out for nothing ;)