diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml new file mode 100644 index 0000000..2a298b0 --- /dev/null +++ b/.github/workflows/checks.yml @@ -0,0 +1,41 @@ +name: Run Checks + +on: + workflow_dispatch: +# push: +# branches: [ main, dev ] +# paths: docs/** + pull_request: + branches: [ main ] + paths: docs/** + +permissions: + contents: read + pages: write + id-token: write + +concurrency: + group: "pages" + cancel-in-progress: false + +jobs: + # Build job + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Set up Ruby and install gems + uses: ruby/setup-ruby@v1 + with: + ruby-version: '3.4' + bundler-cache: true + working-directory: ./docs + cache-version: 0 # Increment this number if you need to re-download cached gems + - name: Build with Jekyll + run: bundle exec jekyll build + working-directory: ./docs + - name: Run HTML Proofer + run: bundle exec htmlproofer ./_site --disable-external --no-enforce-https + # --log-level :debug + working-directory: ./docs diff --git a/docs/Challenges/create-a-game.md b/docs/Challenges/create-a-game.md new file mode 100644 index 0000000..f700265 --- /dev/null +++ b/docs/Challenges/create-a-game.md @@ -0,0 +1,70 @@ +--- +title: Create a Game +parent: Challenges +nav_order: 2 +permalink: /Challenges/2 +--- + +# ๐ŸŽฎ twinBASIC Monthly Challenge #2 - February + +**Create a Game** + +Build **any game you like** using twinBASIC. + +This can be a simple card game, arcade game, puzzle, or something more experimental. Creativity is encouraged - there is no โ€œrightโ€ genre or style. + +## ๐Ÿ“ฆ Submission Rules + +- Built using twinBASIC +- Full source code must be provided, but licence choice is unrestricted +- Submission must be a *single* `.twinproj` file (external image and music resource files allowed if necessary) +- Produces a **single Windows EXE** +- Runs on **Windows 10 and later** +- Game may be windowed or fullscreen +- Music is optional +- โŒ Not a direct or near-direct port of an existing VB6 game + +## ๐ŸŽต Bonus Points + +- Inclusion of music or sound effects +- Inclusion of controller support (e.g. XInput) +- Use of **GDI+ package** โ [GDI+ Package](https://discord.com/channels/927638153546829845/1460777854714515728) +- Use of **OpenGL** โ [twinBASIC + WinDevLib OpenGL Deโ€ฆ](https://discord.com/channels/927638153546829845/1464785863702610053) +- Clever or efficient rendering techniques +- Use of newer twinBASIC features (e.g. delegates, generics) +- Clean architecture and well-documented code +- Polished UI, UX, or game feel +- Interesting technical tricks (collision detection, AI, etc.) + +## ๐ŸŽ Prize + +**ยฃ100 twinBASIC account credit** + +- Non-transferable +- No cash alternative +- Can only be used towards future twinBASIC licences + +## ๐Ÿ† Judging + +Entries will be judged across multiple categories, including: + +- Originality and creativity +- Technical execution +- Performance +- Visual presentation +- Code quality and structure +- Overall polish and fun factor + +Bonus points may be awarded at the discretion of the twinBASIC team. + +**Winner selected at the sole discretion of the twinBASIC team within 7 days after the entry deadline.** + +## โฐ Deadline + +Entries must be received by: + +๐Ÿ—“๏ธ 1st March โ€” 12:00 PM (GMT) + +Submissions will be locked after the deadline. + +๐Ÿ”—: [https://discord.com/channels/927638153546829845/1467429513456783498](https://discord.com/channels/927638153546829845/1467429513456783498)