header general

[SUBMISSION] War

  • Kan3
  • Kan3's Avatar Topic Author
  • Chaingunner
  • Chaingunner
More
1 year 6 months ago - 1 year 5 months ago #1 by Kan3
[SUBMISSION] War was created by Kan3
Information
Name: War
Difficulty: Very Hard
Connection: None
Summon: War
Melee: Yes
Distance: Projectile, Shield
Type: Cybernetic Demon
Brightmaps: Yes
ACS: No
Actor modification: No

Credits
Code: Kan3, Captain Toenail
GLDefs: Kan3
Sounds: Kan3, Id Software, freesound.org
Sprites: Id Software, Nanami, Virtue, Captain Toenail
Sprite Edit: Kan3
Idea Base: War from Apocalypse (Psx game)

Description
Lord of weapons and warfare, it possesses a powerful
arsenal of destructive weapons, including: a massive minigun, two
rocket launchers on its shoulders, a cybernetic arm that can 
electrocute in a few hits and grab its victims from afar, plus,
it is equipped with a massive BFG!
If you're lucky enough to be able to deal some damage,
it will activate its force shield to reflect anything thrown at it.
It has a high amount health and it's fairly resistent to most weapons,
but, it seems that his meaty upper body is quite weak to poison...

Sprite
 

Download Link
War.zip
Last edit: 1 year 5 months ago by Kan3. Reason: Update

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

  • Gothic
  • Gothic's Avatar
  • Moderator
  • Moderator
More
1 year 6 months ago #2 by Gothic
Replied by Gothic on topic [SUBMISSION] War
The BFG charging sound doesn't play because of a typo, the name should be "weapons/bfgf".
The shield attack needs some work, I can think on 2 ways to improve it:
  • Give the shield a shorter lifetime (around 10 seconds) and let the monster be able to use it multiple times, currently the shield can be easily avoided because you can just go around it.
  • If you somehow can make the shield move with the monster, similar to the Brains enemy from Quake 2.

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

  • Kan3
  • Kan3's Avatar Topic Author
  • Chaingunner
  • Chaingunner
More
1 year 6 months ago - 1 year 6 months ago #3 by Kan3
Replied by Kan3 on topic [SUBMISSION] War
Completely missed the sound thing, thanks!

And I who have spent ton of time trying a way to make he spawn his shield once and then wait for it to be destroyed or expire to make he spawn another one x)
Its main purpose was to avoid players to safely sniper him from hidden spots, since he's a huge monster and cannot travel through most maps with ease, but I get it.
  • Reduced the shield lifetime to 15 secs.
  • Now he can have 2 shields at once.
  • Increased the normal pain chance to 8.
  • Fixed BFG charging sound.

About your second way, I tried to make it work for several hours with A_Warp (dunno if there are other "tricks" to be used), but apparently, with the shield that's composed of 32 actors, it's not practical at all to do it, cause I would have to call A_Warp from every single shield part to have the right coordinates, so having to make 32 separate actors.
This, of course, if I haven't missed something in how A_Warp works.
(I was thinking about trying to set variables for the monster position, then call them in the shield actor to make it warp with WARPF_ABSOLUTEPOSITION flag, but I don't know if this could work. If you happen to know something about this kind of stuff, could you help me in some way?)
Last edit: 1 year 6 months ago by Kan3.

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

  • CaptainToenail
  • CaptainToenail's Avatar
  • Wicked
  • Wicked
More
1 year 6 months ago #4 by CaptainToenail
Replied by CaptainToenail on topic [SUBMISSION] War
I like this sprite edit a lot - he looks a bit like a Gnaar from Serious Sam!

You could glue the shield to the monster by making the Shield Spawner follow its relative position with A_Warp as you say, but have the individual shield segments only last 1 or 2 tics. But then they would not be destroyable. The other option of course would be to have 32 separate shield actors as you suggested which would be totally annoying to implement.

Alternatively you could redo the shield into less, larger parts, which would be easier to manage. This is how I did it with the Augmented Barons in Dust Devil. You could even do things like have shield segments orbit around the monster which would be interesting!

The impact puffs on the shields are still green which does not match the blue shield.

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

  • Kan3
  • Kan3's Avatar Topic Author
  • Chaingunner
  • Chaingunner
More
1 year 6 months ago #5 by Kan3
Replied by Kan3 on topic [SUBMISSION] War
I was thinking about reducing the shield numbers too! I believe 8 could be a good compromise.
Yeah, the possibility of having orbiting stuff is really great, but I don't see it fit, I will see directly in game how it would look like perhaps.

Oh, missed the puff, thanks!
(and double thanks for the shield :D I love it)

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

  • Kan3
  • Kan3's Avatar Topic Author
  • Chaingunner
  • Chaingunner
More
1 year 6 months ago - 1 year 6 months ago #6 by Kan3
Replied by Kan3 on topic [SUBMISSION] War
Alright, following CaptainToenail advice, I've been able to properly have a "warping" shield!
So these are the changes now:
  • The shield is composed of 12 parts instead of 32
  • Shield parts are ~1.5 times bigger
  • Shield parts health increased to 80 from 60
  • Shield lifespan is still ~15 seconds
  • Fixed RHIT colors

I want to point out a couple of things though:
  • At first I couldn't make A_Warp to work properly without any reason, then I found out that apparently this function seems to "break" if called from a custom/non-Spawn state (?). I have a main class and several classes that inherits from that one, since the Spawn state was identical for everyone, I just made a new state where the shield calls for A_Warp (that needs to be called for every single class, due to different arguments being used), but all of those seemed to just completely ignore "their" warping arguments and just inherited them from the main class. This doesn't happen if instead of the custom state I use the Spawn state.
  • I had to remove ReactionTime and A_Countdown as the shield lifespan timer, cause it seems that using this feature "breaks" the health (?) of the shield, making it immediately break with any amount of damage received, I don't know if it is meant to be like this since the property and the function should normally be used together on non-shootable/projectiles.

EDIT: Dumb me that I forgot how states work in "inheritances"... I'll cut off the pointless code this evening.
Last edit: 1 year 6 months ago by Kan3.

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

  • Kan3
  • Kan3's Avatar Topic Author
  • Chaingunner
  • Chaingunner
More
1 year 6 months ago #7 by Kan3
Replied by Kan3 on topic [SUBMISSION] War
Here you go, cut 2kb of redundant code.
I also fixed a wrong hitbox offset of the shield, due to the scaling and I directly changed the palette translation on the shield sprites instead of using the translation property.

Download has been updated!

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

  • Gothic
  • Gothic's Avatar
  • Moderator
  • Moderator
More
1 year 5 months ago #8 by Gothic
Replied by Gothic on topic [SUBMISSION] War
Can you make it so the shield disappears if it's still active after the monster dies? Maybe using A_KillChildren, or something like that.

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

  • Kan3
  • Kan3's Avatar Topic Author
  • Chaingunner
  • Chaingunner
More
1 year 5 months ago #9 by Kan3
Replied by Kan3 on topic [SUBMISSION] War

Can you make it so the shield disappears if it's still active after the monster dies? Maybe using A_KillChildren, or something like that.
Yeah sure!
Done and link updated!

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

  • Gothic
  • Gothic's Avatar
  • Moderator
  • Moderator
More
1 year 5 months ago #10 by Gothic
Replied by Gothic on topic [SUBMISSION] War

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