[0.8.1 Beta 4] The Black Cats of Doom

Projects that alter game functions but do not include new maps belong here.
Forum rules
The Projects forums are only for projects. If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
User avatar
MartinHowe
Posts: 2030
Joined: Mon Aug 11, 2003 1:50 pm
Location: Waveney, United Kingdom

[0.8.1 Beta 4] The Black Cats of Doom

Post by MartinHowe »

At last, I feel the Black Cats of Doom are nearing completion and work with few noticeable bugs, so it's time to
create a project thread for them. They predate the current craze for companion mods by several years, but the
project they were made for is still on hiatus, though periodic work continues and updating the cats to ZScript
from an unholy mess of ACS and DECORATE was the motivation for the mod in its current form.

Text file Download

[imgur]https://i.imgur.com/grtklNg[/imgur]

Please file bug reports in this thread. Have fun and may Bastet be with You!
Last edited by MartinHowe on Sun Jul 24, 2022 3:56 am, edited 3 times in total.
User avatar
MartinHowe
Posts: 2030
Joined: Mon Aug 11, 2003 1:50 pm
Location: Waveney, United Kingdom

Re: [0.8.1 Beta 1] The Black Cats of Doom

Post by MartinHowe »

Minor update to 1.8.1.1:

Tablet now put into sleep mode when deselecting:
I always sleep my phone when putting it down, in case something gets pressed by mistake in my pocket.

Bible hands now drawn as overlays:
This allows future support for non-Doom games, provided hand sprites were created.

Of course, supporting other games is messy; coding isn't too hard, but the sprites for Heretic and HeXen hands, even in the master hands sheet, are far less comprehensive than those for Doom. Also, in medieval games, the tablet would have to be replaced by a magic 'Scroll of Translation' or similar.

Long-term I have plans to commission sprites, but since Nash is on hiatus as a Spriter for Hire and NMN doesn't offer that service any more, it will have to wait.

Something like this:
[imgur]https://i.imgur.com/FcqSWJM[/imgur]
User avatar
MartinHowe
Posts: 2030
Joined: Mon Aug 11, 2003 1:50 pm
Location: Waveney, United Kingdom

Re: [0.8.1 Beta 1] The Black Cats of Doom

Post by MartinHowe »

Wish your cats would follow you to Hell and back? Now they can :p

Cats spawned by you with the magic items included in the mod, including the meow cheat, will follow you 'by
etheral travel' to the next level. Provided their FriendPlayer field hasn't been modified, any such cats left alive
at the end of the level will do this; it is controllable via two new flags (see below).

This feature is still under development and as yet only applies to a destructive level end; I haven't tested cats
left in a hub level yet; they should be waiting for you when you get back, but I need to test this fully. It works by
the cat's OnDestroy() method notifying a static thinker and an special inventory item being placed with each
player; essentially each cat is a 'clone' of the one it supposedly is, but this isn't obvious in game. So far the
copied properties are runtime class, start health, current health and player friend. Text file Download

[imgur]https://i.imgur.com/HFIdiMW[/imgur]

[imgur]https://i.imgur.com/A5EUpra[/imgur]

Code: Select all

BLACK CAT ACTOR FLAG: FollowPlayerToLevels (default: OFF)
Try to follow the player across level changes (i.e., via teleport pads).

BLACK CAT ACTOR FLAG: SpawnWithTeleportFog (default: OFF)
Spawn a teleport fog actor around this instance when spawning, and delay
any further actions until the teleport fog sound has completed; also be
invulnerable during the waiting time (like the Afrits in HeXen). This flag
is primarily meant to be used on a per-instance basis for special effects.
User avatar
MartinHowe
Posts: 2030
Joined: Mon Aug 11, 2003 1:50 pm
Location: Waveney, United Kingdom

Re: [0.8.1 Beta 1] The Black Cats of Doom

Post by MartinHowe »

No new screenshots, but fixed crash in thinker management and cats following player now works correctly with hubs. Text file Download

Code: Select all

BLACK CAT ACTOR FLAG: FollowPlayerToMap (default: OFF)
Try to follow the player across level changes (i.e., via teleport pads),
but only from non-hub levels (i.e., regular maps that cannot be reentered).

BLACK CAT ACTOR FLAG: FollowPlayerInHub (default: OFF)
Try to follow the player across level changes (i.e., via teleport pads),
but only between hub maps and even then, only within the hub the cat was
created in; on leaving that hub, the cat is gone for good; if that hub is
later reentered, the cat will no longer be there (just like everything else
that was previously created in the hub; leaving any hub resets its maps).

BLACK CAT ACTOR FLAG: FollowPlayerToHub (default: OFF)
Try to follow the player across level changes (i.e., via teleport pads),
but only between hub maps, but including between hubs; on leaving a hub,
the cat will follow the player to the next hub, unless ending the game.

If FollowPlayerToHub is set, the FollowPlayerInHub flag is treated as
UNDEFINED and is IGNORED; unless you intend the value therein to be used if
this flag is ever cleared, it is best practice to set FollowPlayerInHub to
false when FollowPlayerToHub is true.

BLACK CAT ACTOR FLAG: SpawnWithTeleportFog (default: OFF)
Spawn a teleport fog actor around this instance when spawning, and delay
any further actions until the teleport fog sound has completed; also be
invulnerable during the waiting time (like the Afrits in HeXen). This flag
is primarily meant to be used on a per-instance basis for special effects.
User avatar
Siorus
Posts: 9
Joined: Mon Jun 15, 2020 2:07 am
Preferred Pronouns: He/Him
Operating System Version (Optional): Windows 10
Graphics Processor: nVidia with Vulkan support
Location: North Spain

Re: [0.8.1 Beta 1] The Black Cats of Doom

Post by Siorus »

I cannot fathom this mod hasn't even an answer. This is what I've been looking for a long while! Dog companions? Nah. I wanted kitties!
User avatar
MartinHowe
Posts: 2030
Joined: Mon Aug 11, 2003 1:50 pm
Location: Waveney, United Kingdom

Re: [0.8.1 Beta 1] The Black Cats of Doom

Post by MartinHowe »

Siorus wrote:I cannot fathom this mod hasn't even an answer. This is what I've been looking for a long while! Dog companions? Nah. I wanted kitties!
Thanks. Well, a few people have liked it on DoomWorld and one person here said they would like to play it.
I guess people are waiting for a proper release, but I need to test it fully.

"Greetings, Demons; are you ready to die? My kittens can smell your blood!"
[imgur]https://i.imgur.com/IFOnua4[/imgur]

They certainly like the taste of freshly killed Ettin, that's for sure :) I bet Korax hates cats :p
[imgur]https://i.imgur.com/G9DUFEs[/imgur]

Actually, they're vicious little sods and they are small enough to get into alcoves the player can't;
in an earlier test run I let four of them loose in MAP01 of HeXen and by the time I got into the bit
with the stalactites, there wasn't a firedemon or ettin left to fight - the crazy cats had killed the lot!
User avatar
MartinHowe
Posts: 2030
Joined: Mon Aug 11, 2003 1:50 pm
Location: Waveney, United Kingdom

Re: [0.8.2 Beta 2] The Black Cats of Doom

Post by MartinHowe »

Minor update. Fully-eaten player corpses are not replaced with gibs; this caused a VM abort because the death camera doesn't know what to look from. Links in OP updated.

This mod isn't dead, but I won't feel confident of a release candidate until the strafing in confined spaces bug is fixed and, sadly, that one will likely take several weeks; pathological case bugs typically are the hardest to solve and not only is RL really difficult right now, I work full time as well.
User avatar
MartinHowe
Posts: 2030
Joined: Mon Aug 11, 2003 1:50 pm
Location: Waveney, United Kingdom

Re: [0.8.1 Beta 3] The Black Cats of Doom

Post by MartinHowe »

Minor update and some good news.

Now that we have a PreTravelled virtual function for players and inventory items, the code for the cats following players around has been much simplified. Download links in the first post have been updated.

Regarding the cats running around in circles in confined spaces and appearing to attack enemies through solid walls, I now know the basic reason for it happening. Real Life had prevented me from having time to track down the cause of this issue, which was the only thing blocking a release candidate. So while I won't be able to just go in and fix it, as some of that RL is still in effect, I know where to start work. Some light at the end of a tunnel then.
User avatar
MartinHowe
Posts: 2030
Joined: Mon Aug 11, 2003 1:50 pm
Location: Waveney, United Kingdom

Re: [0.8.1 Beta 4] The Black Cats of Doom

Post by MartinHowe »

Adding the data for cats following the player is now done by an event handler when each player is spawned. This is more efficient that conditionally adding a BlackCatsToken to each player's inventory by every cat that is created, especially if a lot of cats are being spawned. Version requirement bumped up to GZDoom 4.7.1, as that is when the PreTravelled() virtual function was added to players and inventory items. Links in OP updated.

Return to “Gameplay Mods”