# Design Guidelines for Microbiology Effects ## 1. Effects primarily concern objects, turfs, and reagents. **A microbiologist is not interested in enhancing the crew themselves: geneticists do that!** In general, microbial cultures should focus on enhancing or supplementing the equipment, machines, and structures of the station. Microbes also may act as a production agent for chemicals and gases. ## 2. Respect the balance of systems related to your effect. **Do not overlap mob effects with genetics.** Avoid effects that would be well-suited as a genetic mutation. ## 3. A conspicuous, nonharmful effect that acts on mobs is a 'tell'. **Infected players use tells to know that they are infected.** Tells should be unique and discernable from other systems. ## 4. Only effects under the 'malevolent' datum may cause harm. **Malevolent effects are reserved for nuclear operatives only.** Antag microbiologists cannot, by any means, obtain harmful effects to create a deathplague. Mass disease only works in fast-paced nukeop rounds. **Balance your effect so that infected players have ample time to recognize their illness and receive help.** Use this scenario: an injured player (50% to crit) receives an infection. Balance effects such that this injured player has at least 2-3 minutes before they are crit. **Effects that directly harm playability are forbidden.** Effects that disrupt player inputs or create false inputs (like a hellban) are not fun. **Effects with the sole purpose of harming player interaction are forbidden.** Effects that interfere significantly with speech or force players to isolate are bad design. ## 5. Transmission-enabling effects must include infect messages. **Players must be alerted if they have been exposed.** Communicating to players that transmission occurred is proper design. Transmission should not be obscured to players. --- ## 6. Avoid stacking ifs as much as possible. **Use early returns to filter out unwanted conditions.** ## 7. Use established string defines when applicable. **Repeated use of text is intentional, as it prevents direct memorization.** A microbiologist should not be able to identify effects by the may_react_to text alone. Effect identification should involve testimony, visual cues, and reagent tests. ## 8. Create new string defines when convenient. **String defines should be general enough to apply to different effects.** ## 9. Use the microbe's variables efficiently. **Duration and Probability should be the two main variables used in controlling the effect.** ``` if (src.probability >= 3) //conceptually equivalent to Stage 3+ if (src.duration < src.durationtotal/2) //During the first half of illness... if (prob(src.probability/2)) //Half the chance to act var/add_reagent_amount = src.probability //Reagent production varies with progression ``` ...and so on. ## 10. Write adequate documentation for your effect. **Provide a short description of how your act function works.** If auxillary functions are needed for your effect, provide documentation there.