Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.
Sign upZom-animals #6801
Conversation
Lain-
added some commits
Mar 19, 2014
Lain-
changed the title
Zom-animals
[WIP]Zom-animals
Mar 20, 2014
This comment has been minimized.
This comment has been minimized.
|
Gonna point out that the zombear spawns kick in as normal bear spawns drop off. You'll need to ensure that your zombie-critters do the same. (That was one thing we missed with the zoose.) |
This comment has been minimized.
This comment has been minimized.
|
Oh so that's what the "start" and "end" mean, am I right? |
This comment has been minimized.
This comment has been minimized.
That's my understanding and they're in hours from game start, IIRC. So over the first week, spawns fall offf and are replaced with zed-spawns. |
Lain-
added some commits
Mar 20, 2014
Lain-
changed the title
[WIP]Zom-animals
Zom-animals
Mar 20, 2014
Lain-
added some commits
Mar 20, 2014
This comment has been minimized.
This comment has been minimized.
|
Silly question, what we will eat when every specie will end in Z form? I also hope all Z animals share common spawn pool, interruptions are annoying as it is already. |
Rivet-the-Zombie
reviewed
Mar 20, 2014
| @@ -137,6 +137,7 @@ void MonsterGenerator::init_death() | |||
|
|
|||
| /* Currently Unimplemented */ | |||
| //death_map["SHRIEK"] = &mdeath::shriek;// Screams loudly | |||
| //death_map["HOWL"] = &mdeath::shriek;// Wolf's howling | |||
This comment has been minimized.
This comment has been minimized.
Rivet-the-Zombie
Mar 20, 2014
Member
Looks like you got the howl action and the shriek action crossed here.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
@Robik81 Well then you gotta find another food source >:) |
This comment has been minimized.
This comment has been minimized.
|
eyes shining oh wow, more zed animals! |
illi-kun
reviewed
Mar 20, 2014
| @@ -87,6 +87,17 @@ void mattack::shriek(monster *z) | |||
| g->sound(z->posx(), z->posy(), 50, _("a terrible shriek!")); | |||
| } | |||
|
|
|||
| void mattack::howl(monster *z) | |||
| { | |||
| int j; | |||
This comment has been minimized.
This comment has been minimized.
illi-kun
reviewed
Mar 20, 2014
| void mattack::howl(monster *z) | ||
| { | ||
| int j; | ||
| if (rl_dist(z->posx(), z->posy(), g->u.posx, g->u.posy) > 4 || |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
I'm inclined to leave it as it is, partly because my own shortcoming in coding, and also because that code was copied directly from above so I'm unsure whether I should mess with the legacy stuff. |
This comment has been minimized.
This comment has been minimized.
|
I wonder, why "zomwolf" and "zomcougar", when "zolf" and "zougar" are just as good? The "zombear" is called that because of the "zombe" part. By that logic though, we should probably add a "zombeaver". :P |
This comment has been minimized.
This comment has been minimized.
|
Zolf if ok though "zougar" sounds weird IMO. I think "Zombear" in this case is the rule, not exception so that's why I follow the "zom+animal name" scheme. |
This comment has been minimized.
This comment has been minimized.
|
There's no direct-quote function, annoyingly enough. @Rivet-the-Zombie clued me in to Git's using the right-arrow (default "go down" in DDA) to quote. Just stick it before the text you want to quote, and double-return after.
And you get that. As for your questions, during the period between Winter and the 90th day, you're looking at 4 ways to spawn bears (mostly at night) and 3 shots to get zombears. However, Bears don't show up in winter (the whole hibernation thing) and they're much more likely to show up at night. Zombears are the most involved of the replacements; bear in mind that not all players are male, and I don't think giant insects became inedible. Ka'lol hunted giant spiders when I was last playing. |
This comment has been minimized.
This comment has been minimized.
|
Thanks. Nothing against eating insect, but I would still prefer to have more options than setting the camp near anthill. Or end up on vegie. |
Lain-
added some commits
Mar 21, 2014
This comment has been minimized.
This comment has been minimized.
|
More tweaks, namely the name change (zolf & zougar) and the [FAT] flag for zoose ('cause moose has this too). Unless anything come up, this should be ready to go. |
This comment has been minimized.
This comment has been minimized.
|
Gonna object to the FAT tag on a zombie critter. Probably rancid or otherwise not useful. (Zombears don't have FAT, but bears do.) |
This comment has been minimized.
This comment has been minimized.
|
That's make sense, yea gonna do that. |
This comment has been minimized.
This comment has been minimized.
|
I'm not sure when all the frequency changes happened and don't have a lot of time ATM, but that got an eyebrow-raise. Apart from those I'd think this would be ready to go. |
This comment has been minimized.
This comment has been minimized.
|
Frequencies for both animals and their zombie variants seem funky: 60% of bear population are left unaccounted for. Same applies to both moose and cougar. Not certain of intention, but spawn conditions for moose and cougar seem to be messed up. |
This comment has been minimized.
This comment has been minimized.
|
@KA101 The frequency change was to account for the zombified variants, especially the zombear frequency was reduced because now there are more zom-animal roaming around so the player has to deal with more threat. |
This comment has been minimized.
This comment has been minimized.
|
@RadaRadaRada The moose and cougar spawn was extended so that they can gradually be replaced by the zombified variant, not instantly vanish over night. |
RadaRadaRada
reviewed
Mar 23, 2014
| @@ -17,15 +17,25 @@ | |||
| { "monster" : "mon_bear", "freq" : 1, "cost_multiplier" : 10, "ends" : 2160, "conditions" : ["SPRING", "SUMMER", "AUTUMN"] }, | |||
| { "monster" : "mon_bear", "freq" : 3, "cost_multiplier" : 10, "ends" : 2160, "conditions" : ["NIGHT", "SPRING", "SUMMER", "AUTUMN"] }, | |||
|
|
|||
This comment has been minimized.
This comment has been minimized.
RadaRadaRada
Mar 23, 2014
Contributor
Total frequency of mon_bear spawns is 20 (This translates as a 2% chance as spawning). As time goes on the frequency falls like this 20/16/12/8/4. Now, the mon_zombear frequency scheme is 0/1/2/3/4. Only 4 points of mon_bear population are accounted for (and "replaced" with) zombified versions of them. So, 12 frequency points of mon_bear population are "lost". If this was an oversight and not an intentional design choice, one should redo whole mon_bear block to accommodate population leak:
{ "monster" : "mon_bear", "freq" : 4, "cost_multiplier" : 10, "conditions" : ["SPRING", "SUMMER", "AUTUMN"] },
{ "monster" : "mon_bear", "freq" : 12, "cost_multiplier" : 10, "conditions" : ["NIGHT", "SPRING", "SUMMER", "AUTUMN"] },
{ "monster" : "mon_bear", "freq" : 1, "cost_multiplier" : 10, "ends" : 72, "conditions" : ["SPRING", "SUMMER", "AUTUMN"] },
{ "monster" : "mon_bear", "freq" : 1, "cost_multiplier" : 10, "ends" : 168, "conditions" : ["NIGHT", "SPRING", "SUMMER", "AUTUMN"] },
{ "monster" : "mon_bear", "freq" : 1, "cost_multiplier" : 10, "ends" : 672, "conditions" : ["SPRING", "SUMMER", "AUTUMN"] },
{ "monster" : "mon_bear", "freq" : 1, "cost_multiplier" : 10, "ends" : 2160, "conditions" : ["SPRING", "SUMMER", "AUTUMN"] },
This comment has been minimized.
This comment has been minimized.
KA101
Mar 23, 2014
Contributor
RadaRadaRada's right, you're taking a net loss of bears there. I'd much prefer to see a straight conversion. If you're arguing that some bears die such that the goo can't rez 'em, that should be 1-2 points of frequency at most: that's "blown apart by land mine or shotgun trap" level of damage.
(Player (non-)actions should be separate code, in case anyone's thinking "excessively hunted by the player". For starters, butchering an animal guarantees it won't rez, so hunting kills should count against zom-critter growth too.)
RadaRadaRada
reviewed
Mar 23, 2014
| { "monster" : "mon_zombear", "freq" : 1, "cost_multiplier" : 10, "starts" : 72 }, | ||
| { "monster" : "mon_zombear", "freq" : 1, "cost_multiplier" : 10, "starts" : 168 }, | ||
| { "monster" : "mon_zombear", "freq" : 1, "cost_multiplier" : 10, "starts" : 672 }, | ||
| { "monster" : "mon_zombear", "freq" : 1, "cost_multiplier" : 10, "starts" : 2160 }, | ||
|
|
This comment has been minimized.
This comment has been minimized.
RadaRadaRada
Mar 23, 2014
Contributor
For the sake of convenience, readability and general cleanliness, I would suggest to transfer zombie moose, wolf and cougar data blocks right beneath their respective animal/population data blocks: mon_zoose block would go under mon_moose and mon_zomcougar would go right under mon_cougar entry.
Edit.: consider moving zombie wolf data block right beneath dog zombie data block. They draw their populations from all of the canines (including mon_wolf), so you would need to just slice some frequency from mon_dog_zombie spawns. Take note how much frequency mon_wolf loses as the time goes on. Conform to or re-balance rates at your discretion.
RadaRadaRada
reviewed
Mar 23, 2014
| { "monster" : "mon_moose", "freq" : 1, "cost_multiplier" : 3, "ends" : 672 }, | ||
| { "monster" : "mon_moose", "freq" : 2, "cost_multiplier" : 3, "ends" : 2160, "conditions" : ["DAY"] }, | ||
| { "monster" : "mon_moose", "freq" : 1, "cost_multiplier" : 3 }, | ||
| { "monster" : "mon_moose", "freq" : 2, "cost_multiplier" : 3, "conditions" : ["DAY"] }, | ||
|
|
This comment has been minimized.
This comment has been minimized.
RadaRadaRada
Mar 23, 2014
Contributor
Funky spawn conditions. Format this for sake of readability. Try to keep day/night spawn rations in mind, then dispersing frequencies through out the time.
{ "monster" : "mon_moose", "freq" : 1, "cost_multiplier" : 3 },
{ "monster" : "mon_moose", "freq" : 2, "cost_multiplier" : 3, "conditions" : ["DAY"] },
{ "monster" : "mon_moose", "freq" : 1, "cost_multiplier" : 3, "ends" : 72 },
{ "monster" : "mon_moose", "freq" : 2, "cost_multiplier" : 3, "ends" : 72, "conditions" : ["DAY"] },
{ "monster" : "mon_moose", "freq" : 1, "cost_multiplier" : 3, "ends" : 168 },
{ "monster" : "mon_moose", "freq" : 2, "cost_multiplier" : 3, "ends" : 168, "conditions" : ["DAY"] },
{ "monster" : "mon_moose", "freq" : 1, "cost_multiplier" : 3, "ends" : 672 },
{ "monster" : "mon_moose", "freq" : 2, "cost_multiplier" : 3, "ends" : 672, "conditions" : ["DAY"] },
{ "monster" : "mon_moose", "freq" : 1, "cost_multiplier" : 3, "ends" : 2160 },
{ "monster" : "mon_moose", "freq" : 2, "cost_multiplier" : 3, "ends" : 2160, "conditions" : ["DAY"] },
RadaRadaRada
reviewed
Mar 23, 2014
| { "monster" : "mon_cougar", "freq" : 2, "cost_multiplier" : 2, "ends" : 168}, | ||
| { "monster" : "mon_cougar", "freq" : 5, "cost_multiplier" : 2, "ends" : 168, "conditions" : ["DAWN", "DUSK"] }, | ||
| { "monster" : "mon_cougar", "freq" : 3, "cost_multiplier" : 2}, | ||
| { "monster" : "mon_cougar", "freq" : 5, "cost_multiplier" : 2, "conditions" : ["DAWN", "DUSK"] }, | ||
|
|
This comment has been minimized.
This comment has been minimized.
RadaRadaRada
Mar 23, 2014
Contributor
Funky spawn conditions. Format this for sake of readability. Try to keep day/night spawn rations in mind, then dispersing frequencies through out the time.
{ "monster" : "mon_cougar", "freq" : 1, "cost_multiplier" : 3 },
{ "monster" : "mon_cougar", "freq" : 2, "cost_multiplier" : 3, "conditions" : ["DAWN", "DUSK"] },
{ "monster" : "mon_cougar", "freq" : 1, "cost_multiplier" : 3, "ends" : 72 },
{ "monster" : "mon_cougar", "freq" : 2, "cost_multiplier" : 3, "ends" : 72, "conditions" : ["DAWN", "DUSK"] },
{ "monster" : "mon_cougar", "freq" : 1, "cost_multiplier" : 3, "ends" : 168 },
{ "monster" : "mon_cougar", "freq" : 2, "cost_multiplier" : 3, "ends" : 168, "conditions" : ["DAWN", "DUSK"] },
{ "monster" : "mon_cougar", "freq" : 1, "cost_multiplier" : 3, "ends" : 672 },
{ "monster" : "mon_cougar", "freq" : 2, "cost_multiplier" : 3, "ends" : 672, "conditions" : ["DAWN", "DUSK"] },
{ "monster" : "mon_cougar", "freq" : 1, "cost_multiplier" : 3, "ends" : 2160 },
{ "monster" : "mon_cougar", "freq" : 2, "cost_multiplier" : 3, "ends" : 2160, "conditions" : ["DAWN", "DUSK"] },
This comment has been minimized.
This comment has been minimized.
|
Yeah I see what you are getting at. I'll take a look into it when I have some time to spare. |
Lain-
added some commits
Mar 24, 2014
KA101
self-assigned this
Mar 26, 2014
KA101
reviewed
Mar 26, 2014
| "id" : "mon_zolf", | ||
| "name": "zolf", | ||
| "species":"ZOMBIE", | ||
| "symbol":"d", |
This comment has been minimized.
This comment has been minimized.
KA101
reviewed
Mar 26, 2014
| "special_freq":0, | ||
| "death_function":"NORMAL", | ||
| "special_attack":"LEAP", | ||
| "description":"An otherwise normal-looking cougar, except that its hind legs are swollen and its eyes bulged with black goo.", |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
Just some stye points left, and I can fix those in the merge if need be. |
Lain- commentedMar 20, 2014
So I hear the zoose was added? This PR add two new zom-animals: Zomwolf and Zomcougar
Zomwolf spawns in pack and will howl to alert other zombies (most likely other zom-animals), similar to the shrieker zombie but with smaller volume.
Zomcougar will leap around like their living counterpart (and better at combat too).
I also added the relevant entries about new monsters to mtype.h and tile_id_data.h (as instructed in the doc) for tile.