Skip to content

Commit b9a5d19

Browse files
committed
Merge branch 'main' of github.com:OpenNBS/NoteBlockWorld
2 parents b763bee + 67ed2eb commit b9a5d19

File tree

12 files changed

+279
-6
lines changed

12 files changed

+279
-6
lines changed

shared/validation/song/constants.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ export const UploadConst = deepFreeze({
3232
},
3333

3434
description: {
35-
maxLength: 1000,
35+
maxLength: 1500,
3636
},
3737

3838
originalAuthor: {
Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
---
2+
title: 'Announcing the Students of Maestro Jam event!'
3+
date: '2025-10-14'
4+
author: 'Bentroen'
5+
authorImage: 'bentroen.png'
6+
image: '/img/blog/maestro.png'
7+
tags: ['news']
8+
---
9+
10+
> **Update (2025-11-08):** The submission period has ended. Thank you to everyone who participated!
11+
>
12+
> Read our follow-up blog post [here](/blog/maestros_musical_masterpieces) for more information about the live performance event!
13+
14+
Hello all! We have exciting news for the community: **Note Block World** has partnered with [jazziiRed](https://www.youtube.com/@jazziiRed), [mooncatcher](https://www.youtube.com/@mr_mooncatcher), [vladde](https://www.youtube.com/@vladde) and [Xoliks](https://www.youtube.com/@Xoliks97) to bring you our second **community-wide collaborative event!** 🌐
15+
16+
These four masterminds are behind the _Multi-Aural, Encodable, Synchronous-Tick, Redstone Orchestra_ (**M.A.E.S.T.R.O.**), the first redstone machine to play note block music at 20 ticks per second in vanilla Minecraft.
17+
M.A.E.S.T.R.O. is the **ultimate evolution** of jazziiRed and mooncatcher's original music machine, which has been viewed over [two million times](https://www.youtube.com/watch?v=V6X2BHpeLww) on YouTube. It's the result of **many months of arduous work**, and a true redstone engineering masterpiece! ⚡⚙️
18+
19+
[![Maestro](/img/blog/maestro-full.png)](https://www.youtube.com/watch?v=V6X2BHpeLww)
20+
21+
Today, we have partnered with the M.A.E.S.T.R.O. team to give our community a chance to have their music **played live** on the machine in a special event!
22+
23+
We are proud to announce...
24+
25+
...the **Students of Maestro Jam**! A two-week-long event where **you** can create music to be played **live** on the M.A.E.S.T.R.O. machine! Keep reading... 👀
26+
27+
## How does the event work?
28+
29+
The event is taking place on [Note Block World](https://noteblock.world). Submitted songs must be uploaded to the website and tagged with `#maestro`, either in the title or the description, and sent to us in a specially-crafted form.
30+
31+
At the end of the submission period, the creations will be reviewed by us and the M.A.E.S.T.R.O. team.
32+
The best songs will be played **live** in a **public server** running the M.A.E.S.T.R.O. machine, that anyone will be able to join and watch. The entire performance will be **streamed** to the whole world in a **five-channel multi-stream** on YouTube! 🎬
33+
34+
> The date and time of the streams will be announced in a later blog post.
35+
36+
Later, all songs will be made into a **compilation album** that will be **written forever** in all of our channels. This is an unique opportunity to have your music heard by an audience of **thousands of players!** 💿
37+
38+
## How to participate?
39+
40+
We are already taking submissions! Refer to the rules below in order to submit your song:
41+
42+
### 🕛 Deadline
43+
44+
The submission form closes on **October 26, 2025**. You must submit your songs before then, but we can manually accept late submissions. More on this can be found below!
45+
46+
### ✅ What's allowed?
47+
48+
- An original note block song composition
49+
- A cover of an existing song not originally composed by you
50+
- Collaborations with other note block creators
51+
52+
### ❌ Limits
53+
54+
- No notes outside of vanilla's **two-octave** range
55+
- **No custom instruments** (not even sounds from vanilla!)
56+
- Mob head instruments are allowed, excluding Piglin and Wither Skeleton
57+
- Refer to the instructions below to import them into your song!
58+
- A given key under its instrument can only be played once per tick
59+
- e.g. a banjo note at key C3 cannot be played more than once on a single tick
60+
- The song length must not exceed **9½ minutes**
61+
- Mid-song tempo changes are not supported
62+
63+
### ❔ Recommendations
64+
65+
- The tempo should be a **factor of 20** (4, 5, 10 or 20 t/s) for best results
66+
- The song should not exceed vanilla's polyphony limit (maximum of 247 simultaneous sounds)
67+
- The machine does not support velocity and panning, so these elements will not carry over to in-game playback
68+
- However, due to how the machine places note blocks, each unique note is played from a predefined position
69+
- The song should be created entirely during the event's runtime
70+
- We can't prevent you from re-purposing existing songs, however we highly encourage creating something new!
71+
72+
### 🧟 Using mob sounds
73+
74+
Although NBS doesn't provide native support for mob head instruments, you can import them from Minecraft for use in your songs. Navigate to `Settings` > `Import sounds from Minecraft`, and follow the on-screen instructions to extract sound files from your Minecraft installation.
75+
76+
#### Supported sound locations
77+
78+
- **Zombie:** `mob/zombie/say<1-4>.ogg`
79+
- **Skeleton:** `mob/skeleton/say<1-3>.ogg`
80+
- **Ender Dragon:** `mob/enderdragon/growl<1-4>.ogg`
81+
- **Creeper:** `random/fuse.ogg`
82+
83+
One of the sounds above will be picked at random for each note played with that instrument.
84+
e.g. any Zombie notes will play any of `say<1-4>` randomly.
85+
86+
> Keep in mind that Piglin and Wither Skeleton sounds are **not supported** by the machine.
87+
88+
### 🧪 Testing
89+
90+
A mod pack containing everything you'll need can be found [on Modrinth](https://modrinth.com/modpack/maestro)! Instructions regarding how to transfer your note block songs to the machine are included in its description.
91+
92+
### 📝 Submissions
93+
94+
Once your song has been finished and you're ready to submit it for the event, upload it to Note Block World and submit it through the form linked below. You can only submit once, so make sure you're satisfied with your song!
95+
96+
⚠️ **Songs must be uploaded to [Note Block World](https://noteblock.world/) and tagged with `#maestro`, either in the title or description!**
97+
By submitting a song, you grant us the privilege to showcase it on the M.A.E.S.T.R.O. creators' YouTube channels, as well as our social outlets. Of course, you still maintain all rights to your creation!
98+
99+
The form will be closed on **Sunday, October 26, 2025 10:00 PM UTC**. We can accept late submissions for a short period of time afterwards. This is primarily to account for technical issues, and **should not be used as extra time.**
100+
101+
[[Submit your song here!]](https://forms.gle/zh69sLhTGweSR9Si7)
102+
103+
If you have any questions, please [reach out to us](/contact)! We'll be glad to help you out.
104+
105+
> _Our thoughts are with mooncatcher and everyone affected by the war in Ukraine. If you can, please donate to the Leleka Foundation [here](https://www.leleka.care/en/donate)._ 🇺🇦
106+
107+
We hope the event will be a fun experience for everyone, and we look forward to hearing your submissions! Have fun! 🎶
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
---
2+
title: 'Watch your songs played LIVE on M.A.E.S.T.R.O.!'
3+
date: '2025-11-08'
4+
author: 'Bentroen'
5+
authorImage: 'bentroen.png'
6+
image: '/img/blog/maestro-banner.png'
7+
tags: ['events']
8+
---
9+
10+
Last month, we announced the [**Students of Maestro Jam**](/blog/maestro), a community event where creators could submit their note block compositions to be played live on the incredible [M.A.E.S.T.R.O. machine](https://www.youtube.com/watch?v=G78AnHpIw5w)!
11+
12+
**Thank you** to everyone who participated in the jam! We've had over **30 amazing submissions** and were absolutely **blown away** by the response!!
13+
14+
Our community's **talent** and **creativity** has already made this event a huge success. 🎶
15+
16+
We are now ready to showcase all of your hard work! Come watch M.A.E.S.T.R.O. bring these masterpieces to life in a special **live performance**:
17+
18+
# 🎹 Maestro's Musical Masterpieces! 🎹
19+
20+
---
21+
22+
### ❓ What?
23+
24+
A live playback and showcase of all **30+ jam submissions**! Featuring the machine's creators, the honorable [jazziiRed](https://www.youtube.com/@jazziiRed), [mooncatcher](https://www.youtube.com/@mr_mooncatcher), [vladde](https://www.youtube.com/@vladde) and [Xoliks](https://www.youtube.com/@Xoliks97)!
25+
26+
### 🕑 When?
27+
28+
**Saturday, November 8th, 5:00 PM (UTC).** _(Save the date!)_
29+
30+
### 📍 Where?
31+
32+
Attend the event in Minecraft, in our [Discord](https://discord.gg/note-block-world-608692895179997252) server, or watch it live on [YouTube](https://youtube.com/live/d0_A3GMuGJ8)!
33+
34+
### 🎬 How to attend the event?
35+
36+
- We'll be streaming the performance on [YouTube](https://youtube.com/live/d0_A3GMuGJ8). Click the 🔔 so you're notified when it starts!
37+
- You'll also be able to follow along in our [Discord](https://discord.gg/note-block-world-608692895179997252) server, where we'll have a dedicated **stage channel** for the event!
38+
- Want to attend the concert **LIVE** in Minecraft? We will share the server's IP in our Discord server shortly before the event!
39+
- _Requirement:_ **Java Edition 1.21+**
40+
41+
---
42+
43+
Get ready to see these masterpieces **come to life** on the machine!
44+
45+
We can't wait to meet you all there! ⚙️✨
3.07 MB
Loading
6.51 MB
Loading

web/public/img/blog/maestro.png

1 MB
Loading
3.07 MB
Loading
13.3 KB
Loading

web/src/app/(content)/(info)/help/[id]/page.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ const HelpPost = ({ params }: HelpPageProps) => {
4646
<>
4747
<article className='max-w-screen-md mx-auto mb-36'>
4848
<Link
49-
href='/blog'
49+
href='/help'
5050
className='text-zinc-500 hover:text-zinc-400 text-sm'
5151
>
5252
{'< Back to Help'}
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
import { faExclamationCircle } from '@fortawesome/free-solid-svg-icons';
2+
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
3+
import Image from 'next/image';
4+
import Link from 'next/link';
5+
import { useEffect, useState } from 'react';
6+
7+
export const EventBanner = () => {
8+
const targetDate = Date.UTC(2025, 10, 8, 17, 0, 0); // November is 10 (0-indexed)
9+
10+
const [timeLeft, setTimeLeft] = useState(() =>
11+
Math.max(0, targetDate - Date.now()),
12+
);
13+
14+
useEffect(() => {
15+
const interval = setInterval(() => {
16+
setTimeLeft(Math.max(0, targetDate - Date.now()));
17+
}, 1000);
18+
19+
return () => clearInterval(interval); // Cleanup on unmount
20+
}, [targetDate]);
21+
22+
const formatTime = (ms: number) => {
23+
const totalSeconds = Math.floor(ms / 1000);
24+
const hours = Math.floor(totalSeconds / 3600);
25+
const minutes = Math.floor((totalSeconds % 3600) / 60);
26+
const seconds = totalSeconds % 60;
27+
28+
return `${String(hours).padStart(2, '0')}:${String(minutes).padStart(
29+
2,
30+
'0',
31+
)}:${String(seconds).padStart(2, '0')}`;
32+
};
33+
34+
return (
35+
<div className='flex flex-row mx-auto w-fit justify-between items-center text-pretty gap-6 py-4 px-2 sm:px-8 text-md rounded-xl mb-10 bg-top backdrop-filter backdrop-blur-lg bg-opacity-50 bg-gradient-to-br from-15% from-pink-800 via-rose-900 to-85% to-red-900 relative'>
36+
<div
37+
className='absolute h-full w-full top-0 left-0 z-[-1] rounded-xl opacity-50 brightness-[0.3]'
38+
style={{
39+
backgroundImage: "url('/img/event/maestro-banner.png')",
40+
backgroundSize: 'contain',
41+
backgroundAttachment: 'fixed',
42+
}}
43+
></div>
44+
<Image src='/img/event/maestro-icon.png' alt='' width={64} height={64} />
45+
46+
<div className='flex-1 leading-tight max-w-screen-md w-fit'>
47+
<p className='uppercase text-md font-bold tracking-wider text-yellow-300 mb-1 w-fit'>
48+
<FontAwesomeIcon icon={faExclamationCircle} />{' '}
49+
{timeLeft === 0 ? (
50+
'Happening NOW!'
51+
) : (
52+
<>Starting in {formatTime(timeLeft)}</>
53+
)}
54+
</p>
55+
<p>
56+
Watch your songs played LIVE in the{' '}
57+
<Link
58+
href='https://www.youtube.com/watch?v=G78AnHpIw5w'
59+
className='text-blue-300 hover:text-blue-200'
60+
>
61+
M.A.E.S.T.R.O. machine
62+
</Link>{' '}
63+
on{' '}
64+
<span className='font-bold'>Maestro&apos;s Musical Masterpieces</span>
65+
, a public performance featuring the machine&apos;s creators! Live on{' '}
66+
<Link
67+
href='https://youtube.com/live/d0_A3GMuGJ8'
68+
className='text-blue-300 hover:text-blue-200'
69+
>
70+
YouTube
71+
</Link>{' '}
72+
and{' '}
73+
<Link
74+
href='https://discord.gg/note-block-world-608692895179997252'
75+
className='text-blue-300 hover:text-blue-200'
76+
>
77+
Discord
78+
</Link>
79+
. Read our{' '}
80+
<Link
81+
href="/blog/maestro's_musical_masterpieces"
82+
className='text-blue-300 hover:text-blue-200'
83+
>
84+
blog post
85+
</Link>{' '}
86+
for more!
87+
</p>
88+
</div>
89+
</div>
90+
);
91+
};

0 commit comments

Comments
 (0)