Skip to content

Commit

Permalink
Merge branch 'master' into accessories
Browse files Browse the repository at this point in the history
  • Loading branch information
msw7007 committed Sep 20, 2024
2 parents 81b5145 + e0f44a8 commit 55e877a
Show file tree
Hide file tree
Showing 2,383 changed files with 83,870 additions and 29,041 deletions.
65 changes: 65 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report_form.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
name: Bug Report
description: Create a report to help reproduce and fix the issue.
body:
- type: markdown
attributes:
value: |
# **Please read the following guidelines. Follow all instructions or else your issue is subject to closure.**
## If you use the "Report Issue" button in the top-right corner of the game, it will automatically fill in some of the information below.
If you are reporting an issue found in another branch or codebase, you _must_ link the branch or codebase repo in your issue report or it will be closed.
For branches, If you have not pushed your code up, please either reproduce it on master or push your code up before making an issue report.
For other codebases, if you do not have a public code repository you will be refused help unless you can completely reproduce the issue on our master branch.
- type: input
id: reporting-version
attributes:
label: "Client Version:"
description: |
The BYOND version you are using to report this issue. You can find this information in the bottom left corner of the "About BYOND" window in the BYOND client.
It is strongly recommended that you include this, especially for concerns on the visual aspects of the game.
placeholder: "xxx.xxxx"
validations:
required: false
- type: textarea
id: issue-summary
attributes:
label: "Issue Summary:"
description: |
Briefly explain your issue in a few plain sentences. You may copy and paste the issue title here if it is suitable.
placeholder: |
"When I do X, Y happens instead of Z."
"X on Y map has Z issue."
validations:
required: true
- type: input
id: round-id
attributes:
label: "Round ID:"
description: |
If you discovered this issue from playing tgstation hosted servers, the Round ID can be found in the Status panel or retrieved from https://statbus.space/
The Round ID lets us look up valuable information and logs for the round the bug happened. Leave this blank if there is no round ID.
placeholder: "XXXXXX"
validations:
required: false
- type: textarea
id: test-merges
attributes:
label: "Test Merge Information:"
description: |
If you're certain the issue is to be caused by a test merge [OOC Tab -> Show Server Revision], report it in the pull request's comment section rather than on the tracker.
If you're unsure you can refer to the issue number by prefixing said number with #. The issue number can be found beside the title after submission of this form.
validations:
required: false
- type: textarea
id: reproduction
attributes:
label: "Reproduction Steps:"
description: |
Describe the steps to reproduce the issue in detail. Include any relevant information, such as the map, round type, and any other factors that may be relevant.
If it is a runtime-related error, please include the runtime here as that is pertient information. Issues are not for oddities introduced by admin varedits, ensure these occur in normal circumstances.
placeholder: |
1. Go to the X location
2. Do Y action
3. Observe Z result
validations:
required: true
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

## Changelog

<!-- If your PR modifies aspects of the game that can be concretely observed by players or admins you should add a changelog. If your change does NOT meet this description, remove this section. Be sure to properly mark your PRs to prevent unnecessary GBP loss. You can read up on GBP and it's effects on PRs in the tgstation guides for contributors. Please note that maintainers freely reserve the right to remove and add tags should they deem it appropriate. You can attempt to finagle the system all you want, but it's best to shoot for clear communication right off the bat. -->
<!-- If your PR modifies aspects of the game that can be concretely observed by players or admins you should add a changelog. If your change does NOT meet this description, remove this section. Be sure to properly mark your PRs to prevent unnecessary GBP loss. You can read up on GBP and its effects on PRs in the tgstation guides for contributors. Please note that maintainers freely reserve the right to remove and add tags should they deem it appropriate. You can attempt to finagle the system all you want, but it's best to shoot for clear communication right off the bat. -->

:cl:
add: Added new mechanics or gameplay changes
Expand Down
1 change: 1 addition & 0 deletions .github/gbp.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,4 @@ reset_label = "GBP: Reset"
"Sound" = 3
"Sprites" = 3
"Unit Tests" = 6
"Wallening Revert Recovery" = 10
4 changes: 2 additions & 2 deletions .github/guides/AUTODOC.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ public functions rely on to implement logic
When documenting a proc, we give a short one line description (as this is shown
next to the proc definition in the list of all procs for a type or global
namespace), then a longer paragraph which will be shown when the user clicks on
the proc to jump to it's definition
the proc to jump to its definition
```
/**
* Short description of the proc
Expand All @@ -59,7 +59,7 @@ just going to be the typepath of the class, as dmdoc uses that by default

Then we give a short oneline description of the class

Finally we give a longer multi paragraph description of the class and it's details
Finally we give a longer multi paragraph description of the class and its details
```
/**
* # Classname (Can be omitted if it's just going to be the typepath)
Expand Down
18 changes: 9 additions & 9 deletions .github/guides/STANDARDS.md
Original file line number Diff line number Diff line change
Expand Up @@ -100,11 +100,11 @@ While we normally encourage (and in some cases, even require) bringing out of da
### RegisterSignal()

#### PROC_REF Macros
When referencing procs in RegisterSignal, Callback and other procs you should use PROC_REF, TYPE_PROC_REF and GLOBAL_PROC_REF macros.
When referencing procs in RegisterSignal, Callback and other procs you should use PROC_REF, TYPE_PROC_REF and GLOBAL_PROC_REF macros.
They ensure compilation fails if the reffered to procs change names or get removed.
The macro to be used depends on how the proc you're in relates to the proc you want to use:

PROC_REF if the proc you want to use is defined on the current proc type or any of it's ancestor types.
PROC_REF if the proc you want to use is defined on the current proc type or any of its ancestor types.
Example:
```
/mob/proc/funny()
Expand All @@ -129,7 +129,7 @@ Example:
/mob/subtype/proc/do_something()
var/obj/thing/x = new()
// we're referring to /obj/thing proc inside /mob/subtype proc
RegisterSignal(x, COMSIG_FAKE, TYPE_PROC_REF(/obj/thing, funny))
RegisterSignal(x, COMSIG_FAKE, TYPE_PROC_REF(/obj/thing, funny))
```

GLOBAL_PROC_REF if the proc you want to use is a global proc.
Expand All @@ -154,7 +154,7 @@ All procs that are registered to listen for signals using `RegisterSignal()` mus
```
This is to ensure that it is clear the proc handles signals and turns on a lint to ensure it does not sleep.

Any sleeping behaviour that you need to perform inside a `SIGNAL_HANDLER` proc must be called asynchronously (e.g. with `INVOKE_ASYNC()`) or be redone to work asynchronously.
Any sleeping behaviour that you need to perform inside a `SIGNAL_HANDLER` proc must be called asynchronously (e.g. with `INVOKE_ASYNC()`) or be redone to work asynchronously.

#### `override`

Expand Down Expand Up @@ -280,7 +280,7 @@ Good:
off_overlay = iconstate2appearance(icon, "off")
broken_overlay = icon2appearance(broken_icon)
if (stat & broken)
add_overlay(broken_overlay)
add_overlay(broken_overlay)
return
if (is_on)
add_overlay(on_overlay)
Expand All @@ -304,7 +304,7 @@ Bad:
if (isnull(our_overlays))
our_overlays = list("on" = iconstate2appearance(overlay_icon, "on"), "off" = iconstate2appearance(overlay_icon, "off"), "broken" = iconstate2appearance(overlay_icon, "broken"))
if (stat & broken)
add_overlay(our_overlays["broken"])
add_overlay(our_overlays["broken"])
return
...
```
Expand Down Expand Up @@ -391,7 +391,7 @@ At its best, it can make some very common patterns easy to use, and harder to me
some_code()
if (do_something_else())
. = TRUE // Uh oh, what's going on!
// even
// more
// code
Expand Down Expand Up @@ -468,7 +468,7 @@ Meaning:
to_chat(world, uh_oh())
```

...will print `woah!`.
...will print `woah!`.

For this reason, it is acceptable for `.` to be used in places where consumers can reasonably continue in the event of a runtime.

Expand All @@ -494,7 +494,7 @@ If you are using `.` in this case (or for another case that might be acceptable,
. = ..()
if (. == BIGGER_SUPER_ATTACK)
return BIGGER_SUPER_ATTACK // More readable than `.`
// Due to how common it is, most uses of `. = ..()` do not need a trailing `return .`
```

Expand Down
45 changes: 24 additions & 21 deletions .github/labeler.yml
Original file line number Diff line number Diff line change
@@ -1,48 +1,48 @@
'TGUI':
- changed-files:
- any-glob-to-any-file: ['tgui/**']
- any-glob-to-any-file: 'tgui/**'

'Звук':
':sound: Звук':
- changed-files:
- any-glob-to-any-file: ['**/*.ogg']
- any-glob-to-any-file: '**/*.ogg'

'Изменение Карты':
':world_map: Изменение Карты':
- all:
- changed-files:
- any-glob-to-any-file: ['**/*.dmm']
- any-glob-to-any-file: '**/*.dmm'

'Спрайты':
':paintbrush: Спрайты':
- changed-files:
- any-glob-to-any-file: ['**/*.dmi']
- any-glob-to-any-file: '**/*.dmi'

'Инструменты':
':guitar: Инструменты':
- changed-files:
- any-glob-to-any-file: ['.gihub/workflows/**', 'tools/**']
- any-glob-to-any-file: ['.gihub/**', 'tools/**', '.vscode/**', '.bin/**']

'Требуется изменение конфига':
':floppy_disk: Изменение конфига':
- changed-files:
- any-glob-to-any-file: ['config/**']
- any-glob-to-any-file: 'config/**'

'Документация':
':neckbeard: Документация':
- changed-files:
- any-glob-to-any-file: ['**/*.md']
- any-glob-to-any-file: '**/*.md'

'SQL':
':cd: SQL':
- changed-files:
- any-glob-to-any-file: ['SQL/**']
- any-glob-to-any-file: 'SQL/**'

'Частичная модульность':
':feelsgood: Частичная модульность':
- all:
- changed-files:
- any-glob-to-any-file: ['code/**']
- any-glob-to-any-file: [modular_bandastation/**]
- any-glob-to-any-file: ['code/**', 'icons/**', 'sounds/**', '_maps/map_files/**', 'tgui/**']
- any-glob-to-any-file: 'modular_bandastation/**'
- base-branch: 'master'
- head-branch: '!merge-upstream'

'НЕ МОДУЛЬНО':
':finnadie: НЕ МОДУЛЬНО':
- all:
- changed-files:
- any-glob-to-any-file: ['code/**', 'icons/**', '_maps/map_files/**']
- any-glob-to-any-file: ['code/**', 'icons/**', 'sounds/**', '_maps/map_files/**']
- all-globs-to-all-files: '!modular_bandastation/**'
- base-branch: 'master'
- head-branch: '!merge-upstream'
Expand All @@ -55,8 +55,11 @@
':pencil: Перевод':
- base-branch: 'translate'

'Фикс':
':wrench: Фикс':
- head-branch: ['^fix', 'fix']

':trollface: Фича':
- head-branch: ['^feat', 'feat']

':shipit: Улучшение':
- head-branch: ['^tweak', 'tweak']
56 changes: 43 additions & 13 deletions .github/workflows/detect_translate_conflicts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ jobs:
run: |
git config --local user.email "[email protected]"
git config --local user.name "SS220Manager"
git config --local merge.conflictStyle zdiff3
- name: Try merging
continue-on-error: true
run: |
Expand All @@ -28,26 +29,55 @@ jobs:
{
echo "MERGE_CONFLICTS<<EOF"
git diff --name-only --diff-filter=U | while read file; do
echo "- $file"
echo "<details>"
echo "<summary>$file</summary>"
echo -e "\n\`\`\`diff"
git diff --diff-filter=U "$file" | sed -n '/<<<<<<</,/>>>>>>>/p'
echo -e "\n\`\`\`"
echo "</details>"
done
echo EOF
} >> $GITHUB_ENV
- name: Run script
uses: actions/github-script@v7
with:
script: |
const { MERGE_CONFLICTS } = process.env
if(!MERGE_CONFLICTS) {
return
}
await github.rest.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: `This pr causes following conflicts on translate branch:\n ${MERGE_CONFLICTS} `
})
const { MERGE_CONFLICTS } = process.env;
const conflict_message_header = "This PR causes following conflicts on translate branch:\n";
const issue_body = `${conflict_message_header}${MERGE_CONFLICTS}`;
const comments = await github.rest.issues.listComments({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
});
const action_comment = comments.data.find(comment => comment.body.startsWith(conflict_message_header) && comment.user.login === "github-actions[bot]");
if (action_comment) {
const comment_id = action_comment.id;
if (!MERGE_CONFLICTS) {
await github.rest.issues.deleteComment({
owner: context.repo.owner,
repo: context.repo.repo,
comment_id: comment_id,
});
return;
}
await github.rest.issues.updateComment({
owner: context.repo.owner,
repo: context.repo.repo,
comment_id: comment_id,
body: issue_body,
});
} else if (MERGE_CONFLICTS) {
await github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: issue_body,
});
}
4 changes: 2 additions & 2 deletions .github/workflows/run_integration_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,9 +46,9 @@ jobs:
- name: Install rust-g
run: |
bash tools/ci/install_rust_g.sh
- name: Install auxlua
- name: Install dreamluau
run: |
bash tools/ci/install_auxlua.sh
bash tools/ci/install_dreamluau.sh
- name: Configure version
run: |
echo "BYOND_MAJOR=${{ inputs.major }}" >> $GITHUB_ENV
Expand Down
7 changes: 4 additions & 3 deletions .github/workflows/update_tgs_dmapi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,16 @@ jobs:
- name: Apply DMAPI update
uses: tgstation/tgs-dmapi-updater@v2
id: dmapi-update
with:
header-path: 'code/__DEFINES/tgs.dm'
library-path: 'code/modules/tgs'

- name: Commit and Push
continue-on-error: true
run: |
git config user.name tgstation-server
git config user.email [email protected]
git config user.name "tgstation-server-ci[bot]"
git config user.email "161980869+tgstation-server-ci[bot]@users.noreply.github.com"
git add .
git commit -m 'Update TGS DMAPI'
git push -f -u origin tgs-dmapi-update
Expand All @@ -41,7 +42,7 @@ jobs:
source_branch: "tgs-dmapi-update"
destination_branch: "master"
pr_title: "Automatic TGS DMAPI Update"
pr_body: "This pull request updates the TGS DMAPI to the latest version. Please note any changes that may be breaking or unimplemented in your codebase by checking what changes are in the definitions file: code/__DEFINES/tgs.dm before merging."
pr_body: "This pull request updates the TGS DMAPI to the latest version. Please note any changes that may be breaking or unimplemented in your codebase by checking what changes are in the definitions file: code/__DEFINES/tgs.dm before merging.\n\n${{ steps.dmapi-update.outputs.release-notes }}"
pr_label: "Tools"
pr_allow_empty: false
github_token: ${{ secrets.COMFY_ORANGE_PAT }}
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -214,7 +214,7 @@ Temporary Items
# Built auxtools libraries and intermediate files
aux*.dll
libaux*.so
aux*.pdb
*.pdb

# byond-tracy, we intentionally do not ship this and do not want to maintain it
# https://github.com/mafemergency/byond-tracy/
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,8 @@ This is the codebase for the /tg/station flavoured fork of SpaceStation 13.

Space Station 13 is a paranoia-laden round-based roleplaying game set against the backdrop of a nonsensical, metal death trap masquerading as a space station, with charming spritework designed to represent the sci-fi setting and its dangerous undertones. Have fun, and survive!

*All github inquiries (such as moderation actions) may be handled via the /tg/station discord [#coding-general](https://discord.com/channels/326822144233439242/326831214667235328). Simply ping the `@Maintainer` role, following the guide on asking questions located in the channel description, with your issue!*

## DOWNLOADING
[Downloading](.github/guides/DOWNLOADING.md)

Expand Down
Loading

0 comments on commit 55e877a

Please sign in to comment.