Skip to content

The Monsters Return#7085

Open
dwasint wants to merge 39 commits into
Monkestation:mainfrom
dwasint:the-monsters
Open

The Monsters Return#7085
dwasint wants to merge 39 commits into
Monkestation:mainfrom
dwasint:the-monsters

Conversation

@dwasint

@dwasint dwasint commented Jul 6, 2026

Copy link
Copy Markdown

About The Pull Request

Why It's Good For The Game

Changelog

🆑
add: putrid
refactor: orcs and goblins now get their stats applied via their species meaning player controlled ones get stats
add: hell goblins explode
add: moon goblins know how to summon a brick
add; broodmother is now playable in game using the vessel system.
refactor: as per the species doc, adds orcs to the generic human body list, letting them wear clothes.
/:cl:

Pre-Merge Checklist

  • You tested this on a local server.
  • This code did not runtime during testing.
  • You documented all of your changes.

@dwasint dwasint requested a review from aberrantQuesrist as a code owner July 6, 2026 14:49
@github-actions github-actions Bot added Feature adds a new thing Sprites This affects the appearance of something in game. Such as an item or a wall. labels Jul 6, 2026
@github-actions github-actions Bot added the Mapping You changed a map file, thank you for your tiles. May require additional approval. label Jul 7, 2026
@github-actions github-actions Bot requested a review from MissyNym July 7, 2026 05:47
@github-actions github-actions Bot added the Code Maintenance Fixing this mess one line at a time label Jul 9, 2026
This was referenced Jul 9, 2026
Comment thread code/__DEFINES/quests.dm
#define HARLEQUINN_VESSEL_ID "Harlequinn"
#define HARLEQUINN_HUNT_REWARD 500

#define PUTRID_VESSEL_ID "Putrid"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make a folder for vessel defines

icon_state = "runner"
icon_living = "runner"
icon_dead = "runner_dead"
c

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
c

if(istype(Item, generator_type))
continue checking_items
Item.try_wrap_up("meat", "meatthings")
for(var/obj/item/Item in T.contents)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
for(var/obj/item/Item in T.contents)
for(var/obj/item/Item in T)

@@ -1,4 +1,4 @@
GLOBAL_LIST_INIT(vessel_ids, list(WHITELIST_AUTOMATON, HARLEQUINN_VESSEL_ID))
GLOBAL_LIST_INIT(vessel_ids, list(WHITELIST_AUTOMATON, HARLEQUINN_VESSEL_ID,BROODSPAWN_GOBLIN_VESSEL_ID,BROODSPAWN_TROLL_VESSEL_ID,BROODSPAWN_ORC_VESSEL_ID, BROODMOTHER_VESSEL_ID, PUTRID_VESSEL_ID))

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
GLOBAL_LIST_INIT(vessel_ids, list(WHITELIST_AUTOMATON, HARLEQUINN_VESSEL_ID,BROODSPAWN_GOBLIN_VESSEL_ID,BROODSPAWN_TROLL_VESSEL_ID,BROODSPAWN_ORC_VESSEL_ID, BROODMOTHER_VESSEL_ID, PUTRID_VESSEL_ID))
GLOBAL_LIST_INIT(vessel_ids, list(
WHITELIST_AUTOMATON,
HARLEQUINN_VESSEL_I,
BROODSPAWN_GOBLIN_VESSEL_ID,
BROODSPAWN_TROLL_VESSEL_ID,
BROODSPAWN_ORC_VESSEL_ID,
BROODMOTHER_VESSEL_ID,
PUTRID_VESSEL_ID,
))

Why does automaton not match

Comment on lines +167 to +174
/datum/pet_command/idle,
/datum/pet_command/free,
/datum/pet_command/follow,
/datum/pet_command/attack,
/datum/pet_command/protect_owner,
/datum/pet_command/aggressive,
/datum/pet_command/calm,
)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
/datum/pet_command/idle,
/datum/pet_command/free,
/datum/pet_command/follow,
/datum/pet_command/attack,
/datum/pet_command/protect_owner,
/datum/pet_command/aggressive,
/datum/pet_command/calm,
)
/datum/pet_command/idle,
/datum/pet_command/free,
/datum/pet_command/follow,
/datum/pet_command/attack,
/datum/pet_command/protect_owner,
/datum/pet_command/aggressive,
/datum/pet_command/calm,
)

Comment on lines +415 to +419
if(isliving(target))
addtimer(CALLBACK(target, TYPE_PROC_REF(/mob, fly_towards), "is yanked towards [caster] by the harpoon!", caster), pull_delay)

else
addtimer(CALLBACK(caster, TYPE_PROC_REF(/mob, fly_towards), "is yanked forward by the harpoon line!", target), pull_delay)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if(isliving(target))
addtimer(CALLBACK(target, TYPE_PROC_REF(/mob, fly_towards), "is yanked towards [caster] by the harpoon!", caster), pull_delay)
else
addtimer(CALLBACK(caster, TYPE_PROC_REF(/mob, fly_towards), "is yanked forward by the harpoon line!", target), pull_delay)
return
if(isliving(target))
addtimer(CALLBACK(target, TYPE_PROC_REF(/mob, fly_towards), "is yanked towards [caster] by the harpoon!", caster), pull_delay)
else
addtimer(CALLBACK(caster, TYPE_PROC_REF(/mob, fly_towards), "is yanked forward by the harpoon line!", target), pull_delay)

damage = 15
damage_type = BRUTE
speed = 1.6
var/mob/living/caster

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yummy gc fail

icon = 'icons/roguetown/mob/cabbit.dmi'
icon_state = "cabbit_remains"

/datum/action/cooldown/spell/harpoon_pull

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this not a projectile spell?

Comment on lines +460 to +467
/datum/pet_command/idle,
/datum/pet_command/free,
/datum/pet_command/follow,
/datum/pet_command/attack,
/datum/pet_command/protect_owner,
/datum/pet_command/aggressive,
/datum/pet_command/calm,
)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
/datum/pet_command/idle,
/datum/pet_command/free,
/datum/pet_command/follow,
/datum/pet_command/attack,
/datum/pet_command/protect_owner,
/datum/pet_command/aggressive,
/datum/pet_command/calm,
)
/datum/pet_command/idle,
/datum/pet_command/free,
/datum/pet_command/follow,
/datum/pet_command/attack,
/datum/pet_command/protect_owner,
/datum/pet_command/aggressive,
/datum/pet_command/calm,
)

var/in_water = istype(current_turf)

var/mob/living/target
if(ai_controller)

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't do anything unless the ai controller is present or it will force players to submerge + this should be an innate action so players can use it properly

@VanderlinMonarch VanderlinMonarch mentioned this pull request Jul 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Code Maintenance Fixing this mess one line at a time Feature adds a new thing Mapping You changed a map file, thank you for your tiles. May require additional approval. Sprites This affects the appearance of something in game. Such as an item or a wall.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants