시드 또수정
All checks were successful
deploy-on-main / deploy (push) Successful in 28s

This commit is contained in:
koreacomp5
2025-11-05 23:50:01 +09:00
parent c348fb55fa
commit 2d722a89c7

View File

@@ -39,8 +39,12 @@ function generateNickname(i) {
// 랜덤 제목/문장/이미지 도우미
const TITLE_FRAGMENTS = [
// 아주 짧은 키워드
"공지", "업뎃", "버그", "요청", "후기", "정보", "TIP", "사진", "잡담", "나눔",
"질문", "헬프", "리뷰", "이슈", "주의", "긴급", "정리", "모음", "요약", "스샷",
// 짧은 구문
"오늘의 이슈", "핫 토픽", "소소한 일상", "정보 공유", "꿀팁 모음",
"개발 노트", "버그 리포트", "아이디어 제안", "질문 있습니다", "토론해요",
"개발 노트", "버그 리포트", "아이디어 제안", "함께 보아요",
];
const SENTENCES = [
"안녕하세요, 간단히 공유 드립니다.",
@@ -54,10 +58,44 @@ const SENTENCES = [
"개선 제안은 자유롭게 남겨주세요.",
"읽어주셔서 감사합니다.",
];
const TITLE_SUBS = [
"지금", "방금", "오늘", "금일", "v2", "2025", "베타", "테스트",
"임시", "간단히", "빠르게", "짧게", "새로", "업데이트", "정리", "공유",
];
const TITLE_EMOJIS = ["🔥", "📌", "✅", "❗", "💡", "🆕", "🔧", "📝", "📷"];
function clampTitle(s, max = 60) {
return s.length <= max ? s : s.slice(0, max).trim();
}
function pick(arr) { return arr[randomInt(0, arr.length - 1)]; }
function coin(p = 0.5) { return Math.random() < p; }
function randomTitle(boardName, index) {
const a = TITLE_FRAGMENTS[randomInt(0, TITLE_FRAGMENTS.length - 1)];
const b = TITLE_FRAGMENTS[randomInt(0, TITLE_FRAGMENTS.length - 1)];
return `${boardName} ${a} · ${b} #${index + 1}`;
// 다양한 템플릿으로 제목 생성 (짧은 것도, 긴 것도 포함)
const a = pick(TITLE_FRAGMENTS);
const b = pick(TITLE_FRAGMENTS);
const sub = pick(TITLE_SUBS);
const emoji = pick(TITLE_EMOJIS);
const num = (index % 99) + 1;
const templates = [
() => `${a}`,
() => `${a} ${emoji}`,
() => `${a} #${num}`,
() => `${a} ${sub}`,
() => `${a} · ${b}`,
() => `[${a}] ${b}`,
() => `${a}: ${b}`,
() => `${a} ${b} ${emoji}`,
// 가끔만 보드명 포함
() => `${boardName} ${a}`,
() => `${boardName} ${a} · ${b}`,
];
// 짧은 제목 확률을 높이기 위해 템플릿 선택 가중치 없이 랜덤
const title = pick(templates)();
return clampTitle(title, 60);
}
function randomSentence() {
return SENTENCES[randomInt(0, SENTENCES.length - 1)];