User:Novaepee/sandbox: Difference between revisions

From tgwiki2
Jump to navigation Jump to search
imported>Novaepee
imported>Novaepee
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
Sandbox time
Sandbox time
Nice!
Guide to contributing made by Bravemole.


{{TGMC}}
{{TGMC}}


{{Speech
{{XenoPageHeader
|name=The New "Coder"
|headerbgcolor = black
|text=Hey, I want to put in this feature that will revolutionized the game! So where do I start?
|headerfontcolor = white
|image=[[File:Generic_assistant2.png|64px|right]]
|xenotype = Ranged-Support
|imagebgcolor = lightgrey
|img = TGMC_Dragon.png
|xenotitle = Dragon
|difficulty = Hard
|superior = [[TGMC:Queen|The Queen]] and [[TGMC:Shrike|Shrike]]
|duties = Lit up marines with FIRE AND PAIN from the SKY!
|guides = no separate guides
|quote = "I am fire! I am... death!  So tell me, marine, how do you choose to die?"
}}
}}
<br>
=The Dragon=
i like fire


You poor, poor soul.
==Playing the Dragon==
i burn people


Let’s get you on your way to contributing. This isn’t the guide for hardcore coders. This is for the guy who just wants a thing tweaked. If you’re really into making big feature changes, talk in the #Dev-General channel and get the people there to help you.
=Maturity Statistics and Evolution Paths=
The Praetorian is a Tier 3 and cannot evolve further.


=Prerequisite=
Maturity increases stats as follows.
* Slash is the melee damage when the xenomorph is in harm intent and slashing marine. In the code, it's melee_damage.
* Melee, bullet, laser, energy, bomb, bio, rad, fire, and acid are soft armor values, not hard armor, which means that they reduce damage by a percentage rather than a flat value.


* A GitHub account (https://github.com/)
{| class="wikitable" || style="text-align: center; border:2px solid #cc6600;"
* Visual studio code ( https://code.visualstudio.com/ )
|-
* Git (https://git-scm.com/book/en/v2/Getting-Started-Installing-Git)
|style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Age</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Health</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Plasma</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Slash [[File:Intent_Harm.png|link=https://tgstation13.org/wiki/File:Intent_Harm.png]]</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Melee</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Bullet</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Laser</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Energy</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Bomb</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Bio</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" |<b>Fire</b> || style="background:#312d43; color: white; border:2px solid #cc6600; padding: 10px;" | <b>Acid</b>
* Dream maker (already installed if you have BYOND)
|- style="border:2px solid #cc6600;"
* Coder socks (https://www.scientificworldinfo.com/2021/11/know-all-about-programmer-socks.html)
|style="background:#312d43; color: white; border:2px solid #cc6600; padding: 5px;" | <b>Young</b>
*<s>A BLOOD CONTRACT TO SELL YOUR SOUL</s>
| <!--HP--> 290 || <!--Plasma--> 800 || <!--Slash--> 20
| <!--Melee--> 30 || <!--Bullet--> 35 || <!--Laser--> 35 || <!--Energy--> 35
| <!--Bomb--> 0 || <!--Bio--> 28 || <!--Fire-->35 || <!--Acid--> 28
|- style="border:2px solid #cc6600;"
|style="background:#312d43; color: white; border:2px solid #cc6600; padding: 5px;" | <div style="vertical-align:middle; text-align:left">[[File:Maturity1_scaled.png]]<b>Mature</b></div>
| <!--HP--> 320 || <!--Plasma--> 900 || <!--Slash--> 20
| <!--Melee--> 35 || <!--Bullet--> 40 || <!--Laser--> 40 || <!--Energy--> 40
| <!--Bomb--> 0 || <!--Bio--> 33 || <!--Fire-->40 || <!--Acid--> 33
|- style="border:2px solid #cc6600;"
|style="background:#312d43; color: white; border:2px solid #cc6600; padding: 5px;" | <div style="vertical-align:middle; text-align:left">[[File:Maturity2_scaled.png]]<b>Elder</b></div>
| <!--HP--> 340 || <!--Plasma--> 1000 || <!--Slash--> 23
| <!--Melee--> 40 || <!--Bullet--> 45 || <!--Laser--> 45 || <!--Energy--> 45
| <!--Bomb--> 0 || <!--Bio--> 35 || <!--Fire-->45 || <!--Acid--> 35
|- style="border:2px solid #cc6600;"
|style="background:#312d43; color: white; border:2px solid #cc6600; padding: 5px;" | <div style="vertical-align:middle; text-align:left">[[File:Maturity3_scaled.png]]<b>Ancient</b></div>
| <!--HP--> 360 || <!--Plasma--> 1000 || <!--Slash--> 23
| <!--Melee--> 45 || <!--Bullet--> 50 || <!--Laser--> 50 || <!--Energy--> 50
| <!--Bomb--> 40 || <!--Bio--> 38 || <!--Fire-->50 || <!--Acid--> 38
|}


=Your own TGMC fork=
=Dragon Abilities=


Once you are connected on github, go to https://github.com/tgstation/TerraGov-Marine-Corps and click on fork.
{{XenomorphAbilityTable
 
|List=
[[File:TGMC_bravemole_contributing_guidePicture1.png|center]]
{{ToggleBumpAttacks}}
 
{{Rest}}
This will give you your own copy of the TGMC code, where you test your stuff without interfering with the common repository.
{{PsyDrain}}
 
{{CorrosiveAcid}}
=Cloning the code=
{{EmitPheromones}}
 
{{XenoSpit}}
Go to your repositories in GitHub and click on TGMC.
{{PraeSpray}}
 
}}
[[File:TGMC_bravemole_contributing_guidePicture2.png|center]]
 
You want to copy the HTTPS address of your fork, so click on code, then HTTPS and copy the link.
 
[[File:TGMC_bravemole_contributing_guidePicture3.png|center]]
 
That’s everything we needed to do on the GitHub side, let’s switch to VSC (Visual studio code).
 
This should be the starting window on VSC, click on clone git repository, paste the repo link on the command line that appeared, and press enter.
 
[[File:TGMC_bravemole_contributing_guidePicture4.png|center]]
It will ask you where to save the cloned files, so choose whatever folder you want (like My documents, or whatever).
 
If for some reason you don’t have clone git repo in the start menu, you need to open a new terminal, and type git clone the_url like so:
 
[[File:TGMC_bravemole_contributing_guidePicture5.png|center]]
 
The files will be saved in C:\user\bsouchu in this exemple.
 
After the cloning, click on open folder and find where the files were saved.
 
[[File:TGMC_bravemole_contributing_guidePicture6.png|center]]
 
=Needed extensions=
 
Now that you have access to your private version of the code, you need some VSC extensions to be able work on the code properly.
 
So, go to extensions, then type @recommended in the search bar, and install everything there (Note: the list might change).
 
[[center]]
 
Reboot your VSC so all the changes are considered.
 
=Adding the public remote=
 
A remote is a git repository. In VSC, you want to have access to your private fork (which we will name here '''origin''') to make changes to your version to the code, but also have access to the common public repo (the '''upstream''') so you can pull the latest version of the code (AKA, always have the updated version).
 
Go to source control, remote, this should look like this:
[[center]]
 
And we want to add the upstream remote:
[[center]]
 
[[center]]
 
You now have access to the public repo, let’s get the master branch from it (use the right click on master, chose switch to branch):
 
[[center]]
And name it master upstream.
 
[[center]]
 
This should look like something like this, click on the star to make it your preferred branch so it’s always at the top:
 
[[center]]
 
You then want to delete your master branch that is coming from origin (Never ever use this master, you ONLY need the master from upstream).
 
So right click on master, Delete Branch.
 
Rename your master_upstream to master, right click on master upstream, rename Branch.
 
=Making modification to the code=
 
You first want to make modification on the latest version of the code; having an outdated code means you’re surely have merge conflicts as soon as your PR is opened, which is pain.
 
You want to fetch (ask what the updates are) on the master branch (this is the upstream one, so it will directly fetch the latest server code version).
 
[[center]]
 
If your master version is out of date, the branch will change color. You now must pull to apply those new changes to your master (In this example, the master branch is 3 commits behind upstream master).
 
[[center]]
'''Never make changes to the master branch'''
 
Every time you want to make a modification to the code, you must first make a new branch.
 
[[center]]
 
Make sure you are making a branch from master, if you are not, click on the arrow pointing to the left to chose which branch to branch out.
 
[[center]]
Name your branch, press enter.
 
[[center]]
 
Create branch and switch on it.
 
Switching to a branch means your modification will apply to this branch and not the others. You can always switch to another branch by right clicking on it in the branch menu.
 
[[center]]
 
You can now make changes to the code!
 
Let’s say I want to make the tp44 fire with a 2 second delay (nerfing the revolver is a tradition on TGMC). Let’s go to revolvers.dm (Use the shortcut CTRL-e, then type revolver, then chose the guns/revolvers.dm one.)
 
Do your changes and hit CTRL-s to save the file.
 
=Testing your code=
 
You can now test your modifications. That is very easy, you just need to hit F5! (or got to run and debug and click this button).
 
[[center]]
This will compile (the first compilation takes some time) and automatically launch the game; you’ll be able to join/observe with full access to admin/host powers.
 
With VSC come a very powerful debugger which allows access to all variables of the call stack (if you don’t understand those terms, that’s fine). Just keep in mind that if the game '''freezes''', it’s not a crash; it’s a runtime, AKA an error/exception. To resume the game from such a freeze, you must  go back to VSC and use the control panel.
 
Hit the resume button (not present on this screenshot).
 
[[center]]
 
Once you are happy with your tests, it’s time to make the PR.
 
=Committing, publishing, and making a pull request=
 
You’ll notice a blue 1 on source control, this means that you have a changed file that was not committed to the branch (A commit is like a snapshot of your code in a branch at a given moment, you can go back and forth between commits like you can go back and forth between branches).
 
[[center]]
 
Type a sensible commit message and commit your changes: 
 
[[center]]
 
Note that it is a very good habit to commit every time you made a consequent change. If your PR is adding 3 features, it’s maybe a good idea to have 3 commits. That way, if your 2 first features are working but the third is breaking everything, you can go back to a version where at least 2 features are working.
 
After that, you want to publish your branch (aka, put your branch on the internet).
 
[[center]]
 
And push on origin.
You can now go to https://github.com/tgstation/TerraGov-Marine-Corps/pulls and make a PR (pull request)
 
[[center]]
Fill out the pull request form, don’t forget to have a proper changelog:
[[center]]
 
Hit pull request, and voilà! You’re done.
 
[[center]]
It will also appear in the #github channel on discord:
 
[[center]]
The github server is now making some test on your code:
 
[[center]]
If something is red, click on it to look at what the error is.
 
=Push modifications to a pull request=
 
Maintainers will now be able to review your pull request. Be patient, this make takes a while, a pinging them will not result in a faster review.
 
If your PR has review requests, or if you just want to make changes to it, you just need to make new commits and push them.


[[center]]
=Dragon Evolution=
Once the hive has enough psychic points, your queen has the option to unlock powerful primordial evolutions for each strain. Primordial evolutions grant additional abilities for the relevant class.
<br>
For the XENOMORPH, this primordial ability is '''Acid Dash'''.
{| class="wikitable"
|-
! scope="col" style="background:#312d43; color: white; border:3px solid #cc6600" | Ability !! scope="col" style="background:#312d43; color: white; border:3px solid #cc6600" | Description !! scope="col" style="background:#312d43; color: white; border:3px solid #cc6600" | Plasma Cost !! scope="col" style="background:#312d43; color: white; border:3px solid #cc6600" | Cooldown
|-
! scope="row" style="background:#312d43; color: white; border:3px solid #cc6600"|[[File:Xeno_Charge.png|64px]]<br>Acid Dash || style="background:#312d43; color: white; border:3px solid #cc6600" |Instantly dash up to 5 tiles, ignoring small strucures like tables and spraying acid in your path. Marines in your path are knocked down. For '''2 seconds''' after the initial cast, you can recast the ability without cooldown for an additional, acid-less charge. ||style="background:#312d43; color: white; border:3px solid #cc6600"| 250 || style="background:#312d43; color: white; border:3px solid #cc6600"|30
|}


[[center]]
=Tips & Tricks=
*In the absence of the [[TGMC:Queen|Queen]], you will often be looked at as a central point of combat due to your powerful pheromones. Make sure you're supporting your other Xenomorphs and paying attention to the battle.
*You can help an assault succeed, or even influence a push to begin, with a well-placed acid spray that drives marines back from barricades or catches some out, wounding them or cutting them off from support.
*Praetorians also rival [[TGMC:Spitter|Spitters]] in their harassment ability, so make sure you're constantly spitting neuro or acid when you're not spraying or fighting.
*Your acid spray can peek through the corners of cades, given that there isn't anything blocking.
<br>
{{TGMC-Jobs}}

Latest revision as of 01:34, 3 February 2023

Sandbox time

This page is a part of the TGMC wiki.

TGMC is a project based on the CM-SS13 codebase.


UNDEFINED XENO

Dragon

Difficulty: Hard
Rank: Hatchling (Starting), Young (10hrs), Mature (25hrs), Elder (70 hrs), Ancient (175 hrs)
Duties: Lit up marines with FIRE AND PAIN from the SKY!
Guides: no separate guides
Quote: "I am fire! I am... death! So tell me, marine, how do you choose to die?"


The Dragon

i like fire

Playing the Dragon

i burn people

Maturity Statistics and Evolution Paths

The Praetorian is a Tier 3 and cannot evolve further.

Maturity increases stats as follows.

  • Slash is the melee damage when the xenomorph is in harm intent and slashing marine. In the code, it's melee_damage.
  • Melee, bullet, laser, energy, bomb, bio, rad, fire, and acid are soft armor values, not hard armor, which means that they reduce damage by a percentage rather than a flat value.
Age Health Plasma Slash Melee Bullet Laser Energy Bomb Bio Fire Acid
Young 290 800 20 30 35 35 35 0 28 35 28
Mature
320 900 20 35 40 40 40 0 33 40 33
Elder
340 1000 23 40 45 45 45 0 35 45 35
Ancient
360 1000 23 45 50 50 50 40 38 50 38

Dragon Abilities

Ability Description Plasma Cost Cooldown

Toggle Bump Attacks
Allows you to toggle bump attacks on and off. This allows you to slash any enemy creature by running into them. The red arrow means it's on, you attack when on HARM intent; the green arrow means it's off, you push when on HARM intent. N/A N/A

Rest
Used to rest and get up. You heal faster when resting on weeds. N/A 2 seconds

Psy Drain
This ability is used on dead Marines. For every Marine's psyche drained, the Hive will gain between 30 and 90 psychic points, depending on the number of Marines spawned; and 1/8 of a larva. 50 N/A

Corrosive Acid
Expels acid onto an object or wall, destroying it after a while. If used on wall, a hole will appear after some time. Small xenos can climb through, large xenos can break the wall with the hole on it open. CTRL + click to interact with the acid hole.

During the prep phase, all xenomorphs with this ability get strong acid.

[Acid Strength by Caste]
Drone Drone and Sentinel Sentinel, and Scorpion Scorpion have the weakest acid. Takes 8 minutes to melt a hole in a regular wall. Cannot be used on reinforced walls.
Hivelord Hivelord, Shrike Shrike, Spitter Spitter, and Praetorian Praetorian have common acid. Takes 3 minutes to melt a hole in a regular wall. Cannot be used on reinforced walls.
Boiler Boiler, Primordial Hivelord Hivelord, Queen Queen, and King King have the strongest acid. Takes 1.5 minutes to melt a hole in any type of wall.
75 if caste has weak acid;

100 for medium and strong acid

N/A

Emit Pheromones
Toggles your pheromones, allowing you to select Recovery, Warding, or Frenzy. You only emit one at a time, and you can see which pheromones you are effected by in the Status tab. Emitting pheromones uses 5 plasma every regeneration tick. Strength of pheromones is tied to caste and increases the effects. More at Xenomorph Mechanics.
[Pheromone Types]

Recovery: Accelerates healing and sunder regeneration for resting xenos, increases the amount healed from healing abilities, and increases plasma regeneration. Allows for healing after taking damage without having to wait 10 seconds.
Warding: Increases soft armor in all areas for each level.
Frenzy: Decreases movement slowdown by 0.6 for each level.

[Pheromone Strength by Caste]
Drone
Drone
Carrier Defiler Hivelord Shrike Praetorian King Queen and Pheromone Towers
Drone - 2.0 Carrier - 2.5

Defiler - 2.6,

Hivelord - 3.0, Shrike - 3.0, Hivemind - 4.0, Praetorian - 4.5, King - 4.5 Queen and Pheromone Towers - 5.0

N/A N/A

Xeno Spit
Spit neurotoxin or acid at a target or tile. While neurotoxin is generally not lethal, it will cause pain and slow marines and can have a big impact while supporting other Xenos or fighting on your own. Your acid spit will do burn damage and can slowly wear down poorly-guarded barricades. 40-100 N/A

Spray Acid
Channel a cone of acid across the ground in a 4x7 tile area. Knocks down targets it hits and does tick damage to any target that stands in or moves across the acid while it remains on the ground. 300 30 seconds

Dragon Evolution

Once the hive has enough psychic points, your queen has the option to unlock powerful primordial evolutions for each strain. Primordial evolutions grant additional abilities for the relevant class.
For the XENOMORPH, this primordial ability is Acid Dash.

Ability Description Plasma Cost Cooldown

Acid Dash
Instantly dash up to 5 tiles, ignoring small strucures like tables and spraying acid in your path. Marines in your path are knocked down. For 2 seconds after the initial cast, you can recast the ability without cooldown for an additional, acid-less charge. 250 30

Tips & Tricks

  • In the absence of the Queen, you will often be looked at as a central point of combat due to your powerful pheromones. Make sure you're supporting your other Xenomorphs and paying attention to the battle.
  • You can help an assault succeed, or even influence a push to begin, with a well-placed acid spray that drives marines back from barricades or catches some out, wounding them or cutting them off from support.
  • Praetorians also rival Spitters in their harassment ability, so make sure you're constantly spitting neuro or acid when you're not spraying or fighting.
  • Your acid spray can peek through the corners of cades, given that there isn't anything blocking.


TGMC
Roles

TerraGov Marines

Ranks

Command Captain, Field Commander, Staff Officer, Pilot Officer, Transport Officer, Mech Pilot
Vehicle Crew Assault Crewman, Transport Crewman
Engineering and Supply Chief Ship Engineer, Requisitions Officer, Ship Technician
Medical Chief Medical Officer, Medical Doctor, Researcher
Marines Squad Leader, Squad Smartgunner, Squad Engineer, Squad Corpsman, Squad Marine
Civilians Corporate Liaison
Silicon Combat robots, Synthetic, AI
Xenomorphs

Playtime

Tier 0 Larva, Minions
Tier 1 Drone, Runner, Defender, Sentinel
Tier 2 Hivelord, Carrier, Hunter, Wraith, Bull, Warrior, Puppeteer, Spitter, Pyrogen
Tier 3 Gorger, Defiler, Widow, Ravager, Warlock, Behemoth, Crusher, Praetorian, Boiler
Tier 4 Shrike, Queen, King, Hivemind
Others Zombie, Emergency Response Teams, Sons of Mars, Survivor